6a33b290a0
* Fix add authentication page There is a regression in #16199 whereby the add authentication page fails to react to the change in selected type. This is due to the String() method on the LoginSourceType which is ameliorated with an Int() function being added. Following on from this there are a few other related bugs. Fix #16541 Signed-off-by: Andrew Thornton <art27@cantab.net>
130 lines
4.8 KiB
Handlebars
130 lines
4.8 KiB
Handlebars
{{template "base/head" .}}
|
|
<div class="page-content admin new authentication">
|
|
{{template "admin/navbar" .}}
|
|
<div class="ui container">
|
|
{{template "base/alert" .}}
|
|
<h4 class="ui top attached header">
|
|
{{.i18n.Tr "admin.auths.new"}}
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
<form class="ui form" action="{{.Link}}" method="post">
|
|
{{.CsrfTokenHtml}}
|
|
<!-- Types and name -->
|
|
<div class="inline required field {{if .Err_Type}}error{{end}}">
|
|
<label>{{.i18n.Tr "admin.auths.auth_type"}}</label>
|
|
<div class="ui selection type dropdown">
|
|
<input type="hidden" id="auth_type" name="type" value="{{.type.Int}}">
|
|
<div class="text">{{.CurrentTypeName}}</div>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="menu">
|
|
{{range .AuthSources}}
|
|
<div class="item" data-value="{{.Type.Int}}">{{.Name}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="required inline field {{if .Err_Name}}error{{end}}">
|
|
<label for="name">{{.i18n.Tr "admin.auths.auth_name"}}</label>
|
|
<input id="name" name="name" value="{{.name}}" autofocus required>
|
|
</div>
|
|
|
|
<!-- LDAP and DLDAP -->
|
|
{{ template "admin/auth/source/ldap" . }}
|
|
|
|
<!-- SMTP -->
|
|
{{ template "admin/auth/source/smtp" . }}
|
|
|
|
<!-- PAM -->
|
|
<div class="pam required field {{if not (eq .type 4)}}hide{{end}}">
|
|
<label for="pam_service_name">{{.i18n.Tr "admin.auths.pam_service_name"}}</label>
|
|
<input id="pam_service_name" name="pam_service_name" value="{{.pam_service_name}}" />
|
|
<label for="pam_email_domain">{{.i18n.Tr "admin.auths.pam_email_domain"}}</label>
|
|
<input id="pam_email_domain" name="pam_email_domain" value="{{.pam_email_domain}}">
|
|
</div>
|
|
|
|
<!-- OAuth2 -->
|
|
{{ template "admin/auth/source/oauth" . }}
|
|
|
|
<!-- SSPI -->
|
|
{{ template "admin/auth/source/sspi" . }}
|
|
|
|
<div class="ldap field">
|
|
<div class="ui checkbox">
|
|
<label><strong>{{.i18n.Tr "admin.auths.attributes_in_bind"}}</strong></label>
|
|
<input name="attributes_in_bind" type="checkbox" {{if .attributes_in_bind}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="smtp inline field {{if not (eq .type 3)}}hide{{end}}">
|
|
<div class="ui checkbox">
|
|
<label><strong>{{.i18n.Tr "admin.auths.enable_tls"}}</strong></label>
|
|
<input name="tls" type="checkbox" {{if .tls}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="has-tls inline field {{if not .HasTLS}}hide{{end}}">
|
|
<div class="ui checkbox">
|
|
<label><strong>{{.i18n.Tr "admin.auths.skip_tls_verify"}}</strong></label>
|
|
<input name="skip_verify" type="checkbox" {{if .skip_verify}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="ldap inline field {{if not (eq .type 2)}}hide{{end}}">
|
|
<div class="ui checkbox">
|
|
<label><strong>{{.i18n.Tr "admin.auths.syncenabled"}}</strong></label>
|
|
<input name="is_sync_enabled" type="checkbox" {{if .is_sync_enabled}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="inline field">
|
|
<div class="ui checkbox">
|
|
<label><strong>{{.i18n.Tr "admin.auths.activated"}}</strong></label>
|
|
<input name="is_active" type="checkbox" {{if .is_active}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<button class="ui green button">{{.i18n.Tr "admin.auths.new"}}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<h4 class="ui top attached header">
|
|
{{.i18n.Tr "admin.auths.tips"}}
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
<h5>GMail Settings:</h5>
|
|
<p>Host: smtp.gmail.com, Port: 587, Enable TLS Encryption: true</p>
|
|
|
|
<h5>{{.i18n.Tr "admin.auths.tips.oauth2.general"}}:</h5>
|
|
<p>{{.i18n.Tr "admin.auths.tips.oauth2.general.tip"}}</p>
|
|
|
|
<h5 class="ui top attached header">{{.i18n.Tr "admin.auths.tip.oauth2_provider"}}</h5>
|
|
<div class="ui attached segment">
|
|
<li>Bitbucket</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.bitbucket"}}</span>
|
|
<li>Dropbox</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.dropbox"}}</span>
|
|
<li>Facebook</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.facebook"}}</span>
|
|
<li>GitHub</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.github"}}</span>
|
|
<li>GitLab</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.gitlab"}}</span>
|
|
<li>Google</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.google_plus"}}</span>
|
|
<li>OpenID Connect</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.openid_connect"}}</span>
|
|
<li>Twitter</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.twitter"}}</span>
|
|
<li>Discord</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.discord"}}</span>
|
|
<li>Gitea</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.gitea"}}</span>
|
|
<li>Nextcloud</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.nextcloud"}}</span>
|
|
<li>Yandex</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.yandex"}}</span>
|
|
<li>Mastodon</li>
|
|
<span>{{.i18n.Tr "admin.auths.tip.mastodon"}}</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{template "base/footer" .}}
|