caboose-cms 0.2.11 → 0.2.14
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/app/assets/stylesheets/caboose/admin.css +0 -1
- data/app/assets/stylesheets/caboose/application.css +1 -2
- data/app/assets/stylesheets/caboose/modal.css +0 -1
- data/app/controllers/caboose/application_controller.rb +1 -2
- data/app/controllers/caboose/login_controller.rb +16 -17
- data/app/models/caboose/authenticator.rb +14 -0
- data/app/views/caboose/login/index.html.erb +6 -6
- data/app/views/layouts/caboose/_content.html.erb +6 -0
- data/app/views/layouts/caboose/_station_link.html.erb +7 -0
- data/app/views/layouts/caboose/_top_nav.html.erb +1 -7
- data/lib/caboose.rb +4 -1
- data/lib/caboose/engine.rb +1 -1
- data/lib/caboose/version.rb +1 -1
- metadata +7 -36
@@ -8,8 +8,7 @@
|
|
8
8
|
* You're free to add application-wide styles to this file and they'll appear at the top of the
|
9
9
|
* compiled file, but it's generally better to create a new file per style scope.
|
10
10
|
*
|
11
|
-
*= require colorbox-rails
|
12
|
-
*= require modeljs
|
11
|
+
*= require colorbox-rails
|
13
12
|
*= require caboose/fonts
|
14
13
|
*= require caboose/page_bar_generator
|
15
14
|
*= require caboose/caboose
|
@@ -35,9 +35,8 @@ module Caboose
|
|
35
35
|
|
36
36
|
# Returns whether or not a user is logged in
|
37
37
|
def logged_in?
|
38
|
-
#return true if !session["app_user"].nil? && session["app_user"].id != -1
|
39
38
|
validate_token
|
40
|
-
return true if !session["app_user"].nil? && session["app_user"].id != -1
|
39
|
+
return true if !session["app_user"].nil? && session["app_user"] != false && session["app_user"].id != -1
|
41
40
|
return false
|
42
41
|
end
|
43
42
|
|
@@ -11,35 +11,34 @@ module Caboose
|
|
11
11
|
|
12
12
|
# POST /login
|
13
13
|
def login
|
14
|
+
Caboose.log("PodioConfig.api_key = #{PodioConfig.api_key}")
|
14
15
|
|
15
|
-
|
16
|
-
|
16
|
+
resp = StdClass.new('error' => '', 'redirect' => '')
|
17
|
+
return_url = params[:return_url].nil? ? "/" : params[:return_url]
|
17
18
|
|
18
19
|
if (logged_in?)
|
19
|
-
|
20
|
+
resp.redirect = return_url
|
20
21
|
else
|
21
|
-
|
22
|
-
|
22
|
+
username = params[:username]
|
23
|
+
password = params[:password]
|
23
24
|
|
24
|
-
if (
|
25
|
-
|
25
|
+
if (username.nil? || password.nil? || password.strip.length == 0)
|
26
|
+
resp.error = "Invalid credentials"
|
26
27
|
else
|
27
28
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
user = User.where(:email => @username, :password => @password).first
|
32
|
-
end
|
29
|
+
bouncer_class = Caboose::authenticator_class.constantize
|
30
|
+
bouncer = bouncer_class.new
|
31
|
+
user = bouncer.authenticate(username, password)
|
33
32
|
|
34
|
-
if (user.nil?)
|
35
|
-
|
33
|
+
if (user.nil? || user == false)
|
34
|
+
resp.error = "Invalid credentials"
|
36
35
|
else
|
37
36
|
login_user(user)
|
38
|
-
|
37
|
+
resp.redirect = return_url
|
39
38
|
end
|
40
39
|
end
|
41
40
|
end
|
42
|
-
render json
|
41
|
+
render :json => resp
|
43
42
|
end
|
44
43
|
end
|
45
|
-
end
|
44
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
|
2
|
+
class Caboose::Authenticator
|
3
|
+
|
4
|
+
def authenticate(username, password)
|
5
|
+
pass = Digest::SHA1.hexdigest(Caboose::salt + password)
|
6
|
+
user = Caboose::User.where(:username => username, :password => pass).first
|
7
|
+
if (user.nil?)
|
8
|
+
user = User.where(:email => username, :password => pass).first
|
9
|
+
end
|
10
|
+
return false if user.nil?
|
11
|
+
return user
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
@@ -25,12 +25,12 @@ function login()
|
|
25
25
|
type: 'post',
|
26
26
|
data: $('#login_form').serialize(),
|
27
27
|
success: function(resp) {
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
28
|
+
if (resp.error)
|
29
|
+
modal.autosize("<p class='note error'>" + resp.error + "</p>");
|
30
|
+
else if (resp.redirect != false)
|
31
|
+
<%= @modal ? "" : "parent." %>window.location = resp.redirect;
|
32
|
+
else
|
33
|
+
parent.location.reload(true);
|
34
34
|
},
|
35
35
|
error: function() {
|
36
36
|
modal.autosize("<p class='note error'>Error</p>");
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<%
|
2
|
+
if (@user.nil? || @user == Caboose::User.logged_out_user)
|
3
|
+
%><a href='/login?return_url=<%= request.fullpath %>' id='caboose_login'><span>Login</span></a><%
|
4
|
+
else
|
5
|
+
%><a href='/station?page_id=<%= @page.id %>' id='caboose_station'><span>Control Panel</span></a><%
|
6
|
+
end
|
7
|
+
%>
|
@@ -2,12 +2,6 @@
|
|
2
2
|
<div id='top_nav'>
|
3
3
|
<div class='caboose_logo'></div>
|
4
4
|
<ul>
|
5
|
-
|
6
|
-
<li><a href='/login?return_url=#{request.fullpath}' id='caboose_login'><span>Login</span></a></li>
|
7
|
-
<% else %>
|
8
|
-
<li class='cpanel' ><a href='/station?page_id=<%= @page.id %>' id='caboose_station'><span>Control Panel</span></a></li>
|
9
|
-
<li class='account' ><a href='/admin/users/<%= @user.id %>/edit'><span>Account</span></a></li>
|
10
|
-
<li class='logout' ><a href='/logout'><span>Logout</span></a></li>
|
11
|
-
<% end %>
|
5
|
+
<li><%= render :partial => 'layouts/caboose/station_link' %></li>
|
12
6
|
</ul>
|
13
7
|
</div>
|
data/lib/caboose.rb
CHANGED
data/lib/caboose/engine.rb
CHANGED
data/lib/caboose/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: caboose-cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.14
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-07-
|
12
|
+
date: 2013-07-31 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -18,7 +18,7 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 3.2.
|
21
|
+
version: 3.2.12
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 3.2.
|
29
|
+
version: 3.2.12
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: jquery-rails
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -75,38 +75,6 @@ dependencies:
|
|
75
75
|
- - ! '>='
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: '0'
|
78
|
-
- !ruby/object:Gem::Dependency
|
79
|
-
name: mysql2
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
|
-
requirements:
|
83
|
-
- - ! '>='
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '0'
|
86
|
-
type: :runtime
|
87
|
-
prerelease: false
|
88
|
-
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
94
|
-
- !ruby/object:Gem::Dependency
|
95
|
-
name: modeljs
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
|
-
requirements:
|
99
|
-
- - '='
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: 0.0.10
|
102
|
-
type: :runtime
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - '='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: 0.0.10
|
110
78
|
- !ruby/object:Gem::Dependency
|
111
79
|
name: tinymce-rails
|
112
80
|
requirement: !ruby/object:Gem::Requirement
|
@@ -219,6 +187,7 @@ files:
|
|
219
187
|
- app/helpers/caboose/permissions_helper.rb
|
220
188
|
- app/models/caboose/approval_request.rb
|
221
189
|
- app/models/caboose/asset.rb
|
190
|
+
- app/models/caboose/authenticator.rb
|
222
191
|
- app/models/caboose/caboose_plugin.rb
|
223
192
|
- app/models/caboose/menu_block.rb
|
224
193
|
- app/models/caboose/page.rb
|
@@ -270,7 +239,9 @@ files:
|
|
270
239
|
- app/views/caboose/users/new.html.erb
|
271
240
|
- app/views/caboose/users/update_pic.html.erb
|
272
241
|
- app/views/layouts/caboose/_admin_top_nav.html.erb
|
242
|
+
- app/views/layouts/caboose/_content.html.erb
|
273
243
|
- app/views/layouts/caboose/_station.html.erb
|
244
|
+
- app/views/layouts/caboose/_station_link.html.erb
|
274
245
|
- app/views/layouts/caboose/_top_nav.html.erb
|
275
246
|
- app/views/layouts/caboose/admin.html.erb
|
276
247
|
- app/views/layouts/caboose/application.html.erb
|