trusty-cms 2.0.20 → 2.0.21.alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile +7 -5
- data/Gemfile.lock +32 -20
- data/app/assets/images/admin/add_tab.png +0 -0
- data/app/assets/images/admin/avatar_32x32.png +0 -0
- data/app/assets/images/admin/avatar_64x64.png +0 -0
- data/app/assets/images/admin/avatar_96x96.png +0 -0
- data/app/assets/images/admin/calendar_down.png +0 -0
- data/app/assets/images/admin/collapse.png +0 -0
- data/app/assets/images/admin/collapsed.png +0 -0
- data/app/assets/images/admin/draft_page.png +0 -0
- data/app/assets/images/admin/image.png +0 -0
- data/app/assets/images/admin/javascript.png +0 -0
- data/app/assets/images/admin/layout.png +0 -0
- data/app/assets/images/admin/metadata_toggle.png +0 -0
- data/app/assets/images/admin/minus.png +0 -0
- data/app/assets/images/admin/minus_disabled.png +0 -0
- data/app/assets/images/admin/minus_grey.png +0 -0
- data/app/assets/images/admin/navigation_secondary_separator.png +0 -0
- data/app/assets/images/admin/page.png +0 -0
- data/app/assets/images/admin/plus.png +0 -0
- data/app/assets/images/admin/plus_disabled.png +0 -0
- data/app/assets/images/admin/plus_grey.png +0 -0
- data/app/assets/images/admin/popup_border_background.png +0 -0
- data/app/assets/images/admin/popup_border_bottom_left.png +0 -0
- data/app/assets/images/admin/popup_border_bottom_right.png +0 -0
- data/app/assets/images/admin/popup_border_top_left.png +0 -0
- data/app/assets/images/admin/popup_border_top_right.png +0 -0
- data/app/assets/images/admin/search.png +0 -0
- data/app/assets/images/admin/single_form_shadow.png +0 -0
- data/app/assets/images/admin/snippet.png +0 -0
- data/app/assets/images/admin/status_background.png +0 -0
- data/app/assets/images/admin/status_bottom_left.png +0 -0
- data/app/assets/images/admin/status_bottom_right.png +0 -0
- data/app/assets/images/admin/status_top_left.png +0 -0
- data/app/assets/images/admin/status_top_right.png +0 -0
- data/app/assets/images/admin/stylesheet.png +0 -0
- data/app/assets/images/admin/tab_close.png +0 -0
- data/app/assets/images/admin/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/images/admin/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/images/admin/ui-icons_222222_256x240.png +0 -0
- data/app/assets/images/admin/ui-icons_2e83ff_256x240.png +0 -0
- data/app/assets/images/admin/ui-icons_454545_256x240.png +0 -0
- data/app/assets/images/admin/ui-icons_888888_256x240.png +0 -0
- data/app/assets/images/admin/ui-icons_cd0a0a_256x240.png +0 -0
- data/app/assets/images/admin/upload.png +0 -0
- data/app/assets/images/admin/virtual_page.png +0 -0
- data/app/assets/images/radiant/radiant-badge-color.png +0 -0
- data/app/controllers/admin/password_resets_controller.rb +25 -0
- data/app/mailers/password_mailer.rb +8 -0
- data/app/models/user.rb +28 -18
- data/app/views/admin/password_resets/edit.html.haml +23 -0
- data/app/views/admin/password_resets/new.html.haml +14 -0
- data/app/views/admin/welcome/login.html.haml +1 -0
- data/app/views/password_mailer/password_reset.html.haml +3 -0
- data/config/routes.rb +1 -0
- data/coverage/assets/0.10.0/application.css +799 -0
- data/coverage/assets/0.10.0/application.js +1707 -0
- data/coverage/assets/0.10.0/colorbox/border.png +0 -0
- data/coverage/assets/0.10.0/colorbox/controls.png +0 -0
- data/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
- data/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
- data/coverage/assets/0.10.0/favicon_green.png +0 -0
- data/coverage/assets/0.10.0/favicon_red.png +0 -0
- data/coverage/assets/0.10.0/favicon_yellow.png +0 -0
- data/coverage/assets/0.10.0/loading.gif +0 -0
- data/coverage/assets/0.10.0/magnify.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/coverage/index.html +6306 -0
- data/db/migrate/20160527141249_add_password_reset_to_users.rb +6 -0
- data/lib/trusty_cms.rb +1 -1
- data/spec/controllers/application_controller_spec.rb +60 -0
- data/spec/controllers/users_controller_spec.rb +6 -0
- data/spec/controllers/welcome_controller_spec.rb +6 -0
- data/spec/dummy/db/schema.rb +3 -3
- data/spec/dummy/log/development.log +1 -0
- data/spec/dummy/log/test.log +16101 -0
- data/spec/dummy/tmp/cache/747/A70/TrustyCms%3A%3AConfig +0 -0
- data/spec/dummy/tmp/cache/85C/FA0/TrustyCms.cache_mtime +0 -0
- data/spec/factories/layout.rb +17 -0
- data/spec/factories/page.rb +63 -0
- data/spec/factories/page_part.rb +8 -0
- data/spec/factories/user.rb +35 -0
- data/spec/models/layout_spec.rb +29 -0
- data/spec/routing/welcome_routing_spec.rb +18 -0
- data/spec/spec_helper.rb +11 -2
- data/trusty_cms.gemspec +1 -1
- metadata +57 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2a70dc8977477fc05f0c0f564bc8c16f4ceb5af1
|
|
4
|
+
data.tar.gz: 6aadac44daf584414af090b62ce6b8e1fee405ac
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 39b212b91013312d84f24890b0f54295987f3500f1989bdf2c45c118c361d1308f4ca70691f4f4f8630968f4336b6d29d33330269eade03ac8a3e235a1bc1ab8
|
|
7
|
+
data.tar.gz: fb688c23a8a656026905e7e01b0697f3e074f93e77bb42192e45ad752525fbdb115f8cef2784323e1f0e8c81437c9dc66c0c2f97acdf0657a10fd5e279e2e756
|
data/.gitignore
CHANGED
data/Gemfile
CHANGED
|
@@ -33,7 +33,7 @@ gemspec
|
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
group :development, :test do
|
|
36
|
-
gem
|
|
36
|
+
gem 'compass-rails', '~> 2.0.1'
|
|
37
37
|
gem 'thin', '~> 1.6.2'
|
|
38
38
|
gem 'pry', '~> 0.10.0'
|
|
39
39
|
gem 'capybara', '~> 2.3.0'
|
|
@@ -41,10 +41,12 @@ group :development, :test do
|
|
|
41
41
|
gem 'launchy', '~> 2.4.2'
|
|
42
42
|
gem 'database_cleaner', '~> 1.3.0'
|
|
43
43
|
gem 'poltergeist', '~> 1.5.1'
|
|
44
|
-
gem
|
|
45
|
-
gem 'factory_girl_rails', '~> 4.
|
|
44
|
+
gem 'ckeditor', '~> 4.1.0'
|
|
45
|
+
gem 'factory_girl_rails', '~> 4.6.0'
|
|
46
46
|
gem 'rails-observers'
|
|
47
|
-
gem
|
|
48
|
-
gem
|
|
47
|
+
gem 'protected_attributes'
|
|
48
|
+
gem 'pry-rails'
|
|
49
49
|
gem 'mysql2', '~> 0.4.2'
|
|
50
|
+
gem 'pry-byebug'
|
|
51
|
+
gem 'simplecov'
|
|
50
52
|
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
trusty-cms (2.0.
|
|
5
|
-
RedCloth (~> 4.2)
|
|
4
|
+
trusty-cms (2.0.21.alpha)
|
|
5
|
+
RedCloth (~> 4.3.2)
|
|
6
6
|
acts_as_tree (~> 2.1)
|
|
7
7
|
bundler (~> 1.7)
|
|
8
8
|
ckeditor (~> 4.1)
|
|
@@ -30,7 +30,7 @@ PATH
|
|
|
30
30
|
GEM
|
|
31
31
|
remote: https://rubygems.org/
|
|
32
32
|
specs:
|
|
33
|
-
RedCloth (4.2
|
|
33
|
+
RedCloth (4.3.2)
|
|
34
34
|
actionmailer (4.2.6)
|
|
35
35
|
actionpack (= 4.2.6)
|
|
36
36
|
actionview (= 4.2.6)
|
|
@@ -71,7 +71,7 @@ GEM
|
|
|
71
71
|
addressable (2.4.0)
|
|
72
72
|
arel (6.0.3)
|
|
73
73
|
builder (3.2.2)
|
|
74
|
-
byebug (
|
|
74
|
+
byebug (9.0.4)
|
|
75
75
|
capybara (2.3.0)
|
|
76
76
|
mime-types (>= 1.16)
|
|
77
77
|
nokogiri (>= 1.3.3)
|
|
@@ -109,13 +109,14 @@ GEM
|
|
|
109
109
|
delocalize (0.4.0)
|
|
110
110
|
rails (>= 3.0)
|
|
111
111
|
diff-lcs (1.2.5)
|
|
112
|
+
docile (1.1.5)
|
|
112
113
|
erubis (2.7.0)
|
|
113
|
-
eventmachine (1.0.
|
|
114
|
-
eventmachine (1.0.
|
|
115
|
-
execjs (2.
|
|
114
|
+
eventmachine (1.2.0.1)
|
|
115
|
+
eventmachine (1.2.0.1-java)
|
|
116
|
+
execjs (2.7.0)
|
|
116
117
|
factory_girl (4.5.0)
|
|
117
118
|
activesupport (>= 3.0.0)
|
|
118
|
-
factory_girl_rails (4.
|
|
119
|
+
factory_girl_rails (4.6.0)
|
|
119
120
|
factory_girl (~> 4.5.0)
|
|
120
121
|
railties (>= 3.0.0)
|
|
121
122
|
ffi (1.9.10)
|
|
@@ -148,17 +149,19 @@ GEM
|
|
|
148
149
|
launchy (2.4.3-java)
|
|
149
150
|
addressable (~> 2.3)
|
|
150
151
|
spoon (~> 0.0.1)
|
|
151
|
-
libv8 (3.16.14.
|
|
152
|
+
libv8 (3.16.14.15)
|
|
152
153
|
loofah (2.0.3)
|
|
153
154
|
nokogiri (>= 1.5.9)
|
|
154
155
|
mail (2.6.4)
|
|
155
156
|
mime-types (>= 1.16, < 4)
|
|
156
157
|
method_source (0.8.2)
|
|
157
|
-
mime-types (
|
|
158
|
+
mime-types (3.1)
|
|
159
|
+
mime-types-data (~> 3.2015)
|
|
160
|
+
mime-types-data (3.2016.0521)
|
|
158
161
|
mini_portile2 (2.0.0)
|
|
159
|
-
minitest (5.
|
|
160
|
-
multi_json (1.
|
|
161
|
-
mysql2 (0.4.
|
|
162
|
+
minitest (5.9.0)
|
|
163
|
+
multi_json (1.12.1)
|
|
164
|
+
mysql2 (0.4.4)
|
|
162
165
|
nokogiri (1.6.7.2)
|
|
163
166
|
mini_portile2 (~> 2.0.0.rc2)
|
|
164
167
|
nokogiri (1.6.7.2-java)
|
|
@@ -179,9 +182,11 @@ GEM
|
|
|
179
182
|
method_source (~> 0.8.1)
|
|
180
183
|
slop (~> 3.4)
|
|
181
184
|
spoon (~> 0.0)
|
|
182
|
-
pry-byebug (3.
|
|
183
|
-
byebug (~>
|
|
185
|
+
pry-byebug (3.4.0)
|
|
186
|
+
byebug (~> 9.0)
|
|
184
187
|
pry (~> 0.10)
|
|
188
|
+
pry-rails (0.3.4)
|
|
189
|
+
pry (>= 0.9.10)
|
|
185
190
|
rack (1.6.4)
|
|
186
191
|
rack-cache (1.6.1)
|
|
187
192
|
rack (>= 0.4)
|
|
@@ -237,9 +242,9 @@ GEM
|
|
|
237
242
|
rspec-mocks (~> 3.0.0)
|
|
238
243
|
rspec-support (~> 3.0.0)
|
|
239
244
|
rspec-support (3.0.4)
|
|
240
|
-
ruby_parser (3.8.
|
|
245
|
+
ruby_parser (3.8.2)
|
|
241
246
|
sexp_processor (~> 4.1)
|
|
242
|
-
sass (3.4.
|
|
247
|
+
sass (3.4.22)
|
|
243
248
|
sass-rails (5.0.4)
|
|
244
249
|
railties (>= 4.0.0, < 5.0)
|
|
245
250
|
sass (~> 3.1)
|
|
@@ -247,6 +252,11 @@ GEM
|
|
|
247
252
|
sprockets-rails (>= 2.0, < 4.0)
|
|
248
253
|
tilt (>= 1.1, < 3)
|
|
249
254
|
sexp_processor (4.7.0)
|
|
255
|
+
simplecov (0.11.2)
|
|
256
|
+
docile (~> 1.1.0)
|
|
257
|
+
json (~> 1.8)
|
|
258
|
+
simplecov-html (~> 0.10.0)
|
|
259
|
+
simplecov-html (0.10.0)
|
|
250
260
|
slop (3.6.0)
|
|
251
261
|
spoon (0.0.4)
|
|
252
262
|
ffi
|
|
@@ -278,9 +288,9 @@ GEM
|
|
|
278
288
|
uglifier (2.7.2)
|
|
279
289
|
execjs (>= 0.3.0)
|
|
280
290
|
json (>= 1.8.0)
|
|
281
|
-
websocket-driver (0.6.
|
|
291
|
+
websocket-driver (0.6.4)
|
|
282
292
|
websocket-extensions (>= 0.1.0)
|
|
283
|
-
websocket-driver (0.6.
|
|
293
|
+
websocket-driver (0.6.4-java)
|
|
284
294
|
websocket-extensions (>= 0.1.0)
|
|
285
295
|
websocket-extensions (0.1.2)
|
|
286
296
|
will_paginate (3.1.0)
|
|
@@ -296,15 +306,17 @@ DEPENDENCIES
|
|
|
296
306
|
ckeditor (~> 4.1.0)
|
|
297
307
|
compass-rails (~> 2.0.1)
|
|
298
308
|
database_cleaner (~> 1.3.0)
|
|
299
|
-
factory_girl_rails (~> 4.
|
|
309
|
+
factory_girl_rails (~> 4.6.0)
|
|
300
310
|
launchy (~> 2.4.2)
|
|
301
311
|
mysql2 (~> 0.4.2)
|
|
302
312
|
poltergeist (~> 1.5.1)
|
|
303
313
|
protected_attributes
|
|
304
314
|
pry (~> 0.10.0)
|
|
305
315
|
pry-byebug
|
|
316
|
+
pry-rails
|
|
306
317
|
rails-observers
|
|
307
318
|
rspec-rails (~> 3.0.0)
|
|
319
|
+
simplecov
|
|
308
320
|
thin (~> 1.6.2)
|
|
309
321
|
trusty-cms!
|
|
310
322
|
trustygems (~> 0.2.0)
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
class Admin::PasswordResetsController < ApplicationController
|
|
2
|
+
no_login_required
|
|
3
|
+
skip_before_filter :verify_authenticity_token
|
|
4
|
+
|
|
5
|
+
def create
|
|
6
|
+
user = User.find_by_email(params[:email])
|
|
7
|
+
user.send_password_reset if user
|
|
8
|
+
redirect_to welcome_path, :notice => "Email sent with password reset instructions."
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def edit
|
|
12
|
+
@user = User.find_by_password_reset_token!(params[:id])
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def update
|
|
16
|
+
@user = User.find_by_password_reset_token!(params[:id])
|
|
17
|
+
if @user.password_reset_sent_at < 2.hours.ago
|
|
18
|
+
redirect_to new_password_reset_path, :alert => "Password reset has expired."
|
|
19
|
+
elsif @user.update_attributes(params[:user])
|
|
20
|
+
redirect_to welcome_url, :notice => "Password has been reset!"
|
|
21
|
+
else
|
|
22
|
+
render :edit
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
data/app/models/user.rb
CHANGED
|
@@ -60,28 +60,38 @@ class User < ActiveRecord::Base
|
|
|
60
60
|
update_attribute(:session_token, nil)
|
|
61
61
|
end
|
|
62
62
|
|
|
63
|
+
def send_password_reset
|
|
64
|
+
generate_token(:password_reset_token)
|
|
65
|
+
update_attribute(:password_reset_sent_at, Time.zone.now)
|
|
66
|
+
PasswordMailer.password_reset(self).deliver_now
|
|
67
|
+
end
|
|
68
|
+
|
|
63
69
|
private
|
|
64
70
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
71
|
+
def generate_token(column)
|
|
72
|
+
self[column] = SecureRandom.urlsafe_base64 if User.exists?(column => self[column])
|
|
73
|
+
end
|
|
68
74
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
75
|
+
def validate_length_of_password?
|
|
76
|
+
new_record? or not password.to_s.empty?
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
before_create :encrypt_password
|
|
80
|
+
def encrypt_password
|
|
81
|
+
self.salt = Digest::SHA1.hexdigest("--#{Time.now}--#{login}--sweet harmonious biscuits--")
|
|
82
|
+
self.password = sha1(password)
|
|
83
|
+
end
|
|
74
84
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
end
|
|
85
|
+
before_update :encrypt_password_unless_empty_or_unchanged
|
|
86
|
+
def encrypt_password_unless_empty_or_unchanged
|
|
87
|
+
user = self.class.find(self.id)
|
|
88
|
+
case password
|
|
89
|
+
when ''
|
|
90
|
+
self.password = user.password
|
|
91
|
+
when user.password
|
|
92
|
+
else
|
|
93
|
+
encrypt_password
|
|
85
94
|
end
|
|
95
|
+
end
|
|
86
96
|
|
|
87
97
|
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
%h1= t('reset_your_password')
|
|
2
|
+
|
|
3
|
+
= form_for @user, :url => admin_password_reset_path(params[:id]) do |f|
|
|
4
|
+
- if @user.errors.any?
|
|
5
|
+
.error_messages
|
|
6
|
+
%h2 Form is invalid
|
|
7
|
+
%ul
|
|
8
|
+
- for message in @user.errors.full_messages
|
|
9
|
+
%li= message
|
|
10
|
+
%p
|
|
11
|
+
%label{:for=>"password"}= t('password')
|
|
12
|
+
= f.password_field :password
|
|
13
|
+
%p
|
|
14
|
+
%label{:for=>"password_confirmation"}= t('password_confirmation')
|
|
15
|
+
= f.password_field :password_confirmation
|
|
16
|
+
.actions= f.submit "Update Password"
|
|
17
|
+
|
|
18
|
+
%p.version
|
|
19
|
+
= t('powered_by')
|
|
20
|
+
%a{ :href => "https://github.com/pgharts/trusty-cms" } TrustyCms CMS
|
|
21
|
+
= t('version')
|
|
22
|
+
= TrustyCms.loaded_via_gem? ? "#{TrustyCms::VERSION} (gem)." : "#{TrustyCms::VERSION}."
|
|
23
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
%h1= t('reset_your_password')
|
|
2
|
+
|
|
3
|
+
= form_tag admin_password_resets_path, :method => :post do
|
|
4
|
+
%p
|
|
5
|
+
%label{:for=>"email"}= t('email')
|
|
6
|
+
= text_field_tag :email, params[:email], :class => 'textbox', :maxlength => 70, :size => 70
|
|
7
|
+
.actions
|
|
8
|
+
= submit_tag "Reset Password"
|
|
9
|
+
|
|
10
|
+
%p.version
|
|
11
|
+
= t('powered_by')
|
|
12
|
+
%a{ :href => "https://github.com/pgharts/trusty-cms" } TrustyCms CMS
|
|
13
|
+
= t('version')
|
|
14
|
+
= TrustyCms.loaded_via_gem? ? "#{TrustyCms::VERSION} (gem)." : "#{TrustyCms::VERSION}."
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
%p
|
|
11
11
|
%label{:for=>"password"}= t('password')
|
|
12
12
|
= password_field_tag "password", '', :class => 'textbox password', :maxlength => 40, :size => 40
|
|
13
|
+
%p= link_to "Forgot password?", new_admin_password_reset_path
|
|
13
14
|
%p.remember_me
|
|
14
15
|
= check_box_tag :remember_me, 1, false, :class => 'checkbox'
|
|
15
16
|
%label.checkbox{:for=>"remember_me"}= t('remember_me_in_this_browser')
|