caboose-cms 0.3.86 → 0.3.87
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/controllers/caboose/users_controller.rb +8 -5
- data/app/views/caboose/users/new.html.erb +21 -12
- data/lib/caboose/version.rb +1 -1
- data/lib/tasks/caboose.rake +16 -0
- metadata +15 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NzU4NmNkZmVkZjE2ZTA2ZDUwYWEwNjlmY2FlZDdkZjhmODYyODViYQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MDM3MTU1NmU1MDFmYWNhNzA1ZTQyMWIzYTExNmE5YzYzNmVhNGEzYw==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YzE5MjJmZjI2MmVhNDVlNWJjYWU2NDY2NzcxOTc5Yjk1MGNhYjg3NDc2ZDky
|
10
|
+
YjZlYmRlNDgyZjMwNWEwY2M3Zjg3NDQ3ZGQyNDQyMWQwMjk4NjkzYTAwNzAw
|
11
|
+
NzExN2M3MDcwOTY4NzM3MDM0OGQ1NDhkNDEzZTEwYTgzNzYyNmQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZDRmNTkxZWQwODNmYzUxNzUzNjQyZTc5ZGRiNzI1OGFkMzQ3YTdlYmFhODZj
|
14
|
+
ZDFlZjM1MWYzOGRmMDg4NDNhMzVlYzgwZDRjODk2YjI1YmJjMTgyN2YyOTA2
|
15
|
+
YmQ3MjkxMjk1NzE0NjgwMjU3Nzg4N2E0Y2E4NTg3Mjg1NzUwMDE=
|
@@ -194,15 +194,18 @@ module Caboose
|
|
194
194
|
})
|
195
195
|
|
196
196
|
user = User.new()
|
197
|
-
user.
|
197
|
+
user.email = params[:email] ? params[:email].strip.downcase : nil
|
198
198
|
|
199
|
-
if
|
200
|
-
resp.error = "
|
201
|
-
elsif
|
199
|
+
if user.email.length == 0
|
200
|
+
resp.error = "Please enter a valid email address."
|
201
|
+
elsif User.where(:email => user.email).exists?
|
202
|
+
resp.error = "That email is already in the system."
|
203
|
+
else
|
202
204
|
user.save
|
203
205
|
resp.redirect = "/admin/users/#{user.id}/edit"
|
204
206
|
end
|
205
|
-
|
207
|
+
|
208
|
+
render :json => resp
|
206
209
|
end
|
207
210
|
|
208
211
|
# PUT /admin/users/1
|
@@ -1,24 +1,33 @@
|
|
1
1
|
|
2
2
|
<h1>New user</h1>
|
3
|
-
|
3
|
+
|
4
|
+
<form action='/admin/users' method='post' id='new_user_form'>
|
5
|
+
<input type='hidden' name='authenticity_token' value='<%= form_authenticity_token %>' />
|
6
|
+
<p><input type='text' name='email' id='email' placeholder='Email' value='' style='width: 400px;' /></p>
|
7
|
+
<div id='message'></div>
|
8
|
+
<p><input type='submit' value='Add User' /></p>
|
9
|
+
</form>
|
4
10
|
|
5
11
|
<% content_for :caboose_js do %>
|
6
12
|
<script type='text/javascript'>
|
7
13
|
|
8
|
-
var user = false;
|
9
14
|
$(document).ready(function() {
|
15
|
+
$('#new_user_form').submit(function() { add_user(); return false; });
|
16
|
+
});
|
10
17
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
18
|
+
function add_user()
|
19
|
+
{
|
20
|
+
$('#message').html("<p class='loading'>Adding user...</p>");
|
21
|
+
$.ajax({
|
22
|
+
url: '/admin/users',
|
23
|
+
type: 'post',
|
24
|
+
data: $('#new_user_form').serialize(),
|
25
|
+
success: function(resp) {
|
26
|
+
if (resp.error) $('#message').html("<p class='note error'>" + resp.error + "</p>");
|
27
|
+
if (resp.redirect) window.location = resp.redirect;
|
28
|
+
}
|
19
29
|
});
|
20
|
-
|
21
|
-
});
|
30
|
+
}
|
22
31
|
|
23
32
|
</script>
|
24
33
|
<% end %>
|
data/lib/caboose/version.rb
CHANGED
data/lib/tasks/caboose.rake
CHANGED
@@ -70,6 +70,22 @@ namespace :caboose do
|
|
70
70
|
d = DateTime.strptime("04/01/2014 10:00 am -0700", "%m/%d/%Y %I:%M %P %Z")
|
71
71
|
puts d
|
72
72
|
end
|
73
|
+
|
74
|
+
desc "Removes duplicate users"
|
75
|
+
task :remove_duplicate_users => :environment do
|
76
|
+
while true
|
77
|
+
query = ["select email from users group by email having count(email) > ?", 1]
|
78
|
+
rows = ActiveRecord::Base.connection.select_rows(ActiveRecord::Base.send(:sanitize_sql_array, query))
|
79
|
+
break if rows.nil? || rows.count == 0
|
80
|
+
puts "Deleting #{rows.count} emails..."
|
81
|
+
query = ["delete from users where id in (
|
82
|
+
select max(A.id) from users A
|
83
|
+
where A.email in (select email from users B group by B.email having count(B.email) > ?)
|
84
|
+
group by A.email
|
85
|
+
)", 1]
|
86
|
+
ActiveRecord::Base.connection.execute(ActiveRecord::Base.send(:sanitize_sql_array, query))
|
87
|
+
end
|
88
|
+
end
|
73
89
|
|
74
90
|
end
|
75
91
|
|
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.3.
|
4
|
+
version: 0.3.87
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Barry
|
@@ -150,6 +150,20 @@ dependencies:
|
|
150
150
|
- - ! '>='
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: httparty
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ! '>='
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :runtime
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ! '>='
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
153
167
|
description: CMS built on rails with love.
|
154
168
|
email:
|
155
169
|
- william@nine.is
|