mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-11-24 10:46:10 +01:00
9269a038a4
* Direct avatar rendering This adds new template helpers for avatar rendering which output image elements with direct links to avatars which makes them cacheable by the browsers. This should be a major performance improvment for pages with many avatars. * fix avatars of other user's profile pages * fix top border on user avatar name * uncircle avatars * remove old incomplete avatar selector * use title attribute for name and add it back on blame * minor refactor * tweak comments * fix url path join and adjust test to new result * dedupe functions
207 lines
8.6 KiB
Handlebars
207 lines
8.6 KiB
Handlebars
{{template "base/head" .}}
|
|
<div class="page-content repository new repo">
|
|
<div class="ui middle very relaxed page grid">
|
|
<div class="column">
|
|
<form class="ui form" action="{{.Link}}" method="post">
|
|
{{.CsrfTokenHtml}}
|
|
<h3 class="ui top attached header">
|
|
{{.i18n.Tr "new_repo"}}
|
|
</h3>
|
|
<div class="ui attached segment">
|
|
{{template "base/alert" .}}
|
|
<div class="inline required field {{if .Err_Owner}}error{{end}}">
|
|
<label>{{.i18n.Tr "repo.owner"}}</label>
|
|
<div class="ui selection owner dropdown">
|
|
<input type="hidden" id="uid" name="uid" value="{{.ContextUser.ID}}" required>
|
|
<span class="text" title="{{.ContextUser.Name}}">
|
|
{{avatar .ContextUser 28 "mini"}}
|
|
{{.ContextUser.ShortName 20}}
|
|
</span>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="menu">
|
|
<div class="item" data-value="{{.SignedUser.ID}}" title="{{.SignedUser.Name}}">
|
|
{{avatar .SignedUser 28 "mini"}}
|
|
{{.SignedUser.ShortName 20}}
|
|
</div>
|
|
{{range .Orgs}}
|
|
<div class="item" data-value="{{.ID}}" title="{{.Name}}">
|
|
{{avatar . 28 "mini"}}
|
|
{{.ShortName 20}}
|
|
</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
<span class="help">Some organizations may not show up in the dropdown due to a maximum repository count limit</span>
|
|
</div>
|
|
|
|
<div class="inline required field {{if .Err_RepoName}}error{{end}}">
|
|
<label for="repo_name">{{.i18n.Tr "repo.repo_name"}}</label>
|
|
<input id="repo_name" name="repo_name" value="{{.repo_name}}" autofocus required>
|
|
<span class="help">{{.i18n.Tr "repo.repo_name_helper"}}</span>
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.visibility"}}</label>
|
|
<div class="ui checkbox">
|
|
{{if .IsForcedPrivate}}
|
|
<input name="private" type="checkbox" checked readonly>
|
|
<label>{{.i18n.Tr "repo.visibility_helper_forced" | Safe}}</label>
|
|
{{else}}
|
|
<input name="private" type="checkbox" {{if .private}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.visibility_helper" | Safe}}</label>
|
|
{{end}}
|
|
</div>
|
|
<span class="help">{{.i18n.Tr "repo.visibility_description"}}</span>
|
|
</div>
|
|
<div class="inline field {{if .Err_Description}}error{{end}}">
|
|
<label for="description">{{.i18n.Tr "repo.repo_desc"}}</label>
|
|
<textarea id="description" name="description">{{.description}}</textarea>
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.template"}}</label>
|
|
<div id="repo_template_search" class="ui search normal selection dropdown">
|
|
<input type="hidden" id="repo_template" name="repo_template" value="{{.repo_template}}">
|
|
<div class="default text">{{.repo_template_name}}</div>
|
|
<div class="menu">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="template_units" style="display: none;">
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.template.items"}}</label>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="git_content" type="checkbox" tabindex="0" {{if .git_content}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.git_content"}}</label>
|
|
</div>
|
|
<div class="ui checkbox{{if not .SignedUser.CanEditGitHook}} poping up{{end}}"{{if not .SignedUser.CanEditGitHook}} data-content="{{.i18n.Tr "repo.template.git_hooks_tooltip"}}"{{end}}>
|
|
<input class="hidden" name="git_hooks" type="checkbox" tabindex="0" {{if .git_hooks}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.git_hooks"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="webhooks" type="checkbox" tabindex="0" {{if .webhooks}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.webhooks"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="topics" type="checkbox" tabindex="0" {{if .topics}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.topics"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="avatar" type="checkbox" tabindex="0" {{if .avatar}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.avatar"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="labels" type="checkbox" tabindex="0" {{if .labels}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.template.issue_labels"}}</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="non_template">
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.issue_labels"}}</label>
|
|
<div class="ui search normal selection dropdown">
|
|
<input type="hidden" name="issue_labels" value="{{.issueLabels}}">
|
|
<div class="default text">{{.i18n.Tr "repo.issue_labels_helper"}}</div>
|
|
<div class="menu">
|
|
<div class="item" data-value="">{{.i18n.Tr "repo.issue_labels_helper"}}</div>
|
|
{{range $template, $labels := .LabelTemplates}}
|
|
<div class="item" data-value="{{$template}}">{{$template}}<br/><i>({{$labels}})</i></div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="ui divider"></div>
|
|
|
|
<div class="inline field">
|
|
<label>.gitignore</label>
|
|
<div class="ui multiple search normal selection dropdown">
|
|
<input type="hidden" name="gitignores" value="{{.gitignores}}">
|
|
<div class="default text">{{.i18n.Tr "repo.repo_gitignore_helper"}}</div>
|
|
<div class="menu">
|
|
{{range .Gitignores}}
|
|
<div class="item" data-value="{{.}}">{{.}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.license"}}</label>
|
|
<div class="ui search selection dropdown">
|
|
<input type="hidden" name="license" value="{{.license}}">
|
|
<div class="default text">{{.i18n.Tr "repo.license_helper"}}</div>
|
|
<div class="menu">
|
|
<div class="item" data-value="">{{.i18n.Tr "repo.license_helper"}}</div>
|
|
{{range .Licenses}}
|
|
<div class="item" data-value="{{.}}">{{.}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.readme"}}</label>
|
|
<div class="ui selection dropdown">
|
|
<input type="hidden" name="readme" value="{{.readme}}">
|
|
<div class="default text">{{.i18n.Tr "repo.readme_helper"}}</div>
|
|
<div class="menu">
|
|
{{range .Readmes}}
|
|
<div class="item" data-value="{{.}}">{{.}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<div class="ui checkbox" id="auto-init">
|
|
<input class="hidden" name="auto_init" type="checkbox" tabindex="0" {{if .auto_init}}checked{{end}}>
|
|
<label>{{.i18n.Tr "repo.auto_init"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label for="default_branch">{{.i18n.Tr "repo.default_branch"}}</label>
|
|
<input id="default_branch" name="default_branch" value="{{.default_branch}}" placeholder="{{.default_branch}}">
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.settings.trust_model"}}</label>
|
|
<div class="ui selection owner dropdown">
|
|
<input type="hidden" id="trust_model" name="trust_model" value="default" required>
|
|
<div class="default text">{{.i18n.Tr "repo.settings.trust_model"}}</div>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="menu">
|
|
<div class="item" data-value="default">{{.i18n.Tr "repo.settings.trust_model.default"}}</div>
|
|
<div class="item" data-value="collaborator">{{.i18n.Tr "repo.settings.trust_model.collaborator"}}</div>
|
|
<div class="item" data-value="committer">{{.i18n.Tr "repo.settings.trust_model.committer"}}</div>
|
|
<div class="item" data-value="collaboratorcommitter">{{.i18n.Tr "repo.settings.trust_model.collaboratorcommitter"}}</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{.i18n.Tr "repo.template"}}</label>
|
|
<div class="ui checkbox">
|
|
<input class="hidden" name="template" type="checkbox" tabindex="0">
|
|
<label>{{.i18n.Tr "repo.template_helper"}}</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<br/>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<button class="ui green button">
|
|
{{.i18n.Tr "repo.create_repo"}}
|
|
</button>
|
|
<a class="ui button" href="{{AppSubUrl}}/">{{.i18n.Tr "cancel"}}</a>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{template "base/footer" .}}
|