##// END OF EJS Templates
ui: fix labels on sign in screen
dan -
r3401:2e796cf5 default
parent child Browse files
Show More
@@ -1,298 +1,304 b''
1 //LOGIN
1 //LOGIN
2
2
3
3
4 .loginbox {
4 .loginbox {
5 max-width: 65%;
5 max-width: 65%;
6 margin: @pagepadding auto;
6 margin: @pagepadding auto;
7 font-family: @text-light;
7 font-family: @text-light;
8 border: @border-thickness solid @grey5;
8 border: @border-thickness solid @grey5;
9 box-sizing: border-box;
9 box-sizing: border-box;
10
10
11 @media (max-width:1200px) {
11 @media (max-width:1200px) {
12 max-width: 85%;
12 max-width: 85%;
13 }
13 }
14
14
15 @media (max-width:768px) {
15 @media (max-width:768px) {
16 max-width: 100%;
16 max-width: 100%;
17 width: 100%;
17 width: 100%;
18 margin: 0;
18 margin: 0;
19 }
19 }
20
20
21 .title {
21 .title {
22 float: none;
22 float: none;
23 }
23 }
24
24
25 .header {
25 .header {
26 width: 100%;
26 width: 100%;
27 padding: 0 35px;
27 padding: 0 35px;
28 box-sizing: border-box;
28 box-sizing: border-box;
29
29
30 .title {
30 .title {
31 padding: 0;
31 padding: 0;
32 }
32 }
33 }
33 }
34
34
35 .loginwrapper {
35 .loginwrapper {
36 float: left;
36 float: left;
37 height: 100%;
37 height: 100%;
38 width: 100%;
38 width: 100%;
39 padding: 35px 55px 35px 35px;
39 padding: 35px 55px 35px 35px;
40 background-color: white;
40 background-color: white;
41 box-sizing: border-box;
41 box-sizing: border-box;
42
42
43 @media (max-width:414px) {
43 @media (max-width:414px) {
44 padding: 35px;
44 padding: 35px;
45 }
45 }
46 }
46 }
47
47
48 .left-column {
48 .left-column {
49 float: left;
49 float: left;
50 position: relative;
50 position: relative;
51 width: 50%;
51 width: 50%;
52 height: 100%;
52 height: 100%;
53
53
54 @media (max-width:414px) {
54 @media (max-width:414px) {
55 display:none;
55 display:none;
56 }
56 }
57 }
57 }
58
58
59 .right-column {
59 .right-column {
60 float: right;
60 float: right;
61 position: relative;
61 position: relative;
62 width: 50%;
62 width: 50%;
63
63
64 @media (max-width:414px) {
64 @media (max-width:414px) {
65 width: 100%;
65 width: 100%;
66 }
66 }
67 }
67 }
68
68
69 .sign-in-image {
69 .sign-in-image {
70 display: block;
70 display: block;
71 width: 65%;
71 width: 65%;
72 margin: 5% auto;
72 margin: 5% auto;
73 }
73 }
74
74
75 .sign-in-title {
75 .sign-in-title {
76
76
77 h4 {
77 h4 {
78 margin: @padding*2 0;
78 margin: @padding*2 0;
79 }
79 }
80 }
80 }
81
81
82 .form {
82 .form {
83 label {
83 label {
84 display: block;
84 display: block;
85 }
85 }
86
86
87 input {
87 input {
88 width: 100%;
88 width: 100%;
89 margin: 0 10% @padding 0;
89 margin: 0 10% @padding 0;
90 .box-sizing(border-box) ;
90 .box-sizing(border-box) ;
91
91
92 &[type="checkbox"] {
92 &[type="checkbox"] {
93 clear: both;
93 clear: both;
94 width: auto;
94 width: auto;
95 margin: 0 1em @padding 0;
95 margin: 0 1em @padding 0;
96 }
96 }
97 }
97 }
98
98
99 .checkbox {
99 .checkbox {
100 display: inline;
100 display: inline;
101 width: auto;
101 width: auto;
102 }
102 }
103
103
104 .sign-in {
104 .sign-in {
105 clear: both;
105 clear: both;
106 width: 100%;
106 width: 100%;
107 margin: @padding 0;
107 margin: @padding 0;
108 }
108 }
109 .pwd_reset {
110 font-weight: normal;
111 }
112 .new_account {
113 font-weight: bold;
114 }
109 }
115 }
110 .register_message,
116 .register_message,
111 .activation_msg {
117 .activation_msg {
112 padding: 0 0 @padding;
118 padding: 0 0 @padding;
113 }
119 }
114
120
115 .buttons,
121 .buttons,
116 .links {
122 .links {
117 padding: 0;
123 padding: 0;
118 }
124 }
119
125
120 .buttons {
126 .buttons {
121 input {
127 input {
122 margin-right: 0;
128 margin-right: 0;
123 .box-sizing(border-box);
129 .box-sizing(border-box);
124 }
130 }
125
131
126 #sign_up, #send {
132 #sign_up, #send {
127 width: 100%;
133 width: 100%;
128 }
134 }
129 }
135 }
130
136
131 .fields {
137 .fields {
132 .field.field-compact {
138 .field.field-compact {
133 margin-bottom: 0px;
139 margin-bottom: 0px;
134 }
140 }
135
141
136 .buttons {
142 .buttons {
137 margin: 0;
143 margin: 0;
138 }
144 }
139
145
140 .field {
146 .field {
141 margin-bottom: 15px;
147 margin-bottom: 15px;
142
148
143 input {
149 input {
144 width: 100%;
150 width: 100%;
145 .box-sizing(border-box);
151 .box-sizing(border-box);
146 }
152 }
147
153
148 .input {
154 .input {
149 margin-left: 0;
155 margin-left: 0;
150 }
156 }
151
157
152 .label {
158 .label {
153 padding-top: 0;
159 padding-top: 0;
154 }
160 }
155 }
161 }
156 }
162 }
157
163
158 .checkbox {
164 .checkbox {
159 margin: 0 0 @textmargin 0;
165 margin: 0 0 @textmargin 0;
160
166
161 input[type="checkbox"] {
167 input[type="checkbox"] {
162 width: auto;
168 width: auto;
163 }
169 }
164
170
165 label {
171 label {
166 padding: 0;
172 padding: 0;
167 min-height: 0;
173 min-height: 0;
168 }
174 }
169 }
175 }
170
176
171 .activation_msg {
177 .activation_msg {
172 padding: @padding 0 0;
178 padding: @padding 0 0;
173 color: @grey4;
179 color: @grey4;
174 }
180 }
175
181
176 .links {
182 .links {
177 float: right;
183 float: right;
178 margin: 0;
184 margin: 0;
179 padding: 0;
185 padding: 0;
180 line-height: 1;
186 line-height: 1;
181
187
182 p {
188 p {
183 float: right;
189 float: right;
184 margin: 0;
190 margin: 0;
185 line-height: 1.5em;
191 line-height: 1.5em;
186 }
192 }
187 }
193 }
188
194
189 p.help-block {
195 p.help-block {
190 margin-left: 0;
196 margin-left: 0;
191 }
197 }
192 }
198 }
193
199
194 .user-menu.submenu {
200 .user-menu.submenu {
195 right: 0;
201 right: 0;
196 left: auto;
202 left: auto;
197 }
203 }
198 #quick_login {
204 #quick_login {
199 left: auto;
205 left: auto;
200 right: 0;
206 right: 0;
201 padding: @menupadding;
207 padding: @menupadding;
202 z-index: 999;
208 z-index: 999;
203 overflow: hidden;
209 overflow: hidden;
204 background-color: @grey6;
210 background-color: @grey6;
205 color: @grey2;
211 color: @grey2;
206
212
207 h4 {
213 h4 {
208 margin-bottom: 12px;
214 margin-bottom: 12px;
209 }
215 }
210
216
211 .form {
217 .form {
212 width: auto;
218 width: auto;
213 }
219 }
214
220
215 label, .field {
221 label, .field {
216 margin-bottom: 0;
222 margin-bottom: 0;
217 }
223 }
218
224
219 .label {
225 .label {
220 padding-top: 0;
226 padding-top: 0;
221 }
227 }
222
228
223 input {
229 input {
224 min-width: 215px;
230 min-width: 215px;
225 margin: 8px 0 @padding;
231 margin: 8px 0 @padding;
226 }
232 }
227
233
228 input[type="submit"] {
234 input[type="submit"] {
229 &:extend(.btn-primary);
235 &:extend(.btn-primary);
230 width:100%;
236 width:100%;
231 min-width: 0;
237 min-width: 0;
232 }
238 }
233
239
234 .forgot_password,
240 .forgot_password,
235 .buttons .register {
241 .buttons .register {
236 a {
242 a {
237 color: @rcblue;
243 color: @rcblue;
238
244
239 &:hover {
245 &:hover {
240 color: @rcdarkblue;
246 color: @rcdarkblue;
241 }
247 }
242 }
248 }
243 }
249 }
244
250
245 .buttons {
251 .buttons {
246 margin: 0;
252 margin: 0;
247 }
253 }
248
254
249 .buttons a {
255 .buttons a {
250 padding: 8px 0;
256 padding: 8px 0;
251 line-height: 1.4em;
257 line-height: 1.4em;
252 color: @grey4;
258 color: @grey4;
253
259
254 &:hover {
260 &:hover {
255 color: @grey2;
261 color: @grey2;
256 }
262 }
257 }
263 }
258
264
259 #sign_in {
265 #sign_in {
260 margin-bottom: 0
266 margin-bottom: 0
261 }
267 }
262
268
263 .big_gravatar {
269 .big_gravatar {
264 float: left;
270 float: left;
265 display: block;
271 display: block;
266 margin-top: .5em;
272 margin-top: .5em;
267 }
273 }
268
274
269 .full_name,
275 .full_name,
270 .email {
276 .email {
271 margin: 0 0 0 65px;
277 margin: 0 0 0 65px;
272 }
278 }
273
279
274 .email {
280 .email {
275 font-family: @text-light;
281 font-family: @text-light;
276 }
282 }
277
283
278 ol.links {
284 ol.links {
279 clear:both;
285 clear:both;
280 margin: 0;
286 margin: 0;
281 padding: @padding 0 0 0;
287 padding: @padding 0 0 0;
282
288
283 li {
289 li {
284 border-top: @border-thickness solid @grey5;
290 border-top: @border-thickness solid @grey5;
285
291
286 input {
292 input {
287 margin: @padding 0 0 0;
293 margin: @padding 0 0 0;
288 }
294 }
289 }
295 }
290 }
296 }
291 }
297 }
292 .submenu #quick_login li:hover {
298 .submenu #quick_login li:hover {
293 background-color: transparent;
299 background-color: transparent;
294 }
300 }
295
301
296 #quick_login_link:hover + #quick_login {
302 #quick_login_link:hover + #quick_login {
297 display: block;
303 display: block;
298 }
304 }
@@ -1,104 +1,104 b''
1 ## -*- coding: utf-8 -*-
1 ## -*- coding: utf-8 -*-
2 <%inherit file="base/root.mako"/>
2 <%inherit file="base/root.mako"/>
3
3
4 <%def name="title()">
4 <%def name="title()">
5 ${_('Sign In')}
5 ${_('Sign In')}
6 %if c.rhodecode_name:
6 %if c.rhodecode_name:
7 &middot; ${h.branding(c.rhodecode_name)}
7 &middot; ${h.branding(c.rhodecode_name)}
8 %endif
8 %endif
9 </%def>
9 </%def>
10
10
11 <style>body{background-color:#eeeeee;}</style>
11 <style>body{background-color:#eeeeee;}</style>
12 <div class="loginbox">
12 <div class="loginbox">
13 <div class="header">
13 <div class="header">
14 <div id="header-inner" class="title">
14 <div id="header-inner" class="title">
15 <div id="logo">
15 <div id="logo">
16 <div class="logo-wrapper">
16 <div class="logo-wrapper">
17 <a href="${h.route_path('home')}"><img src="${h.asset('images/rhodecode-logo-white-216x60.png')}" alt="RhodeCode"/></a>
17 <a href="${h.route_path('home')}"><img src="${h.asset('images/rhodecode-logo-white-216x60.png')}" alt="RhodeCode"/></a>
18 </div>
18 </div>
19 %if c.rhodecode_name:
19 %if c.rhodecode_name:
20 <div class="branding">- ${h.branding(c.rhodecode_name)}</div>
20 <div class="branding">- ${h.branding(c.rhodecode_name)}</div>
21 %endif
21 %endif
22 </div>
22 </div>
23 </div>
23 </div>
24 </div>
24 </div>
25
25
26 <div class="loginwrapper">
26 <div class="loginwrapper">
27 <rhodecode-toast id="notifications"></rhodecode-toast>
27 <rhodecode-toast id="notifications"></rhodecode-toast>
28
28
29 <div class="left-column">
29 <div class="left-column">
30 <img class="sign-in-image" src="${h.asset('images/sign-in.png')}" alt="RhodeCode"/>
30 <img class="sign-in-image" src="${h.asset('images/sign-in.png')}" alt="RhodeCode"/>
31 </div>
31 </div>
32
32
33 <%block name="above_login_button" />
33 <%block name="above_login_button" />
34 <div id="login" class="right-column">
34 <div id="login" class="right-column">
35 <!-- login -->
35 <!-- login -->
36 <div class="sign-in-title">
36 <div class="sign-in-title">
37 <h1>${_('Sign In using username/password')}</h1>
37 <h1>${_('Sign In using username/password')}</h1>
38 </div>
38 </div>
39 <div class="inner form">
39 <div class="inner form">
40 ${h.form(request.route_path('login', _query={'came_from': c.came_from}), needs_csrf_token=False)}
40 ${h.form(request.route_path('login', _query={'came_from': c.came_from}), needs_csrf_token=False)}
41
41
42 <label for="username">${_('Username')}:</label>
42 <label for="username">${_('Username')}:</label>
43 ${h.text('username', class_='focus', value=defaults.get('username'))}
43 ${h.text('username', class_='focus', value=defaults.get('username'))}
44 %if 'username' in errors:
44 %if 'username' in errors:
45 <span class="error-message">${errors.get('username')}</span>
45 <span class="error-message">${errors.get('username')}</span>
46 <br />
46 <br />
47 %endif
47 %endif
48
48
49 <label for="password">${_('Password')}:
49 <label for="password">${_('Password')}:
50 %if h.HasPermissionAny('hg.password_reset.enabled')():
50 %if h.HasPermissionAny('hg.password_reset.enabled')():
51 <div class="pull-right">${h.link_to(_('Forgot your password?'), h.route_path('reset_password'), class_='pwd_reset', tabindex="-1")}</div>
51 <div class="pull-right">${h.link_to(_('Forgot your password?'), h.route_path('reset_password'), class_='pwd_reset', tabindex="-1")}</div>
52 %endif
52 %endif
53
53
54 </label>
54 </label>
55 ${h.password('password', class_='focus')}
55 ${h.password('password', class_='focus')}
56 %if 'password' in errors:
56 %if 'password' in errors:
57 <span class="error-message">${errors.get('password')}</span>
57 <span class="error-message">${errors.get('password')}</span>
58 <br />
58 <br />
59 %endif
59 %endif
60
60
61 ${h.checkbox('remember', value=True, checked=defaults.get('remember'))}
61 ${h.checkbox('remember', value=True, checked=defaults.get('remember'))}
62 <% timeout = request.registry.settings.get('beaker.session.timeout', '0') %>
62 <% timeout = request.registry.settings.get('beaker.session.timeout', '0') %>
63 % if timeout == '0':
63 % if timeout == '0':
64 <% remember_label = _('Remember my indefinitely') %>
64 <% remember_label = _('Remember my indefinitely') %>
65 % else:
65 % else:
66 <% remember_label = _('Remember me for {}').format(h.age_from_seconds(timeout)) %>
66 <% remember_label = _('Remember me for {}').format(h.age_from_seconds(timeout)) %>
67 % endif
67 % endif
68 <label class="checkbox" for="remember">${remember_label}</label>
68 <label class="checkbox" for="remember">${remember_label}</label>
69
69
70 <p class="links">
70 <p class="links">
71 %if h.HasPermissionAny('hg.admin', 'hg.register.auto_activate', 'hg.register.manual_activate')():
71 %if h.HasPermissionAny('hg.admin', 'hg.register.auto_activate', 'hg.register.manual_activate')():
72 ${h.link_to(_("Create a new account."), request.route_path('register'))}
72 ${h.link_to(_("Create a new account."), request.route_path('register'), class_='new_account')}
73 %endif
73 %endif
74 </p>
74 </p>
75
75
76 %if not h.HasPermissionAny('hg.password_reset.enabled')():
76 %if not h.HasPermissionAny('hg.password_reset.enabled')():
77 ## password reset hidden or disabled.
77 ## password reset hidden or disabled.
78 <p class="help-block">
78 <p class="help-block">
79 ${_('Password reset is disabled.')} <br/>
79 ${_('Password reset is disabled.')} <br/>
80 ${_('Please contact ')}
80 ${_('Please contact ')}
81 % if c.visual.rhodecode_support_url:
81 % if c.visual.rhodecode_support_url:
82 <a href="${c.visual.rhodecode_support_url}" target="_blank">${_('Support')}</a>
82 <a href="${c.visual.rhodecode_support_url}" target="_blank">${_('Support')}</a>
83 ${_('or')}
83 ${_('or')}
84 % endif
84 % endif
85 ${_('an administrator if you need help.')}
85 ${_('an administrator if you need help.')}
86 </p>
86 </p>
87 %endif
87 %endif
88
88
89 ${h.submit('sign_in', _('Sign In'), class_="btn sign-in", title=_('Sign in to {}').format(c.rhodecode_edition))}
89 ${h.submit('sign_in', _('Sign In'), class_="btn sign-in", title=_('Sign in to {}').format(c.rhodecode_edition))}
90
90
91 ${h.end_form()}
91 ${h.end_form()}
92 <script type="text/javascript">
92 <script type="text/javascript">
93 $(document).ready(function(){
93 $(document).ready(function(){
94 $('#username').focus();
94 $('#username').focus();
95 })
95 })
96 </script>
96 </script>
97
97
98 </div>
98 </div>
99 <!-- end login -->
99 <!-- end login -->
100
100
101 <%block name="below_login_button" />
101 <%block name="below_login_button" />
102 </div>
102 </div>
103 </div>
103 </div>
104 </div>
104 </div>
General Comments 0
You need to be logged in to leave comments. Login now