erp_forms 3.0.0 → 3.0.1

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.
Files changed (43) hide show
  1. data/lib/erp_forms/extensions/railties/action_view.rb +1 -1
  2. data/lib/erp_forms/version.rb +1 -1
  3. data/public/javascripts/erp_app/shared/dynamic_forms/dynamic_forms_validation.js +1 -1
  4. metadata +2 -80
  5. data/spec/dummy/db/data_migrations/20110109173616_create_capability_scope_types.erp_tech_svcs.rb +0 -15
  6. data/spec/dummy/db/data_migrations/20110525001935_add_usd_currency.erp_base_erp_svcs.rb +0 -12
  7. data/spec/dummy/db/data_migrations/20110608185830_create_default_dynamic_models_and_forms.erp_forms.rb +0 -33
  8. data/spec/dummy/db/data_migrations/20110609150135_add_iso_codes.erp_base_erp_svcs.rb +0 -19
  9. data/spec/dummy/db/data_migrations/20110728201729_erp_app_setup.erp_app.rb +0 -252
  10. data/spec/dummy/db/data_migrations/20110728201733_update_preferences.erp_app.rb +0 -53
  11. data/spec/dummy/db/data_migrations/20110802200222_schedule_delete_expired_sessions_job.erp_tech_svcs.rb +0 -16
  12. data/spec/dummy/db/data_migrations/20110816161238_create_desktop_app_audit_log_viewer.erp_app.rb +0 -21
  13. data/spec/dummy/db/data_migrations/20110817160743_add_file_manager_application.erp_app.rb +0 -32
  14. data/spec/dummy/db/data_migrations/20110828190913_create_desktop_app_dynamic_forms.erp_forms.rb +0 -19
  15. data/spec/dummy/db/data_migrations/20110913145838_setup_compass_ae_instance.erp_base_erp_svcs.rb +0 -12
  16. data/spec/dummy/db/data_migrations/20111108183739_add_default_capabilities.erp_app.rb +0 -23
  17. data/spec/dummy/db/data_migrations/20111108183740_add_new_contact_widgets.erp_app.rb +0 -42
  18. data/spec/dummy/db/data_migrations/20111111144706_setup_audit_log_types.erp_tech_svcs.rb +0 -22
  19. data/spec/dummy/db/data_migrations/20120109173616_create_download_capability_type.erp_tech_svcs.rb +0 -14
  20. data/spec/dummy/db/data_migrations/20120229160222_add_userinfo_widget.erp_app.rb +0 -29
  21. data/spec/dummy/db/data_migrations/20120405193721_create_party_and_role_type_for_communication_events.erp_app.rb +0 -11
  22. data/spec/dummy/db/data_migrations/20120411180756_create_user_management_mobile_application.erp_app.rb +0 -19
  23. data/spec/dummy/db/data_migrations/20120418164215_create_configuration_management_desktop_application.erp_app.rb +0 -23
  24. data/spec/dummy/db/data_migrations/20120824013449_create_ticket_form.erp_forms.rb +0 -67
  25. data/spec/dummy/db/data_migrations/20121026013449_update_ticket_form.erp_forms.rb +0 -65
  26. data/spec/dummy/db/data_migrations/20121026191738_update_contact_form.erp_forms.rb +0 -27
  27. data/spec/dummy/db/data_migrations/20121116155018_create_group_relationship_and_role_types.erp_tech_svcs.rb +0 -20
  28. data/spec/dummy/db/data_migrations/20121130201859_upgrade_remove_system_mgmt_app.erp_app.rb +0 -16
  29. data/spec/dummy/db/data_migrations/20121130212146_note_capabilities.erp_tech_svcs.rb +0 -24
  30. data/spec/dummy/db/data_migrations/20121218175028_create_security_management_desktop_application.erp_app.rb +0 -23
  31. data/spec/dummy/db/migrate/20121213234847_base_erp_services.erp_base_erp_svcs.rb +0 -461
  32. data/spec/dummy/db/migrate/20121213234848_base_tech_services.erp_tech_svcs.rb +0 -255
  33. data/spec/dummy/db/migrate/20121213234849_create_has_attribute_tables.erp_tech_svcs.rb +0 -39
  34. data/spec/dummy/db/migrate/20121213234850_base_app_framework.erp_app.rb +0 -276
  35. data/spec/dummy/db/migrate/20121213234851_dynamic_forms.erp_forms.rb +0 -95
  36. data/spec/dummy/db/migrate/20121213234852_create_tickets.erp_forms.rb +0 -19
  37. data/spec/dummy/db/migrate/20121213234853_upgrade_dynamic_forms_table.erp_forms.rb +0 -32
  38. data/spec/dummy/db/migrate/20130107181041_create_groups.erp_tech_svcs.rb +0 -19
  39. data/spec/dummy/db/migrate/20130107181042_upgrade_security.erp_tech_svcs.rb +0 -54
  40. data/spec/dummy/db/migrate/20130107181043_upgrade_security2.erp_tech_svcs.rb +0 -270
  41. data/spec/dummy/db/schema.rb +0 -879
  42. data/spec/dummy/db/spec.sqlite3 +0 -0
  43. data/spec/dummy/log/spec.log +0 -13580
@@ -1,461 +0,0 @@
1
- # This migration comes from erp_base_erp_svcs (originally 20080805000020)
2
- class BaseErpServices < ActiveRecord::Migration
3
- def self.up
4
-
5
- unless table_exists?(:compass_ae_instances)
6
- create_table :compass_ae_instances do |t|
7
- t.decimal :version, :scale => 8, :precision => 3
8
-
9
- t.timestamps
10
- end
11
- end
12
-
13
- # Create parties table
14
- unless table_exists?(:parties)
15
- create_table :parties do |t|
16
- t.column :description, :string
17
- t.column :business_party_id, :integer
18
- t.column :business_party_type, :string
19
- t.column :list_view_image_id, :integer
20
-
21
- #This field is here to provide a direct way to map CompassERP
22
- #business parties to unified idenfiers in organizations if they
23
- #have been implemented in an enterprise.
24
- t.column :enterprise_identifier, :string
25
- t.timestamps
26
- end
27
- add_index :parties, [:business_party_id, :business_party_type], :name => "besi_1"
28
- end
29
-
30
- # Create party_roles table
31
- unless table_exists?(:party_roles)
32
- create_table :party_roles do |t|
33
- #this column holds the class name of the
34
- #subtype of party-to-role_type relatsionship
35
- t.column :type, :string
36
- #xref between party and role_type
37
- t.column :party_id, :integer
38
- t.column :role_type_id, :integer
39
- t.timestamps
40
- end
41
- add_index :party_roles, :party_id
42
- add_index :party_roles, :role_type_id
43
- end
44
-
45
-
46
- # Create role_types table
47
- unless table_exists?(:role_types)
48
- create_table :role_types do |t|
49
- #these columns are required to support the behavior of the plugin 'awesome_nested_set'
50
- t.column :parent_id, :integer
51
- t.column :lft, :integer
52
- t.column :rgt, :integer
53
-
54
- #custom columns go here
55
- t.column :description, :string
56
- t.column :comments, :string
57
- t.column :internal_identifier, :string
58
- t.column :external_identifier, :string
59
- t.column :external_id_source, :string
60
- t.timestamps
61
- end
62
- end
63
-
64
- # Create relationship_types table
65
- unless table_exists?(:relationship_types)
66
- create_table :relationship_types do |t|
67
- t.column :parent_id, :integer
68
- t.column :lft, :integer
69
- t.column :rgt, :integer
70
-
71
- #custom columns go here
72
- t.column :valid_from_role_type_id, :integer
73
- t.column :valid_to_role_type_id, :integer
74
- t.column :name, :string
75
- t.column :description, :string
76
-
77
- t.column :internal_identifier, :string
78
- t.column :external_identifier, :string
79
- t.column :external_id_source, :string
80
- t.timestamps
81
- end
82
- add_index :relationship_types, :valid_from_role_type_id
83
- add_index :relationship_types, :valid_to_role_type_id
84
- end
85
-
86
- # Create party_relationships table
87
- unless table_exists?(:party_relationships)
88
- create_table :party_relationships do |t|
89
- t.column :description, :string
90
- t.column :party_id_from, :integer
91
- t.column :party_id_to, :integer
92
- t.column :role_type_id_from, :integer
93
- t.column :role_type_id_to, :integer
94
- t.column :status_type_id, :integer
95
- t.column :priority_type_id, :integer
96
- t.column :relationship_type_id, :integer
97
- t.column :from_date, :date
98
- t.column :thru_date, :date
99
- t.column :external_identifier, :string
100
- t.column :external_id_source, :string
101
- t.timestamps
102
- end
103
- add_index :party_relationships, :status_type_id
104
- add_index :party_relationships, :priority_type_id
105
- add_index :party_relationships, :relationship_type_id
106
- end
107
-
108
- # Create organizations table
109
- unless table_exists?(:organizations)
110
- create_table :organizations do |t|
111
- t.column :description, :string
112
- t.column :tax_id_number, :string
113
- t.timestamps
114
- end
115
- end
116
-
117
- # Create individuals table
118
- unless table_exists?(:individuals)
119
- create_table :individuals do |t|
120
- t.column :party_id, :integer
121
- t.column :current_last_name, :string
122
- t.column :current_first_name, :string
123
- t.column :current_middle_name, :string
124
- t.column :current_personal_title, :string
125
- t.column :current_suffix, :string
126
- t.column :current_nickname, :string
127
- t.column :gender, :string, :limit => 1
128
- t.column :birth_date, :date
129
- t.column :height, :decimal, :precision => 5, :scale => 2
130
- t.column :weight, :integer
131
- t.column :mothers_maiden_name, :string
132
- t.column :marital_status, :string, :limit => 1
133
- t.column :social_security_number, :string
134
- t.column :current_passport_number, :integer
135
-
136
- t.column :current_passport_expire_date, :date
137
- t.column :total_years_work_experience, :integer
138
- t.column :comments, :string
139
- t.column :encrypted_ssn, :string
140
- t.column :temp_ssn, :string
141
- t.column :salt, :string
142
- t.column :ssn_last_four, :string
143
- t.timestamps
144
- end
145
- add_index :individuals, :party_id
146
- end
147
-
148
- # Create contacts table
149
- unless table_exists?(:contacts)
150
- create_table :contacts do |t|
151
- t.column :party_id, :integer
152
- t.column :contact_mechanism_id, :integer
153
- t.column :contact_mechanism_type, :string
154
-
155
- t.column :external_identifier, :string
156
- t.column :external_id_source, :string
157
-
158
- t.timestamps
159
- end
160
- add_index :contacts, :party_id
161
- add_index :contacts, [:contact_mechanism_id, :contact_mechanism_type], :name => "besi_2"
162
- end
163
-
164
- # Create contact_types
165
- unless table_exists?(:contact_types)
166
- create_table :contact_types do |t|
167
- t.column :parent_id, :integer
168
- t.column :lft, :integer
169
- t.column :rgt, :integer
170
-
171
- #custom columns go here
172
-
173
- t.column :description, :string
174
- t.column :comments, :string
175
-
176
- t.column :internal_identifier, :string
177
- t.column :external_identifier, :string
178
- t.column :external_id_source, :string
179
-
180
- t.timestamps
181
- end
182
- add_index :contact_types, :parent_id
183
- end
184
-
185
- # Create contact_purposes
186
- unless table_exists?(:contact_purposes)
187
- create_table :contact_purposes do |t|
188
-
189
- t.column :parent_id, :integer
190
- t.column :lft, :integer
191
- t.column :rgt, :integer
192
-
193
- #custom columns go here
194
-
195
- t.column :description, :string
196
- t.column :comments, :string
197
-
198
- t.column :internal_identifier, :string
199
- t.column :external_identifier, :string
200
- t.column :external_id_source, :string
201
-
202
- t.timestamps
203
- end
204
- add_index :contact_purposes, :parent_id
205
-
206
- end
207
-
208
- unless table_exists?(:contact_purposes_contacts)
209
- create_table :contact_purposes_contacts, {:id => false} do |t|
210
- t.column :contact_id, :integer
211
- t.column :contact_purpose_id, :integer
212
- end
213
- add_index :contact_purposes_contacts, [:contact_id, :contact_purpose_id], :name => "contact_purposes_contacts_index"
214
- end
215
-
216
- # Create postal_addresses (a contact_mechanism)
217
- unless table_exists?(:postal_addresses)
218
- create_table :postal_addresses do |t|
219
- t.column :address_line_1, :string
220
- t.column :address_line_2, :string
221
- t.column :city, :string
222
- t.column :state, :string
223
- t.column :zip, :string
224
- t.column :country, :string
225
- t.column :description, :string
226
- t.column :geo_country_id, :integer
227
- t.column :geo_zone_id, :integer
228
- t.timestamps
229
- end
230
- add_index :postal_addresses, :geo_country_id
231
- add_index :postal_addresses, :geo_zone_id
232
- end
233
-
234
- # Create email_addresses (a contact_mechanism)
235
- unless table_exists?(:email_addresses)
236
- create_table :email_addresses do |t|
237
- t.column :email_address, :string
238
- t.column :description, :string
239
-
240
- t.timestamps
241
- end
242
- end
243
-
244
- # Create phone_numbers table (A contact_mechanism)
245
- unless table_exists?(:phone_numbers)
246
- create_table :phone_numbers do |t|
247
- t.column :phone_number, :string
248
- t.column :description, :string
249
-
250
- t.timestamps
251
- end
252
- end
253
-
254
- unless table_exists?(:party_search_facts)
255
- create_table :party_search_facts do |t|
256
- t.column :party_id, :integer
257
- t.column :eid, :string
258
- t.column :type, :string
259
- t.column :roles, :text
260
- t.column :party_description, :string
261
- t.column :party_business_party_type, :string
262
- t.column :user_login, :string
263
- t.column :individual_current_last_name, :string
264
- t.column :individual_current_first_name, :string
265
- t.column :individual_current_middle_name, :string
266
- t.column :individual_birth_date, :string
267
- t.column :individual_ssn, :string
268
- t.column :party_phone_number, :string
269
- t.column :party_email_address, :string
270
- t.column :party_address_1, :string
271
- t.column :party_address_2, :string
272
- t.column :party_primary_address_city, :string
273
- t.column :party_primary_address_state, :string
274
- t.column :party_primary_address_zip, :string
275
- t.column :party_primary_address_country, :string
276
- t.column :user_enabled, :boolean
277
- t.column :user_type, :string
278
- t.column :reindex, :boolean
279
- t.timestamps
280
- end
281
- end
282
-
283
- unless table_exists?(:money)
284
- create_table :money do |t|
285
- t.string :description
286
- t.decimal :amount, :precision => 8, :scale => 2
287
- t.references :currency
288
- t.timestamps
289
- end
290
- add_index :money, :currency_id
291
- end
292
-
293
- unless table_exists?(:currencies)
294
- create_table :currencies do |t|
295
- t.string :name
296
- t.string :definition
297
- t.string :internal_identifier # aka alphabetic_code
298
- t.string :numeric_code
299
- t.string :major_unit_symbol
300
- t.string :minor_unit_symbol
301
- t.string :ratio_of_minor_unit_to_major_unit
302
- t.string :postfix_label
303
- t.datetime :introduction_date
304
- t.datetime :expiration_date
305
- t.timestamps
306
- end
307
- add_index :currencies, :internal_identifier
308
- end
309
-
310
- ## categories
311
- unless table_exists?(:categories)
312
- create_table :categories do |t|
313
- t.string :description
314
- t.string :external_identifier
315
- t.datetime :from_date
316
- t.datetime :to_date
317
- t.string :internal_identifier
318
-
319
- # polymorphic assns
320
- t.integer :category_record_id
321
- t.string :category_record_type
322
-
323
- # nested set cols
324
- t.integer :parent_id
325
- t.integer :lft
326
- t.integer :rgt
327
-
328
- t.timestamps
329
- end
330
- add_index :categories, [:category_record_id, :category_record_type], :name => "category_polymorphic"
331
- end
332
-
333
- ## category_classifications
334
- unless table_exists?(:category_classifications)
335
- create_table :category_classifications do |t|
336
- t.integer :category_id
337
- t.string :classification_type
338
- t.integer :classification_id
339
- t.datetime :from_date
340
- t.datetime :to_date
341
-
342
- t.timestamps
343
- end
344
- add_index :category_classifications, [:classification_id, :classification_type], :name => "classification_polymorphic"
345
- end
346
-
347
- ## descriptive_assets
348
- unless table_exists?(:descriptive_assets)
349
- create_table :descriptive_assets do |t|
350
- t.references :view_type
351
- t.string :internal_identifier
352
- t.text :description
353
- t.string :external_identifier
354
- t.string :external_id_source
355
- t.references :described_record, :polymorphic => true
356
-
357
- t.timestamps
358
- end
359
-
360
- add_index :descriptive_assets, :view_type_id
361
- add_index :descriptive_assets, [:described_record_id, :described_record_type], :name => 'described_record_idx'
362
- end
363
-
364
- unless table_exists?(:view_types)
365
- create_table :view_types do |t|
366
- t.string :internal_identifier
367
- t.string :description
368
-
369
- t.timestamps
370
- end
371
- end
372
-
373
- unless table_exists?(:geo_countries)
374
- create_table :geo_countries do |t|
375
- t.column :name, :string
376
- t.column :iso_code_2, :string, :length => 2
377
- t.column :iso_code_3, :string, :length => 3
378
- t.column :display, :boolean, :default => true
379
- t.column :external_id, :integer
380
- t.column :created_at, :datetime
381
- end
382
- add_index :geo_countries, :name
383
- add_index :geo_countries, :iso_code_2
384
- end
385
-
386
- unless table_exists?(:geo_zones)
387
- create_table :geo_zones do |t|
388
- t.column :geo_country_id, :integer
389
- t.column :zone_code, :string, :default => 2
390
- t.column :zone_name, :string
391
- t.column :created_at, :datetime
392
- end
393
- add_index :geo_zones, :geo_country_id
394
- add_index :geo_zones, :zone_name
395
- add_index :geo_zones, :zone_code
396
- end
397
-
398
- unless table_exists?(:notes)
399
- create_table :notes do |t|
400
- t.integer :created_by_id
401
- t.text :content
402
- t.references :noted_record, :polymorphic => true
403
- t.references :note_type
404
-
405
- t.timestamps
406
- end
407
-
408
- add_index :notes, [:noted_record_id, :noted_record_type]
409
- add_index :notes, :note_type_id
410
- add_index :notes, :created_by_id
411
- end
412
-
413
- unless table_exists?(:note_types)
414
- create_table :note_types do |t|
415
- #these columns are required to support the behavior of the plugin 'awesome_nested_set'
416
- t.integer :parent_id
417
- t.integer :lft
418
- t.integer :rgt
419
-
420
- t.string :description
421
- t.string :internal_identifier
422
- t.string :external_identifier
423
- t.references :note_type_record, :polymorphic => true
424
-
425
- t.timestamps
426
- end
427
-
428
- add_index :note_types, [:note_type_record_id, :note_type_record_type], :name => "note_type_record_idx"
429
- end
430
-
431
- unless table_exists?(:valid_note_types)
432
- create_table :valid_note_types do |t|
433
- t.references :valid_note_type_record, :polymorphic => true
434
- t.references :note_type
435
-
436
- t.timestamps
437
- end
438
-
439
- add_index :valid_note_types, [:valid_note_type_record_id, :valid_note_type_record_type], :name => "valid_note_type_record_idx"
440
- add_index :valid_note_types, :note_type_id
441
- end
442
-
443
- end
444
-
445
- def self.down
446
- [
447
- :currencies, :money,
448
- :party_search_facts, :phone_numbers, :email_addresses,
449
- :postal_addresses, :contact_purposes, :contact_types,
450
- :contacts, :individuals, :organizations,
451
- :party_relationships, :relationship_types, :role_types,
452
- :party_roles, :parties, :categories, :category_classifications,
453
- :descriptive_assets, :view_types, :notes, :note_types, :valid_note_types, :compass_ae_instances
454
- ].each do |tbl|
455
- if table_exists?(tbl)
456
- drop_table tbl
457
- end
458
- end
459
-
460
- end
461
- end
@@ -1,255 +0,0 @@
1
- # This migration comes from erp_tech_svcs (originally 20080805000010)
2
- class BaseTechServices < ActiveRecord::Migration
3
- def self.up
4
- unless table_exists?(:users)
5
- # Create the users table
6
- create_table :users do |t|
7
- t.string :username
8
- t.string :email
9
- t.references :party
10
- t.string :type
11
- t.string :salt, :default => nil
12
- t.string :crypted_password, :default => nil
13
-
14
- #activity logging
15
- t.datetime :last_login_at, :default => nil
16
- t.datetime :last_logout_at, :default => nil
17
- t.datetime :last_activity_at, :default => nil
18
-
19
- #brute force protection
20
- t.integer :failed_logins_count, :default => 0
21
- t.datetime :lock_expires_at, :default => nil
22
-
23
- #remember me
24
- t.string :remember_me_token, :default => nil
25
- t.datetime :remember_me_token_expires_at, :default => nil
26
-
27
- #reset password
28
- t.string :reset_password_token, :default => nil
29
- t.datetime :reset_password_token_expires_at, :default => nil
30
- t.datetime :reset_password_email_sent_at, :default => nil
31
-
32
- #user activation
33
- t.string :activation_state, :default => nil
34
- t.string :activation_token, :default => nil
35
- t.datetime :activation_token_expires_at, :default => nil
36
-
37
- t.string :security_question_1
38
- t.string :security_answer_1
39
- t.string :security_question_2
40
- t.string :security_answer_2
41
-
42
- t.timestamps
43
- end
44
- add_index :users, :email, :unique => true
45
- add_index :users, :username, :unique => true
46
- add_index :users, [:last_logout_at, :last_activity_at], :name => 'activity_idx'
47
- add_index :users, :remember_me_token
48
- add_index :users, :reset_password_token
49
- add_index :users, :activation_token
50
-
51
- end
52
-
53
- unless table_exists?(:roles)
54
- # create the roles table
55
- create_table :roles do |t|
56
- t.column :description, :string
57
- t.column :internal_identifier, :string
58
- t.column :external_identifier, :string
59
- t.column :external_id_source, :string
60
-
61
- t.timestamps
62
- end
63
- end
64
-
65
- unless table_exists?(:sessions)
66
- # Create sessions table
67
- create_table :sessions do |t|
68
- t.string :session_id, :null => false
69
- t.text :data
70
- t.timestamps
71
- end
72
- add_index :sessions, :session_id
73
- add_index :sessions, :updated_at
74
- end
75
-
76
- unless table_exists?(:audit_logs)
77
- # Create audit_logs
78
- create_table :audit_logs do |t|
79
- t.string :application
80
- t.string :description
81
- t.integer :party_id
82
- t.text :additional_info
83
- t.references :audit_log_type
84
-
85
- #polymorphic columns
86
- t.references :event_record, :polymorphic => true
87
-
88
- t.timestamps
89
- end
90
- add_index :audit_logs, :party_id
91
- add_index :audit_logs, [:event_record_id, :event_record_type], :name => 'event_record_index'
92
- end
93
-
94
- unless table_exists?(:audit_log_types)
95
- # Create audit_logs
96
- create_table :audit_log_types do |t|
97
- t.string :description
98
- t.string :error_code
99
- t.string :comments
100
- t.string :internal_identifier
101
- t.string :external_identifier
102
- t.string :external_id_source
103
-
104
- #better nested set columns
105
- t.integer :parent_id
106
- t.integer :lft
107
- t.integer :rgt
108
-
109
- t.timestamps
110
- end
111
- end
112
-
113
- unless table_exists?(:audit_log_items)
114
- # Create audit_log_items
115
- create_table :audit_log_items do |t|
116
- t.references :audit_log
117
- t.references :audit_log_item_type
118
- t.string :audit_log_item_value
119
- t.string :description
120
-
121
- t.timestamps
122
- end
123
- end
124
-
125
- unless table_exists?(:audit_log_item_types)
126
- # Create audit_log_item_types
127
- create_table :audit_log_item_types do |t|
128
- t.string :internal_identifier
129
- t.string :external_identifier
130
- t.string :external_id_source
131
- t.string :description
132
- t.string :comments
133
-
134
- #better nested set columns
135
- t.integer :parent_id
136
- t.integer :lft
137
- t.integer :rgt
138
-
139
- t.timestamps
140
- end
141
- end
142
-
143
- unless table_exists?(:secured_models)
144
- create_table :secured_models do |t|
145
- t.references :secured_record, :polymorphic => true
146
-
147
- t.timestamps
148
- end
149
- add_index :secured_models, [:secured_record_id, :secured_record_type], :name => 'secured_record_idx'
150
- end
151
-
152
- unless table_exists?(:roles_secured_models)
153
- create_table :roles_secured_models, :id => false do |t|
154
- t.references :secured_model
155
- t.references :role
156
- end
157
- add_index :roles_secured_models, :secured_model_id
158
- add_index :roles_secured_models, :role_id
159
- end
160
-
161
- unless table_exists?(:file_assets)
162
- create_table :file_assets do |t|
163
- t.references :file_asset_holder, :polymorphic => true
164
- t.string :type
165
- t.string :name
166
- t.string :directory
167
- t.string :data_file_name
168
- t.string :data_content_type
169
- t.integer :data_file_size
170
- t.datetime :data_updated_at
171
- t.string :width
172
- t.string :height
173
-
174
- t.timestamps
175
- end
176
- add_index :file_assets, :type
177
- add_index :file_assets, [:file_asset_holder_id, :file_asset_holder_type], :name => 'file_asset_holder_idx'
178
- add_index :file_assets, :name
179
- add_index :file_assets, :directory
180
- end
181
-
182
- unless table_exists?(:delayed_jobs)
183
- create_table :delayed_jobs, :force => true do |table|
184
- table.integer :priority, :default => 0 # Allows some jobs to jump to the front of the queue
185
- table.integer :attempts, :default => 0 # Provides for retries, but still fail eventually.
186
- table.text :handler # YAML-encoded string of the object that will do work
187
- table.text :last_error # reason for last failure (See Note below)
188
- table.datetime :run_at # When to run. Could be Time.zone.now for immediately, or sometime in the future.
189
- table.datetime :locked_at # Set when a client is working on this object
190
- table.datetime :failed_at # Set when all retries have failed (actually, by default, the record is deleted instead)
191
- table.string :locked_by # Who is working on this object (if locked)
192
- table.string :queue
193
- table.timestamps
194
- end
195
- add_index :delayed_jobs, [:priority, :run_at], :name => 'delayed_jobs_priority'
196
- end
197
-
198
- unless table_exists?(:capable_models)
199
- # create the roles table
200
- create_table :capable_models do |t|
201
- t.references :capable_model_record, :polymorphic => true
202
-
203
- t.timestamps
204
- end
205
-
206
- add_index :capable_models, [:capable_model_record_id, :capable_model_record_type], :name => 'capable_model_record_idx'
207
- end
208
-
209
- unless table_exists?(:capability_types)
210
- # create the roles table
211
- create_table :capability_types do |t|
212
- t.string :internal_identifier
213
- t.string :description
214
- t.timestamps
215
- end
216
- end
217
-
218
- unless table_exists?(:capabilities)
219
- # create the roles table
220
- create_table :capabilities do |t|
221
- t.string :resource
222
- t.references :capability_type
223
- t.timestamps
224
- end
225
-
226
- add_index :capabilities, :capability_type_id
227
- end
228
-
229
- unless table_exists?(:capabilities_capable_models)
230
- # create the roles table
231
- create_table :capabilities_capable_models, :id => false do |t|
232
- t.references :capable_model
233
- t.references :capability
234
- end
235
-
236
- add_index :capabilities_capable_models, :capable_model_id
237
- add_index :capabilities_capable_models, :capability_id
238
- end
239
-
240
- end
241
-
242
- def self.down
243
- # check that each table exists before trying to delete it.
244
- [
245
- :audit_logs, :sessions, :simple_captcha_data,
246
- :capable_models, :capability_types, :capabilities,:capabilities_capable_models,
247
- :roles_users, :roles, :audit_log_items, :audit_log_item_types,
248
- :users, :secured_models, :roles_secured_models, :file_assets, :delayed_jobs
249
- ].each do |tbl|
250
- if table_exists?(tbl)
251
- drop_table tbl
252
- end
253
- end
254
- end
255
- end