compass_ae_console 1.0.4 → 2.0.0
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/lib/compass_ae_console/engine.rb +0 -1
- data/lib/compass_ae_console/version.rb +2 -2
- data/spec/dummy/config/application.rb +6 -0
- data/spec/dummy/config/environments/spec.rb +3 -0
- data/spec/dummy/config/routes.rb +1 -1
- data/spec/dummy/db/data_migrations/20110525001935_add_usd_currency.erp_base_erp_svcs.rb +12 -0
- data/spec/dummy/db/data_migrations/20110608185830_create_default_dynamic_models_and_forms.erp_forms.rb +33 -0
- data/spec/dummy/db/data_migrations/20110609150135_add_iso_codes.erp_base_erp_svcs.rb +19 -0
- data/spec/dummy/db/data_migrations/20110728201729_erp_app_setup.erp_app.rb +298 -0
- data/spec/dummy/db/data_migrations/20110728201730_update_preferences.erp_app.rb +53 -0
- data/spec/dummy/db/data_migrations/20110802200222_schedule_delete_expired_sessions_job.erp_tech_svcs.rb +16 -0
- data/spec/dummy/db/data_migrations/20110816161238_create_desktop_app_audit_log_viewer.erp_app.rb +21 -0
- data/spec/dummy/db/data_migrations/20110817160743_add_file_manager_application.erp_app.rb +32 -0
- data/spec/dummy/db/data_migrations/20110824020426_create_desktop_app_console.compass_ae_console.rb +20 -0
- data/spec/dummy/db/data_migrations/20110828190913_create_desktop_app_dynamic_forms.erp_forms.rb +19 -0
- data/spec/dummy/db/data_migrations/20110913145838_setup_compass_ae_instance.erp_base_erp_svcs.rb +12 -0
- data/spec/dummy/db/data_migrations/20111108183739_add_default_capabilities.erp_app.rb +30 -0
- data/spec/dummy/db/data_migrations/20111108183740_add_new_contact_widgets.erp_app.rb +51 -0
- data/spec/dummy/db/data_migrations/20111111144706_setup_audit_log_types.erp_tech_svcs.rb +22 -0
- data/spec/dummy/db/data_migrations/20120109173616_create_download_capability_type.erp_tech_svcs.rb +14 -0
- data/spec/dummy/db/data_migrations/20120229160222_add_userinfo_widget.erp_app.rb +31 -0
- data/spec/dummy/db/data_migrations/20120405193721_create_party_and_role_type_for_communication_events.erp_app.rb +11 -0
- data/spec/dummy/db/data_migrations/20120411180756_create_user_management_mobile_application.erp_app.rb +19 -0
- data/spec/dummy/db/data_migrations/20120418164215_create_configuration_management_desktop_application.erp_app.rb +23 -0
- data/spec/dummy/db/data_migrations/20120824013449_create_ticket_form.erp_forms.rb +67 -0
- data/spec/dummy/db/data_migrations/20121026013449_update_ticket_form.erp_forms.rb +65 -0
- data/spec/dummy/db/data_migrations/20121026191738_update_contact_form.erp_forms.rb +27 -0
- data/spec/dummy/db/migrate/20121207195349_base_erp_services.erp_base_erp_svcs.rb +461 -0
- data/spec/dummy/db/migrate/20121207195350_base_tech_services.erp_tech_svcs.rb +255 -0
- data/spec/dummy/db/migrate/20121207195351_create_has_attribute_tables.erp_tech_svcs.rb +39 -0
- data/spec/dummy/db/migrate/20121207195352_base_app_framework.erp_app.rb +276 -0
- data/spec/dummy/db/migrate/20121207195353_dynamic_forms.erp_forms.rb +95 -0
- data/spec/dummy/db/migrate/20121207195354_create_tickets.erp_forms.rb +19 -0
- data/spec/dummy/db/migrate/20121207195355_upgrade_dynamic_forms_table.erp_forms.rb +32 -0
- data/spec/dummy/db/schema.rb +879 -0
- data/spec/dummy/db/spec.sqlite3 +0 -0
- data/spec/dummy/log/spec.log +3827 -0
- data/spec/spec_helper.rb +11 -3
- metadata +89 -9
@@ -37,6 +37,12 @@ module Dummy
|
|
37
37
|
|
38
38
|
# Enable the asset pipeline
|
39
39
|
config.assets.enabled = true
|
40
|
+
|
41
|
+
# Enforce whitelist mode for mass assignment.
|
42
|
+
# This will create an empty whitelist of attributes available for mass-assignment for all models
|
43
|
+
# in your app. As such, your models will need to explicitly whitelist or blacklist accessible
|
44
|
+
# parameters by using an attr_accessible or attr_protected declaration.
|
45
|
+
config.active_record.whitelist_attributes = true
|
40
46
|
end
|
41
47
|
end
|
42
48
|
|
@@ -1,6 +1,9 @@
|
|
1
1
|
Dummy::Application.configure do
|
2
2
|
# Settings specified here will take precedence over those in config/application.rb
|
3
3
|
|
4
|
+
# Raise exception on mass assignment protection for Active Record models
|
5
|
+
config.active_record.mass_assignment_sanitizer = :strict
|
6
|
+
|
4
7
|
# In the development environment your application's code is reloaded on
|
5
8
|
# every request. This slows down response time but is perfect for development
|
6
9
|
# since you don't have to restart the web server when you make code changes.
|
data/spec/dummy/config/routes.rb
CHANGED
@@ -0,0 +1,12 @@
|
|
1
|
+
# This migration comes from erp_base_erp_svcs (originally 20110525001935)
|
2
|
+
class AddUsdCurrency
|
3
|
+
|
4
|
+
def self.up
|
5
|
+
Currency.create(:name => 'US Dollar', :internal_identifier => 'USD', :major_unit_symbol => "$")
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.down
|
9
|
+
Currency.usd.destroy
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# This migration comes from erp_forms (originally 20110608185830)
|
2
|
+
class CreateDefaultDynamicModelsAndForms
|
3
|
+
|
4
|
+
def self.up
|
5
|
+
#insert data here
|
6
|
+
DynamicFormModel.create(:model_name => 'DynamicFormDocument')
|
7
|
+
|
8
|
+
fields = []
|
9
|
+
|
10
|
+
fields << DynamicFormField.textfield({:fieldLabel => 'First Name', :name => 'first_name', :width => 250, :allowBlank => false })
|
11
|
+
fields << DynamicFormField.textfield({:fieldLabel => 'Last Name', :name => 'last_name', :width => 250, :allowBlank => false })
|
12
|
+
fields << DynamicFormField.email({:fieldLabel => 'Email', :name => 'email', :width => 250, :allowBlank => false })
|
13
|
+
fields << DynamicFormField.textarea({:fieldLabel => 'Message', :name => 'message', :width => 400, :height => 200, :allowBlank => false })
|
14
|
+
|
15
|
+
d = DynamicForm.new
|
16
|
+
d.description = 'Contact Form'
|
17
|
+
d.definition = fields.to_json
|
18
|
+
d.model_name = 'WebsiteInquiry'
|
19
|
+
d.internal_identifier = 'contact_us'
|
20
|
+
d.default = true
|
21
|
+
d.dynamic_form_model = DynamicFormModel.create(:model_name => 'WebsiteInquiry')
|
22
|
+
d.comment = "This is the default form used by Knitkit's Contact Us Widget for Website Inquiries. NOTE: The Contact Us Widget uses Knitkit's website configuration options for email behavior & not the Dynamic Forms Widget Action setting."
|
23
|
+
d.msg_target = 'qtip'
|
24
|
+
d.save
|
25
|
+
end
|
26
|
+
|
27
|
+
def self.down
|
28
|
+
#remove data here
|
29
|
+
DynamicFormModel.delete_all
|
30
|
+
DynamicForm.delete_all
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# This migration comes from erp_base_erp_svcs (originally 20110609150135)
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
class AddIsoCodes
|
5
|
+
|
6
|
+
def self.up
|
7
|
+
#find the erp_base_erp_svcs engine
|
8
|
+
engine_path = Rails::Application::Railties.engines.find{|item| item.engine_name == 'erp_base_erp_svcs'}.config.root.to_s
|
9
|
+
|
10
|
+
GeoCountry.load_from_file(File.join(engine_path,'db/data_sets/geo_countries.yml'))
|
11
|
+
GeoZone.load_from_file(File.join(engine_path,'db/data_sets/geo_zones.yml'))
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.down
|
15
|
+
GeoCountry.delete_all
|
16
|
+
GeoZone.delete_all
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
@@ -0,0 +1,298 @@
|
|
1
|
+
# This migration comes from erp_app (originally 20110728201729)
|
2
|
+
class ErpAppSetup
|
3
|
+
|
4
|
+
def self.up
|
5
|
+
if(ContactPurpose.find_by_internal_identifier('default').nil?)
|
6
|
+
|
7
|
+
#######################################
|
8
|
+
#contact purposes
|
9
|
+
#######################################
|
10
|
+
[
|
11
|
+
{:description => 'Default', :internal_identifier => 'default'},
|
12
|
+
{:description => 'Home', :internal_identifier => 'home'},
|
13
|
+
{:description => 'Work', :internal_identifier => 'work'},
|
14
|
+
{:description => 'Billing', :internal_identifier => 'billing'},
|
15
|
+
{:description => 'Temporary', :internal_identifier => 'temporary'},
|
16
|
+
{:description => 'Tax Reporting', :internal_identifier => 'tax_reporting'},
|
17
|
+
{:description => 'Recruiting', :internal_identifier => 'recruiting'},
|
18
|
+
{:description => 'Employment Offer', :internal_identifier => 'employment_offer'},
|
19
|
+
{:description => 'Business', :internal_identifier => 'business'},
|
20
|
+
{:description => 'Personal', :internal_identifier => 'personal'},
|
21
|
+
{:description => 'Fax', :internal_identifier => 'fax'},
|
22
|
+
{:description => 'Mobile', :internal_identifier => 'mobile'},
|
23
|
+
{:description => 'Emergency', :internal_identifier => 'emergency'},
|
24
|
+
{:description => 'Shipping', :internal_identifier => 'shipping'},
|
25
|
+
{:description => 'Other', :internal_identifier => 'other'},
|
26
|
+
].each do |item|
|
27
|
+
contact_purpose = ContactPurpose.find_by_internal_identifier(item[:internal_identifier])
|
28
|
+
ContactPurpose.create(:description => item[:description], :internal_identifier => item[:internal_identifier]) if contact_purpose.nil?
|
29
|
+
end
|
30
|
+
|
31
|
+
#######################################
|
32
|
+
#roles
|
33
|
+
#######################################
|
34
|
+
Role.create(:description => 'Admin', :internal_identifier => 'admin')
|
35
|
+
Role.create(:description => 'Employee', :internal_identifier => 'employee')
|
36
|
+
|
37
|
+
#######################################
|
38
|
+
#desktop setup
|
39
|
+
#######################################
|
40
|
+
#create preference types
|
41
|
+
desktop_backgroud_pt = PreferenceType.create(:description => 'Desktop Background', :internal_identifier => 'desktop_background')
|
42
|
+
extjs_theme_pt = PreferenceType.create(:description => 'Theme', :internal_identifier => 'extjs_theme')
|
43
|
+
desktop_shortcut_pt = PreferenceType.create(:description => 'Desktop Shortcut', :internal_identifier => 'desktop_shortcut')
|
44
|
+
auto_load_app_pt = PreferenceType.create(:description => 'Autoload Application', :internal_identifier => 'autoload_application')
|
45
|
+
|
46
|
+
#create preference options
|
47
|
+
#yes no options
|
48
|
+
yes_po = PreferenceOption.create(:description => 'Yes', :internal_identifier => 'yes', :value => 'yes')
|
49
|
+
no_po = PreferenceOption.create(:description => 'No', :internal_identifier => 'no', :value => 'no')
|
50
|
+
|
51
|
+
#desktop background options
|
52
|
+
truenorth_background_po = PreferenceOption.create(:description => 'TrueNorth Logo', :internal_identifier => 'truenorth_logo_background', :value => 'truenorth.png')
|
53
|
+
blue_background_po = PreferenceOption.create(:description => 'Blue', :internal_identifier => 'blue_desktop_background', :value => 'blue.gif')
|
54
|
+
gradient_background_po = PreferenceOption.create(:description => 'Grey Gradient', :internal_identifier => 'grey_gradient_desktop_background', :value => 'gradient.png')
|
55
|
+
purple_background_po = PreferenceOption.create(:description => 'Purple', :internal_identifier => 'purple_desktop_background', :value => 'purple.jpg')
|
56
|
+
planet_background_po = PreferenceOption.create(:description => 'Planet', :internal_identifier => 'planet_desktop_background', :value => 'planet.jpg')
|
57
|
+
portablemind_background_po = PreferenceOption.create(:description => 'Portablemind', :internal_identifier => 'portablemind_desktop_background', :value => 'portablemind.png')
|
58
|
+
|
59
|
+
#desktop theme options
|
60
|
+
access_extjs_theme_po = PreferenceOption.create(:description => 'Access', :internal_identifier => 'access_extjs_theme', :value => 'ext-all-access.css')
|
61
|
+
gray_extjs_theme_po = PreferenceOption.create(:description => 'Gray', :internal_identifier => 'gray_extjs_theme', :value => 'ext-all-gray.css')
|
62
|
+
blue_extjs_theme_po = PreferenceOption.create(:description => 'Blue', :internal_identifier => 'blue_extjs_theme', :value => 'ext-all.css')
|
63
|
+
|
64
|
+
#associate options
|
65
|
+
desktop_shortcut_pt.preference_options << yes_po
|
66
|
+
desktop_shortcut_pt.preference_options << no_po
|
67
|
+
desktop_shortcut_pt.default_preference_option = no_po
|
68
|
+
desktop_shortcut_pt.save
|
69
|
+
|
70
|
+
auto_load_app_pt.preference_options << yes_po
|
71
|
+
auto_load_app_pt.preference_options << no_po
|
72
|
+
auto_load_app_pt.default_preference_option = no_po
|
73
|
+
auto_load_app_pt.save
|
74
|
+
|
75
|
+
desktop_backgroud_pt.preference_options << blue_background_po
|
76
|
+
desktop_backgroud_pt.preference_options << truenorth_background_po
|
77
|
+
desktop_backgroud_pt.preference_options << gradient_background_po
|
78
|
+
desktop_backgroud_pt.preference_options << purple_background_po
|
79
|
+
desktop_backgroud_pt.preference_options << planet_background_po
|
80
|
+
desktop_backgroud_pt.preference_options << portablemind_background_po
|
81
|
+
desktop_backgroud_pt.default_preference_option = truenorth_background_po
|
82
|
+
desktop_backgroud_pt.save
|
83
|
+
|
84
|
+
extjs_theme_pt.preference_options << access_extjs_theme_po
|
85
|
+
extjs_theme_pt.preference_options << gray_extjs_theme_po
|
86
|
+
extjs_theme_pt.preference_options << blue_extjs_theme_po
|
87
|
+
extjs_theme_pt.default_preference_option = blue_extjs_theme_po
|
88
|
+
extjs_theme_pt.save
|
89
|
+
|
90
|
+
#######################################
|
91
|
+
#notes widget
|
92
|
+
#######################################
|
93
|
+
NoteType.create(:description => 'Basic Note', :internal_identifier => 'basic_note')
|
94
|
+
|
95
|
+
notes_grid = ::Widget.create(
|
96
|
+
:description => 'Notes',
|
97
|
+
:icon => 'icon-documents',
|
98
|
+
:xtype => 'shared_notesgrid',
|
99
|
+
:internal_identifier => 'shared_notes_grid'
|
100
|
+
)
|
101
|
+
|
102
|
+
notes_grid.add_role('admin')
|
103
|
+
notes_grid.add_role('employee')
|
104
|
+
notes_grid.save
|
105
|
+
|
106
|
+
#######################################
|
107
|
+
#user management app
|
108
|
+
#######################################
|
109
|
+
app_mgr = ::Widget.create(
|
110
|
+
:description => 'Application Management',
|
111
|
+
:icon => 'icon-user',
|
112
|
+
:xtype => 'controlpanel_userapplicationmgtpanel',
|
113
|
+
:internal_identifier => 'application_management'
|
114
|
+
)
|
115
|
+
|
116
|
+
app_mgr.add_role('admin')
|
117
|
+
app_mgr.save
|
118
|
+
|
119
|
+
role_mgr = ::Widget.create(
|
120
|
+
:description => 'Role Management',
|
121
|
+
:icon => 'icon-user',
|
122
|
+
:xtype => 'usermanagement_rolemanagementpanel',
|
123
|
+
:internal_identifier => 'role_management'
|
124
|
+
)
|
125
|
+
|
126
|
+
role_mgr.add_role('admin')
|
127
|
+
role_mgr.save
|
128
|
+
|
129
|
+
personal_info = ::Widget.create(
|
130
|
+
:description => 'User Personal Info',
|
131
|
+
:icon => 'icon-user',
|
132
|
+
:xtype => 'usermanagement_personalinfopanel',
|
133
|
+
:internal_identifier => 'user_personal_info'
|
134
|
+
)
|
135
|
+
|
136
|
+
personal_info.add_role('admin')
|
137
|
+
personal_info.add_role('employee')
|
138
|
+
personal_info.save
|
139
|
+
|
140
|
+
#create application and assign widgets
|
141
|
+
user_mgr_app = DesktopApplication.create(
|
142
|
+
:description => 'User Management',
|
143
|
+
:icon => 'icon-user',
|
144
|
+
:javascript_class_name => 'Compass.ErpApp.Desktop.Applications.UserManagement',
|
145
|
+
:internal_identifier => 'user_management',
|
146
|
+
:shortcut_id => 'user-management-win'
|
147
|
+
)
|
148
|
+
|
149
|
+
user_mgr_app.preference_types << desktop_shortcut_pt
|
150
|
+
user_mgr_app.preference_types << auto_load_app_pt
|
151
|
+
|
152
|
+
user_mgr_app.widgets << role_mgr
|
153
|
+
user_mgr_app.widgets << personal_info
|
154
|
+
user_mgr_app.widgets << app_mgr
|
155
|
+
user_mgr_app.widgets << notes_grid
|
156
|
+
user_mgr_app.save
|
157
|
+
|
158
|
+
#######################################
|
159
|
+
#system management app
|
160
|
+
#######################################
|
161
|
+
app_role_management = ::Widget.create(
|
162
|
+
:description => 'Application Role Management',
|
163
|
+
:icon => 'icon-document',
|
164
|
+
:xtype => 'systemmanagement_applicationrolemanagment',
|
165
|
+
:internal_identifier => 'application_role_management'
|
166
|
+
)
|
167
|
+
|
168
|
+
app_role_management.add_role('admin')
|
169
|
+
app_role_management.save
|
170
|
+
|
171
|
+
system_management_app = DesktopApplication.create(
|
172
|
+
:description => 'System Management',
|
173
|
+
:icon => 'icon-monitor',
|
174
|
+
:javascript_class_name => 'Compass.ErpApp.Desktop.Applications.SystemManagement',
|
175
|
+
:internal_identifier => 'system_management',
|
176
|
+
:shortcut_id => 'system_management-win'
|
177
|
+
)
|
178
|
+
|
179
|
+
system_management_app.preference_types << desktop_shortcut_pt
|
180
|
+
system_management_app.preference_types << auto_load_app_pt
|
181
|
+
|
182
|
+
system_management_app.widgets << app_role_management
|
183
|
+
system_management_app.save
|
184
|
+
|
185
|
+
|
186
|
+
#######################################
|
187
|
+
#scaffold app
|
188
|
+
#######################################
|
189
|
+
scaffold_app = DesktopApplication.create(
|
190
|
+
:description => 'Scaffold',
|
191
|
+
:icon => 'icon-data',
|
192
|
+
:javascript_class_name => 'Compass.ErpApp.Desktop.Applications.Scaffold',
|
193
|
+
:internal_identifier => 'scaffold',
|
194
|
+
:shortcut_id => 'scaffold-win'
|
195
|
+
)
|
196
|
+
|
197
|
+
scaffold_app.preference_types << PreferenceType.iid('desktop_shortcut')
|
198
|
+
scaffold_app.preference_types << PreferenceType.iid('autoload_application')
|
199
|
+
scaffold_app.save
|
200
|
+
|
201
|
+
#######################################
|
202
|
+
#organizer setup
|
203
|
+
#######################################
|
204
|
+
|
205
|
+
party_contact_mgm_widget = ::Widget.create(
|
206
|
+
:description => 'Party Contact Management',
|
207
|
+
:icon => 'icon-grid',
|
208
|
+
:xtype => 'contactmechanismgrid',
|
209
|
+
:internal_identifier => 'party_contact_management'
|
210
|
+
)
|
211
|
+
|
212
|
+
party_contact_mgm_widget.add_role('admin')
|
213
|
+
party_contact_mgm_widget.add_role('employee')
|
214
|
+
party_contact_mgm_widget.save
|
215
|
+
|
216
|
+
party_mgm_widget = ::Widget.create(
|
217
|
+
:description => 'Party Management',
|
218
|
+
:icon => 'icon-grid',
|
219
|
+
:xtype => 'partygrid',
|
220
|
+
:internal_identifier => 'party_management_widget'
|
221
|
+
)
|
222
|
+
|
223
|
+
party_mgm_widget.add_role('admin')
|
224
|
+
party_mgm_widget.add_role('employee')
|
225
|
+
party_mgm_widget.save
|
226
|
+
|
227
|
+
#create application
|
228
|
+
crm_app = OrganizerApplication.create(
|
229
|
+
:description => 'CRM',
|
230
|
+
:icon => 'icon-user',
|
231
|
+
:internal_identifier => 'crm'
|
232
|
+
)
|
233
|
+
|
234
|
+
crm_app.widgets << party_contact_mgm_widget
|
235
|
+
crm_app.widgets << party_mgm_widget
|
236
|
+
crm_app.widgets << notes_grid
|
237
|
+
crm_app.save
|
238
|
+
|
239
|
+
#######################################
|
240
|
+
#parties
|
241
|
+
#######################################
|
242
|
+
|
243
|
+
#Admins
|
244
|
+
Individual.create(:current_first_name => 'Admin',:current_last_name => 'Istrator',:gender => 'm')
|
245
|
+
|
246
|
+
#Organization
|
247
|
+
Organization.create(:description => 'TrueNorth')
|
248
|
+
|
249
|
+
#######################################
|
250
|
+
#users
|
251
|
+
#######################################
|
252
|
+
admin_indvidual = Individual.where('current_first_name = ?',"Admin").first
|
253
|
+
admin_user = User.create(
|
254
|
+
:username => "admin",
|
255
|
+
:email => "admin@portablemind.com"
|
256
|
+
)
|
257
|
+
admin_user.password = 'password'
|
258
|
+
admin_user.password_confirmation = 'password'
|
259
|
+
admin_user.party = admin_indvidual.party
|
260
|
+
admin_user.activate!
|
261
|
+
admin_user.save
|
262
|
+
admin_user.add_role('admin')
|
263
|
+
admin_user.save
|
264
|
+
|
265
|
+
truenorth = Organization.where('description = ?', 'TrueNorth').first
|
266
|
+
truenorth_user = User.create(
|
267
|
+
:username => truenorth.description.downcase,
|
268
|
+
:email => "#{truenorth.description.downcase}@gmail.com"
|
269
|
+
)
|
270
|
+
truenorth_user.password = 'password'
|
271
|
+
truenorth_user.password_confirmation = 'password'
|
272
|
+
truenorth_user.party = truenorth.party
|
273
|
+
truenorth_user.save
|
274
|
+
truenorth_user.activate!
|
275
|
+
truenorth_user.add_role('admin')
|
276
|
+
truenorth_user.save
|
277
|
+
|
278
|
+
admin_user.desktop.applications << user_mgr_app
|
279
|
+
admin_user.desktop.applications << system_management_app
|
280
|
+
admin_user.desktop.applications << scaffold_app
|
281
|
+
admin_user.desktop.save
|
282
|
+
admin_user.organizer.applications << crm_app
|
283
|
+
admin_user.organizer.save
|
284
|
+
|
285
|
+
truenorth_user.desktop.applications << user_mgr_app
|
286
|
+
truenorth_user.desktop.applications << system_management_app
|
287
|
+
truenorth_user.desktop.applications << scaffold_app
|
288
|
+
truenorth_user.desktop.save
|
289
|
+
truenorth_user.organizer.applications << crm_app
|
290
|
+
truenorth_user.organizer.save
|
291
|
+
end
|
292
|
+
end
|
293
|
+
|
294
|
+
def self.down
|
295
|
+
#remove data here
|
296
|
+
end
|
297
|
+
|
298
|
+
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# This migration comes from erp_app (originally 20110728201730)
|
2
|
+
class UpdatePreferences
|
3
|
+
|
4
|
+
def self.up
|
5
|
+
|
6
|
+
truenorth_logo_po = PreferenceOption.where(:internal_identifier => 'truenorth_logo_background').first
|
7
|
+
if(truenorth_logo_po.value == 'truenorth.png')
|
8
|
+
#update background
|
9
|
+
truenorth_logo_po.value = 'truenorth_tech.png'
|
10
|
+
truenorth_logo_po.save
|
11
|
+
|
12
|
+
#remove backgrounds
|
13
|
+
%w{grey_gradient_desktop_background purple_desktop_background planet_desktop_background portablemind_desktop_background}.each do |background_iid|
|
14
|
+
pref_opt = PreferenceOption.find_by_internal_identifier(background_iid)
|
15
|
+
pref_opt.destroy unless pref_opt.nil?
|
16
|
+
end
|
17
|
+
|
18
|
+
#update themes
|
19
|
+
pref_opt = PreferenceOption.find_by_internal_identifier('access_extjs_theme')
|
20
|
+
pref_opt.value = 'extjs:ext-all-access'
|
21
|
+
pref_opt.save
|
22
|
+
|
23
|
+
pref_opt = PreferenceOption.find_by_internal_identifier('gray_extjs_theme')
|
24
|
+
pref_opt.value = 'extjs:ext-all-gray'
|
25
|
+
pref_opt.save
|
26
|
+
|
27
|
+
pref_opt = PreferenceOption.find_by_internal_identifier('blue_extjs_theme')
|
28
|
+
pref_opt.value = 'extjs:ext-all'
|
29
|
+
pref_opt.save
|
30
|
+
|
31
|
+
#add new themes
|
32
|
+
clifton_extjs_theme_po = PreferenceOption.create(:description => 'Clifton Default', :internal_identifier => 'clifton_extjs_theme', :value => 'clifton:clifton')
|
33
|
+
clifton_extjs_theme_green_po = PreferenceOption.create(:description => 'Clifton Green', :internal_identifier => 'clifton_extjs_theme', :value => 'clifton:clifton-green')
|
34
|
+
clifton_extjs_theme_yellow_po = PreferenceOption.create(:description => 'Clifton Yellow', :internal_identifier => 'clifton_extjs_theme', :value => 'clifton:clifton-yellow')
|
35
|
+
clifton_extjs_theme_pink_po = PreferenceOption.create(:description => 'Clifton Pink', :internal_identifier => 'clifton_extjs_theme', :value => 'clifton:clifton-pink')
|
36
|
+
clifton_extjs_theme_blue_po = PreferenceOption.create(:description => 'Clifton Blue', :internal_identifier => 'clifton_extjs_theme', :value => 'clifton:clifton-blue')
|
37
|
+
|
38
|
+
extjs_theme_pt = PreferenceType.find_by_internal_identifier('extjs_theme')
|
39
|
+
extjs_theme_pt.preference_options << clifton_extjs_theme_po
|
40
|
+
extjs_theme_pt.preference_options << clifton_extjs_theme_green_po
|
41
|
+
extjs_theme_pt.preference_options << clifton_extjs_theme_yellow_po
|
42
|
+
extjs_theme_pt.preference_options << clifton_extjs_theme_pink_po
|
43
|
+
extjs_theme_pt.preference_options << clifton_extjs_theme_blue_po
|
44
|
+
extjs_theme_pt.save
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
49
|
+
def self.down
|
50
|
+
#remove data here
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|