|
29 | 29 | </div>
|
30 | 30 |
|
31 | 31 | <!-- LDAP and DLDAP -->
|
32 |
| - <div class="ldap dldap field {{if not (or (eq .type 2) (eq .type 5))}}hide{{end}}"> |
33 |
| - <div class="inline required field {{if .Err_SecurityProtocol}}error{{end}}"> |
34 |
| - <label>{{.i18n.Tr "admin.auths.security_protocol"}}</label> |
35 |
| - <div class="ui selection security-protocol dropdown"> |
36 |
| - <input type="hidden" id="security_protocol" name="security_protocol" value="{{.security_protocol}}"> |
37 |
| - <div class="text">{{.CurrentSecurityProtocol}}</div> |
38 |
| - <i class="dropdown icon"></i> |
39 |
| - <div class="menu"> |
40 |
| - {{range .SecurityProtocols}} |
41 |
| - <div class="item" data-value="{{.Type}}">{{.Name}}</div> |
42 |
| - {{end}} |
43 |
| - </div> |
44 |
| - </div> |
45 |
| - </div> |
46 |
| - <div class="required field"> |
47 |
| - <label for="host">{{.i18n.Tr "admin.auths.host"}}</label> |
48 |
| - <input id="host" name="host" value="{{.host}}" placeholder="e.g. mydomain.com"> |
49 |
| - </div> |
50 |
| - <div class="required field"> |
51 |
| - <label for="port">{{.i18n.Tr "admin.auths.port"}}</label> |
52 |
| - <input id="port" name="port" value="{{.port}}" placeholder="e.g. 636"> |
53 |
| - </div> |
54 |
| - <div class="ldap field {{if not (eq .type 2)}}hide{{end}}"> |
55 |
| - <label for="bind_dn">{{.i18n.Tr "admin.auths.bind_dn"}}</label> |
56 |
| - <input id="bind_dn" name="bind_dn" value="{{.bind_dn}}" placeholder="e.g. cn=Search,dc=mydomain,dc=com"> |
57 |
| - </div> |
58 |
| - <input class="fake" type="password"> |
59 |
| - <div class="ldap field {{if not (eq .type 2)}}hide{{end}}"> |
60 |
| - <label for="bind_password">{{.i18n.Tr "admin.auths.bind_password"}}</label> |
61 |
| - <input id="bind_password" name="bind_password" type="password" value="{{.bind_password}}"> |
62 |
| - <p class="help text red">{{.i18n.Tr "admin.auths.bind_password_helper"}}</p> |
63 |
| - </div> |
64 |
| - <div class="ldap required field {{if not (eq .type 2)}}hide{{end}}"> |
65 |
| - <label for="user_base">{{.i18n.Tr "admin.auths.user_base"}}</label> |
66 |
| - <input id="user_base" name="user_base" value="{{.user_base}}" placeholder="e.g. ou=Users,dc=mydomain,dc=com"> |
67 |
| - </div> |
68 |
| - <div class="dldap required field {{if not (eq .type 5)}}hide{{end}}"> |
69 |
| - <label for="user_dn">{{.i18n.Tr "admin.auths.user_dn"}}</label> |
70 |
| - <input id="user_dn" name="user_dn" value="{{.user_dn}}" placeholder="e.g. uid=%s,ou=Users,dc=mydomain,dc=com"> |
71 |
| - </div> |
72 |
| - <div class="required field"> |
73 |
| - <label for="filter">{{.i18n.Tr "admin.auths.filter"}}</label> |
74 |
| - <input id="filter" name="filter" value="{{.filter}}" placeholder="e.g. (&(objectClass=posixAccount)(uid=%s))"> |
75 |
| - </div> |
76 |
| - <div class="field"> |
77 |
| - <label for="admin_filter">{{.i18n.Tr "admin.auths.admin_filter"}}</label> |
78 |
| - <input id="admin_filter" name="admin_filter" value="{{.admin_filter}}"> |
79 |
| - </div> |
80 |
| - <div class="field"> |
81 |
| - <label for="attribute_username">{{.i18n.Tr "admin.auths.attribute_username"}}</label> |
82 |
| - <input id="attribute_username" name="attribute_username" value="{{.attribute_username}}" placeholder="{{.i18n.Tr "admin.auths.attribute_username_placeholder"}}"> |
83 |
| - </div> |
84 |
| - <div class="field"> |
85 |
| - <label for="attribute_name">{{.i18n.Tr "admin.auths.attribute_name"}}</label> |
86 |
| - <input id="attribute_name" name="attribute_name" value="{{.attribute_name}}"> |
87 |
| - </div> |
88 |
| - <div class="field"> |
89 |
| - <label for="attribute_surname">{{.i18n.Tr "admin.auths.attribute_surname"}}</label> |
90 |
| - <input id="attribute_surname" name="attribute_surname" value="{{.attribute_surname}}"> |
91 |
| - </div> |
92 |
| - <div class="required field"> |
93 |
| - <label for="attribute_mail">{{.i18n.Tr "admin.auths.attribute_mail"}}</label> |
94 |
| - <input id="attribute_mail" name="attribute_mail" value="{{.attribute_mail}}" placeholder="e.g. mail"> |
95 |
| - </div> |
96 |
| - </div> |
| 32 | + {{ template "admin/auth/source/ldap" . }} |
97 | 33 |
|
98 | 34 | <!-- SMTP -->
|
99 |
| - <div class="smtp field {{if not (eq .type 3)}}hide{{end}}"> |
100 |
| - <div class="inline required field"> |
101 |
| - <label>{{.i18n.Tr "admin.auths.smtp_auth"}}</label> |
102 |
| - <div class="ui selection type dropdown"> |
103 |
| - <input type="hidden" id="smtp_auth" name="smtp_auth" value="{{.smtp_auth}}"> |
104 |
| - <div class="text">{{.smtp_auth}}</div> |
105 |
| - <i class="dropdown icon"></i> |
106 |
| - <div class="menu"> |
107 |
| - {{range .SMTPAuths}} |
108 |
| - <div class="item" data-value="{{.}}">{{.}}</div> |
109 |
| - {{end}} |
110 |
| - </div> |
111 |
| - </div> |
112 |
| - </div> |
113 |
| - <div class="required field"> |
114 |
| - <label for="smtp_host">{{.i18n.Tr "admin.auths.smtphost"}}</label> |
115 |
| - <input id="smtp_host" name="smtp_host" value="{{.smtp_host}}"> |
116 |
| - </div> |
117 |
| - <div class="required field"> |
118 |
| - <label for="smtp_port">{{.i18n.Tr "admin.auths.smtpport"}}</label> |
119 |
| - <input id="smtp_port" name="smtp_port" value="{{.smtp_port}}"> |
120 |
| - </div> |
121 |
| - <div class="field"> |
122 |
| - <label for="allowed_domains">{{.i18n.Tr "admin.auths.allowed_domains"}}</label> |
123 |
| - <input id="allowed_domains" name="allowed_domains" value="{{.allowed_domains}}"> |
124 |
| - <p class="help">{{.i18n.Tr "admin.auths.allowed_domains_helper"}}</p> |
125 |
| - </div> |
126 |
| - </div> |
| 35 | + {{ template "admin/auth/source/smtp" . }} |
127 | 36 |
|
128 | 37 | <!-- PAM -->
|
129 | 38 | <div class="pam required field {{if not (eq .type 4)}}hide{{end}}">
|
|
132 | 41 | </div>
|
133 | 42 |
|
134 | 43 | <!-- OAuth2 -->
|
135 |
| - <div class="oauth2 field {{if not (eq .type 6)}}hide{{end}}"> |
136 |
| - <div class="inline required field"> |
137 |
| - <label>{{.i18n.Tr "admin.auths.oauth2_provider"}}</label> |
138 |
| - <div class="ui selection type dropdown"> |
139 |
| - <input type="hidden" id="oauth2_provider" name="oauth2_provider" value="{{.oauth2_provider}}"> |
140 |
| - <div class="text">{{.oauth2_provider}}</div> |
141 |
| - <i class="dropdown icon"></i> |
142 |
| - <div class="menu"> |
143 |
| - {{range $key, $value := .OAuth2Providers}} |
144 |
| - <div class="item" data-value="{{$key}}">{{$value.DisplayName}}</div> |
145 |
| - {{end}} |
146 |
| - </div> |
147 |
| - </div> |
148 |
| - </div> |
149 |
| - <div class="required field"> |
150 |
| - <label for="oauth2_key">{{.i18n.Tr "admin.auths.oauth2_clientID"}}</label> |
151 |
| - <input id="oauth2_key" name="oauth2_key" value="{{.oauth2_key}}"> |
152 |
| - </div> |
153 |
| - <div class="required field"> |
154 |
| - <label for="oauth2_secret">{{.i18n.Tr "admin.auths.oauth2_clientSecret"}}</label> |
155 |
| - <input id="oauth2_secret" name="oauth2_secret" value="{{.oauth2_secret}}"> |
156 |
| - </div> |
157 |
| - </div> |
| 44 | + {{ template "admin/auth/source/oauth" . }} |
158 | 45 |
|
159 | 46 | <div class="ldap field">
|
160 | 47 | <div class="ui checkbox">
|
|
0 commit comments