muck-users 0.2.23 → 0.3.0
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.
- data/README.rdoc +3 -1
- data/VERSION +1 -1
- data/app/controllers/admin/muck/access_codes_controller.rb +78 -0
- data/app/controllers/admin/muck/roles_controller.rb +34 -24
- data/app/controllers/admin/muck/users_controller.rb +56 -21
- data/app/controllers/muck/access_code_requests_controller.rb +27 -0
- data/app/controllers/muck/activations_controller.rb +0 -1
- data/app/controllers/muck/users_controller.rb +122 -110
- data/app/models/role.rb +5 -2
- data/app/models/user_mailer.rb +7 -0
- data/app/views/access_code_requests/new.html.erb +7 -0
- data/app/views/access_code_requests/show.html.erb +1 -0
- data/app/views/admin/access_codes/_access_code.html.erb +8 -0
- data/app/views/admin/access_codes/_form.html.erb +15 -0
- data/app/views/admin/access_codes/_user.html.erb +6 -0
- data/app/views/admin/access_codes/bulk.html.erb +12 -0
- data/app/views/admin/access_codes/edit.html.erb +6 -0
- data/app/views/admin/access_codes/index.html.erb +18 -0
- data/app/views/admin/access_codes/new.html.erb +6 -0
- data/app/views/admin/access_codes/show.html.erb +30 -0
- data/app/views/admin/permissions/_permission.html.erb +3 -0
- data/app/views/admin/roles/_role.html.erb +5 -9
- data/app/views/admin/roles/edit.html.erb +4 -17
- data/app/views/admin/roles/index.html.erb +16 -8
- data/app/views/admin/roles/new.html.erb +4 -16
- data/app/views/admin/roles/show.html.erb +3 -7
- data/app/views/admin/users/_activate.html.erb +2 -2
- data/app/views/admin/users/_row.html.erb +8 -2
- data/app/views/admin/users/_table.html.erb +10 -15
- data/app/views/admin/users/permissions.html.erb +8 -0
- data/app/views/user_mailer/access_code.text.html.erb +3 -0
- data/app/views/user_mailer/access_code.text.plain.erb +5 -0
- data/app/views/users/_signup_form.html.erb +7 -0
- data/app/views/users/welcome.html.erb +1 -1
- data/config/muck_users_routes.rb +5 -2
- data/db/migrate/20100123035450_create_access_codes.rb +19 -0
- data/db/migrate/20100123233654_create_access_code_requests.rb +14 -0
- data/lib/action_controller/authentic_application.rb +1 -1
- data/lib/active_record/acts/muck_access_code.rb +75 -0
- data/lib/active_record/acts/muck_access_code_request.rb +33 -0
- data/lib/active_record/acts/muck_user.rb +13 -1
- data/lib/muck_users.rb +8 -1
- data/lib/muck_users/muck_custom_form_builder.rb +10 -0
- data/locales/en.yml +163 -102
- data/muck-users.gemspec +41 -2
- data/test/rails_root/app/models/access_code.rb +3 -0
- data/test/rails_root/app/models/access_code_request.rb +3 -0
- data/test/rails_root/app/models/user.rb +12 -9
- data/test/rails_root/config/environment.rb +1 -0
- data/test/rails_root/config/global_config.yml +1 -1
- data/test/rails_root/db/migrate/20100123035450_create_access_codes.rb +19 -0
- data/test/rails_root/db/migrate/20100123233654_create_access_code_requests.rb +14 -0
- data/test/rails_root/public/javascripts/jquery/jquery.jgrowl.js +9 -2
- data/test/rails_root/public/javascripts/muck.js +39 -13
- data/test/rails_root/public/stylesheets/admin.css +20 -3
- data/test/rails_root/public/stylesheets/jquery/cupertino/jquery-ui-1.7.2.custom.css +160 -0
- data/test/rails_root/public/stylesheets/jquery/redmond/jquery-ui-1.7.2.custom.css +160 -0
- data/test/rails_root/public/stylesheets/jquery/smoothness/jquery-ui-1.7.2.custom.css +160 -0
- data/test/rails_root/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.2.custom.css +160 -0
- data/test/rails_root/public/stylesheets/styles.css +9 -8
- data/test/rails_root/test/functional/access_code_requests_controller_test.rb +33 -0
- data/test/rails_root/test/functional/admin/access_codes_controller_test.rb +166 -0
- data/test/rails_root/test/unit/access_code_test.rb +100 -0
- data/test/rails_root/test/unit/role_test.rb +1 -0
- data/test/rails_root/test/unit/user_mailer_test.rb +13 -1
- data/test/rails_root/test/unit/user_test.rb +13 -9
- metadata +41 -2
@@ -0,0 +1,33 @@
|
|
1
|
+
module ActiveRecord
|
2
|
+
module Acts #:nodoc:
|
3
|
+
module MuckAccessCodeRequest #:nodoc:
|
4
|
+
def self.included(base)
|
5
|
+
base.extend(ClassMethods)
|
6
|
+
end
|
7
|
+
|
8
|
+
module ClassMethods
|
9
|
+
|
10
|
+
def acts_as_muck_access_code_request(options = {})
|
11
|
+
|
12
|
+
validates_presence_of :email
|
13
|
+
validates_uniqueness_of :email
|
14
|
+
|
15
|
+
named_scope :unfilled, :conditions => 'access_code_requests.code_sent_at IS NULL'
|
16
|
+
|
17
|
+
include ActiveRecord::Acts::MuckAccessCodeRequest::InstanceMethods
|
18
|
+
extend ActiveRecord::Acts::MuckAccessCodeRequest::SingletonMethods
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
module SingletonMethods
|
24
|
+
|
25
|
+
end
|
26
|
+
|
27
|
+
module InstanceMethods
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -17,6 +17,10 @@ module ActiveRecord
|
|
17
17
|
named_scope :inactive, :conditions => "activated_at IS NULL"
|
18
18
|
named_scope :recent, lambda { { :conditions => ['created_at > ?', 1.week.ago] } }
|
19
19
|
|
20
|
+
belongs_to :access_code
|
21
|
+
accepts_nested_attributes_for :access_code
|
22
|
+
attr_accessor :access_code_code
|
23
|
+
|
20
24
|
email_name_regex = '[\w\.%\+\-]+'.freeze
|
21
25
|
domain_head_regex = '(?:[A-Z0-9\-]+\.)+'.freeze
|
22
26
|
domain_tld_regex = '(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|jobs|museum)'.freeze
|
@@ -111,7 +115,11 @@ module ActiveRecord
|
|
111
115
|
self.password_confirmation = user[:password_confirmation]
|
112
116
|
save
|
113
117
|
end
|
114
|
-
|
118
|
+
|
119
|
+
def is_in_role?(object, roles)
|
120
|
+
raise 'not implemented'
|
121
|
+
end
|
122
|
+
|
115
123
|
def has_role?(rolename)
|
116
124
|
self.any_role?(rolename)
|
117
125
|
end
|
@@ -168,6 +176,10 @@ module ActiveRecord
|
|
168
176
|
self.update_attribute(:activated_at, Time.now.utc)
|
169
177
|
end
|
170
178
|
|
179
|
+
def deactivate!
|
180
|
+
self.update_attribute(:activated_at, nil)
|
181
|
+
end
|
182
|
+
|
171
183
|
def short_name
|
172
184
|
CGI::escapeHTML(self.first_name) || self.display_name
|
173
185
|
end
|
data/lib/muck_users.rb
CHANGED
@@ -1,16 +1,23 @@
|
|
1
1
|
require 'muck_users/exceptions'
|
2
2
|
require 'active_record/secure_methods'
|
3
|
+
require 'muck_users/muck_custom_form_builder'
|
3
4
|
|
4
5
|
ActionController::Base.send :include, ActionController::AuthenticApplication
|
5
6
|
ActiveRecord::Base.send :include, ActiveRecord::SecureMethods
|
6
7
|
ActiveRecord::Base.class_eval { include ActiveRecord::Acts::MuckUser }
|
8
|
+
ActiveRecord::Base.class_eval { include ActiveRecord::Acts::MuckAccessCode }
|
9
|
+
ActiveRecord::Base.class_eval { include ActiveRecord::Acts::MuckAccessCodeRequest }
|
7
10
|
ActiveRecord::Base.class_eval { include MuckUsers::Exceptions }
|
8
11
|
ActionController::Base.send :helper, MuckUsersHelper
|
9
12
|
|
10
13
|
I18n.load_path += Dir[ File.join(File.dirname(__FILE__), '..', 'locales', '*.{rb,yml}') ]
|
11
14
|
|
12
15
|
# Add admin link for users and roles
|
13
|
-
MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_users'), '/admin/users', '/images/admin/user.gif') rescue nil
|
16
|
+
# MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_users'), '/admin/users', '/images/admin/user.gif') rescue nil
|
17
|
+
# MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_access_codes'), '/admin/users', '/images/admin/user.gif') rescue nil
|
18
|
+
MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_users'), '/admin/users') rescue nil
|
19
|
+
MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_roles'), '/admin/roles') rescue nil
|
20
|
+
MuckEngine.add_muck_admin_nav_item(I18n.translate('muck.engine.admin_access_codes'), '/admin/access_codes') rescue nil
|
14
21
|
|
15
22
|
# Add users to the dashboard
|
16
23
|
MuckEngine.add_muck_dashboard_item('admin/users/dashboard_widget') rescue nil
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module MuckUsersCustomFormBuilder
|
2
|
+
|
3
|
+
# creates a select control with roles
|
4
|
+
def roles_select(method, options = {}, html_options = {})
|
5
|
+
self.select(method, Role.by_alpha, options.merge(:wrapper_id => 'roles-container'), html_options.merge(:id => 'roles'))
|
6
|
+
end
|
7
|
+
|
8
|
+
end
|
9
|
+
|
10
|
+
MuckCustomFormBuilder.send :include, MuckUsersCustomFormBuilder
|
data/locales/en.yml
CHANGED
@@ -2,128 +2,189 @@
|
|
2
2
|
en:
|
3
3
|
muck:
|
4
4
|
users:
|
5
|
+
sign_up_now: Sign-up Now
|
6
|
+
old_password_incorrect: Your old password is incorrect.
|
7
|
+
bulk_access_code_emails_tip: Separate emails with a comma
|
8
|
+
join_application_name: Join and get it done
|
9
|
+
email_help: Please use a valid, current e-mail address. We will never share or spam your e-mail address.
|
10
|
+
logout_required: ""
|
11
|
+
access_required_warning: Site access is currently restricted. You need a valid access code to sign up.
|
12
|
+
login_out_success: You have been logged out.
|
13
|
+
sign_out_title: Sign Out
|
14
|
+
already_registered: Already a member?
|
15
|
+
activation_not_found: Activation code not found. Please try creating a new account.
|
16
|
+
use_limit_tip: Enter the number of times the access code can be used.
|
17
|
+
login_title: Log-in to your Account
|
18
|
+
user_disable_problem: There was a problem disabling this user.
|
19
|
+
access_code: Access Code
|
20
|
+
change_permissions_for: Change Permissions for {{user}}
|
21
|
+
login_success: Login successful!
|
22
|
+
change_password: Change Password
|
23
|
+
add_user_to_role: Add User to Role
|
24
|
+
terms_and_service: By clicking 'Sign-up Now' you agree to comply with the {{tos_link_anchor}}Terms and Conditions{{link_end}}.
|
5
25
|
password_reset_link_sent: Instructions to reset your password have been emailed to you. Please check your email.
|
26
|
+
deleting_user: deleting user...
|
27
|
+
forgot_your_username: Forgot your username?
|
28
|
+
email: Email
|
29
|
+
login_requred: You must be logged in to access this feature.
|
30
|
+
recover_password: Recover Password
|
31
|
+
confirm_delete_account: Are you sure you want to delete your account?\nThis can not be undone.
|
32
|
+
password_updated: Password successfully updated.
|
33
|
+
username_sent: Your username has been sent emailed to you. Please check your Email.
|
34
|
+
add_permission: (Add Permission)
|
35
|
+
access_code_unlimited: Unlimited
|
36
|
+
welcome: Welcome
|
37
|
+
bulk_access_codes_created: Bulk access codes created and emailed to {{email_count}} emails.
|
38
|
+
users_in_role: "Users in this role:"
|
39
|
+
current_password: Current Password
|
6
40
|
problem_creating_account: "There was a problem creating your account. Please correct the following errors:"
|
7
|
-
|
8
|
-
|
9
|
-
application_base_url_not_set: Please set application_base_url in global_config.yml
|
10
|
-
what_is_the_email: What is the email address used to create your account?
|
11
|
-
terms_and_service: By clicking 'Sign-up Now' you agree to comply with the {{tos_link_anchor}}Terms and Conditions{{link_end}}.
|
12
|
-
user_disabled: User disabled
|
13
|
-
admin_requred: You must be an administrator to access this feature.
|
14
|
-
login_empty: Please enter a login
|
15
|
-
password_not_reset: Password not reset.
|
16
|
-
activation_not_found: Activation code not found. Please try creating a new account.
|
17
|
-
activation_instructions: Activation Instructions
|
18
|
-
reset_your_password: Reset Your Password
|
19
|
-
permission_denied: You don't have permission to complete the requested action.
|
20
|
-
already_registered: Already a member?
|
21
|
-
sign_in: Sign In
|
41
|
+
password_confirmation_help: To ensure that your password is correct please enter it again here.
|
42
|
+
thanks_sign_up_login: Thanks for signing up! You may login now
|
22
43
|
already_activated: Your account has already been activated. You can log in below.
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
welcome_email_subject: Welcome to {{application_name}}
|
30
|
-
confirm_select_new_password: Confirm Password Change
|
31
|
-
recover_password_prompt: (If you forgot your password recover it here)
|
32
|
-
delete_my_account: Delete my user account and all my data.
|
33
|
-
my_dashboard: My Dashboard
|
44
|
+
password: Password
|
45
|
+
account_not_activated: Your {{application_name}} account has not yet been activated.
|
46
|
+
sorry_invalid_reset_code: We're sorry, but we could not locate your account. If you are having issues try copying and pasting the URL from your email into your browser or restarting the reset password process.
|
47
|
+
problem_changing_password: There was a problem changing your password. {{errors}}
|
48
|
+
user_enable_problem: There was a problem enabling this user.
|
49
|
+
access_code_tip: Enter a access code.
|
34
50
|
email_empty: Please enter an email address
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
user_marked_inactive: User has been marked as inactive
|
51
|
+
select_new_password: Select a New Password
|
52
|
+
access_code_delete_link: Delete Access Code
|
53
|
+
request_access_code: Request Access Code
|
54
|
+
updated_permissions: Updated Permissions
|
55
|
+
first_name: First Name
|
56
|
+
forgot_username: Forgot Username
|
57
|
+
account_activated: Your account has been activated! You can now login.
|
43
58
|
already_logged_in: You are already logged in and don't need to recover your password.
|
44
|
-
|
45
|
-
|
59
|
+
email_invalid: Invalid email
|
60
|
+
user_disabled: User disabled
|
61
|
+
invalid_username: Invalid username
|
62
|
+
update: Update
|
63
|
+
could_not_find_user_with_email: Could not find a user with that email address.
|
64
|
+
password_reset_email_subject: You have requested to change your {{application_name}} password
|
65
|
+
cannot_deactivate_yourself: You cannot deactivate yourself!
|
66
|
+
bulk_access_codes_description: This will generate a unique, single use access code for each of the emails provided.
|
67
|
+
add: Add
|
68
|
+
admin:
|
69
|
+
activate_all_inactive_users_confirm: Are you sure you want to activate all inactive users in the system? This cannot be undone!
|
70
|
+
activate_all_inactive_users: Activate All Inactive Users
|
71
|
+
show_emails: Show Emails
|
72
|
+
search_users: Search Users
|
73
|
+
unactivated_users: There are {{count}} unactivated users
|
74
|
+
request_username: Request Username
|
75
|
+
name: Name
|
76
|
+
sign_in_now: Sign in now!
|
77
|
+
my_dashboard: My Dashboard
|
78
|
+
confirm_select_new_password: Confirm Password Change
|
79
|
+
use_limit: Number of Uses
|
80
|
+
add_role: Add Role
|
81
|
+
admin_users_title: User Administration
|
82
|
+
edit_access_code: Edit Access Code
|
83
|
+
click_to_sign_up_now: Click here to sign up now.
|
84
|
+
forgot_password: Forgot Password
|
85
|
+
login: Login
|
86
|
+
user_not_activated_error: Could not activate user
|
87
|
+
password_not_reset: Password not reset.
|
88
|
+
save: Save
|
89
|
+
delete_this_user: Delete this user.
|
90
|
+
username_help: You can use between 6 and 20 characters. If the name you want isn't available try adding numbers or punctuation.
|
91
|
+
edit_role_dialog_title: Edit Role
|
92
|
+
username_not_available: Username not available
|
93
|
+
remove_my_account: Remove My Account
|
94
|
+
email_available: Email available
|
95
|
+
user_enabled: User enabled
|
46
96
|
thanks_sign_up_check: Your account has been created. Please check your e-mail for your account activation instructions!
|
47
|
-
|
97
|
+
delete_my_account: Delete my user account and all my data.
|
98
|
+
edit: Edit
|
99
|
+
activation_instructions: Activation Instructions
|
100
|
+
access_code_created: Created
|
101
|
+
change_permissions: Change Roles
|
102
|
+
what_is_the_email: What is the email address used to create your account?
|
103
|
+
activation_complete: Activation Complete
|
104
|
+
welcome_message: Welcome to muck. This system provides the basic components to help you build your website.
|
105
|
+
register_account: Register for a {{application_name}} account
|
106
|
+
password_reset: Password reset.
|
107
|
+
access_code_uses: Uses
|
108
|
+
recover_password_prompt: (If you forgot your password recover it here)
|
109
|
+
user_marked_active: User has been marked as active
|
48
110
|
all_users: All Users
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
111
|
+
username: Username
|
112
|
+
access_code_request_tip: Enter your email and we'll send you an access code as soon as one is available. Thank you!
|
113
|
+
password_mismatch: Password mismatch.
|
114
|
+
add_role_dialog_title: Add Role
|
115
|
+
new_password_doesnt_match: New password does not match the password confirmation.
|
116
|
+
add_permission_to_user: Add Permission to user {{user}}
|
53
117
|
user_account_deleted: You have successfully deleted your account.
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
request_username: Request Username
|
118
|
+
sign_in: Sign In
|
119
|
+
complete_profile: Complete Your Profile
|
120
|
+
access_codes: Access Codes
|
121
|
+
expiration_date_tip: Enter the date upon which the access code will become invalid
|
122
|
+
problem_editing_account: There was a problem updating your information.
|
123
|
+
access_code_delete_confirm: Are you sure you want to cancel this access code?
|
61
124
|
navigation:
|
62
125
|
inactive_users: Inactive Users
|
63
126
|
all_users: All Users
|
64
127
|
search_users: Search Users
|
65
|
-
|
66
|
-
|
67
|
-
|
128
|
+
user_marked_inactive: User has been marked as inactive
|
129
|
+
access_code_request_thank_you: Thank you for your request. We'll be in touch as soon as possible.
|
130
|
+
role: Role
|
131
|
+
bulk_access_codes_title: Bulk Access Codes
|
132
|
+
users_admin: Users
|
68
133
|
username_recover_prompt: Please provide the email that you used when you created your account, your username will be emailed to you.
|
134
|
+
access_code_expires: Expires
|
69
135
|
user_successfully_deleted: User {{login}} was successfully deleted.
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
136
|
+
application_base_url_not_set: Please set application_base_url in global_config.yml
|
137
|
+
user_not_deactivated_error: Could not deactivate user
|
138
|
+
total_users: "Total Users: {{total}}"
|
139
|
+
password_cannot_be_blank: Password field cannot be blank.
|
140
|
+
access_code_edit_link: Edit Access Code
|
141
|
+
access_code_edit_problem: Problem editing access code
|
142
|
+
bulk_access_code_problem: Problem adding access code
|
143
|
+
submit: Submit
|
144
|
+
confirm_password: Confirm Password
|
145
|
+
add_user_to_role_title: Add user to a new role.
|
146
|
+
expiration_date: Expiration Date
|
147
|
+
roles: Roles
|
148
|
+
access_code_related_users: Users who signed up with this code
|
149
|
+
login_empty: Please enter a login
|
150
|
+
welcome_email_subject: Welcome to {{application_name}}
|
151
|
+
access_code_new: New Access Code
|
76
152
|
sign_in_title: Sign In
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
remember_me: Remember me
|
81
|
-
password_updated: Password successfully updated.
|
82
|
-
username_sent: Your username has been sent emailed to you. Please check your Email.
|
83
|
-
join_application_name: Join and get it done
|
84
|
-
sign_out_title: Sign Out
|
85
|
-
login_out_success: You have been logged out.
|
86
|
-
admin_users_title: User Administration
|
87
|
-
email_recover_prompt: Please provide the email you signed up with to recover your password.
|
88
|
-
update_user: Update your user information
|
89
|
-
welcome_message: Welcome to muck. This system provides the basic components to help you build your website.
|
90
|
-
old_password_incorrect: Your old password is incorrect.
|
91
|
-
register_account: Register for a {{application_name}} account
|
153
|
+
edit_profile: Edit Profile
|
154
|
+
admin_requred: You must be an administrator to access this feature.
|
155
|
+
delete: Delete
|
92
156
|
password_help: Your password should be at least six characters long. A Mix of upper and lower-case letters and numbers works well
|
157
|
+
login_fail: We're sorry, but we couldn't recognize your login information. Please try again.
|
158
|
+
email_not_available: Email already in use. {{reset_password_help}}
|
159
|
+
access_code_add_problem: Problem adding access code
|
160
|
+
sign_up: Sign up
|
93
161
|
change_your_password: Change Your Password
|
94
|
-
|
162
|
+
forgot_your_password: Forgot your password?
|
163
|
+
role_delete_confirm: Are you sure you want to delete this role? All associated permissions will also be deleted!
|
164
|
+
unlimited: Unlimited
|
165
|
+
remember_me: Remember me
|
166
|
+
reset_your_password: Reset Your Password
|
167
|
+
access_code_use_limit: Use Limit
|
168
|
+
access_code_help: If you received a access code from us, please enter it in the box above. You may also {{access_request_anchor}}request a access code{{access_request_anchor_end}}.
|
169
|
+
email_address: Email Address
|
170
|
+
cant_delete_administrator_role: You can't delete the administrator role.
|
171
|
+
view_your_account: View Your Account
|
172
|
+
request_username_subject: Forgotten username
|
95
173
|
could_not_find_reset_code: Could not find a password reset code. Please try resetting your password again.
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
174
|
+
register_for_account: Register for an account
|
175
|
+
add_access_code: Add Access Code
|
176
|
+
user_update: You're user information has been updated.
|
177
|
+
update_profile: Update your profile
|
178
|
+
update_user: Update your user information
|
101
179
|
choose_member_name: Member Name
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
forgot_your_username: Forgot your username?
|
109
|
-
password: Password
|
110
|
-
activation_complete: Activation Complete
|
111
|
-
account_not_activated: Your {{application_name}} account has not yet been activated.
|
112
|
-
admin:
|
113
|
-
activate_all_inactive_users_confirm: Are you sure you want to activate all inactive users in the system? This cannot be undone!
|
114
|
-
activate_all_inactive_users: Activate All Inactive Users
|
115
|
-
show_emails: Show Emails
|
116
|
-
search_users: Search Users
|
117
|
-
unactivated_users: There are {{count}} unactivated users
|
118
|
-
sign_up: Sign up
|
119
|
-
username_not_available: Username not available
|
120
|
-
new_password_doesnt_match: New password does not match the password confirmation.
|
121
|
-
login_requred: You must be logged in to access this feature.
|
122
|
-
invalid_username: Invalid username
|
123
|
-
delete_this_user: Delete this user.
|
124
|
-
password_cannot_be_blank: Password field cannot be blank.
|
180
|
+
access_denied: You don't have permission to access the requested page.
|
181
|
+
username_available: Username available
|
182
|
+
permission_denied: You don't have permission to complete the requested action.
|
183
|
+
unlimited_tip: Check here if the access code can be used an unlimited number of times. This will override the use limit.
|
184
|
+
last_name: Last Name
|
185
|
+
email_recover_prompt: Please provide the email you signed up with to recover your password.
|
125
186
|
thanks_sign_up: Thanks for signing up!
|
126
|
-
|
187
|
+
reset_password: Reset Your Password
|
127
188
|
roles:
|
128
189
|
role_created: Role was successfully created.
|
129
190
|
assign_role: Assign Role
|
data/muck-users.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{muck-users}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.3.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Justin Ball", "Joel Duffin"]
|
12
|
-
s.date = %q{2010-01-
|
12
|
+
s.date = %q{2010-01-30}
|
13
13
|
s.description = %q{Easily add user signup, login and other features to your application}
|
14
14
|
s.email = %q{justin@tatemae.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -21,8 +21,10 @@ Gem::Specification.new do |s|
|
|
21
21
|
"README.rdoc",
|
22
22
|
"Rakefile",
|
23
23
|
"VERSION",
|
24
|
+
"app/controllers/admin/muck/access_codes_controller.rb",
|
24
25
|
"app/controllers/admin/muck/roles_controller.rb",
|
25
26
|
"app/controllers/admin/muck/users_controller.rb",
|
27
|
+
"app/controllers/muck/access_code_requests_controller.rb",
|
26
28
|
"app/controllers/muck/activations_controller.rb",
|
27
29
|
"app/controllers/muck/password_resets_controller.rb",
|
28
30
|
"app/controllers/muck/user_sessions_controller.rb",
|
@@ -32,6 +34,17 @@ Gem::Specification.new do |s|
|
|
32
34
|
"app/models/permission.rb",
|
33
35
|
"app/models/role.rb",
|
34
36
|
"app/models/user_mailer.rb",
|
37
|
+
"app/views/access_code_requests/new.html.erb",
|
38
|
+
"app/views/access_code_requests/show.html.erb",
|
39
|
+
"app/views/admin/access_codes/_access_code.html.erb",
|
40
|
+
"app/views/admin/access_codes/_form.html.erb",
|
41
|
+
"app/views/admin/access_codes/_user.html.erb",
|
42
|
+
"app/views/admin/access_codes/bulk.html.erb",
|
43
|
+
"app/views/admin/access_codes/edit.html.erb",
|
44
|
+
"app/views/admin/access_codes/index.html.erb",
|
45
|
+
"app/views/admin/access_codes/new.html.erb",
|
46
|
+
"app/views/admin/access_codes/show.html.erb",
|
47
|
+
"app/views/admin/permissions/_permission.html.erb",
|
35
48
|
"app/views/admin/roles/_role.html.erb",
|
36
49
|
"app/views/admin/roles/edit.html.erb",
|
37
50
|
"app/views/admin/roles/index.html.erb",
|
@@ -48,9 +61,12 @@ Gem::Specification.new do |s|
|
|
48
61
|
"app/views/admin/users/inactive.html.erb",
|
49
62
|
"app/views/admin/users/inactive_emails.html.erb",
|
50
63
|
"app/views/admin/users/index.html.erb",
|
64
|
+
"app/views/admin/users/permissions.html.erb",
|
51
65
|
"app/views/admin/users/search.html.erb",
|
52
66
|
"app/views/password_resets/edit.html.erb",
|
53
67
|
"app/views/password_resets/new.html.erb",
|
68
|
+
"app/views/user_mailer/access_code.text.html.erb",
|
69
|
+
"app/views/user_mailer/access_code.text.plain.erb",
|
54
70
|
"app/views/user_mailer/activation_confirmation.text.ar.html.erb",
|
55
71
|
"app/views/user_mailer/activation_confirmation.text.ar.plain.erb",
|
56
72
|
"app/views/user_mailer/activation_confirmation.text.bg.html.erb",
|
@@ -594,13 +610,18 @@ Gem::Specification.new do |s|
|
|
594
610
|
"config/muck_users_routes.rb",
|
595
611
|
"db/migrate/20090320174818_create_muck_permissions_and_roles.rb",
|
596
612
|
"db/migrate/20090327231918_create_users.rb",
|
613
|
+
"db/migrate/20100123035450_create_access_codes.rb",
|
614
|
+
"db/migrate/20100123233654_create_access_code_requests.rb",
|
597
615
|
"install.rb",
|
598
616
|
"lib/action_controller/authentic_application.rb",
|
617
|
+
"lib/active_record/acts/muck_access_code.rb",
|
618
|
+
"lib/active_record/acts/muck_access_code_request.rb",
|
599
619
|
"lib/active_record/acts/muck_user.rb",
|
600
620
|
"lib/active_record/secure_methods.rb",
|
601
621
|
"lib/muck_users.rb",
|
602
622
|
"lib/muck_users/exceptions.rb",
|
603
623
|
"lib/muck_users/initialize_routes.rb",
|
624
|
+
"lib/muck_users/muck_custom_form_builder.rb",
|
604
625
|
"lib/muck_users/tasks.rb",
|
605
626
|
"locales/ar.yml",
|
606
627
|
"locales/bg.yml",
|
@@ -662,6 +683,8 @@ Gem::Specification.new do |s|
|
|
662
683
|
"test/rails_root/app/controllers/default_controller.rb",
|
663
684
|
"test/rails_root/app/helpers/application_helper.rb",
|
664
685
|
"test/rails_root/app/models/.keep",
|
686
|
+
"test/rails_root/app/models/access_code.rb",
|
687
|
+
"test/rails_root/app/models/access_code_request.rb",
|
665
688
|
"test/rails_root/app/models/user.rb",
|
666
689
|
"test/rails_root/app/models/user_session.rb",
|
667
690
|
"test/rails_root/app/views/default/index.html.erb",
|
@@ -685,6 +708,8 @@ Gem::Specification.new do |s|
|
|
685
708
|
"test/rails_root/db/migrate/20090402234137_create_languages.rb",
|
686
709
|
"test/rails_root/db/migrate/20090426041056_create_countries.rb",
|
687
710
|
"test/rails_root/db/migrate/20090426041103_create_states.rb",
|
711
|
+
"test/rails_root/db/migrate/20100123035450_create_access_codes.rb",
|
712
|
+
"test/rails_root/db/migrate/20100123233654_create_access_code_requests.rb",
|
688
713
|
"test/rails_root/features/step_definitions/webrat_steps.rb",
|
689
714
|
"test/rails_root/features/support/env.rb",
|
690
715
|
"test/rails_root/lib/tasks/muck.rake",
|
@@ -1180,6 +1205,7 @@ Gem::Specification.new do |s|
|
|
1180
1205
|
"test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_cd0a0a_256x240.png",
|
1181
1206
|
"test/rails_root/public/stylesheets/jquery/cupertino/images/ui-icons_ffffff_256x240.png",
|
1182
1207
|
"test/rails_root/public/stylesheets/jquery/cupertino/jquery-ui-1.7.1.custom.css",
|
1208
|
+
"test/rails_root/public/stylesheets/jquery/cupertino/jquery-ui-1.7.2.custom.css",
|
1183
1209
|
"test/rails_root/public/stylesheets/jquery/jquery.autocomplete.css",
|
1184
1210
|
"test/rails_root/public/stylesheets/jquery/jquery.fancybox.css",
|
1185
1211
|
"test/rails_root/public/stylesheets/jquery/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png",
|
@@ -1198,6 +1224,7 @@ Gem::Specification.new do |s|
|
|
1198
1224
|
"test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_d8e7f3_256x240.png",
|
1199
1225
|
"test/rails_root/public/stylesheets/jquery/redmond/images/ui-icons_f9bd01_256x240.png",
|
1200
1226
|
"test/rails_root/public/stylesheets/jquery/redmond/jquery-ui-1.7.1.custom.css",
|
1227
|
+
"test/rails_root/public/stylesheets/jquery/redmond/jquery-ui-1.7.2.custom.css",
|
1201
1228
|
"test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png",
|
1202
1229
|
"test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_flat_75_ffffff_40x100.png",
|
1203
1230
|
"test/rails_root/public/stylesheets/jquery/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png",
|
@@ -1212,6 +1239,7 @@ Gem::Specification.new do |s|
|
|
1212
1239
|
"test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_888888_256x240.png",
|
1213
1240
|
"test/rails_root/public/stylesheets/jquery/smoothness/images/ui-icons_cd0a0a_256x240.png",
|
1214
1241
|
"test/rails_root/public/stylesheets/jquery/smoothness/jquery-ui-1.7.1.custom.css",
|
1242
|
+
"test/rails_root/public/stylesheets/jquery/smoothness/jquery-ui-1.7.2.custom.css",
|
1215
1243
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png",
|
1216
1244
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png",
|
1217
1245
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-bg_flat_10_000000_40x100.png",
|
@@ -1227,6 +1255,7 @@ Gem::Specification.new do |s|
|
|
1227
1255
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffd27a_256x240.png",
|
1228
1256
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/images/ui-icons_ffffff_256x240.png",
|
1229
1257
|
"test/rails_root/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.1.custom.css",
|
1258
|
+
"test/rails_root/public/stylesheets/jquery/ui-lightness/jquery-ui-1.7.2.custom.css",
|
1230
1259
|
"test/rails_root/public/stylesheets/reset.css",
|
1231
1260
|
"test/rails_root/public/stylesheets/styles.css",
|
1232
1261
|
"test/rails_root/public/stylesheets/themes/blue/styles.css",
|
@@ -1249,7 +1278,9 @@ Gem::Specification.new do |s|
|
|
1249
1278
|
"test/rails_root/script/runner",
|
1250
1279
|
"test/rails_root/script/server",
|
1251
1280
|
"test/rails_root/test/functional/.keep",
|
1281
|
+
"test/rails_root/test/functional/access_code_requests_controller_test.rb",
|
1252
1282
|
"test/rails_root/test/functional/activations_controller_test.rb",
|
1283
|
+
"test/rails_root/test/functional/admin/access_codes_controller_test.rb",
|
1253
1284
|
"test/rails_root/test/functional/admin/roles_controller_test.rb",
|
1254
1285
|
"test/rails_root/test/functional/admin/users_controller_test.rb",
|
1255
1286
|
"test/rails_root/test/functional/password_resets_controller_test.rb",
|
@@ -1259,6 +1290,7 @@ Gem::Specification.new do |s|
|
|
1259
1290
|
"test/rails_root/test/integration/.keep",
|
1260
1291
|
"test/rails_root/test/test_helper.rb",
|
1261
1292
|
"test/rails_root/test/unit/.keep",
|
1293
|
+
"test/rails_root/test/unit/access_code_test.rb",
|
1262
1294
|
"test/rails_root/test/unit/permission_test.rb",
|
1263
1295
|
"test/rails_root/test/unit/role_test.rb",
|
1264
1296
|
"test/rails_root/test/unit/secure_methods_test.rb",
|
@@ -1279,6 +1311,8 @@ Gem::Specification.new do |s|
|
|
1279
1311
|
"test/rails_root/app/controllers/application_controller.rb",
|
1280
1312
|
"test/rails_root/app/controllers/default_controller.rb",
|
1281
1313
|
"test/rails_root/app/helpers/application_helper.rb",
|
1314
|
+
"test/rails_root/app/models/access_code.rb",
|
1315
|
+
"test/rails_root/app/models/access_code_request.rb",
|
1282
1316
|
"test/rails_root/app/models/user.rb",
|
1283
1317
|
"test/rails_root/app/models/user_session.rb",
|
1284
1318
|
"test/rails_root/config/boot.rb",
|
@@ -1296,11 +1330,15 @@ Gem::Specification.new do |s|
|
|
1296
1330
|
"test/rails_root/db/migrate/20090402234137_create_languages.rb",
|
1297
1331
|
"test/rails_root/db/migrate/20090426041056_create_countries.rb",
|
1298
1332
|
"test/rails_root/db/migrate/20090426041103_create_states.rb",
|
1333
|
+
"test/rails_root/db/migrate/20100123035450_create_access_codes.rb",
|
1334
|
+
"test/rails_root/db/migrate/20100123233654_create_access_code_requests.rb",
|
1299
1335
|
"test/rails_root/features/step_definitions/webrat_steps.rb",
|
1300
1336
|
"test/rails_root/features/support/env.rb",
|
1301
1337
|
"test/rails_root/public/dispatch.rb",
|
1302
1338
|
"test/rails_root/script/create_project.rb",
|
1339
|
+
"test/rails_root/test/functional/access_code_requests_controller_test.rb",
|
1303
1340
|
"test/rails_root/test/functional/activations_controller_test.rb",
|
1341
|
+
"test/rails_root/test/functional/admin/access_codes_controller_test.rb",
|
1304
1342
|
"test/rails_root/test/functional/admin/roles_controller_test.rb",
|
1305
1343
|
"test/rails_root/test/functional/admin/users_controller_test.rb",
|
1306
1344
|
"test/rails_root/test/functional/password_resets_controller_test.rb",
|
@@ -1308,6 +1346,7 @@ Gem::Specification.new do |s|
|
|
1308
1346
|
"test/rails_root/test/functional/username_request_controller_test.rb",
|
1309
1347
|
"test/rails_root/test/functional/users_controller_test.rb",
|
1310
1348
|
"test/rails_root/test/test_helper.rb",
|
1349
|
+
"test/rails_root/test/unit/access_code_test.rb",
|
1311
1350
|
"test/rails_root/test/unit/permission_test.rb",
|
1312
1351
|
"test/rails_root/test/unit/role_test.rb",
|
1313
1352
|
"test/rails_root/test/unit/secure_methods_test.rb",
|