muck-users 3.1.8 → 3.1.9
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/app/controllers/admin/muck/access_code_requests_controller.rb +3 -3
- data/app/controllers/muck/user_sessions_controller.rb +12 -4
- data/app/controllers/muck/users_controller.rb +18 -12
- data/app/views/admin/access_code_requests/send_code.html.erb +15 -5
- data/config/routes.rb +3 -3
- data/lib/muck-users/controllers/authentic_application.rb +4 -1
- data/lib/muck-users/models/access_code_request.rb +6 -5
- data/muck-users.gemspec +2 -2
- metadata +4 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.1.
|
1
|
+
3.1.9
|
@@ -11,15 +11,15 @@ class Admin::Muck::AccessCodeRequestsController < Admin::Muck::BaseController
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def send_code
|
14
|
+
@expires_at = 1.year.from_now
|
14
15
|
@access_code_request = AccessCodeRequest.find(params[:id])
|
15
16
|
render :template => "admin/access_code_requests/send_code", :layout => false
|
16
17
|
end
|
17
18
|
|
18
19
|
def update
|
19
|
-
debugger
|
20
20
|
@access_code_request = AccessCodeRequest.find(params[:id])
|
21
21
|
if params[:send_access_code]
|
22
|
-
@success = @access_code_request.send_access_code(params[:subject], params[:message])
|
22
|
+
@success = @access_code_request.send_access_code(params[:subject], params[:message], params[:expires_at])
|
23
23
|
else
|
24
24
|
@success = @access_code_request.update_attributes(params[:access_code_request])
|
25
25
|
end
|
@@ -31,7 +31,7 @@ class Admin::Muck::AccessCodeRequestsController < Admin::Muck::BaseController
|
|
31
31
|
end
|
32
32
|
|
33
33
|
rescue => ex
|
34
|
-
flash[:error] = ex
|
34
|
+
flash[:error] = ex.to_s
|
35
35
|
output_admin_messages
|
36
36
|
end
|
37
37
|
|
@@ -35,21 +35,29 @@ class Muck::UserSessionsController < ApplicationController
|
|
35
35
|
flash[:notice] = t('muck.users.login_out_success')
|
36
36
|
respond_to do |format|
|
37
37
|
format.html { redirect_to logout_complete_path }
|
38
|
+
format.json { render :json => { :logged_in => false, :message => t('muck.users.login_out_success') } }
|
38
39
|
end
|
39
40
|
end
|
40
41
|
|
42
|
+
def login_check
|
43
|
+
render :json => { :logged_in => logged_in? }
|
44
|
+
end
|
45
|
+
|
41
46
|
protected
|
42
47
|
|
43
48
|
def after_create_response(success)
|
44
49
|
if success
|
45
|
-
flash[:notice] = t('muck.users.login_success')
|
46
50
|
respond_to do |format|
|
47
|
-
format.html
|
51
|
+
format.html do
|
52
|
+
flash[:notice] = t('muck.users.login_success')
|
53
|
+
redirect_back_or_default(user_path(@user_session.user))
|
54
|
+
end
|
55
|
+
format.json { render :json => { :logged_in => true, :message => t('muck.users.login_success'), :user => @user.to_json } }
|
48
56
|
end
|
49
57
|
else
|
50
|
-
flash[:notice] = t('muck.users.login_fail')
|
51
58
|
respond_to do |format|
|
52
|
-
format.html { render :template => 'user_sessions/new' }
|
59
|
+
format.html { render :template => 'user_sessions/new', :notice => t('muck.users.login_fail') }
|
60
|
+
format.json { render :json => { :logged_in => false, :message => t('muck.users.login_fail') } }
|
53
61
|
end
|
54
62
|
end
|
55
63
|
end
|
@@ -10,9 +10,9 @@ class Muck::UsersController < ApplicationController
|
|
10
10
|
@user ||= current_user
|
11
11
|
if @user == current_user
|
12
12
|
@page_title = @user.to_param
|
13
|
-
standard_response('show')
|
13
|
+
standard_response('show', true)
|
14
14
|
else
|
15
|
-
|
15
|
+
standard_response('show', false, public_user_path(@user))
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
@@ -35,15 +35,13 @@ class Muck::UsersController < ApplicationController
|
|
35
35
|
def new
|
36
36
|
@page_title = t('muck.users.register_account', :application_name => MuckEngine.configuration.application_name)
|
37
37
|
@user = User.new
|
38
|
-
standard_response('new')
|
38
|
+
standard_response('new', true)
|
39
39
|
end
|
40
40
|
|
41
41
|
def edit
|
42
42
|
@page_title = t('muck.users.update_profile')
|
43
43
|
@user = admin? ? User.find(params[:id]) : current_user
|
44
|
-
|
45
|
-
format.html { render :template => 'users/edit' }
|
46
|
-
end
|
44
|
+
standard_response('edit', true)
|
47
45
|
end
|
48
46
|
|
49
47
|
def create
|
@@ -162,12 +160,20 @@ class Muck::UsersController < ApplicationController
|
|
162
160
|
end
|
163
161
|
end
|
164
162
|
|
165
|
-
def standard_response(template)
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
163
|
+
def standard_response(template, success = true, failure_path = '')
|
164
|
+
if success
|
165
|
+
respond_to do |format|
|
166
|
+
format.html { render :template => "users/#{template}" }
|
167
|
+
format.xml { render :xml => @user }
|
168
|
+
format.json { render :json => { :success => true, :user => @user.as_json } }
|
169
|
+
end
|
170
|
+
else
|
171
|
+
respond_to do |format|
|
172
|
+
format.html { redirect_to failure_path }
|
173
|
+
format.xml { render :xml => @user }
|
174
|
+
format.json { render :json => { :success => false } }
|
175
|
+
end
|
176
|
+
end
|
171
177
|
end
|
172
178
|
|
173
179
|
def after_create_response(success, local_uri = '')
|
@@ -4,16 +4,26 @@
|
|
4
4
|
<%= muck_form_for @access_code_request, :url => admin_access_code_request_path(@access_code_request), :html => { :method => :put, :class => 'ajax' } do |f| -%>
|
5
5
|
<p><%=translate('muck.users.send_access_code_instructions') %></p>
|
6
6
|
<div class="form-row">
|
7
|
-
<label><%= translate('muck.users.access_code_subject')%></label>
|
8
|
-
<%= text_field_tag :subject -%>
|
7
|
+
<label><%= translate('muck.users.access_code_subject') %></label>
|
8
|
+
<%= text_field_tag :subject, params[:subject] -%>
|
9
9
|
</div>
|
10
10
|
<div class="form-row">
|
11
|
-
<label><%= translate('muck.users.access_code_message')%></label>
|
12
|
-
<%= text_area_tag :message -%>
|
11
|
+
<label><%= translate('muck.users.access_code_message') %></label>
|
12
|
+
<%= text_area_tag :message, params[:message] -%>
|
13
|
+
</div>
|
14
|
+
<div class="form-row">
|
15
|
+
<label><%= translate('muck.users.expiration_date') %></label>
|
16
|
+
<%= text_field_tag :expires_at, params[:expires_at] || @expires_at, :class => 'date_pick' -%>
|
13
17
|
</div>
|
14
18
|
<div class="form-row">
|
15
19
|
<%= f.submit translate('muck.users.send_access_code') %>
|
16
20
|
</div>
|
17
21
|
<%= hidden_field :send_access_code, true %>
|
18
22
|
<% end -%>
|
19
|
-
</div>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
<script type="text/javascript" language="JavaScript">
|
26
|
+
jQuery(document).ready(function(){
|
27
|
+
jQuery('.date_pick').datepicker();
|
28
|
+
});
|
29
|
+
</script>
|
data/config/routes.rb
CHANGED
@@ -18,6 +18,7 @@ Rails.application.routes.draw do
|
|
18
18
|
match '/users/activation_complete/:id' => 'muck/users#welcome', :as => :activation_complete
|
19
19
|
match '/signup_complete_activate/:id' => 'muck/users#activation_instructions', :as => :signup_complete_activation_required
|
20
20
|
match 'account' => 'muck/users#show', :as => :account
|
21
|
+
match 'current_user' => 'muck/users#show'
|
21
22
|
|
22
23
|
# activations
|
23
24
|
resources :activations, :controller => 'muck/activations'
|
@@ -38,12 +39,11 @@ Rails.application.routes.draw do
|
|
38
39
|
match '/login' => 'muck/user_sessions#new', :as => :login, :constraints => { :protocol => muck_routes_protocol }
|
39
40
|
match '/logout' => 'muck/user_sessions#destroy', :as => :logout, :constraints => { :protocol => muck_routes_protocol }
|
40
41
|
match '/signup_complete_login/:id' => 'muck/user_sessions#new', :as => :signup_complete_login_required
|
42
|
+
match '/login' => 'muck/user_sessions#new', :as => :logout_complete
|
43
|
+
match '/login_check' => 'muck/user_sessions#login_check'
|
41
44
|
|
42
45
|
# Access codes
|
43
46
|
resources :access_code_requests, :controller => 'muck/access_code_requests'
|
44
|
-
|
45
|
-
# page a user is taken to when they log out
|
46
|
-
match '/login' => 'user_session#new', :as => :logout_complete
|
47
47
|
|
48
48
|
# admin
|
49
49
|
namespace :admin do
|
@@ -36,7 +36,10 @@ module MuckUsers
|
|
36
36
|
unless logged_in?
|
37
37
|
store_location
|
38
38
|
flash[:notice] = I18n.t('muck.users.login_requred')
|
39
|
-
|
39
|
+
respond_to do |format|
|
40
|
+
format.html { redirect_to login_path }
|
41
|
+
format.json { render :json => { :success => false, :logged_in => false, :message => I18n.t('muck.users.login_requred') } }
|
42
|
+
end
|
40
43
|
end
|
41
44
|
end
|
42
45
|
|
@@ -24,20 +24,21 @@ module MuckUsers
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def mark_fullfilled(access_code_requests)
|
27
|
-
access_code_requests.each do |
|
28
|
-
|
27
|
+
access_code_requests.each do |r|
|
28
|
+
r.update_attribute(:code_sent_at, DateTime.now)
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
32
|
end
|
33
33
|
|
34
|
-
def send_access_code(subject, message)
|
34
|
+
def send_access_code(subject, message, expires_at)
|
35
35
|
access_code = AccessCode.create!(:unlimited => false,
|
36
36
|
:use_limit => 1,
|
37
37
|
:uses => 0,
|
38
|
-
:code => AccessCode.random_code
|
38
|
+
:code => AccessCode.random_code,
|
39
|
+
:expires_at => expires_at)
|
39
40
|
UserMailer.access_code(self.email, subject, message, access_code.code).deliver
|
40
|
-
success = AccessCodeRequest.mark_fullfilled(self)
|
41
|
+
success = AccessCodeRequest.mark_fullfilled([self])
|
41
42
|
end
|
42
43
|
|
43
44
|
end
|
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 = "3.1.
|
8
|
+
s.version = "3.1.9"
|
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{2011-
|
12
|
+
s.date = %q{2011-03-01}
|
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 = [
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: muck-users
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 3
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 3.1.
|
9
|
+
- 9
|
10
|
+
version: 3.1.9
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Justin Ball
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-
|
19
|
+
date: 2011-03-01 00:00:00 -07:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|