knitkit 2.1.15 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (209) hide show
  1. checksums.yaml +7 -0
  2. data/app/controllers/knitkit/base_controller.rb +1 -1
  3. data/app/controllers/knitkit/comments_controller.rb +7 -2
  4. data/app/controllers/knitkit/erp_app/desktop/app_controller.rb +78 -98
  5. data/app/controllers/knitkit/erp_app/desktop/articles_controller.rb +65 -45
  6. data/app/controllers/knitkit/erp_app/desktop/content_controller.rb +22 -12
  7. data/app/controllers/knitkit/erp_app/desktop/file_assets_controller.rb +1 -1
  8. data/app/controllers/knitkit/erp_app/desktop/image_assets_controller.rb +28 -16
  9. data/app/controllers/knitkit/erp_app/desktop/inquiries_controller.rb +15 -49
  10. data/app/controllers/knitkit/erp_app/desktop/online_document_sections_controller.rb +4 -3
  11. data/app/controllers/knitkit/erp_app/desktop/position_controller.rb +69 -11
  12. data/app/controllers/knitkit/erp_app/desktop/theme_controller.rb +63 -60
  13. data/app/controllers/knitkit/erp_app/desktop/website_controller.rb +98 -82
  14. data/app/controllers/knitkit/erp_app/desktop/website_host_controller.rb +77 -0
  15. data/app/controllers/knitkit/erp_app/desktop/website_nav_controller.rb +64 -44
  16. data/app/controllers/knitkit/erp_app/desktop/website_nav_item_controller.rb +147 -0
  17. data/app/controllers/knitkit/erp_app/desktop/website_section_controller.rb +81 -45
  18. data/app/controllers/knitkit/mobile_controller.rb +15 -0
  19. data/app/controllers/knitkit/online_document_sections_controller.rb +2 -1
  20. data/app/controllers/knitkit/unauthorized_controller.rb +0 -1
  21. data/app/controllers/knitkit/website_sections_controller.rb +7 -4
  22. data/app/mailers/website_inquiry_mailer.rb +8 -7
  23. data/app/models/content.rb +11 -2
  24. data/app/models/document.rb +2 -17
  25. data/app/models/published_website.rb +96 -59
  26. data/app/models/theme.rb +100 -14
  27. data/app/models/website.rb +260 -28
  28. data/app/models/website_inquiry.rb +5 -12
  29. data/app/models/website_section.rb +9 -1
  30. data/app/views/knitkit/blogs/_add_comment.html.erb +44 -23
  31. data/app/views/knitkit/blogs/_comment.html.erb +4 -6
  32. data/app/views/knitkit/blogs/index.html.erb +63 -49
  33. data/app/views/knitkit/blogs/show.html.erb +17 -12
  34. data/app/views/knitkit/mobile/index.html.erb +162 -0
  35. data/app/views/knitkit/online_document_sections/index.html.erb +7 -5
  36. data/app/views/knitkit/unauthorized/index.html.erb +8 -4
  37. data/app/views/knitkit/website_sections/index.html.erb +8 -4
  38. data/app/views/layouts/knitkit/base.html.erb +79 -63
  39. data/app/views/layouts/knitkit/online_document_sections.html.erb +74 -52
  40. data/app/views/menus/knitkit/_default_menu.html.erb +4 -4
  41. data/app/views/menus/knitkit/_default_section_menu.html.erb +22 -23
  42. data/app/views/shared/knitkit/_bread_crumb.html.erb +10 -7
  43. data/app/views/shared/knitkit/_footer.html.erb +2 -2
  44. data/app/views/website_inquiry_mailer/inquiry.erb +23 -2
  45. data/app/widgets/contact_us/base.rb +25 -50
  46. data/app/widgets/contact_us/javascript/contact_us.js +7 -7
  47. data/app/widgets/contact_us/views/error.html.erb +6 -8
  48. data/app/widgets/contact_us/views/index.html.erb +28 -1
  49. data/app/widgets/contact_us/views/layouts/base.html.erb +9 -6
  50. data/app/widgets/contact_us/views/success.html.erb +3 -3
  51. data/app/widgets/google_map/views/index.html.erb +36 -36
  52. data/app/widgets/login/base.rb +1 -0
  53. data/app/widgets/login/javascript/login.js +3 -3
  54. data/app/widgets/login/views/index.html.erb +46 -26
  55. data/app/widgets/login/views/layouts/base.html.erb +15 -13
  56. data/app/widgets/login/views/login_header.html.erb +7 -9
  57. data/app/widgets/manage_profile/base.rb +116 -164
  58. data/app/widgets/manage_profile/views/_address.html.erb +184 -0
  59. data/app/widgets/manage_profile/views/_contact_information_form.html.erb +23 -192
  60. data/app/widgets/manage_profile/views/_email_address.html.erb +163 -0
  61. data/app/widgets/manage_profile/views/_password_form.html.erb +23 -20
  62. data/app/widgets/manage_profile/views/_phone_number.html.erb +165 -0
  63. data/app/widgets/manage_profile/views/_user_information_form.html.erb +49 -33
  64. data/app/widgets/manage_profile/views/error.html.erb +6 -0
  65. data/app/widgets/manage_profile/views/index.html.erb +44 -46
  66. data/app/widgets/manage_profile/views/layouts/base.html.erb +3 -1
  67. data/app/widgets/manage_profile/views/success.html.erb +5 -0
  68. data/app/widgets/reset_password/views/index.html.erb +33 -28
  69. data/app/widgets/reset_password/views/layouts/base.html.erb +10 -1
  70. data/app/widgets/search/base.rb +37 -25
  71. data/app/widgets/search/views/_inline_search_form.html.erb +12 -0
  72. data/app/widgets/search/views/_search_form.html.erb +41 -0
  73. data/app/widgets/search/views/index.html.erb +5 -3
  74. data/app/widgets/search/views/layouts/base.html.erb +13 -23
  75. data/app/widgets/search/views/show.html.erb +32 -47
  76. data/app/widgets/signup/base.rb +1 -1
  77. data/app/widgets/signup/javascript/signup.js +7 -9
  78. data/app/widgets/signup/views/_signup_form.html.erb +34 -29
  79. data/app/widgets/signup/views/error.html.erb +11 -11
  80. data/app/widgets/signup/views/index.html.erb +3 -2
  81. data/app/widgets/signup/views/layouts/base.html.erb +8 -5
  82. data/app/widgets/signup/views/success.html.erb +5 -4
  83. data/config/routes.rb +39 -28
  84. data/db/data_migrations/20120809020508_update_website_and_configuration.rb +3 -0
  85. data/db/migrate/20110211002317_setup_knitkit.rb +0 -1
  86. data/db/migrate/20131112013052_add_knitkit_missing_indexes.rb +33 -0
  87. data/db/migrate/20140622212723_update_website_inquiries.rb +22 -0
  88. data/db/migrate/20140911185022_add_publishing_to_website.rb +5 -0
  89. data/db/migrate/20141013073349_add_custom_fields_to_documents.rb +12 -0
  90. data/db/migrate/20141016101936_upgrade_remove_dynamic_attributes.rb +13 -0
  91. data/lib/knitkit.rb +0 -1
  92. data/lib/knitkit/engine.rb +1 -0
  93. data/lib/knitkit/extensions.rb +4 -0
  94. data/lib/knitkit/extensions/active_record/acts_as_commentable.rb +33 -0
  95. data/lib/knitkit/extensions/active_record/acts_as_document.rb +0 -12
  96. data/lib/knitkit/extensions/active_record/acts_as_publishable.rb +7 -10
  97. data/lib/knitkit/extensions/compass_ae/widgets/base.rb +2 -4
  98. data/lib/knitkit/extensions/compass_ae/widgets/widget_proxy_controller.rb +4 -1
  99. data/lib/knitkit/extensions/railties/action_view/helpers/blog_helper.rb +16 -13
  100. data/lib/knitkit/extensions/railties/action_view/helpers/content_helper.rb +10 -8
  101. data/lib/knitkit/extensions/railties/theme_support/asset_tag_helper.rb +123 -108
  102. data/lib/knitkit/extensions/will_paginate/link_renderer.rb +67 -0
  103. data/lib/knitkit/routing_filter/section_router.rb +10 -8
  104. data/lib/knitkit/syntax_validator.rb +2 -2
  105. data/lib/knitkit/version.rb +7 -3
  106. data/public/images/inline_edit/close.png +0 -0
  107. data/public/images/knitkit/close_window.png +0 -0
  108. data/public/images/knitkit/logo.png +0 -0
  109. data/public/images/knitkit/splash/images/add-site.png +0 -0
  110. data/public/images/knitkit/splash/images/adjust-site.png +0 -0
  111. data/public/images/knitkit/splash/images/browse-site.png +0 -0
  112. data/public/images/knitkit/splash/images/find-themes.png +0 -0
  113. data/public/images/knitkit/splash/images/settings.png +0 -0
  114. data/public/images/knitkit/splash/images/tutorials.png +0 -0
  115. data/public/images/knitkit/splash/splash.png +0 -0
  116. data/public/javascripts/erp_app/desktop/applications/knitkit/articles_grid_panel.js +656 -627
  117. data/public/javascripts/erp_app/desktop/applications/knitkit/center_region.js +444 -333
  118. data/public/javascripts/erp_app/desktop/applications/knitkit/{east_region.js → east_region/east_region.js} +33 -33
  119. data/public/javascripts/erp_app/desktop/applications/knitkit/east_region/file_assets_panel.js +332 -0
  120. data/public/javascripts/erp_app/desktop/applications/knitkit/east_region/image_assets_data_view.js +144 -0
  121. data/public/javascripts/erp_app/desktop/applications/knitkit/east_region/image_assets_panel.js +335 -0
  122. data/public/javascripts/erp_app/desktop/applications/knitkit/{widgets_panel.js → east_region/widgets_panel.js} +55 -55
  123. data/public/javascripts/erp_app/desktop/applications/knitkit/inquiries_grid_panel.js +150 -37
  124. data/public/javascripts/erp_app/desktop/applications/knitkit/module.js +228 -96
  125. data/public/javascripts/erp_app/desktop/applications/knitkit/publish_window.js +89 -85
  126. data/public/javascripts/erp_app/desktop/applications/knitkit/published_grid_panel.js +238 -217
  127. data/public/javascripts/erp_app/desktop/applications/knitkit/select_roles_window.js +59 -54
  128. data/public/javascripts/erp_app/desktop/applications/knitkit/splash_screen.js +170 -0
  129. data/public/javascripts/erp_app/desktop/applications/knitkit/top_menu/main_menu.js +1168 -0
  130. data/public/javascripts/erp_app/desktop/applications/knitkit/top_menu/websites_combo.js +71 -0
  131. data/public/javascripts/erp_app/desktop/applications/knitkit/versions_grid_panel.js +301 -306
  132. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/article.js +216 -0
  133. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/document.js +182 -153
  134. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/host.js +48 -65
  135. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/menu.js +93 -94
  136. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/section.js +523 -197
  137. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/website_nav_items.js +20 -34
  138. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/hosts_tree_panel.js +74 -0
  139. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/menu_tree_panel.js +245 -0
  140. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/site_contents_tree_panel.js +360 -0
  141. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/themes_tree_panel.js +348 -0
  142. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/west_region.js +106 -1132
  143. data/public/javascripts/knitkit/bootstrap-datepicker.js +474 -0
  144. data/public/javascripts/knitkit/bootstrap.min.js +7 -0
  145. data/public/javascripts/knitkit/confirm-bootstrap.js +110 -0
  146. data/public/javascripts/knitkit/inline_editing.js +73 -50
  147. data/public/javascripts/knitkit/jquery.maskedinput.min.js +7 -0
  148. data/public/javascripts/knitkit/mobile/app/view/Main.js +108 -0
  149. data/public/javascripts/knitkit/mobile/ux/slidenavigation/View.js +734 -0
  150. data/public/javascripts/knitkit/theme.js +76 -0
  151. data/public/stylesheets/erp_app/desktop/applications/knitkit/knitkit.css +95 -35
  152. data/public/stylesheets/knitkit/bootstrap-responsive.min.css +10 -0
  153. data/public/stylesheets/knitkit/bootstrap.min.css +7 -0
  154. data/public/stylesheets/knitkit/custom.css +122 -0
  155. data/public/stylesheets/knitkit/datepicker.css +182 -0
  156. data/public/stylesheets/knitkit/inline_editing.css +58 -58
  157. data/spec/controllers/knitkit/erp_app/desktop/website_section_controller_spec.rb +1 -1
  158. data/spec/dummy/config/application.rb +1 -1
  159. data/spec/models/article_spec.rb +3 -3
  160. data/spec/models/content_spec.rb +9 -9
  161. data/spec/models/website_spec.rb +1 -1
  162. metadata +100 -114
  163. data/app/helpers/application_helper.rb +0 -134
  164. data/app/views/knitkit/articles/index.html.erb +0 -3
  165. data/app/views/knitkit/articles/show.html.erb +0 -4
  166. data/app/views/menus/knitkit/_default_sub_menu.html.erb +0 -43
  167. data/app/views/menus/knitkit/_default_sub_section_menu.html.erb +0 -47
  168. data/app/widgets/contact_us/views/_contact_form.html.erb +0 -36
  169. data/app/widgets/dynamic_forms/base.rb +0 -139
  170. data/app/widgets/dynamic_forms/javascript/dynamic_forms.js +0 -110
  171. data/app/widgets/dynamic_forms/views/error.html.erb +0 -5
  172. data/app/widgets/dynamic_forms/views/index.html.erb +0 -8
  173. data/app/widgets/dynamic_forms/views/success.html.erb +0 -4
  174. data/app/widgets/dynamic_grid/base.rb +0 -130
  175. data/app/widgets/dynamic_grid/helpers/controller/dynamic_grid_controller_helper.rb +0 -3
  176. data/app/widgets/dynamic_grid/helpers/view/dynamic_grid_view_helper.rb +0 -3
  177. data/app/widgets/dynamic_grid/javascript/dynamic_grid.js +0 -177
  178. data/app/widgets/dynamic_grid/views/index.html.erb +0 -14
  179. data/app/widgets/login/views/reset_password.html.erb +0 -26
  180. data/app/widgets/manage_profile/views/default_type_error.html.erb +0 -5
  181. data/app/widgets/scaffold/base.rb +0 -87
  182. data/app/widgets/scaffold/helpers/controller/scaffold_controller_helper.rb +0 -3
  183. data/app/widgets/scaffold/helpers/view/scaffold_view_helper.rb +0 -3
  184. data/app/widgets/scaffold/javascript/scaffold.js +0 -337
  185. data/app/widgets/scaffold/views/index.html.erb +0 -15
  186. data/app/widgets/search/views/_search.html.erb +0 -39
  187. data/public/images/knitkit/bullet.png +0 -0
  188. data/public/images/knitkit/close.png +0 -0
  189. data/public/images/knitkit/content.png +0 -0
  190. data/public/images/knitkit/footer.png +0 -0
  191. data/public/images/knitkit/graphic.png +0 -0
  192. data/public/images/knitkit/greyFadeDown.png +0 -0
  193. data/public/images/knitkit/link.png +0 -0
  194. data/public/images/knitkit/menu.png +0 -0
  195. data/public/images/knitkit/menu_select.png +0 -0
  196. data/public/images/knitkit/search.png +0 -0
  197. data/public/images/knitkit/tooltip.gif +0 -0
  198. data/public/javascripts/ajax_pagination.js +0 -33
  199. data/public/javascripts/datepicker.js +0 -445
  200. data/public/javascripts/erp_app/desktop/applications/knitkit/file_assets_panel.js +0 -341
  201. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_data_view.js +0 -31
  202. data/public/javascripts/erp_app/desktop/applications/knitkit/image_assets_panel.js +0 -263
  203. data/public/javascripts/erp_app/desktop/applications/knitkit/section_articles_grid_panel.js +0 -722
  204. data/public/javascripts/erp_app/desktop/applications/knitkit/themes_tree_panel.js +0 -585
  205. data/public/javascripts/erp_app/desktop/applications/knitkit/west_region/helpers/website.js +0 -155
  206. data/public/javascripts/knitkit/helpers.js +0 -26
  207. data/public/stylesheets/datepicker.css +0 -121
  208. data/public/stylesheets/extjs/resources/css/knitkit_extjs_4.css +0 -233
  209. data/public/stylesheets/knitkit/style.css +0 -426
@@ -2,18 +2,11 @@ class WebsiteInquiry < ActiveRecord::Base
2
2
  attr_protected :created_at, :updated_at
3
3
 
4
4
  belongs_to :website
5
- belongs_to :user
5
+ belongs_to :created_by, :class_name => 'User', :foreign_key => 'created_by_id'
6
6
 
7
- acts_as_dynamic_form_model
8
- has_dynamic_forms
9
- has_dynamic_data
7
+ validates :first_name, presence: true
8
+ validates :last_name, presence: true
9
+ validates :message, presence: true
10
+ validates :email, presence: true, format: {with: /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i, on: :create}
10
11
 
11
- def send_email(subject='')
12
- begin
13
- WebsiteInquiryMailer.inquiry(self, subject).deliver
14
- rescue Exception => e
15
- system_user = Party.find_by_description('Compass AE')
16
- AuditLog.custom_application_log_message(system_user, e)
17
- end
18
- end
19
12
  end
@@ -23,7 +23,7 @@ class WebsiteSection < ActiveRecord::Base
23
23
 
24
24
  validates :title, :presence => {:message => 'Title cannot be blank'}
25
25
  validates_uniqueness_of :permalink, :scope => [:website_id, :parent_id]
26
- validates_uniqueness_of :internal_identifier, :scope => :website_id, :case_sensitive => false
26
+ validates_uniqueness_of :internal_identifier, :scope => [:website_id, :parent_id], :case_sensitive => false
27
27
 
28
28
  KNIT_KIT_ROOT = Knitkit::Engine.root.to_s
29
29
  WEBSITE_SECTIONS_TEMP_LAYOUT_PATH = "#{Knitkit::Engine.root.to_s}/app/views/knitkit/website_sections"
@@ -38,6 +38,10 @@ class WebsiteSection < ActiveRecord::Base
38
38
  end
39
39
  end
40
40
 
41
+ def is_blog?
42
+ self.is_a?(Blog) || self.attributes['type'] == 'Blog'
43
+ end
44
+
41
45
  def secure
42
46
  capability = self.add_capability(:view)
43
47
  roles = ['admin', 'website_author', self.website.website_role_iid]
@@ -83,6 +87,10 @@ class WebsiteSection < ActiveRecord::Base
83
87
  def is_section?
84
88
  ['Page', 'Blog'].include? type
85
89
  end
90
+
91
+ def display_in_menu?
92
+ self.in_menu
93
+ end
86
94
 
87
95
  def is_secured?
88
96
  self.protected_with_capability?('view')
@@ -1,29 +1,50 @@
1
- <br/>
2
- <h1>Add Comment</h1>
3
- <div>
4
- <div id="notice"></div>
5
- <br/>
6
-
7
- <%= form_tag "/comments/add/", :remote => true, :id => 'add_comment_form' do %>
8
- <div class="form_settings">
9
- <div>
10
- <p>
11
- <span>Comment</span>
12
- <%= text_area_tag :comment, @comment, :rows => 8, :cols => 50 %>
13
- </p>
14
- <p style="padding-top: 15px">
15
- <span>&nbsp;</span>
16
- <%= submit_tag "Add Comment", :disable_with => "Please wait...", :class => "submit" %>
17
- </p>
18
- <input type="hidden" name="content_id" value="<%=@published_content.content.id%>" />
19
- </div>
1
+ <div class="container">
2
+ <div class="page-header">
3
+ <h2>Add Comment</h2>
20
4
  </div>
21
- <% end %>
22
5
 
6
+ <div>
7
+ <div id="notice"></div>
8
+ <br/>
9
+
10
+ <%= form_tag "/comments/add/", :remote => true, :id => 'add_comment_form', :role => "form" do %>
11
+ <div class="form-group">
12
+ <label for="comment">Comment</label>
13
+
14
+ <textarea id="comment" name="comment" class="form-control" rows="3"></textarea>
15
+
16
+ <br/>
17
+ <%= submit_tag "Add Comment", :disable_with => "Please wait...", :class => "btn btn-primary" %>
18
+
19
+ <input type="hidden" name="content_id" value="<%= @published_content.content.id %>"/>
20
+
21
+ </div>
22
+ <% end %>
23
+
24
+ </div>
23
25
  </div>
24
26
 
25
27
  <script type="text/javascript">
26
- jQuery('#add_comment_form').bind('ajaxComplete', function(e, xhr, settings){
27
- jQuery('#notice').html(xhr.responseText);
28
- });
28
+ jQuery('#add_comment_form').bind('ajax:success', function (e, response) {
29
+ var html = '';
30
+
31
+ if (response.success) {
32
+ html = [
33
+ '<div class="alert alert-success" >',
34
+ '<button type="button" class="close" data-dismiss="alert">&times;</button>',
35
+ response.message,
36
+ '</div>'
37
+ ].join('');
38
+ }
39
+ else {
40
+ html = [
41
+ '<div class="alert alert-danger" >',
42
+ '<button type="button" class="close" data-dismiss="alert">&times;</button>',
43
+ response.message,
44
+ '</div>'
45
+ ].join('');
46
+ }
47
+
48
+ jQuery('#notice').html(html);
49
+ });
29
50
  </script>
@@ -1,8 +1,6 @@
1
- <div id="commentDiv">
2
- <div>
1
+ <div class="panel panel-default">
2
+ <div class="panel-heading"><%=comment.commentor_name%> - <%=comment.created_at.strftime("Commented on %m/%d/%Y")%></div>
3
+ <div class="panel-body">
3
4
  <%=raw comment.comment %>
4
5
  </div>
5
- <br/>
6
- <span><%=comment.commentor_name%> - <%=comment.created_at.strftime("Commented on %m/%d/%Y")%></span>
7
- </div>
8
- <br/>
6
+ </div>
@@ -1,51 +1,65 @@
1
- <h2><%=h @website_section.title %></h2>
2
-
3
- <div class="blog_articles left">
4
- <% @contents.each do |content| %>
5
- <div class="blog_post" id="blog_<%=h content.id %>">
6
- <h4><%=h content.title %></h4>
7
- <p>
8
- Posted: <%= content.created_at.to_s(:long) %> <%=published_content_created_by %><br />
9
- Topics: <%=content.content.tag_list %>
10
- </p>
11
- <div class="blog_body">
12
- <%= raw content.excerpt_html %>
1
+ <div class="container">
2
+
3
+ <div class="row">
4
+ <div class="col-md-12">
5
+ <div class="page-header">
6
+ <h1><%= @website_section.title %></h1>
7
+ </div>
8
+ </div>
9
+
10
+ <div class="col-md-8">
11
+
12
+ <% @contents.each do |content| %>
13
+ <div id="blog_<%= h content.id %>">
14
+ <h4><%= content.title %></h4>
15
+
16
+ <p>
17
+ Posted: <%= content.created_at.to_s(:long) %> <%= published_content_created_by %><br/>
18
+ Topics: <%= content.content.pretty_tag_list %>
19
+ </p>
20
+
21
+ <p>
22
+ <%= raw content.excerpt_html %>
23
+ </p>
24
+
25
+ <div><%= link_to 'Read More...', main_app.blog_article_path(@website_section.id, content.permalink) %></div>
26
+
27
+ </div>
28
+ <% end %>
29
+
30
+ <%= blog_pagination 'blog_pagination', params %>
31
+
32
+ </div>
33
+
34
+ <div class="col-md-4">
35
+ <div>
36
+ <h4>Topics</h4>
37
+ <%= blog_topics 'tag_link' %>
38
+ </div>
39
+
40
+ <div>
41
+ <h4>Links</h4>
42
+ <%= blog_rss_links 'RSS Feed' %>
43
+ </div>
44
+
45
+ <div>
46
+ <% #Optional Parameters:
47
+ # content_type: Leave blank to search all section types, set to Blog to only search Blog articles
48
+ # section_unique_name: Leave blank to search all pages if passed will confine search to a particular
49
+ # pages content
50
+ # search_url: Main search url, only needed if results are being redirected
51
+ # redirect_results: If true will redirect to search page to display results. Used for inline search
52
+ # boxes
53
+ # per_page: Number of results per page
54
+ %>
55
+ <%= render_widget :search,
56
+ :params => set_widget_params({
57
+ :content_type => 'Blog',
58
+ :section_unique_name => @blog.internal_identifier,
59
+ :per_page => 2
60
+ }) %>
13
61
  </div>
14
- <div><%= link_to 'Read More...', main_app.blog_article_path(@website_section.id, content.permalink) %></div>
15
62
  </div>
16
- <% end %>
17
-
18
- <%= blog_pagination 'blog_pagination', params %>
19
-
20
- </div>
21
-
22
- <div class="sidebar blog_tags">
23
- <h4>Topics</h4>
24
- <%=blog_topics 'tag_link' %>
25
- </div>
26
-
27
- <div class="sidebar rss">
28
- <h4>Links</h4>
29
- <%=blog_rss_links 'RSS Feed' %>
30
- </div>
31
-
32
- <div class="sidebar blog_search">
33
- <% #Optional Parameters:
34
- # content_type: Leave blank to search all section types, set to Blog to only search Blog articles
35
- # section_permalink: This is the permalink value for the section
36
- # Useful if you only want to search articles within a single Blog section
37
- # results_permalink: How do you want your results to display? via ajax? or on a new page?
38
- # Leave blank if you want results to display via ajax on the same page as the search form
39
- # Enter the permalink of results page if you want the search results to display on a new page
40
- # per_page: Number of results per page
41
- # class: CSS class for the form %>
42
- <%= render_widget :search,
43
- :action => get_widget_action,
44
- :params => set_widget_params({
45
- :content_type => 'Blog',
46
- :section_permalink => '',
47
- :results_permalink => 'search',
48
- :per_page => 20,
49
- :class => ''
50
- }) %>
51
- </div>
63
+ </div>
64
+
65
+ </div>
@@ -1,22 +1,27 @@
1
- <div class="blog_post">
1
+ <div class="container">
2
+ <div class="page-header">
3
+
4
+ <h1><%= @blog.title %></h1>
5
+
6
+ <h3><%= @published_content.title %></h3>
7
+
8
+ </div>
2
9
 
3
- <h2><%=h @blog.title %></h2>
4
- <br/>
5
- <h3><%=h @published_content.title %></h3>
6
10
  <p>
7
- Posted: <%= @published_content.created_at.to_s(:long) %> <%=published_content_created_by %><br />
8
- Topics: <%= @published_content.content.tag_list %>
11
+ Posted: <%= @published_content.created_at.to_s(:long) %> <%= published_content_created_by %><br/>
12
+ Topics: <%= @published_content.content.pretty_tag_list %>
9
13
  </p>
10
- <p><%= raw @published_content.excerpt_html %></p>
14
+
11
15
  <%= raw @published_content.body_html %>
12
16
 
13
17
  <h3>Comments</h3>
14
18
  <br/>
15
19
  <%= blog_recent_approved_comments %>
16
- <br/>
17
- <br/>
18
20
 
19
- <hr/>
20
- <%=blog_add_comment_form %>
21
+ <p class="text-center"><%= link_to "Home", @blog.path %></p>
22
+
23
+ <br/>
24
+ </div>
25
+ <hr/>
26
+ <%= blog_add_comment_form %>
21
27
 
22
- </div>
@@ -0,0 +1,162 @@
1
+ <!DOCTYPE html>
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <title><%= @website.title %></title>
5
+ <%= include_sencha_touch :debug => (Rails.env != 'production') %>
6
+ <%= static_javascript_include_tag('erp_app/utility.js') %>
7
+ <%= static_javascript_include_tag('erp_app/mobile/mobile_base.js') %>
8
+
9
+ <script type="text/javascript">
10
+ Ext.Loader.setPath({
11
+ 'KnitkitMobile': 'javascripts/knitkit/mobile/app',
12
+ 'Ext.ux': 'javascripts/knitkit/mobile/ux'
13
+ });
14
+
15
+ Ext.define("KnitkitMobile.view.Main", {
16
+ extend: 'Ext.ux.slidenavigation.View',
17
+ itemId: 'slideContainer',
18
+
19
+ requires: [
20
+ 'Ext.Container',
21
+ 'Ext.MessageBox',
22
+ 'Ext.Panel',
23
+ 'Ext.Toolbar',
24
+ 'Ext.event.publisher.Dom'
25
+ ],
26
+
27
+ config: {
28
+ style: 'font-size:14px;',
29
+
30
+ fullscreen: true,
31
+
32
+ /**
33
+ * Any component within the container with an 'x-toolbar' class
34
+ * will be draggable. To disable draggin all together, set this
35
+ * to false.
36
+ */
37
+ slideSelector: 'x-container',
38
+
39
+ /**
40
+ * Time in milliseconds to animate the closing of the container
41
+ * after an item has been clicked on in the list.
42
+ */
43
+ selectSlideDuration: 200,
44
+
45
+ /**
46
+ * Enable content masking when container is open.
47
+ *
48
+ * @since 0.2.0
49
+ */
50
+ itemMask: true,
51
+
52
+ /**
53
+ * Define the default slide button config. Any item that has
54
+ * a `slideButton` value that is either `true` or a button config
55
+ * will use these values at the default.
56
+ */
57
+ slideButtonDefaults: {
58
+ selector: 'toolbar'
59
+ },
60
+
61
+ /**
62
+ * This allows us to configure how the actual list container
63
+ * looks. Here we've added a custom search field and have
64
+ * modified the width.
65
+ */
66
+ list: {
67
+ maxDrag: 400,
68
+ //width: (Ext.os.is.iOS ? 300 : 250),
69
+ items: [
70
+ {
71
+ xtype: 'toolbar',
72
+ docked: 'top',
73
+ ui: 'light',
74
+ title: {
75
+ title: 'Menu',
76
+ centered: true,
77
+ width: 200,
78
+ left: 0
79
+ }
80
+ }
81
+ ]
82
+
83
+ },
84
+
85
+ /**
86
+ * Example of how to re-order the groups.
87
+ */
88
+ /*groups: {
89
+ 'Pages': 1,
90
+ 'Account': 2
91
+ },*/
92
+
93
+ /**
94
+ * These are the default values to apply to the items within the
95
+ * container.
96
+ */
97
+ defaults: {
98
+ style: 'background: #fff',
99
+ xtype: 'container'
100
+ },
101
+
102
+ items: [
103
+ <% @website.sections.each do |section| %>
104
+ <% if section.in_menu && section.allow_access?(current_user, :view) %>
105
+ {
106
+ title: '<%= section.title %>',
107
+ slideButton: true,
108
+ items: [
109
+ {
110
+ xtype: 'toolbar',
111
+ title: '<%= section.title %>',
112
+ docked: 'top'
113
+ },
114
+ {
115
+ xtype: 'panel',
116
+ scrollable: true,
117
+ bodyPadding: '5px',
118
+ listeners: {
119
+ painted: function (comp) {
120
+ var me = this;
121
+
122
+ Ext.Ajax.request({
123
+ method: 'GET',
124
+ timeout: 60000,
125
+ params: {
126
+ is_mobile: true
127
+ },
128
+ url: '/<%= section.internal_identifier %>',
129
+ success: function (response) {
130
+ me.setHtml(response.responseText);
131
+ },
132
+ failure: function (response) {
133
+ Ext.Msg.alert('Info', 'Could not load page');
134
+ }
135
+ });
136
+ }
137
+ }
138
+ }
139
+ ]
140
+ },
141
+ <% end %>
142
+ <% end %>
143
+ ]
144
+ }
145
+ });
146
+
147
+ Ext.application({
148
+ name: 'KnitkitMobile',
149
+
150
+ views: ['Main'],
151
+
152
+ launch: function () {
153
+ this.main = Ext.create('KnitkitMobile.view.Main');
154
+ Ext.Viewport.add(this.main);
155
+ Ext.Viewport.setActiveItem(this.main);
156
+ }
157
+ });
158
+ </script>
159
+ </head>
160
+ <body>
161
+ </body>
162
+ </html>