enju_news 0.1.0.pre7 → 0.1.0.pre8
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/README.rdoc +8 -1
- data/app/controllers/news_feeds_controller.rb +6 -2
- data/app/controllers/news_posts_controller.rb +6 -2
- data/app/models/news_feed.rb +2 -5
- data/app/models/news_post.rb +2 -3
- data/lib/enju_news/engine.rb +1 -1
- data/lib/enju_news/version.rb +1 -1
- data/spec/cassette_library/NewsFeed/should_get_content.yml +544 -0
- data/spec/cassette_library/NewsFeed/should_not_get_content_if_the_feed_is_invalid.yml +64 -0
- data/spec/cassette_library/NewsFeed/should_reload_content.yml +544 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/bin/setup +29 -0
- data/spec/dummy/config/boot.rb +2 -2
- data/spec/dummy/db/schema.rb +141 -141
- data/spec/fixtures/users.yml +1 -1
- data/spec/spec_helper.rb +9 -0
- metadata +55 -19
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/script/rails +0 -6
data/spec/dummy/bin/rake
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
require 'pathname'
|
3
|
+
|
4
|
+
# path to your application root.
|
5
|
+
APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
|
6
|
+
|
7
|
+
Dir.chdir APP_ROOT do
|
8
|
+
# This script is a starting point to setup your application.
|
9
|
+
# Add necessary setup steps to this file:
|
10
|
+
|
11
|
+
puts "== Installing dependencies =="
|
12
|
+
system "gem install bundler --conservative"
|
13
|
+
system "bundle check || bundle install"
|
14
|
+
|
15
|
+
# puts "\n== Copying sample files =="
|
16
|
+
# unless File.exist?("config/database.yml")
|
17
|
+
# system "cp config/database.yml.sample config/database.yml"
|
18
|
+
# end
|
19
|
+
|
20
|
+
puts "\n== Preparing database =="
|
21
|
+
system "bin/rake db:setup"
|
22
|
+
|
23
|
+
puts "\n== Removing old logs and tempfiles =="
|
24
|
+
system "rm -f log/*"
|
25
|
+
system "rm -rf tmp/cache"
|
26
|
+
|
27
|
+
puts "\n== Restarting application server =="
|
28
|
+
system "touch tmp/restart.txt"
|
29
|
+
end
|
data/spec/dummy/config/boot.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
require 'rubygems'
|
2
|
-
gemfile = File.expand_path('../../../../Gemfile', __FILE__)
|
2
|
+
gemfile = ENV['BUNDLE_GEMFILE'] || File.expand_path('../../../../Gemfile', __FILE__)
|
3
3
|
|
4
4
|
if File.exist?(gemfile)
|
5
5
|
ENV['BUNDLE_GEMFILE'] = gemfile
|
@@ -7,4 +7,4 @@ if File.exist?(gemfile)
|
|
7
7
|
Bundler.setup
|
8
8
|
end
|
9
9
|
|
10
|
-
$:.unshift File.expand_path('../../../../lib', __FILE__)
|
10
|
+
$:.unshift File.expand_path('../../../../lib', __FILE__)
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -9,33 +9,33 @@
|
|
9
9
|
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
10
10
|
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
11
11
|
#
|
12
|
-
# It's strongly recommended
|
12
|
+
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(:
|
14
|
+
ActiveRecord::Schema.define(version: 20140811031145) do
|
15
15
|
|
16
|
-
create_table "accepts", :
|
16
|
+
create_table "accepts", force: :cascade do |t|
|
17
17
|
t.integer "basket_id"
|
18
18
|
t.integer "item_id"
|
19
19
|
t.integer "librarian_id"
|
20
|
-
t.datetime "created_at"
|
21
|
-
t.datetime "updated_at"
|
20
|
+
t.datetime "created_at"
|
21
|
+
t.datetime "updated_at"
|
22
22
|
end
|
23
23
|
|
24
|
-
add_index "accepts", ["basket_id"], :
|
25
|
-
add_index "accepts", ["item_id"], :
|
24
|
+
add_index "accepts", ["basket_id"], name: "index_accepts_on_basket_id"
|
25
|
+
add_index "accepts", ["item_id"], name: "index_accepts_on_item_id"
|
26
26
|
|
27
|
-
create_table "baskets", :
|
27
|
+
create_table "baskets", force: :cascade do |t|
|
28
28
|
t.integer "user_id"
|
29
29
|
t.text "note"
|
30
|
-
t.integer "lock_version", :
|
31
|
-
t.datetime "created_at"
|
32
|
-
t.datetime "updated_at"
|
30
|
+
t.integer "lock_version", default: 0, null: false
|
31
|
+
t.datetime "created_at"
|
32
|
+
t.datetime "updated_at"
|
33
33
|
end
|
34
34
|
|
35
|
-
add_index "baskets", ["user_id"], :
|
35
|
+
add_index "baskets", ["user_id"], name: "index_baskets_on_user_id"
|
36
36
|
|
37
|
-
create_table "bookstores", :
|
38
|
-
t.text "name", :
|
37
|
+
create_table "bookstores", force: :cascade do |t|
|
38
|
+
t.text "name", null: false
|
39
39
|
t.string "zip_code"
|
40
40
|
t.text "address"
|
41
41
|
t.text "note"
|
@@ -44,23 +44,23 @@ ActiveRecord::Schema.define(:version => 20140811031145) do
|
|
44
44
|
t.string "url"
|
45
45
|
t.integer "position"
|
46
46
|
t.datetime "deleted_at"
|
47
|
-
t.datetime "created_at"
|
48
|
-
t.datetime "updated_at"
|
47
|
+
t.datetime "created_at"
|
48
|
+
t.datetime "updated_at"
|
49
49
|
end
|
50
50
|
|
51
|
-
create_table "budget_types", :
|
51
|
+
create_table "budget_types", force: :cascade do |t|
|
52
52
|
t.string "name"
|
53
53
|
t.text "display_name"
|
54
54
|
t.text "note"
|
55
55
|
t.integer "position"
|
56
|
-
t.datetime "created_at"
|
57
|
-
t.datetime "updated_at"
|
56
|
+
t.datetime "created_at"
|
57
|
+
t.datetime "updated_at"
|
58
58
|
end
|
59
59
|
|
60
|
-
create_table "libraries", :
|
61
|
-
t.string "name",
|
60
|
+
create_table "libraries", force: :cascade do |t|
|
61
|
+
t.string "name", null: false
|
62
62
|
t.text "display_name"
|
63
|
-
t.string "short_display_name",
|
63
|
+
t.string "short_display_name", null: false
|
64
64
|
t.string "zip_code"
|
65
65
|
t.text "street"
|
66
66
|
t.text "locality"
|
@@ -69,14 +69,14 @@ ActiveRecord::Schema.define(:version => 20140811031145) do
|
|
69
69
|
t.string "telephone_number_2"
|
70
70
|
t.string "fax_number"
|
71
71
|
t.text "note"
|
72
|
-
t.integer "call_number_rows", :
|
73
|
-
t.string "call_number_delimiter", :
|
74
|
-
t.integer "library_group_id", :
|
75
|
-
t.integer "users_count", :
|
72
|
+
t.integer "call_number_rows", default: 1, null: false
|
73
|
+
t.string "call_number_delimiter", default: "|", null: false
|
74
|
+
t.integer "library_group_id", default: 1, null: false
|
75
|
+
t.integer "users_count", default: 0, null: false
|
76
76
|
t.integer "position"
|
77
77
|
t.integer "country_id"
|
78
|
-
t.datetime "created_at"
|
79
|
-
t.datetime "updated_at"
|
78
|
+
t.datetime "created_at"
|
79
|
+
t.datetime "updated_at"
|
80
80
|
t.datetime "deleted_at"
|
81
81
|
t.text "opening_hour"
|
82
82
|
t.string "isil"
|
@@ -84,54 +84,54 @@ ActiveRecord::Schema.define(:version => 20140811031145) do
|
|
84
84
|
t.float "longitude"
|
85
85
|
end
|
86
86
|
|
87
|
-
add_index "libraries", ["library_group_id"], :
|
88
|
-
add_index "libraries", ["name"], :
|
87
|
+
add_index "libraries", ["library_group_id"], name: "index_libraries_on_library_group_id"
|
88
|
+
add_index "libraries", ["name"], name: "index_libraries_on_name", unique: true
|
89
89
|
|
90
|
-
create_table "library_groups", :
|
91
|
-
t.string "name",
|
90
|
+
create_table "library_groups", force: :cascade do |t|
|
91
|
+
t.string "name", null: false
|
92
92
|
t.text "display_name"
|
93
|
-
t.string "short_name",
|
93
|
+
t.string "short_name", null: false
|
94
94
|
t.text "my_networks"
|
95
95
|
t.text "login_banner"
|
96
96
|
t.text "note"
|
97
97
|
t.integer "country_id"
|
98
98
|
t.integer "position"
|
99
|
-
t.datetime "created_at"
|
100
|
-
t.datetime "updated_at"
|
99
|
+
t.datetime "created_at"
|
100
|
+
t.datetime "updated_at"
|
101
101
|
t.text "admin_networks"
|
102
|
-
t.string "url", :
|
102
|
+
t.string "url", default: "http://localhost:3000/"
|
103
103
|
end
|
104
104
|
|
105
|
-
add_index "library_groups", ["short_name"], :
|
105
|
+
add_index "library_groups", ["short_name"], name: "index_library_groups_on_short_name"
|
106
106
|
|
107
|
-
create_table "news_feeds", :
|
108
|
-
t.integer "library_group_id", :
|
107
|
+
create_table "news_feeds", force: :cascade do |t|
|
108
|
+
t.integer "library_group_id", default: 1, null: false
|
109
109
|
t.string "title"
|
110
110
|
t.string "url"
|
111
111
|
t.text "body"
|
112
112
|
t.integer "position"
|
113
|
-
t.datetime "created_at"
|
114
|
-
t.datetime "updated_at"
|
113
|
+
t.datetime "created_at"
|
114
|
+
t.datetime "updated_at"
|
115
115
|
end
|
116
116
|
|
117
|
-
create_table "news_posts", :
|
117
|
+
create_table "news_posts", force: :cascade do |t|
|
118
118
|
t.text "title"
|
119
119
|
t.text "body"
|
120
120
|
t.integer "user_id"
|
121
121
|
t.datetime "start_date"
|
122
122
|
t.datetime "end_date"
|
123
|
-
t.integer "required_role_id", :
|
123
|
+
t.integer "required_role_id", default: 1, null: false
|
124
124
|
t.text "note"
|
125
125
|
t.integer "position"
|
126
|
-
t.boolean "draft", :
|
127
|
-
t.datetime "created_at"
|
128
|
-
t.datetime "updated_at"
|
126
|
+
t.boolean "draft", default: false, null: false
|
127
|
+
t.datetime "created_at"
|
128
|
+
t.datetime "updated_at"
|
129
129
|
t.string "url"
|
130
130
|
end
|
131
131
|
|
132
|
-
add_index "news_posts", ["user_id"], :
|
132
|
+
add_index "news_posts", ["user_id"], name: "index_news_posts_on_user_id"
|
133
133
|
|
134
|
-
create_table "profiles", :
|
134
|
+
create_table "profiles", force: :cascade do |t|
|
135
135
|
t.integer "user_id"
|
136
136
|
t.integer "user_group_id"
|
137
137
|
t.integer "library_id"
|
@@ -141,155 +141,155 @@ ActiveRecord::Schema.define(:version => 20140811031145) do
|
|
141
141
|
t.text "note"
|
142
142
|
t.text "keyword_list"
|
143
143
|
t.integer "required_role_id"
|
144
|
-
t.datetime "created_at"
|
145
|
-
t.datetime "updated_at"
|
144
|
+
t.datetime "created_at"
|
145
|
+
t.datetime "updated_at"
|
146
146
|
t.datetime "expired_at"
|
147
147
|
end
|
148
148
|
|
149
|
-
add_index "profiles", ["user_id"], :
|
150
|
-
add_index "profiles", ["user_number"], :
|
149
|
+
add_index "profiles", ["user_id"], name: "index_profiles_on_user_id"
|
150
|
+
add_index "profiles", ["user_number"], name: "index_profiles_on_user_number", unique: true
|
151
151
|
|
152
|
-
create_table "request_status_types", :
|
153
|
-
t.string "name", :
|
152
|
+
create_table "request_status_types", force: :cascade do |t|
|
153
|
+
t.string "name", null: false
|
154
154
|
t.text "display_name"
|
155
155
|
t.text "note"
|
156
156
|
t.integer "position"
|
157
|
-
t.datetime "created_at"
|
158
|
-
t.datetime "updated_at"
|
157
|
+
t.datetime "created_at"
|
158
|
+
t.datetime "updated_at"
|
159
159
|
end
|
160
160
|
|
161
|
-
create_table "request_types", :
|
162
|
-
t.string "name", :
|
161
|
+
create_table "request_types", force: :cascade do |t|
|
162
|
+
t.string "name", null: false
|
163
163
|
t.text "display_name"
|
164
164
|
t.text "note"
|
165
165
|
t.integer "position"
|
166
|
-
t.datetime "created_at"
|
167
|
-
t.datetime "updated_at"
|
166
|
+
t.datetime "created_at"
|
167
|
+
t.datetime "updated_at"
|
168
168
|
end
|
169
169
|
|
170
|
-
create_table "roles", :
|
171
|
-
t.string "name",
|
170
|
+
create_table "roles", force: :cascade do |t|
|
171
|
+
t.string "name", null: false
|
172
172
|
t.string "display_name"
|
173
173
|
t.text "note"
|
174
174
|
t.datetime "created_at"
|
175
175
|
t.datetime "updated_at"
|
176
|
-
t.integer "score", :
|
176
|
+
t.integer "score", default: 0, null: false
|
177
177
|
t.integer "position"
|
178
178
|
end
|
179
179
|
|
180
|
-
create_table "search_engines", :
|
181
|
-
t.string "name", :
|
180
|
+
create_table "search_engines", force: :cascade do |t|
|
181
|
+
t.string "name", null: false
|
182
182
|
t.text "display_name"
|
183
|
-
t.string "url", :
|
184
|
-
t.text "base_url", :
|
185
|
-
t.text "http_method", :
|
186
|
-
t.text "query_param", :
|
183
|
+
t.string "url", null: false
|
184
|
+
t.text "base_url", null: false
|
185
|
+
t.text "http_method", null: false
|
186
|
+
t.text "query_param", null: false
|
187
187
|
t.text "additional_param"
|
188
188
|
t.text "note"
|
189
189
|
t.integer "position"
|
190
|
-
t.datetime "created_at"
|
191
|
-
t.datetime "updated_at"
|
190
|
+
t.datetime "created_at"
|
191
|
+
t.datetime "updated_at"
|
192
192
|
end
|
193
193
|
|
194
|
-
create_table "shelves", :
|
195
|
-
t.string "name",
|
194
|
+
create_table "shelves", force: :cascade do |t|
|
195
|
+
t.string "name", null: false
|
196
196
|
t.text "display_name"
|
197
197
|
t.text "note"
|
198
|
-
t.integer "library_id", :
|
199
|
-
t.integer "items_count", :
|
198
|
+
t.integer "library_id", default: 1, null: false
|
199
|
+
t.integer "items_count", default: 0, null: false
|
200
200
|
t.integer "position"
|
201
|
-
t.datetime "created_at"
|
202
|
-
t.datetime "updated_at"
|
201
|
+
t.datetime "created_at"
|
202
|
+
t.datetime "updated_at"
|
203
203
|
t.datetime "deleted_at"
|
204
|
-
t.boolean "closed", :
|
204
|
+
t.boolean "closed", default: false, null: false
|
205
205
|
end
|
206
206
|
|
207
|
-
add_index "shelves", ["library_id"], :
|
207
|
+
add_index "shelves", ["library_id"], name: "index_shelves_on_library_id"
|
208
208
|
|
209
|
-
create_table "subscribes", :
|
210
|
-
t.integer "subscription_id", :
|
211
|
-
t.integer "work_id", :
|
212
|
-
t.datetime "start_at", :
|
213
|
-
t.datetime "end_at", :
|
214
|
-
t.datetime "created_at"
|
215
|
-
t.datetime "updated_at"
|
209
|
+
create_table "subscribes", force: :cascade do |t|
|
210
|
+
t.integer "subscription_id", null: false
|
211
|
+
t.integer "work_id", null: false
|
212
|
+
t.datetime "start_at", null: false
|
213
|
+
t.datetime "end_at", null: false
|
214
|
+
t.datetime "created_at"
|
215
|
+
t.datetime "updated_at"
|
216
216
|
end
|
217
217
|
|
218
|
-
add_index "subscribes", ["subscription_id"], :
|
219
|
-
add_index "subscribes", ["work_id"], :
|
218
|
+
add_index "subscribes", ["subscription_id"], name: "index_subscribes_on_subscription_id"
|
219
|
+
add_index "subscribes", ["work_id"], name: "index_subscribes_on_work_id"
|
220
220
|
|
221
|
-
create_table "subscriptions", :
|
222
|
-
t.text "title",
|
221
|
+
create_table "subscriptions", force: :cascade do |t|
|
222
|
+
t.text "title", null: false
|
223
223
|
t.text "note"
|
224
224
|
t.integer "user_id"
|
225
225
|
t.integer "order_list_id"
|
226
226
|
t.datetime "deleted_at"
|
227
|
-
t.integer "subscribes_count", :
|
228
|
-
t.datetime "created_at"
|
229
|
-
t.datetime "updated_at"
|
227
|
+
t.integer "subscribes_count", default: 0, null: false
|
228
|
+
t.datetime "created_at"
|
229
|
+
t.datetime "updated_at"
|
230
230
|
end
|
231
231
|
|
232
|
-
add_index "subscriptions", ["order_list_id"], :
|
233
|
-
add_index "subscriptions", ["user_id"], :
|
232
|
+
add_index "subscriptions", ["order_list_id"], name: "index_subscriptions_on_order_list_id"
|
233
|
+
add_index "subscriptions", ["user_id"], name: "index_subscriptions_on_user_id"
|
234
234
|
|
235
|
-
create_table "user_export_file_transitions", :
|
235
|
+
create_table "user_export_file_transitions", force: :cascade do |t|
|
236
236
|
t.string "to_state"
|
237
|
-
t.text "metadata", :
|
237
|
+
t.text "metadata", default: "{}"
|
238
238
|
t.integer "sort_key"
|
239
239
|
t.integer "user_export_file_id"
|
240
|
-
t.datetime "created_at"
|
241
|
-
t.datetime "updated_at"
|
240
|
+
t.datetime "created_at"
|
241
|
+
t.datetime "updated_at"
|
242
242
|
end
|
243
243
|
|
244
|
-
add_index "user_export_file_transitions", ["sort_key", "user_export_file_id"], :
|
245
|
-
add_index "user_export_file_transitions", ["user_export_file_id"], :
|
244
|
+
add_index "user_export_file_transitions", ["sort_key", "user_export_file_id"], name: "index_user_export_file_transitions_on_sort_key_and_file_id", unique: true
|
245
|
+
add_index "user_export_file_transitions", ["user_export_file_id"], name: "index_user_export_file_transitions_on_file_id"
|
246
246
|
|
247
|
-
create_table "user_export_files", :
|
247
|
+
create_table "user_export_files", force: :cascade do |t|
|
248
248
|
t.integer "user_id"
|
249
249
|
t.string "user_export_file_name"
|
250
250
|
t.string "user_export_content_type"
|
251
251
|
t.integer "user_export_file_size"
|
252
252
|
t.datetime "user_export_updated_at"
|
253
253
|
t.datetime "executed_at"
|
254
|
-
t.datetime "created_at"
|
255
|
-
t.datetime "updated_at"
|
254
|
+
t.datetime "created_at"
|
255
|
+
t.datetime "updated_at"
|
256
256
|
end
|
257
257
|
|
258
|
-
create_table "user_groups", :
|
258
|
+
create_table "user_groups", force: :cascade do |t|
|
259
259
|
t.string "name"
|
260
260
|
t.text "display_name"
|
261
261
|
t.text "note"
|
262
262
|
t.integer "position"
|
263
|
-
t.datetime "created_at"
|
264
|
-
t.datetime "updated_at"
|
263
|
+
t.datetime "created_at"
|
264
|
+
t.datetime "updated_at"
|
265
265
|
t.datetime "deleted_at"
|
266
|
-
t.integer "valid_period_for_new_user", :
|
266
|
+
t.integer "valid_period_for_new_user", default: 0, null: false
|
267
267
|
t.datetime "expired_at"
|
268
268
|
end
|
269
269
|
|
270
|
-
create_table "user_has_roles", :
|
270
|
+
create_table "user_has_roles", force: :cascade do |t|
|
271
271
|
t.integer "user_id"
|
272
272
|
t.integer "role_id"
|
273
|
-
t.datetime "created_at"
|
274
|
-
t.datetime "updated_at"
|
273
|
+
t.datetime "created_at"
|
274
|
+
t.datetime "updated_at"
|
275
275
|
end
|
276
276
|
|
277
|
-
add_index "user_has_roles", ["role_id"], :
|
278
|
-
add_index "user_has_roles", ["user_id"], :
|
277
|
+
add_index "user_has_roles", ["role_id"], name: "index_user_has_roles_on_role_id"
|
278
|
+
add_index "user_has_roles", ["user_id"], name: "index_user_has_roles_on_user_id"
|
279
279
|
|
280
|
-
create_table "user_import_file_transitions", :
|
280
|
+
create_table "user_import_file_transitions", force: :cascade do |t|
|
281
281
|
t.string "to_state"
|
282
|
-
t.text "metadata", :
|
282
|
+
t.text "metadata", default: "{}"
|
283
283
|
t.integer "sort_key"
|
284
284
|
t.integer "user_import_file_id"
|
285
|
-
t.datetime "created_at"
|
286
|
-
t.datetime "updated_at"
|
285
|
+
t.datetime "created_at"
|
286
|
+
t.datetime "updated_at"
|
287
287
|
end
|
288
288
|
|
289
|
-
add_index "user_import_file_transitions", ["sort_key", "user_import_file_id"], :
|
290
|
-
add_index "user_import_file_transitions", ["user_import_file_id"], :
|
289
|
+
add_index "user_import_file_transitions", ["sort_key", "user_import_file_id"], name: "index_user_import_file_transitions_on_sort_key_and_file_id", unique: true
|
290
|
+
add_index "user_import_file_transitions", ["user_import_file_id"], name: "index_user_import_file_transitions_on_user_import_file_id"
|
291
291
|
|
292
|
-
create_table "user_import_files", :
|
292
|
+
create_table "user_import_files", force: :cascade do |t|
|
293
293
|
t.integer "user_id"
|
294
294
|
t.text "note"
|
295
295
|
t.datetime "executed_at"
|
@@ -300,57 +300,57 @@ ActiveRecord::Schema.define(:version => 20140811031145) do
|
|
300
300
|
t.string "user_import_fingerprint"
|
301
301
|
t.string "edit_mode"
|
302
302
|
t.text "error_message"
|
303
|
-
t.datetime "created_at"
|
304
|
-
t.datetime "updated_at"
|
303
|
+
t.datetime "created_at"
|
304
|
+
t.datetime "updated_at"
|
305
305
|
t.string "user_encoding"
|
306
306
|
t.integer "default_library_id"
|
307
307
|
t.integer "default_user_group_id"
|
308
308
|
end
|
309
309
|
|
310
|
-
create_table "user_import_results", :
|
310
|
+
create_table "user_import_results", force: :cascade do |t|
|
311
311
|
t.integer "user_import_file_id"
|
312
312
|
t.integer "user_id"
|
313
313
|
t.text "body"
|
314
|
-
t.datetime "created_at"
|
315
|
-
t.datetime "updated_at"
|
314
|
+
t.datetime "created_at"
|
315
|
+
t.datetime "updated_at"
|
316
316
|
end
|
317
317
|
|
318
|
-
create_table "users", :
|
319
|
-
t.string "email", :
|
320
|
-
t.string "encrypted_password", :
|
318
|
+
create_table "users", force: :cascade do |t|
|
319
|
+
t.string "email", default: "", null: false
|
320
|
+
t.string "encrypted_password", default: "", null: false
|
321
321
|
t.string "reset_password_token"
|
322
322
|
t.datetime "reset_password_sent_at"
|
323
323
|
t.datetime "remember_created_at"
|
324
|
-
t.integer "sign_in_count", :
|
324
|
+
t.integer "sign_in_count", default: 0
|
325
325
|
t.datetime "current_sign_in_at"
|
326
326
|
t.datetime "last_sign_in_at"
|
327
327
|
t.string "current_sign_in_ip"
|
328
328
|
t.string "last_sign_in_ip"
|
329
|
-
t.datetime "created_at"
|
330
|
-
t.datetime "updated_at"
|
329
|
+
t.datetime "created_at"
|
330
|
+
t.datetime "updated_at"
|
331
331
|
t.string "username"
|
332
332
|
t.datetime "deleted_at"
|
333
333
|
t.datetime "expired_at"
|
334
|
-
t.integer "failed_attempts", :
|
334
|
+
t.integer "failed_attempts", default: 0
|
335
335
|
t.string "unlock_token"
|
336
336
|
t.datetime "locked_at"
|
337
337
|
t.datetime "confirmed_at"
|
338
338
|
end
|
339
339
|
|
340
|
-
add_index "users", ["email"], :
|
341
|
-
add_index "users", ["reset_password_token"], :
|
342
|
-
add_index "users", ["unlock_token"], :
|
343
|
-
add_index "users", ["username"], :
|
340
|
+
add_index "users", ["email"], name: "index_users_on_email"
|
341
|
+
add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
342
|
+
add_index "users", ["unlock_token"], name: "index_users_on_unlock_token", unique: true
|
343
|
+
add_index "users", ["username"], name: "index_users_on_username", unique: true
|
344
344
|
|
345
|
-
create_table "versions", :
|
346
|
-
t.string "item_type", :
|
347
|
-
t.integer "item_id", :
|
348
|
-
t.string "event", :
|
345
|
+
create_table "versions", force: :cascade do |t|
|
346
|
+
t.string "item_type", null: false
|
347
|
+
t.integer "item_id", null: false
|
348
|
+
t.string "event", null: false
|
349
349
|
t.string "whodunnit"
|
350
350
|
t.text "object"
|
351
351
|
t.datetime "created_at"
|
352
352
|
end
|
353
353
|
|
354
|
-
add_index "versions", ["item_type", "item_id"], :
|
354
|
+
add_index "versions", ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id"
|
355
355
|
|
356
356
|
end
|