mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-30 13:16:18 +01:00
fc0c5e80da
This was [implemented](022820103d
) almost 10 years ago in Gogs.
It was using `readonly` attribute instead of `disabled` on checkbox which was doing nothing. According to [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/readonly), `readonly` attribute is not applicable to checkbox inputs. This bug was reported by mrwusel in Matrix room.
Fork page that has similar UI feature did not have this bug.
- replace `readonly` with `disabled`
- do not put info about the restriction directly into the checkbox title
### Before
![image](/attachments/6adaf1a3-6e28-416a-ac85-aa6e570e438d)
### After
![image](/attachments/3590b02b-3c83-4864-bae8-ff1a6a56b2b0)
### In other case
![image](/attachments/7f49d84d-5b3a-43a1-b09c-fb6089c1fb5e)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3786
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
136 lines
5.6 KiB
Go HTML Template
136 lines
5.6 KiB
Go HTML Template
{{template "base/head" .}}
|
|
<div role="main" aria-label="{{.Title}}" class="page-content repository new migrate">
|
|
<div class="ui middle very relaxed page grid">
|
|
<div class="column">
|
|
<form class="ui form" action="{{.Link}}" method="post">
|
|
{{template "base/disable_form_autofill"}}
|
|
{{.CsrfTokenHtml}}
|
|
<h3 class="ui top attached header">
|
|
{{ctx.Locale.Tr "repo.migrate.migrate" .service.Title}}
|
|
<input id="service_type" type="hidden" name="service" value="{{.service}}">
|
|
</h3>
|
|
<div class="ui attached segment">
|
|
{{template "base/alert" .}}
|
|
<div class="inline required field {{if .Err_CloneAddr}}error{{end}}">
|
|
<label for="clone_addr">{{ctx.Locale.Tr "repo.migrate.clone_address"}}</label>
|
|
<input id="clone_addr" name="clone_addr" value="{{.clone_addr}}" autofocus required>
|
|
<span class="help">
|
|
{{ctx.Locale.Tr "repo.migrate.clone_address_desc"}}{{if .ContextUser.CanImportLocal}} {{ctx.Locale.Tr "repo.migrate.clone_local_path"}}{{end}}
|
|
</span>
|
|
</div>
|
|
|
|
<div class="inline field {{if .Err_Auth}}error{{end}}">
|
|
<label for="auth_username">{{ctx.Locale.Tr "username"}}</label>
|
|
<input id="auth_username" name="auth_username" value="{{.auth_username}}" {{if not .auth_username}}data-need-clear="true"{{end}}>
|
|
</div>
|
|
<div class="inline field {{if .Err_Auth}}error{{end}}">
|
|
<label for="auth_password">{{ctx.Locale.Tr "password"}}</label>
|
|
<input id="auth_password" name="auth_password" type="password" value="{{.auth_password}}">
|
|
</div>
|
|
|
|
{{template "repo/migrate/options" .}}
|
|
|
|
<div class="inline field">
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items"}}</label>
|
|
<div class="ui checkbox">
|
|
<input name="wiki" type="checkbox" {{if .wiki}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_wiki"}}</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="migrate_items">
|
|
<span class="help">{{ctx.Locale.Tr "repo.migrate.migrate_items_options"}}</span>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="labels" type="checkbox" {{if .labels}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_labels"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input name="issues" type="checkbox" {{if .issues}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_issues"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="pull_requests" type="checkbox" {{if .pull_requests}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_pullrequests"}}</label>
|
|
</div>
|
|
<div class="ui checkbox">
|
|
<input name="releases" type="checkbox" {{if .releases}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_releases"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<label></label>
|
|
<div class="ui checkbox">
|
|
<input name="milestones" type="checkbox" {{if .milestones}}checked{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.migrate_items_milestones"}}</label>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="divider"></div>
|
|
|
|
<div class="inline required field {{if .Err_Owner}}error{{end}}">
|
|
<label>{{ctx.Locale.Tr "repo.owner"}}</label>
|
|
<div class="ui selection owner dropdown">
|
|
<input type="hidden" id="uid" name="uid" value="{{.ContextUser.ID}}" required>
|
|
<span class="text truncated-item-container" title="{{.ContextUser.Name}}">
|
|
{{ctx.AvatarUtils.Avatar .ContextUser 28 "mini"}}
|
|
<span class="truncated-item-name">{{.ContextUser.ShortName 40}}</span>
|
|
</span>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="menu" title="{{.SignedUser.Name}}">
|
|
<div class="item truncated-item-container" data-value="{{.SignedUser.ID}}">
|
|
{{ctx.AvatarUtils.Avatar .SignedUser 28 "mini"}}
|
|
<span class="truncated-item-name">{{.SignedUser.ShortName 40}}</span>
|
|
</div>
|
|
{{range .Orgs}}
|
|
<div class="item truncated-item-container" data-value="{{.ID}}" title="{{.Name}}">
|
|
{{ctx.AvatarUtils.Avatar . 28 "mini"}}
|
|
<span class="truncated-item-name">{{.ShortName 40}}</span>
|
|
</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="inline required field {{if .Err_RepoName}}error{{end}}">
|
|
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
|
<input id="repo_name" name="repo_name" value="{{.repo_name}}" required maxlength="100">
|
|
</div>
|
|
<div class="inline field">
|
|
<label>{{ctx.Locale.Tr "repo.visibility"}}</label>
|
|
<div class="ui checkbox">
|
|
<input name="private" type="checkbox"
|
|
{{if .IsForcedPrivate}}
|
|
checked disabled
|
|
{{else}}
|
|
{{if .private}}checked{{end}}
|
|
{{end}}>
|
|
<label>{{ctx.Locale.Tr "repo.visibility_helper"}}</label>
|
|
</div>
|
|
{{if .IsForcedPrivate}}
|
|
<span class="help">{{ctx.Locale.Tr "repo.visibility_helper_forced"}}</span>
|
|
{{end}}
|
|
<span class="help">{{ctx.Locale.Tr "repo.visibility_description"}}</span>
|
|
</div>
|
|
<div class="inline field {{if .Err_Description}}error{{end}}">
|
|
<label for="description">{{ctx.Locale.Tr "repo.repo_desc"}}</label>
|
|
<textarea id="description" name="description" maxlength="2048">{{.description}}</textarea>
|
|
</div>
|
|
|
|
<div class="inline field">
|
|
<label></label>
|
|
<button class="ui primary button">
|
|
{{ctx.Locale.Tr "repo.migrate_repo"}}
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{template "base/footer" .}}
|