knitkit 2.0.0 → 2.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 (185) hide show
  1. data/README.md +22 -0
  2. data/app/controllers/knitkit/base_controller.rb +15 -2
  3. data/app/controllers/knitkit/blogs_controller.rb +4 -4
  4. data/app/controllers/knitkit/erp_app/desktop/app_controller.rb +16 -2
  5. data/app/controllers/knitkit/erp_app/desktop/articles_controller.rb +198 -57
  6. data/app/controllers/knitkit/erp_app/desktop/content_controller.rb +25 -11
  7. data/app/controllers/knitkit/erp_app/desktop/file_assets_controller.rb +123 -44
  8. data/app/controllers/knitkit/erp_app/desktop/image_assets_controller.rb +83 -9
  9. data/app/controllers/knitkit/erp_app/desktop/online_document_sections_controller.rb +38 -0
  10. data/app/controllers/knitkit/erp_app/desktop/position_controller.rb +15 -6
  11. data/app/controllers/knitkit/erp_app/desktop/theme_controller.rb +185 -98
  12. data/app/controllers/knitkit/erp_app/desktop/versions_controller.rb +38 -16
  13. data/app/controllers/knitkit/erp_app/desktop/website_controller.rb +126 -68
  14. data/app/controllers/knitkit/erp_app/desktop/website_nav_controller.rb +154 -107
  15. data/app/controllers/knitkit/erp_app/desktop/website_section_controller.rb +113 -54
  16. data/app/controllers/knitkit/online_document_sections_controller.rb +45 -0
  17. data/app/controllers/knitkit/unauthorized_controller.rb +5 -0
  18. data/app/controllers/knitkit/website_sections_controller.rb +8 -9
  19. data/app/mailers/document_mailer.rb +10 -0
  20. data/app/models/article.rb +1 -1
  21. data/app/models/content.rb +35 -3
  22. data/app/models/document.rb +8 -0
  23. data/app/models/document_type.rb +3 -0
  24. data/app/models/documented_content.rb +29 -0
  25. data/app/models/documented_item.rb +31 -0
  26. data/app/models/extensions/configuration.rb +5 -0
  27. data/app/models/extensions/party.rb +13 -0
  28. data/app/models/online_document_section.rb +40 -0
  29. data/app/models/theme.rb +22 -26
  30. data/app/models/valid_document.rb +4 -0
  31. data/app/models/website.rb +158 -119
  32. data/app/models/website_inquiry.rb +7 -2
  33. data/app/models/website_inquiry_mailer.rb +4 -3
  34. data/app/models/website_party_role.rb +5 -0
  35. data/app/models/website_section.rb +76 -38
  36. data/app/views/document_mailer/email_document.html.erb +12 -0
  37. data/app/views/knitkit/blogs/_add_comment.html.erb +2 -2
  38. data/app/views/knitkit/online_document_sections/index.html.erb +149 -0
  39. data/app/views/knitkit/website_sections/index.html.erb +0 -1
  40. data/app/views/layouts/knitkit/base.html.erb +4 -2
  41. data/app/views/layouts/knitkit/online_document_sections.html.erb +59 -0
  42. data/app/views/menus/knitkit/_default_menu.html.erb +1 -1
  43. data/app/views/menus/knitkit/_default_section_menu.html.erb +1 -1
  44. data/app/views/menus/knitkit/_default_sub_menu.html.erb +2 -2
  45. data/app/views/menus/knitkit/_default_sub_section_menu.html.erb +1 -1
  46. data/app/widgets/contact_us/base.rb +5 -5
  47. data/app/widgets/contact_us/javascript/contact_us.js +2 -1
  48. data/app/widgets/google_map/base.rb +0 -4
  49. data/app/widgets/google_map/javascript/google_map.js +4 -3
  50. data/app/widgets/login/base.rb +0 -5
  51. data/app/widgets/login/javascript/login.js +155 -153
  52. data/app/widgets/login/views/index.html.erb +3 -3
  53. data/app/widgets/login/views/reset_password.html.erb +2 -2
  54. data/app/widgets/manage_profile/base.rb +46 -67
  55. data/app/widgets/manage_profile/javascript/manage_profile.js +2 -1
  56. data/app/widgets/manage_profile/views/_user_information_form.html.erb +5 -1
  57. data/app/widgets/reset_password/base.rb +4 -6
  58. data/app/widgets/reset_password/javascript/reset_password.js +2 -1
  59. data/app/widgets/reset_password/views/index.html.erb +4 -3
  60. data/app/widgets/search/base.rb +1 -5
  61. data/app/widgets/search/javascript/search.js +2 -1
  62. data/app/widgets/search/views/show.html.erb +2 -2
  63. data/app/widgets/signup/base.rb +7 -6
  64. data/app/widgets/signup/javascript/signup.js +2 -1
  65. data/app/widgets/signup/views/error.html.erb +1 -1
  66. data/config/routes.rb +6 -2
  67. data/db/data_migrations/20110509223702_add_publisher_role.rb +10 -0
  68. data/db/data_migrations/20111118182910_setup_knitkit_capabilities.rb +84 -0
  69. data/db/data_migrations/20120127144444_create_website_role_types.rb +13 -0
  70. data/db/data_migrations/20120127150505_create_website_default_configuration.rb +72 -0
  71. data/db/data_migrations/20120127150506_add_primary_host_to_website_configuration.rb +33 -0
  72. data/db/data_migrations/20120316150424_add_is_template_to_default_website_config.rb +16 -0
  73. data/db/data_migrations/upgrade/20120210195616_add_website_configs.rb +19 -0
  74. data/db/data_migrations/upgrade/20120213205519_populate_website_iids.rb +17 -0
  75. data/db/migrate/20110211002317_setup_knitkit.rb +22 -5
  76. data/db/migrate/20111207161928_create_documented_items_table.rb +13 -0
  77. data/db/migrate/20111208180539_add_document_id_to_documented_item.rb +9 -0
  78. data/db/migrate/20120315163736_add_document.rb +32 -0
  79. data/db/migrate/20120503183431_create_valid_documents.rb +16 -0
  80. data/db/migrate/upgrade/20120116201510_add_render_base_layout_flag.rb +13 -0
  81. data/db/migrate/upgrade/20120127143745_create_website_party_roles.rb +24 -0
  82. data/db/migrate/upgrade/20120213184509_add_iid_to_websites.rb +14 -0
  83. data/lib/knitkit.rb +2 -0
  84. data/lib/knitkit/config.rb +31 -0
  85. data/lib/knitkit/engine.rb +12 -3
  86. data/lib/knitkit/extensions.rb +1 -3
  87. data/lib/knitkit/extensions/action_controller/theme_support/acts_as_themed_controller.rb +2 -3
  88. data/lib/knitkit/extensions/active_record/acts_as_document.rb +63 -0
  89. data/lib/knitkit/extensions/active_record/acts_as_publishable.rb +5 -4
  90. data/lib/knitkit/extensions/compass_ae/widgets/base.rb +70 -0
  91. data/lib/knitkit/extensions/railties/action_view.rb +22 -10
  92. data/lib/knitkit/extensions/railties/theme_support/asset_tag_helper.rb +3 -3
  93. data/lib/knitkit/extensions/railties/theme_support/theme_file_resolver.rb +8 -3
  94. data/lib/knitkit/routing_filter/section_router.rb +16 -6
  95. data/lib/knitkit/version.rb +7 -1
  96. data/public/images/check.png +0 -0
  97. data/public/images/credit_card.png +0 -0
  98. data/public/images/knitkit/tooltip.gif +0 -0
  99. data/public/javascripts/ajax_pagination.js +33 -0
  100. data/public/javascripts/datepicker.js +6 -1
  101. data/public/javascripts/erp_app/desktop/applications/knitkit/articles_grid_panel.js +731 -258
  102. data/public/javascripts/erp_app/desktop/applications/knitkit/center_region.js +289 -238
  103. data/public/javascripts/erp_app/desktop/applications/knitkit/comments_grid_panel.js +2 -4
  104. data/public/javascripts/erp_app/desktop/applications/knitkit/east_region.js +29 -3
  105. data/public/javascripts/erp_app/desktop/applications/knitkit/file_assets_panel.js +193 -21
  106. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_data_view.js +27 -26
  107. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_panel.js +167 -20
  108. data/public/javascripts/erp_app/desktop/applications/knitkit/inquiries_grid_panel.js +1 -2
  109. data/public/javascripts/erp_app/desktop/applications/knitkit/module.js +5 -1
  110. data/public/javascripts/erp_app/desktop/applications/knitkit/publish_window.js +2 -2
  111. data/public/javascripts/erp_app/desktop/applications/knitkit/published_grid_panel.js +20 -11
  112. data/public/javascripts/erp_app/desktop/applications/knitkit/section_articles_grid_panel.js +279 -228
  113. data/public/javascripts/erp_app/desktop/applications/knitkit/themes_tree_panel.js +40 -40
  114. data/public/javascripts/erp_app/desktop/applications/knitkit/versions_grid_panel.js +83 -76
  115. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region.js +1961 -1397
  116. data/public/javascripts/erp_app/desktop/applications/knitkit/widgets_panel.js +47 -43
  117. data/public/javascripts/knitkit/helpers.js +26 -0
  118. data/public/stylesheets/erp_app/desktop/applications/knitkit/knitkit.css +1 -2
  119. data/public/stylesheets/knitkit/documentation.css +50 -0
  120. data/public/stylesheets/knitkit/style.css +23 -1
  121. data/spec/controllers/knitkit/erp_app/desktop/articles_controller_spec.rb +8 -0
  122. data/spec/controllers/knitkit/erp_app/desktop/website_controller_spec.rb +396 -0
  123. data/spec/controllers/knitkit/erp_app/desktop/website_nav_controller_spec.rb +260 -0
  124. data/spec/controllers/knitkit/erp_app/desktop/website_section_controller_spec.rb +222 -0
  125. data/spec/dummy/Rakefile +7 -0
  126. data/spec/dummy/app/assets/javascripts/application.js +9 -0
  127. data/spec/dummy/app/assets/stylesheets/application.css +7 -0
  128. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  129. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  130. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  131. data/spec/dummy/config.ru +4 -0
  132. data/spec/dummy/config/application.rb +43 -0
  133. data/spec/dummy/config/boot.rb +10 -0
  134. data/spec/dummy/config/database.yml +8 -0
  135. data/spec/dummy/config/environment.rb +5 -0
  136. data/spec/dummy/config/environments/spec.rb +27 -0
  137. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  138. data/spec/dummy/config/initializers/inflections.rb +10 -0
  139. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  140. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  141. data/spec/dummy/config/initializers/session_store.rb +8 -0
  142. data/spec/dummy/config/initializers/wrap_parameters.rb +12 -0
  143. data/spec/dummy/config/locales/en.yml +5 -0
  144. data/spec/dummy/config/routes.rb +4 -0
  145. data/spec/dummy/config/workflow.yml +1 -0
  146. data/spec/dummy/public/404.html +26 -0
  147. data/spec/dummy/public/422.html +26 -0
  148. data/spec/dummy/public/500.html +26 -0
  149. data/spec/dummy/public/favicon.ico +0 -0
  150. data/spec/dummy/script/rails +6 -0
  151. data/spec/factories/article.rb +4 -0
  152. data/spec/factories/basic.rb +3 -0
  153. data/spec/factories/blog.rb +5 -0
  154. data/spec/factories/documented_content.rb +4 -0
  155. data/spec/factories/documented_item.rb +4 -0
  156. data/spec/factories/online_document_section.rb +6 -0
  157. data/spec/factories/published_website.rb +4 -0
  158. data/spec/factories/theme.rb +6 -0
  159. data/spec/factories/website.rb +5 -0
  160. data/spec/factories/website_host.rb +4 -0
  161. data/spec/factories/website_nav.rb +5 -0
  162. data/spec/factories/website_nav_item.rb +4 -0
  163. data/spec/factories/website_section.rb +5 -0
  164. data/spec/models/article_spec.rb +35 -0
  165. data/spec/models/attribute_type_spec.rb +55 -0
  166. data/spec/models/attribute_value_spec.rb +114 -0
  167. data/spec/models/blog_spec.rb +16 -0
  168. data/spec/models/comment_spec.rb +11 -0
  169. data/spec/models/content_spec.rb +187 -0
  170. data/spec/models/documented_item_spec.rb +29 -0
  171. data/spec/models/online_document_section_spec.rb +34 -0
  172. data/spec/models/published_element_spec.rb +11 -0
  173. data/spec/models/published_website_spec.rb +11 -0
  174. data/spec/models/theme_spec.rb +12 -0
  175. data/spec/models/website_host_spec.rb +11 -0
  176. data/spec/models/website_inquiry_spec.rb +24 -0
  177. data/spec/models/website_nav_item_spec.rb +11 -0
  178. data/spec/models/website_nav_spec.rb +11 -0
  179. data/spec/models/website_section_content_spec.rb +11 -0
  180. data/spec/models/website_section_spec.rb +49 -0
  181. data/spec/models/website_spec.rb +146 -0
  182. data/spec/spec_helper.rb +61 -0
  183. metadata +391 -154
  184. data/app/controllers/knitkit/articles_controller.rb +0 -7
  185. data/lib/knitkit/extensions/compass/widgets/base.rb +0 -53
@@ -21,13 +21,13 @@
21
21
  <% end %>
22
22
  </div>
23
23
  <script type="text/javascript">
24
- $('#login_form').bind('ajaxComplete', function(e, xhr, settings){
24
+ jQuery('#login_form').bind('ajaxComplete', function(e, xhr, settings){
25
25
  var response = jQuery.parseJSON(xhr.responseText);
26
26
  if(response.success){
27
- window.location = '<%=@login_to%>';
27
+ window.location = response.login_to;
28
28
  }
29
29
  else{
30
- $('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.errors.reason+'</div>');
30
+ jQuery('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.errors.reason+'</div>');
31
31
  }
32
32
  });
33
33
  </script>
@@ -15,9 +15,9 @@
15
15
  <% end %>
16
16
  </div>
17
17
  <script type="text/javascript">
18
- $('#login_form').bind('ajaxComplete', function(e, xhr, settings){
18
+ jQuery('#login_form').bind('ajaxComplete', function(e, xhr, settings){
19
19
  var response = jQuery.parseJSON(xhr.responseText);
20
- $('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.message+'</div>');
20
+ jQuery('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.message+'</div>');
21
21
  });
22
22
  </script>
23
23
 
@@ -20,7 +20,7 @@ module Widgets
20
20
  @email_addresses = @user.party.find_all_contacts_by_contact_mechanism(EmailAddress)
21
21
  @phone_numbers = @user.party.find_all_contacts_by_contact_mechanism(PhoneNumber)
22
22
  @postal_addresses = @user.party.find_all_contacts_by_contact_mechanism(PostalAddress)
23
-
23
+
24
24
  contact_purposes = ContactPurpose.all
25
25
  @purpose_hash={"Type" => "type"}
26
26
  contact_purposes.each do |p|
@@ -33,23 +33,23 @@ module Widgets
33
33
  countries.each do |c|
34
34
  @countries_id << [c.name, c.id]
35
35
  end
36
-
36
+
37
37
  states= GeoZone.all
38
38
  @states_id=[]
39
39
  @states_id << ["State", "default"]
40
40
  states.each do |s|
41
41
  @states_id << [s.zone_name, s.id]
42
42
  end
43
-
43
+
44
44
  render
45
45
  end
46
-
46
+
47
47
  def update_user_information
48
48
  #### Get appropriate models ####
49
-
49
+
50
50
  @user=User.find(current_user)
51
51
  @individual= @user.party.business_party
52
-
52
+
53
53
  #### Formating the date for sqlite. Will probably need diffrent formating for production ####
54
54
  if params[:date][:day].to_i < 10
55
55
  day="0#{params[:date][:day]}"
@@ -62,33 +62,16 @@ module Widgets
62
62
  else
63
63
  month= params[:date][:month]
64
64
  end
65
-
65
+
66
66
  formated_date= "#{params[:date][:year]}-#{month}-#{day}"
67
-
68
-
69
- #### Check if user made changes to info then update ####
70
- if @individual.current_first_name != params[:first_name]
71
- @user.first_name= params[:first_name]
72
- @individual.current_first_name= params[:first_name]
73
- end
74
-
75
- if @individual.current_last_name != params[:last_name]
76
- @user.last_name= params[:last_name]
77
- @individual.current_last_name= params[:last_name]
78
- end
79
-
80
- if @individual.current_middle_name != params[:middle_name]
81
- @individual.current_middle_name= params[:middle_name]
82
- end
83
-
84
- if @individual.gender != params[:gender]
85
- @individual.gender= params[:gender]
86
- end
87
-
88
- if @individual.birth_date != formated_date
89
- @individual.birth_date= formated_date
90
- end
91
-
67
+
68
+ @individual.current_first_name= params[:first_name]
69
+ @individual.current_last_name= params[:last_name]
70
+ @individual.current_middle_name= params[:middle_name]
71
+ @individual.gender= params[:gender]
72
+ @individual.birth_date= formated_date
73
+ @user.email = params[:email]
74
+
92
75
  #### check validation then save and render message ####
93
76
  if @user.changed? || @individual.changed?
94
77
  if @user.valid? && @individual.valid?
@@ -103,21 +86,21 @@ module Widgets
103
86
  end
104
87
 
105
88
  end
106
-
89
+
107
90
 
108
91
  def update_password
109
92
  if @user = User.authenticate(current_user.username, params[:old_password])
110
93
  if !params[:new_password].blank? && !params[:password_confirmation].blank? && params[:new_password] == params[:password_confirmation]
111
-
94
+
112
95
  @user.password_confirmation= params[:password_confirmation]
113
-
96
+
114
97
  if @user.change_password!(params[:new_password])
115
98
  render :update => {:id => "#{@uuid}_result", :view => :password_success}
116
99
  else
117
100
  #### validation failed ####
118
101
  render :update => {:id => "#{@uuid}_result", :view => :error}
119
102
  end
120
-
103
+
121
104
  else
122
105
  #### password and password confirmation cant be blank or unequal ####
123
106
  render :update => {:id => "#{@uuid}_result", :view => :password_blank}
@@ -126,9 +109,9 @@ module Widgets
126
109
  #### old password wrong ####
127
110
  render :update => {:id => "#{@uuid}_result", :view => :password_invalid}
128
111
  end
129
-
112
+
130
113
  end
131
-
114
+
132
115
  def update_contact_information
133
116
  @user= User.find(current_user)
134
117
  @email_addresses= @user.party.find_all_contacts_by_contact_mechanism(EmailAddress)
@@ -137,7 +120,7 @@ module Widgets
137
120
  something_changed=false
138
121
  contact_type_in_use=false
139
122
  default_type_error=false
140
-
123
+
141
124
  #### Updates email records ####
142
125
  @email_addresses.each_with_index do |e, i|
143
126
  email_address_args={}
@@ -149,7 +132,7 @@ module Widgets
149
132
  something_changed=true
150
133
  end
151
134
  end
152
-
135
+
153
136
  #### Updates Phone Numbers ####
154
137
  @phone_numbers.each_with_index do |p, i|
155
138
  phone_number_args={}
@@ -161,37 +144,37 @@ module Widgets
161
144
  something_changed=true
162
145
  end
163
146
  end
164
-
147
+
165
148
  #### Updates Postal Addresses
166
149
  @postal_addresses.each_with_index do |a, i|
167
150
  postal_address_args= {}
168
-
151
+
169
152
  if a.address_line_1 != params[:postal_addresses][i.to_s][:address_line_1]
170
153
  postal_address_args[:address_line_1]= params[:postal_addresses][i.to_s][:address_line_1]
171
154
  end
172
-
155
+
173
156
  if a.address_line_2 != params[:postal_addresses][i.to_s][:address_line_2]
174
157
  postal_address_args[:address_line_2]= params[:postal_addresses][i.to_s][:address_line_2]
175
158
  end
176
-
159
+
177
160
  if a.city != params[:postal_addresses][i.to_s][:city]
178
161
  postal_address_args[:city]= params[:postal_addresses][i.to_s][:city]
179
162
  end
180
-
163
+
181
164
  if a.geo_zone_id != params[:postal_addresses][i.to_s][:state_id].to_i
182
165
  postal_address_args[:geo_zone_id]= params[:postal_addresses][i.to_s][:state_id].to_i
183
166
  postal_address_args[:state]= GeoZone.find(params[:postal_addresses][i.to_s][:state_id]).zone_name
184
167
  end
185
-
168
+
186
169
  if a.zip != params[:postal_addresses][i.to_s][:zip]
187
170
  postal_address_args[:zip]= params[:postal_addresses][i.to_s][:zip]
188
171
  end
189
-
172
+
190
173
  if a.geo_country_id != params[:postal_addresses][i.to_s][:country_id].to_i
191
174
  postal_address_args[:geo_country_id]= params[:postal_addresses][i.to_s][:country_id].to_i
192
175
  postal_address_args[:country]= GeoCountry.find(params[:postal_addresses][i.to_s][:country_id]).name
193
176
  end
194
-
177
+
195
178
  if !postal_address_args.empty?
196
179
  @user.party.update_or_add_contact_with_purpose(PostalAddress,
197
180
  ContactPurpose.find_by_internal_identifier(params[:postal_address_contact_purposes][i.to_s]),
@@ -199,7 +182,7 @@ module Widgets
199
182
  something_changed=true
200
183
  end
201
184
  end
202
-
185
+
203
186
  #### Adds new email address ####
204
187
  if params[:new_email_address] != nil && params[:new_email_address] != ""
205
188
  if params[:new_email_address_contact_purpose] != "type"
@@ -217,7 +200,7 @@ module Widgets
217
200
  #render :view => :default_type_error
218
201
  end
219
202
  end
220
-
203
+
221
204
  #### Adds new phone number ####
222
205
  if params[:new_phone_number] != nil && params[:new_phone_number] != ""
223
206
  if params[:new_phone_number_contact_purpose] != "type"
@@ -235,41 +218,41 @@ module Widgets
235
218
  #render :view => :default_type_error
236
219
  end
237
220
  end
238
-
221
+
239
222
  #### Adds new postal address ####
240
223
  new_postal_address_args= {}
241
-
224
+
242
225
  if params[:new_postal_address][:address_line_1] != "Address Line 1"
243
226
  new_postal_address_args[:address_line_1]= params[:new_postal_address][:address_line_1]
244
227
  end
245
-
228
+
246
229
  if params[:new_postal_address][:address_line_2] != "Address Line 2"
247
230
  new_postal_address_args[:address_line_2]= params[:new_postal_address][:address_line_2]
248
231
  end
249
-
232
+
250
233
  if params[:new_postal_address][:city] != "City"
251
234
  new_postal_address_args[:city]= params[:new_postal_address][:city]
252
235
  end
253
-
236
+
254
237
  if params[:new_postal_address][:state_id] != "default"
255
238
  new_postal_address_args[:geo_zone_id]= params[:new_postal_address][:state_id].to_i
256
239
  new_postal_address_args[:state]= GeoZone.find(params[:new_postal_address][:state_id]).zone_name
257
240
  end
258
-
241
+
259
242
  if params[:new_postal_address][:zip] != "Zipcode"
260
243
  new_postal_address_args[:zip]= params[:new_postal_address][:zip]
261
244
  end
262
-
245
+
263
246
  if params[:new_postal_address][:country_id] != "default"
264
247
  new_postal_address_args[:geo_country_id]= params[:new_postal_address][:country_id].to_i
265
248
  new_postal_address_args[:country]= GeoCountry.find(params[:new_postal_address][:country_id]).name
266
249
  end
267
-
250
+
268
251
  if !new_postal_address_args.empty?
269
252
  if params[:new_postal_address_contact_purpose] != "type"
270
253
  if !contact_purpose_in_use?(@postal_addresses, params[:new_postal_address_contact_purpose])
271
254
  @user.party.update_or_add_contact_with_purpose(PostalAddress,
272
- ContactPurpose.find_by_internal_identifier(params[:new_postal_address_contact_purpose]),
255
+ ContactPurpose.find_by_internal_identifier(params[:new_postal_address_contact_purpose]),
273
256
  new_postal_address_args)
274
257
  something_changed=true
275
258
  else
@@ -281,7 +264,7 @@ module Widgets
281
264
  #render :view => :default_type_error
282
265
  end
283
266
  end
284
-
267
+
285
268
  #### Renders proper error or success message ####
286
269
  if default_type_error
287
270
  render :update => {:id => "#{@uuid}_result", :view => :default_type_error}
@@ -290,7 +273,7 @@ module Widgets
290
273
  else
291
274
  render :update => {:id => "#{@uuid}_result", :view => :success}
292
275
  end
293
-
276
+
294
277
  end
295
278
 
296
279
  #should not be modified
@@ -298,20 +281,16 @@ module Widgets
298
281
  def locate
299
282
  File.dirname(__FILE__)
300
283
  end
301
-
284
+
302
285
  class << self
303
286
  def title
304
287
  "Manage Profile"
305
288
  end
306
289
 
307
- def views_location
308
- File.join(File.dirname(__FILE__),"/views")
309
- end
310
-
311
290
  def widget_name
312
291
  File.basename(File.dirname(__FILE__))
313
292
  end
314
-
293
+
315
294
  def base_layout
316
295
  begin
317
296
  file = File.join(File.dirname(__FILE__),"/views/layouts/base.html.erb")
@@ -7,5 +7,6 @@ Compass.ErpApp.Widgets.ManageProfile = {
7
7
  Compass.ErpApp.Widgets.AvailableWidgets.push({
8
8
  name:'Manage Profile',
9
9
  iconUrl:'/images/icons/document_edit/document_edit_48x48.png',
10
- onClick:Compass.ErpApp.Widgets.ManageProfile.addManageProfile
10
+ onClick:Compass.ErpApp.Widgets.ManageProfile.addManageProfile,
11
+ about:'This widget allows users to manger thier user information, password and contact information.'
11
12
  });
@@ -1,5 +1,9 @@
1
1
  <%= form_tag build_widget_url(:update_user_information), :remote => true, :html => {:id => 'user_information_form'} do %>
2
2
  <div class="form_settings" style="margin-left: 20px;">
3
+ <p>
4
+ <span>Email Address</span>
5
+ <%= text_field_tag :email, @user.email %>
6
+ </p>
3
7
  <p>
4
8
  <span>First Name</span>
5
9
  <%= text_field_tag :first_name, @individual.current_first_name %>
@@ -15,7 +19,7 @@
15
19
  <p>
16
20
  <span>Date of Birth</span>
17
21
  <!--find a better solution for styling this. this method cant be overridden easily by a template -->
18
- <%= select_date(@individual.birth_date, {:start_year => Time.now.year - 100, :end_year => Time.now.year},
22
+ <%= select_date(@individual.birth_date, {:start_year => Time.now.year - 100, :end_year => Time.now.year},
19
23
  {:style => 'width: auto;'}) %>
20
24
  </p>
21
25
  <p>
@@ -3,7 +3,9 @@ module Widgets
3
3
  class Base < ErpApp::Widgets::Base
4
4
 
5
5
  def index
6
+ @website = Website.find_by_host(request.host_with_port)
6
7
  @login_url = params[:login_url]
8
+ @domain = @website.configurations.first.get_item(ConfigurationItemType.find_by_internal_identifier('primary_host')).options.first.value
7
9
 
8
10
  render
9
11
  end
@@ -13,20 +15,16 @@ module Widgets
13
15
  def locate
14
16
  File.dirname(__FILE__)
15
17
  end
16
-
18
+
17
19
  class << self
18
20
  def title
19
21
  "Reset Password"
20
22
  end
21
23
 
22
- def views_location
23
- File.join(File.dirname(__FILE__),"/views")
24
- end
25
-
26
24
  def widget_name
27
25
  File.basename(File.dirname(__FILE__))
28
26
  end
29
-
27
+
30
28
  def base_layout
31
29
  begin
32
30
  file = File.join(File.dirname(__FILE__),"/views/layouts/base.html.erb")
@@ -7,7 +7,8 @@ Compass.ErpApp.Widgets.ResetPassword = {
7
7
  Compass.ErpApp.Widgets.AvailableWidgets.push({
8
8
  name:'Reset Password',
9
9
  iconUrl:'/images/icons/edit/edit_48x48.png',
10
- onClick:Compass.ErpApp.Widgets.ResetPassword.addResetPassword
10
+ onClick:Compass.ErpApp.Widgets.ResetPassword.addResetPassword,
11
+ about:"This widget creates a form to submit for a user's password to be reset."
11
12
  });
12
13
 
13
14
 
@@ -7,6 +7,7 @@
7
7
  <%= text_field_tag "login"%>
8
8
  </p>
9
9
  <input type="hidden" name="login_url" value="<%=@login_url%>" />
10
+ <input type="hidden" name="domain" value="<%=@domain%>" />
10
11
  <p style="padding-top: 15px">
11
12
  <span style="width:175px">&nbsp;</span>
12
13
  <%= submit_tag "Reset", :disable_with => "Please wait...", :class => "submit", :style => 'margin: 0 0 0 0px;'%>
@@ -15,13 +16,13 @@
15
16
  <% end %>
16
17
  </div>
17
18
  <script type="text/javascript">
18
- $('#reset_password_form').bind('ajaxComplete', function(e, xhr, settings){
19
+ jQuery('#reset_password_form').bind('ajaxComplete', function(e, xhr, settings){
19
20
  var response = jQuery.parseJSON(xhr.responseText);
20
21
  if(response.success){
21
- $('#<%=widget_result_id%>').html('<div class="sexynotice">'+response.message+'</div>');
22
+ jQuery('#<%=widget_result_id%>').html('<div class="sexynotice">'+response.message+'</div>');
22
23
  }
23
24
  else{
24
- $('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.message+'</div>');
25
+ jQuery('#<%=widget_result_id%>').html('<div class="sexyerror">'+response.message+'</div>');
25
26
  }
26
27
  });
27
28
  </script>
@@ -55,11 +55,7 @@ module Widgets
55
55
  def title
56
56
  "Search"
57
57
  end
58
-
59
- def views_location
60
- File.join(File.dirname(__FILE__),"/views")
61
- end
62
-
58
+
63
59
  def widget_name
64
60
  File.basename(File.dirname(__FILE__))
65
61
  end
@@ -27,5 +27,6 @@ Compass.ErpApp.Widgets.Search = {
27
27
  Compass.ErpApp.Widgets.AvailableWidgets.push({
28
28
  name:'Search',
29
29
  iconUrl:'/images/icons/search/search_48x48.png',
30
- onClick:Compass.ErpApp.Widgets.Search.addSearch
30
+ onClick:Compass.ErpApp.Widgets.Search.addSearch,
31
+ about:'This widget allows users to search for content in a website.'
31
32
  });
@@ -6,7 +6,7 @@
6
6
 
7
7
  <% @results.each do |r| %>
8
8
  <p>
9
- <a href="/<%=r[:link] %>"><%= r[:title] %></a><br />
9
+ <a href="<%=r[:link] %>"><%= r[:title] %></a><br />
10
10
  <%= raw r[:content].body_html[0..100] unless r[:content].body_html.nil? %><br />
11
11
  </p>
12
12
  <% end %>
@@ -42,7 +42,7 @@
42
42
  <% if @ajax_results %>
43
43
  <script type="text/javascript">
44
44
  $(function(){
45
- $('.pagination a').attr('data-remote', 'true');
45
+ jQuery('.pagination a').attr('data-remote', 'true');
46
46
  });
47
47
  </script>
48
48
  <% end %>