@@ -218,6 +218,7 @@ show_only_private = Showing only private | |||||
show_only_public = Showing only public | show_only_public = Showing only public | ||||
issues.in_your_repos = In your repositories | issues.in_your_repos = In your repositories | ||||
contributors = Contributors | |||||
[explore] | [explore] | ||||
repos = Repositories | repos = Repositories | ||||
@@ -755,6 +756,7 @@ unit_disabled = The site administrator has disabled this repository section. | |||||
language_other = Other | language_other = Other | ||||
datasets = Datasets | datasets = Datasets | ||||
datasets.desc = Enable Dataset | datasets.desc = Enable Dataset | ||||
cloudbrain_helper=Use GPU/NPU resources to open notebooks, model training tasks, etc. | |||||
debug=Debug | debug=Debug | ||||
stop=Stop | stop=Stop | ||||
@@ -220,6 +220,8 @@ show_only_public=只显示公开的 | |||||
issues.in_your_repos=属于该用户项目的 | issues.in_your_repos=属于该用户项目的 | ||||
contributors=贡献者 | |||||
[explore] | [explore] | ||||
repos=项目 | repos=项目 | ||||
users=用户 | users=用户 | ||||
@@ -757,6 +759,7 @@ unit_disabled=站点管理员已禁用此项目单元。 | |||||
language_other=其它 | language_other=其它 | ||||
datasets=数据集 | datasets=数据集 | ||||
datasets.desc=数据集功能 | datasets.desc=数据集功能 | ||||
cloudbrain_helper=使用GPU/NPU资源,开启Notebook、模型训练任务等 | |||||
debug=调试 | debug=调试 | ||||
stop=停止 | stop=停止 | ||||
@@ -2,8 +2,18 @@ | |||||
<div class="repository commits"> | <div class="repository commits"> | ||||
{{template "repo/header" .}} | {{template "repo/header" .}} | ||||
<div class="ui container"> | <div class="ui container"> | ||||
<h2 class="ui header">{{.DateFrom}} - {{.DateUntil}} | |||||
<div class="ui right"> | |||||
<div class="ui three column stackable grid" style="align-items: center;"> | |||||
<div class="column"> | |||||
<div class="ui breadcrumb"> | |||||
<a class="section" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">{{.i18n.Tr "repo.code"}}</a> | |||||
<div class="divider"> / </div> | |||||
<div class="active section" href="{{.RepoLink}}/activity">{{.i18n.Tr "repo.activity"}}</div> | |||||
</div> | |||||
</div> | |||||
<div class="column center aligned" style="font-weight: 800;"> | |||||
{{.DateFrom}} - {{.DateUntil}} | |||||
</div> | |||||
<div class="column right aligned"> | |||||
<!-- Period --> | <!-- Period --> | ||||
<div class="ui floating dropdown jump filter"> | <div class="ui floating dropdown jump filter"> | ||||
<div class="ui basic compact button"> | <div class="ui basic compact button"> | ||||
@@ -23,7 +33,7 @@ | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
</h2> | |||||
</div> | |||||
<div class="ui divider"></div> | <div class="ui divider"></div> | ||||
{{if (or (.Permission.CanRead $.UnitTypeIssues) (.Permission.CanRead $.UnitTypePullRequests))}} | {{if (or (.Permission.CanRead $.UnitTypeIssues) (.Permission.CanRead $.UnitTypePullRequests))}} | ||||
@@ -1,6 +1,49 @@ | |||||
{{template "base/head" .}} | {{template "base/head" .}} | ||||
<style> | |||||
</style> | |||||
<div class="repository watchers"> | <div class="repository watchers"> | ||||
{{template "repo/header" .}} | {{template "repo/header" .}} | ||||
{{template "repo/user_cards" .}} | |||||
<div class="ui container"> | |||||
<div class="row git-user-content"> | |||||
<h3 class="ui header"> | |||||
<div class="ui breadcrumb"> | |||||
<a class="section" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">{{.i18n.Tr "repo.code"}}</a> | |||||
<div class="divider"> / </div> | |||||
<div class="active section" href="{{.RepoLink}}/releases">{{.i18n.Tr "home.contributors"}} ({{len .ContributorInfo}})</div> | |||||
</div> | |||||
</h3> | |||||
<div class="ui horizontal relaxed list"> | |||||
{{range .ContributorInfo}} | |||||
<div class="item user-list-item" data-username="" > | |||||
{{if .UserInfo}} | |||||
<a href="{{AppSubUrl}}/{{.UserInfo.Name}}"><img class="ui avatar s16 image js-popover-card" src="{{.UserInfo.RelAvatarLink}}"></a> | |||||
{{else if .Email}} | |||||
<a href="mailto:{{.Email}}"><img class="ui avatar s16 image js-popover-card" avatar="{{.Email}}"></a> | |||||
{{end}} | |||||
<div class="content"> | |||||
<div class="header" > | |||||
{{if .UserInfo}} | |||||
<a href="{{AppSubUrl}}/{{.UserInfo.Name}}">{{.UserInfo.Name}}</a> | |||||
{{else if .Email}} | |||||
<a href="mailto:{{.Email}}">{{.Email}}</a> | |||||
{{end}} | |||||
</div> | |||||
<span class="commit-btn">Commits: {{.CommitCnt}}</span> | |||||
</div> | |||||
</div> | |||||
{{end}} | |||||
</div> | |||||
{{template "base/paginate" .}} | |||||
</div> | |||||
</div> | |||||
</div> | </div> | ||||
{{template "base/footer" .}} | {{template "base/footer" .}} |
@@ -92,16 +92,27 @@ | |||||
{{if not .Repository.IsBeingCreated}} | {{if not .Repository.IsBeingCreated}} | ||||
<div class="ui tabular stackable menu navbar"> | <div class="ui tabular stackable menu navbar"> | ||||
{{if .Permission.CanRead $.UnitTypeCode}} | {{if .Permission.CanRead $.UnitTypeCode}} | ||||
<a class="{{if .PageIsViewCode}}active{{end}} item" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}"> | |||||
{{svg "octicon-code" 16}} {{.i18n.Tr "repo.code"}} | |||||
<div class="dropdown-menu"> | |||||
<a class="{{if or .PageIsViewCode .PageIsReleaseList .PageIsWiki .PageIsActivity}}active{{end}} item" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}"> | |||||
<span>{{svg "octicon-code" 16}} {{.i18n.Tr "repo.code"}} <i class="dropdown icon"></i></span> | |||||
</a> | </a> | ||||
{{end}} | |||||
<div class="dropdown-content"> | |||||
<a style="border: none;" class="{{if .PageIsReleaseList}}active{{end}} item" href="{{.RepoLink}}/releases"> | |||||
{{svg "octicon-tag" 16}} {{.i18n.Tr "repo.releases"}} <span class="ui {{if not .NumReleases}}gray{{else}}blue{{end}} small label">{{.NumReleases}}</span> | |||||
</a> | |||||
<a style="border: none;" class="{{if .PageIsWiki}}active{{end}} item" href="{{.RepoLink}}/wiki" {{if (.Permission.CanRead $.UnitTypeExternalWiki)}} target="_blank" rel="noopener noreferrer" {{end}}> | |||||
{{svg "octicon-book" 16}} {{.i18n.Tr "repo.wiki"}} | |||||
</a> | |||||
<a style="border: none;" class="{{if .PageIsActivity}}active{{end}} item" href="{{.RepoLink}}/activity"> | |||||
{{svg "octicon-pulse" 16}} {{.i18n.Tr "repo.activity"}} | |||||
</a> | |||||
{{if .Permission.CanRead $.UnitTypeDatasets}} | |||||
<a class="{{if .PageIsDataset}}active{{end}} item" href="{{.RepoLink}}/datasets?type=0"> | |||||
{{svg "octicon-inbox" 16}} {{.i18n.Tr "datasets"}} | |||||
</a> | |||||
</div> | |||||
</div> | |||||
{{end}} | {{end}} | ||||
{{if .Permission.CanRead $.UnitTypeIssues}} | {{if .Permission.CanRead $.UnitTypeIssues}} | ||||
<a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoLink}}/issues"> | <a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoLink}}/issues"> | ||||
@@ -109,11 +120,11 @@ | |||||
</a> | </a> | ||||
{{end}} | {{end}} | ||||
{{if .Permission.CanRead $.UnitTypeExternalTracker}} | |||||
<!-- {{if .Permission.CanRead $.UnitTypeExternalTracker}} | |||||
<a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoExternalIssuesLink}}" target="_blank" rel="noopener noreferrer"> | <a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoExternalIssuesLink}}" target="_blank" rel="noopener noreferrer"> | ||||
{{svg "octicon-link-external" 16}} {{.i18n.Tr "repo.issues"}} </span> | {{svg "octicon-link-external" 16}} {{.i18n.Tr "repo.issues"}} </span> | ||||
</a> | </a> | ||||
{{end}} | |||||
{{end}} --> | |||||
{{if and .Repository.CanEnablePulls (.Permission.CanRead $.UnitTypePullRequests)}} | {{if and .Repository.CanEnablePulls (.Permission.CanRead $.UnitTypePullRequests)}} | ||||
<a class="{{if .PageIsPullList}}active{{end}} item" href="{{.RepoLink}}/pulls"> | <a class="{{if .PageIsPullList}}active{{end}} item" href="{{.RepoLink}}/pulls"> | ||||
@@ -121,35 +132,22 @@ | |||||
</a> | </a> | ||||
{{end}} | {{end}} | ||||
{{if and (.Permission.CanRead $.UnitTypeReleases) (not .IsEmptyRepo) }} | |||||
<a class="{{if .PageIsReleaseList}}active{{end}} item" href="{{.RepoLink}}/releases"> | |||||
{{svg "octicon-tag" 16}} {{.i18n.Tr "repo.releases"}} <span class="ui {{if not .NumReleases}}gray{{else}}blue{{end}} small label">{{.NumReleases}}</span> | |||||
{{if .Permission.CanRead $.UnitTypeDatasets}} | |||||
<a class="{{if .PageIsDataset}}active{{end}} item" href="{{.RepoLink}}/datasets?type=0"> | |||||
{{svg "octicon-inbox" 16}} {{.i18n.Tr "datasets"}} | |||||
</a> | </a> | ||||
{{end}} | {{end}} | ||||
{{if or (.Permission.CanRead $.UnitTypeWiki) (.Permission.CanRead $.UnitTypeExternalWiki)}} | |||||
<a class="{{if .PageIsWiki}}active{{end}} item" href="{{.RepoLink}}/wiki" {{if (.Permission.CanRead $.UnitTypeExternalWiki)}} target="_blank" rel="noopener noreferrer" {{end}}> | |||||
{{svg "octicon-book" 16}} {{.i18n.Tr "repo.wiki"}} | |||||
</a> | |||||
{{end}} | |||||
{{if and (.Permission.CanReadAny $.UnitTypePullRequests $.UnitTypeIssues $.UnitTypeReleases) (not .IsEmptyRepo)}} | |||||
<a class="{{if .PageIsActivity}}active{{end}} item" href="{{.RepoLink}}/activity"> | |||||
{{svg "octicon-pulse" 16}} {{.i18n.Tr "repo.activity"}} | |||||
</a> | |||||
{{end}} | |||||
{{if .Permission.CanRead $.UnitTypeCloudBrain}} | {{if .Permission.CanRead $.UnitTypeCloudBrain}} | ||||
<a class="{{if .PageIsCloudBrain}}active{{end}} item" href="{{.RepoLink}}/cloudbrain"> | <a class="{{if .PageIsCloudBrain}}active{{end}} item" href="{{.RepoLink}}/cloudbrain"> | ||||
{{svg "octicon-server" 16}} {{.i18n.Tr "repo.cloudbrain"}} | |||||
<span>{{svg "octicon-server" 16}} {{.i18n.Tr "repo.cloudbrain"}}<i class="question circle icon link cloudbrain-question" data-content={{.i18n.Tr "repo.cloudbrain_helper"}} data-position="top center" data-variation="mini"></i></span> | |||||
</a> | </a> | ||||
{{end}} | {{end}} | ||||
{{if .IsSigned}} | |||||
<!-- {{if .IsSigned}} | |||||
<a class="{{if .PageIsBlockChain}}active{{end}} item " href="{{.RepoLink}}/blockchain"> | <a class="{{if .PageIsBlockChain}}active{{end}} item " href="{{.RepoLink}}/blockchain"> | ||||
{{svg "octicon-law" 16}} | {{svg "octicon-law" 16}} | ||||
{{.i18n.Tr "repo.balance"}} | {{.i18n.Tr "repo.balance"}} | ||||
</a> | </a> | ||||
{{end}} | |||||
{{end}} --> | |||||
{{template "custom/extra_tabs" .}} | {{template "custom/extra_tabs" .}} | ||||
@@ -243,4 +241,9 @@ | |||||
window.location.href = repolink + "/datasets?type=" + checked_radio | window.location.href = repolink + "/datasets?type=" + checked_radio | ||||
}) | }) | ||||
}) | }) | ||||
$('.question.circle.icon').hover(function(){ | |||||
$(this).popup('show') | |||||
$('.ui.popup.mini.top.center').css({"border-color":'rgba(50, 145, 248, 100)',"color":"rgba(3, 102, 214, 100)","border-radius":"5px"}) | |||||
}); | |||||
</script> | </script> |
@@ -331,7 +331,7 @@ | |||||
<h4 class="ui header"> | <h4 class="ui header"> | ||||
<strong>贡献者 ({{len .ContributorInfo}})</strong> | <strong>贡献者 ({{len .ContributorInfo}})</strong> | ||||
<div class="ui right"> | <div class="ui right"> | ||||
<a class="membersmore text grey" href="javascript:;">全部 {{svg "octicon-chevron-right" 16}}</a> | |||||
<a class="membersmore text grey" href="{{.RepoLink}}/contributors">全部 {{svg "octicon-chevron-right" 16}}</a> | |||||
</div> | </div> | ||||
</h4> | </h4> | ||||
<div class="ui members" id="contributorInfo"> | <div class="ui members" id="contributorInfo"> | ||||
@@ -353,10 +353,10 @@ | |||||
</div> | </div> | ||||
<script type="text/javascript"> | <script type="text/javascript"> | ||||
$(document).ready(function(){ | |||||
$(".membersmore").click(function(){ | |||||
$("#contributorInfo > a:nth-child(n+25)").show(); | |||||
}); | |||||
}); | |||||
// $(document).ready(function(){ | |||||
// $(".membersmore").click(function(){ | |||||
// $("#contributorInfo > a:nth-child(n+25)").show(); | |||||
// }); | |||||
// }); | |||||
</script> | </script> | ||||
{{template "base/footer" .}} | {{template "base/footer" .}} |
@@ -4,7 +4,11 @@ | |||||
<div class="ui container"> | <div class="ui container"> | ||||
{{template "base/alert" .}} | {{template "base/alert" .}} | ||||
<h2 class="ui header"> | <h2 class="ui header"> | ||||
{{.i18n.Tr "repo.release.releases"}} | |||||
<div class="ui breadcrumb"> | |||||
<a class="section" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">{{.i18n.Tr "repo.code"}}</a> | |||||
<div class="divider"> / </div> | |||||
<div class="active section" href="{{.RepoLink}}/releases">{{.i18n.Tr "repo.releases"}}</div> | |||||
</div> | |||||
{{if .CanCreateRelease}} | {{if .CanCreateRelease}} | ||||
<div class="ui right"> | <div class="ui right"> | ||||
<a class="ui small green button" href="{{$.RepoLink}}/releases/new"> | <a class="ui small green button" href="{{$.RepoLink}}/releases/new"> | ||||
@@ -2,6 +2,13 @@ | |||||
<div class="repository wiki start"> | <div class="repository wiki start"> | ||||
{{template "repo/header" .}} | {{template "repo/header" .}} | ||||
<div class="ui container"> | <div class="ui container"> | ||||
<h2 class="ui header"> | |||||
<div class="ui breadcrumb"> | |||||
<a class="section" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">{{.i18n.Tr "repo.code"}}</a> | |||||
<div class="divider"> / </div> | |||||
<div class="active section" href="{{.RepoLink}}/wiki">{{.i18n.Tr "repo.wiki"}}</div> | |||||
</div> | |||||
</h2> | |||||
<div class="ui center segment"> | <div class="ui center segment"> | ||||
{{svg "octicon-book" 32}} | {{svg "octicon-book" 32}} | ||||
<h2>{{.i18n.Tr "repo.wiki.welcome"}}</h2> | <h2>{{.i18n.Tr "repo.wiki.welcome"}}</h2> | ||||
@@ -3,6 +3,14 @@ | |||||
{{template "repo/header" .}} | {{template "repo/header" .}} | ||||
{{ $title := .title}} | {{ $title := .title}} | ||||
<div class="ui container"> | <div class="ui container"> | ||||
<h2 class="ui header"> | |||||
<div class="ui breadcrumb"> | |||||
<a class="section" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">{{.i18n.Tr "repo.code"}}</a> | |||||
<div class="divider"> / </div> | |||||
<div class="active section" href="{{.RepoLink}}/wiki">{{.i18n.Tr "repo.wiki"}}</div> | |||||
</div> | |||||
</h2> | |||||
<div class="ui divider"></div> | |||||
<div class="ui stackable grid"> | <div class="ui stackable grid"> | ||||
<div class="ui ten wide column"> | <div class="ui ten wide column"> | ||||
<div class="choose page"> | <div class="choose page"> | ||||
@@ -28,7 +36,7 @@ | |||||
</div> | </div> | ||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="ui six wide column"> | |||||
<div class="ui six wide column right aligned"> | |||||
<div class="ui action small input" id="clone-panel"> | <div class="ui action small input" id="clone-panel"> | ||||
{{if not $.DisableHTTP}} | {{if not $.DisableHTTP}} | ||||
<button class="ui basic clone button" id="repo-clone-https" data-link="{{.WikiCloneLink.HTTPS}}"> | <button class="ui basic clone button" id="repo-clone-https" data-link="{{.WikiCloneLink.HTTPS}}"> | ||||
@@ -1,9 +1,9 @@ | |||||
<template> | <template> | ||||
<div> | <div> | ||||
<h4 id="about-desc" class="ui header">简介 | |||||
<!-- <a class="edit-icon" href="javascript:void(0)" @click="editClick"> | |||||
<i class="gray edit outline icon"></i> | |||||
</a> --> | |||||
<h4 id="about-desc" class="ui header desc-home">简介 | |||||
<a class="edit-icon" href="javascript:void(0)" @click="editClick"> | |||||
<i class="gray edit outline icon" style="margin-right: 0;"></i> | |||||
</a> | |||||
</h4> | </h4> | ||||
<edit-dialog-cmpt | <edit-dialog-cmpt | ||||
:vmContext="vmContext" | :vmContext="vmContext" | ||||
@@ -11,8 +11,8 @@ | |||||
v-model="editDataDialog" | v-model="editDataDialog" | ||||
:deleteCallback="editDataFunc" | :deleteCallback="editDataFunc" | ||||
:deleteLoading ="editDataListLoading" | :deleteLoading ="editDataListLoading" | ||||
deleteParam = "ruleForm" | |||||
@input="initForm" | |||||
deleteParam = "ruleForm" | |||||
@input="initForm" | |||||
> | > | ||||
<div slot="title"> | <div slot="title"> | ||||
@@ -20,7 +20,7 @@ | |||||
<div slot="content"> | <div slot="content"> | ||||
<el-form label-position="top" :model="info" :rules="rule" ref="ruleForm"> | <el-form label-position="top" :model="info" :rules="rule" ref="ruleForm"> | ||||
<el-form-item label="简介" prop="desc"> | <el-form-item label="简介" prop="desc"> | ||||
<el-input v-model="info.desc" type="textarea" :autosize="{minRows:2,maxRows:6}"></el-input> | |||||
<el-input v-model="info.desc" type="textarea" placeholder="请输入内容" :autosize="{minRows:4,maxRows:6}" maxlength="255" show-word-limit></el-input> | |||||
</el-form-item> | </el-form-item> | ||||
<el-form-item label="主页" prop="index_web" > | <el-form-item label="主页" prop="index_web" > | ||||
<el-input v-model="info.index_web" placeholder="主页(eg: https://git.openi.org.cn)"></el-input> | <el-input v-model="info.index_web" placeholder="主页(eg: https://git.openi.org.cn)"></el-input> | ||||
@@ -79,7 +79,6 @@ export default { | |||||
}, | }, | ||||
initForm(diaolog) { | initForm(diaolog) { | ||||
if (diaolog === false) { | if (diaolog === false) { | ||||
console.log("--watch----------") | |||||
this.getRepoName(); | this.getRepoName(); | ||||
this.getDesc(); | this.getDesc(); | ||||
this.getWeb(); | this.getWeb(); | ||||
@@ -133,12 +132,11 @@ export default { | |||||
<style scoped> | <style scoped> | ||||
.edit-icon{ | .edit-icon{ | ||||
float: right; | |||||
font-size: 16px; | |||||
display: block; | |||||
top: -2px; | |||||
color: #8c92a4; | color: #8c92a4; | ||||
background-color: transparent; | |||||
} | |||||
} | |||||
.desc-home{ | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
</style> | </style> |
@@ -14,8 +14,8 @@ | |||||
<slot name="content"></slot> | <slot name="content"></slot> | ||||
<div slot="footer" class="dialog-footer"> | <div slot="footer" class="dialog-footer"> | ||||
<el-button @click="deleteDialog = false">{{"取消"}}</el-button> | |||||
<el-button type="primary" @click="deleteCallback.call(vmContext,deleteParam)">{{"确定"}}</el-button> | |||||
<el-button size="small" @click="deleteDialog = false">{{"取消"}}</el-button> | |||||
<el-button size="small" style="background-color: #21ba45;color: #fff;" @click="deleteCallback.call(vmContext,deleteParam)">{{"确定"}}</el-button> | |||||
</div> | </div> | ||||
</el-dialog> | </el-dialog> | ||||
</template> | </template> | ||||
@@ -80,26 +80,31 @@ export default { | |||||
.message-box__content .message-box-title{font-size:16px;padding:2px 0;color:#333;} | .message-box__content .message-box-title{font-size:16px;padding:2px 0;color:#333;} | ||||
.message-box__content .message-box-p{font-size:16px;padding:20px 0;color:#333;} | .message-box__content .message-box-p{font-size:16px;padding:20px 0;color:#333;} | ||||
.message-box__content .message-box-info{color:#999;padding:2px 0;} | .message-box__content .message-box-info{color:#999;padding:2px 0;} | ||||
.dialog-footer,.el-message-box__btns{text-align:center;} | |||||
/deep/ .el-dialog__body{ | |||||
padding: 1rem; | |||||
} | |||||
/deep/ .el-dialog__header { | /deep/ .el-dialog__header { | ||||
background: #0067b3; | |||||
padding: 12px 30px; | |||||
line-height: 25px;} | |||||
background: #f0f0f0; | |||||
padding: 1rem; | |||||
} | |||||
/deep/ .el-dialog__title { | /deep/ .el-dialog__title { | ||||
font-family: PingFangSC-Regular; | font-family: PingFangSC-Regular; | ||||
font-size: 18px; | |||||
color: #fff; | |||||
font-size: 1.28571429rem; | |||||
color: rgba(0,0,0,.87); | |||||
font-weight: 200; | font-weight: 200; | ||||
line-height: 25px; | line-height: 25px; | ||||
height: 25px; | height: 25px; | ||||
} | } | ||||
/deep/ .el-dialog__footer { | /deep/ .el-dialog__footer { | ||||
background: #eff3f9; | background: #eff3f9; | ||||
padding: 20px 30px; | |||||
padding: 1rem; | |||||
} | } | ||||
/deep/ .el-dialog{ | /deep/ .el-dialog{ | ||||
width: 40%; | |||||
width: 30%; | |||||
} | |||||
/deep/ .el-form-item__label{ | |||||
padding: 0; | |||||
} | } | ||||
</style> | </style> |
@@ -0,0 +1,74 @@ | |||||
/** | |||||
* LetterAvatar | |||||
* | |||||
* Artur Heinze | |||||
* Create Letter avatar based on Initials | |||||
* based on https://gist.github.com/leecrossley/6027780 | |||||
*/ | |||||
(function(w, d){ | |||||
function LetterAvatar (name, size, color) { | |||||
name = name || ''; | |||||
size = size || 60; | |||||
var colours = [ | |||||
"#1abc9c", "#2ecc71", "#3498db", "#9b59b6", "#34495e", "#16a085", "#27ae60", "#2980b9", "#8e44ad", "#2c3e50", | |||||
"#f1c40f", "#e67e22", "#e74c3c", "#00bcd4", "#95a5a6", "#f39c12", "#d35400", "#c0392b", "#bdc3c7", "#7f8c8d" | |||||
], | |||||
nameSplit = String(name).split(' '), | |||||
initials, charIndex, colourIndex, canvas, context, dataURI; | |||||
if (nameSplit.length == 1) { | |||||
initials = nameSplit[0] ? nameSplit[0].charAt(0):'?'; | |||||
} else { | |||||
initials = nameSplit[0].charAt(0) + nameSplit[1].charAt(0); | |||||
} | |||||
if (w.devicePixelRatio) { | |||||
size = (size * w.devicePixelRatio); | |||||
} | |||||
charIndex = (initials == '?' ? 72 : initials.charCodeAt(0)) - 64; | |||||
colourIndex = charIndex % 20; | |||||
canvas = d.createElement('canvas'); | |||||
canvas.width = size; | |||||
canvas.height = size; | |||||
context = canvas.getContext("2d"); | |||||
context.fillStyle = color ? color : colours[colourIndex - 1]; | |||||
context.fillRect (0, 0, canvas.width, canvas.height); | |||||
context.font = Math.round(canvas.width/2)+"px 'Microsoft Yahei'"; | |||||
context.textAlign = "center"; | |||||
context.fillStyle = "#FFF"; | |||||
context.fillText(initials, size / 2, size / 1.5); | |||||
dataURI = canvas.toDataURL(); | |||||
canvas = null; | |||||
return dataURI; | |||||
} | |||||
LetterAvatar.transform = function() { | |||||
Array.prototype.forEach.call(d.querySelectorAll('img[avatar]'), function(img, name, color) { | |||||
name = img.getAttribute('avatar'); | |||||
color = img.getAttribute('color'); | |||||
img.src = LetterAvatar(name, img.getAttribute('width'), color); | |||||
img.removeAttribute('avatar'); | |||||
img.setAttribute('alt', name); | |||||
}); | |||||
}; | |||||
// AMD support | |||||
if (typeof define === 'function' && define.amd) { | |||||
define(function () { return LetterAvatar; }); | |||||
// CommonJS and Node.js module support. | |||||
} else if (typeof exports !== 'undefined') { | |||||
// Support Node.js specific `module.exports` (which can be a function) | |||||
if (typeof module != 'undefined' && module.exports) { | |||||
exports = module.exports = LetterAvatar; | |||||
} | |||||
// But always support CommonJS module 1.1.1 spec (`exports` cannot be a function) | |||||
exports.LetterAvatar = LetterAvatar; | |||||
} else { | |||||
window.LetterAvatar = LetterAvatar; | |||||
d.addEventListener('DOMContentLoaded', function(event) { | |||||
LetterAvatar.transform(); | |||||
}); | |||||
} | |||||
})(window, document); |
@@ -4,7 +4,7 @@ | |||||
import './publicpath.js'; | import './publicpath.js'; | ||||
import './polyfills.js'; | import './polyfills.js'; | ||||
import './features/letteravatar.js' | |||||
import Vue from 'vue'; | import Vue from 'vue'; | ||||
import ElementUI from 'element-ui'; | import ElementUI from 'element-ui'; | ||||
import 'element-ui/lib/theme-chalk/index.css'; | import 'element-ui/lib/theme-chalk/index.css'; | ||||
@@ -243,4 +243,77 @@ footer .column{margin-bottom:0!important; padding-bottom:0!important;} | |||||
display: inline-block; | display: inline-block; | ||||
width: 100%; | width: 100%; | ||||
} | } | ||||
.git-user-content{ | |||||
margin-bottom: 16px; | |||||
word-break: break-all; | |||||
} | |||||
.row.git-user-content .ui.avatar.s16.image { | |||||
width: 50px !important; | |||||
height: 50px !important; | |||||
vertical-align: middle; | |||||
border-radius: 500rem;} | |||||
.user-list-item { | |||||
padding: 0.3em 0px !important; | |||||
margin: 15px 0 !important; | |||||
width: 220px !important; | |||||
} | |||||
.row.git-user-content .content { | |||||
margin-left: 6px; | |||||
display: inline-block; | |||||
vertical-align: top !important; | |||||
overflow: hidden; | |||||
} | |||||
.row.git-user-content .content .header { | |||||
font-weight: bold; | |||||
} | |||||
.item.user-list-item .header { | |||||
line-height: 23px !important; | |||||
font-size: 16px !important; | |||||
text-overflow: ellipsis; | |||||
overflow: hidden; | |||||
width: 145px; | |||||
white-space:nowrap; | |||||
} | |||||
.item.user-list-item .header a { | |||||
color: #587284 !important; | |||||
} | |||||
.row.git-user-content .content .commit-btn { | |||||
margin-top: 6px; | |||||
float: left; | |||||
font-size: 11px; | |||||
color: #40485b !important; | |||||
} | |||||
.dropdown-menu { | |||||
position: relative; | |||||
display: inline-block; | |||||
margin-top: 4px; | |||||
} | |||||
.dropdown-menu:hover .dropdown-content { | |||||
display: block; | |||||
} | |||||
.dropdown-content{ | |||||
display: none; | |||||
position: absolute; | |||||
background-color: #ffffff; | |||||
min-width: 160px; | |||||
z-index: 999; | |||||
border: 1px solid transparent; | |||||
border-color: #d4d4d5; | |||||
border-top: none; | |||||
} | |||||
.dropdown-content a { | |||||
color: black; | |||||
padding: 12px 16px; | |||||
text-decoration: none; | |||||
display: block; | |||||
} | |||||
.dropdown-content a:hover {background-color: #f1f1f1} | |||||
.cloudbrain-question{ | |||||
margin-left: 4px !important; | |||||
color: #3291F8; | |||||
} |