dm_cms 4.2.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (298) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +22 -0
  3. data/README.md +31 -0
  4. data/Rakefile +34 -0
  5. data/app/assets/javascripts/dm_cms/admin.js +58 -0
  6. data/app/assets/javascripts/dm_cms/application.js +16 -0
  7. data/app/assets/stylesheets/dm_cms/admin.css +3 -0
  8. data/app/assets/stylesheets/dm_cms/application.css +13 -0
  9. data/app/controllers/dm_cms/admin/admin_controller.rb +14 -0
  10. data/app/controllers/dm_cms/admin/cms_blogs_controller.rb +89 -0
  11. data/app/controllers/dm_cms/admin/cms_contentitems_controller.rb +96 -0
  12. data/app/controllers/dm_cms/admin/cms_pages_controller.rb +100 -0
  13. data/app/controllers/dm_cms/admin/cms_posts_controller.rb +67 -0
  14. data/app/controllers/dm_cms/admin/cms_snippets_controller.rb +73 -0
  15. data/app/controllers/dm_cms/admin/dashboard_controller.rb +12 -0
  16. data/app/controllers/dm_cms/admin/media_files_controller.rb +80 -0
  17. data/app/controllers/dm_cms/application_controller.rb +9 -0
  18. data/app/controllers/dm_cms/blogs_controller.rb +50 -0
  19. data/app/controllers/dm_cms/comments_controller.rb +3 -0
  20. data/app/controllers/dm_cms/contact_form_controller.rb +27 -0
  21. data/app/controllers/dm_cms/pages_controller.rb +67 -0
  22. data/app/controllers/dm_cms/posts_controller.rb +69 -0
  23. data/app/datatables/blog_user_datatable.rb +79 -0
  24. data/app/helpers/dm_cms/analytics_helper.rb +27 -0
  25. data/app/helpers/dm_cms/application_helper.rb +4 -0
  26. data/app/helpers/dm_cms/cms_contentitems_helper.rb +8 -0
  27. data/app/helpers/dm_cms/cms_pages_helper.rb +30 -0
  28. data/app/helpers/dm_cms/pages_helper.rb +204 -0
  29. data/app/helpers/dm_cms/posts_helper.rb +26 -0
  30. data/app/helpers/dm_cms/render_helper.rb +50 -0
  31. data/app/inputs/media_input.rb +17 -0
  32. data/app/liquid/tags/markdown.rb +30 -0
  33. data/app/mailers/post_notify_mailer.rb +36 -0
  34. data/app/models/cms_blog.rb +89 -0
  35. data/app/models/cms_contentitem.rb +76 -0
  36. data/app/models/cms_page.rb +227 -0
  37. data/app/models/cms_post.rb +76 -0
  38. data/app/models/cms_snippet.rb +42 -0
  39. data/app/models/contact_form.rb +28 -0
  40. data/app/models/dm_cms/concerns/ability.rb +54 -0
  41. data/app/models/dm_cms/permitted_params.rb +34 -0
  42. data/app/models/media_file.rb +102 -0
  43. data/app/presenters/cms_blog_presenter.rb +15 -0
  44. data/app/presenters/cms_page_presenter.rb +23 -0
  45. data/app/presenters/cms_post_presenter.rb +11 -0
  46. data/app/presenters/cms_snippet_presenter.rb +10 -0
  47. data/app/uploaders/media_uploader.rb +169 -0
  48. data/app/views/customized/analytics/_google_analytics.html.erb +11 -0
  49. data/app/views/dm_cms/admin/cms_blogs/_form.html.erb +34 -0
  50. data/app/views/dm_cms/admin/cms_blogs/edit.html.erb +2 -0
  51. data/app/views/dm_cms/admin/cms_blogs/index.html.erb +44 -0
  52. data/app/views/dm_cms/admin/cms_blogs/new.html.erb +2 -0
  53. data/app/views/dm_cms/admin/cms_blogs/show.html.erb +167 -0
  54. data/app/views/dm_cms/admin/cms_contentitems/_form.html.erb +43 -0
  55. data/app/views/dm_cms/admin/cms_contentitems/_form_dialog.html.erb +17 -0
  56. data/app/views/dm_cms/admin/cms_contentitems/edit.html.erb +1 -0
  57. data/app/views/dm_cms/admin/cms_contentitems/markdown.html.erb +21 -0
  58. data/app/views/dm_cms/admin/cms_contentitems/new_content.html.erb +1 -0
  59. data/app/views/dm_cms/admin/cms_pages/_content_toolbar.html.erb +11 -0
  60. data/app/views/dm_cms/admin/cms_pages/_form.html.erb +50 -0
  61. data/app/views/dm_cms/admin/cms_pages/_tree.html.erb +20 -0
  62. data/app/views/dm_cms/admin/cms_pages/_tree_sidebar.html.erb +8 -0
  63. data/app/views/dm_cms/admin/cms_pages/edit.html.erb +2 -0
  64. data/app/views/dm_cms/admin/cms_pages/index.html.erb +32 -0
  65. data/app/views/dm_cms/admin/cms_pages/new_page.html.erb +2 -0
  66. data/app/views/dm_cms/admin/cms_pages/show.html.erb +54 -0
  67. data/app/views/dm_cms/admin/cms_posts/_form.html.erb +59 -0
  68. data/app/views/dm_cms/admin/cms_posts/edit.html.erb +2 -0
  69. data/app/views/dm_cms/admin/cms_posts/new.html.erb +1 -0
  70. data/app/views/dm_cms/admin/cms_snippets/_form.html.erb +28 -0
  71. data/app/views/dm_cms/admin/cms_snippets/edit.html.erb +1 -0
  72. data/app/views/dm_cms/admin/cms_snippets/index.html.erb +29 -0
  73. data/app/views/dm_cms/admin/cms_snippets/new.html.erb +1 -0
  74. data/app/views/dm_cms/admin/dashboard/_widget_blog_comments.html.erb +37 -0
  75. data/app/views/dm_cms/admin/dashboard/widget_blog_comments.js.erb +1 -0
  76. data/app/views/dm_cms/admin/media_files/_form.html.erb +102 -0
  77. data/app/views/dm_cms/admin/media_files/edit.html.erb +3 -0
  78. data/app/views/dm_cms/admin/media_files/index.html.erb +98 -0
  79. data/app/views/dm_cms/admin/media_files/new.html.erb +3 -0
  80. data/app/views/dm_cms/admin/shared/_liquid_tags_ref.html.erb +35 -0
  81. data/app/views/dm_cms/blogs/show.html.erb +0 -0
  82. data/app/views/dm_cms/blogs/toggle_follow.js.coffee +5 -0
  83. data/app/views/dm_cms/contact_form/create.html.erb +2 -0
  84. data/app/views/dm_cms/contact_form/create.js.erb +2 -0
  85. data/app/views/dm_cms/pages/_content_fragment.html.erb +13 -0
  86. data/app/views/dm_cms/pages/_snippet_fragment.html.erb +12 -0
  87. data/app/views/dm_cms/pages/coming_soon.html.erb +2 -0
  88. data/app/views/dm_cms/pages/show.html.erb +0 -0
  89. data/app/views/dm_cms/posts/show.html.erb +0 -0
  90. data/app/views/dm_cms/shared/_comment.html.erb +22 -0
  91. data/app/views/dm_cms/shared/_comment_form.html.erb +16 -0
  92. data/app/views/dm_cms/shared/_comment_list.html.erb +11 -0
  93. data/app/views/dm_cms/shared/_social_buttons.html.erb +6 -0
  94. data/app/views/layouts/email_templates/dm_cms_email_layout.html.erb +320 -0
  95. data/app/views/layouts/email_templates/dm_cms_email_layout.text.erb +1 -0
  96. data/app/views/layouts/email_templates/dm_cms_post_notify.html.erb +13 -0
  97. data/app/views/layouts/email_templates/dm_cms_post_notify.text.erb +9 -0
  98. data/app/views/liquid_tags/_contact_form.html.erb +17 -0
  99. data/config/initializers/liquid_init.rb +2 -0
  100. data/config/locales/cms.cs.yml +42 -0
  101. data/config/locales/cms.de.yml +42 -0
  102. data/config/locales/cms.en.yml +42 -0
  103. data/config/locales/cms.fi.yml +42 -0
  104. data/config/locales/cms.ja.yml +42 -0
  105. data/config/routes.rb +70 -0
  106. data/db/migrate/20121103181909_create_cms.rb +91 -0
  107. data/db/migrate/20130206213720_add_account_to_cms.rb +10 -0
  108. data/db/migrate/20130507123255_create_blog.rb +61 -0
  109. data/db/migrate/20130531212537_add_notification_sent.rb +5 -0
  110. data/db/migrate/20130605184116_add_blog_comment.rb +7 -0
  111. data/db/migrate/20131128201053_add_blog_image.rb +5 -0
  112. data/db/migrate/20140217135228_rename_snippet_slug.rb +13 -0
  113. data/db/migrate/20140303121217_add_requires_subscription_blog.rb +7 -0
  114. data/db/migrate/20140328205246_add_pages_ranked_model.rb +22 -0
  115. data/db/migrate/20140423113417_add_blog_owner.rb +6 -0
  116. data/db/migrate/20140428122156_create_media_files.rb +29 -0
  117. data/db/migrate/20140523134543_add_cmspage_summary.rb +6 -0
  118. data/db/migrate/20140601151631_add_blog_image_email_header.rb +5 -0
  119. data/db/migrate/20141004154725_add_header_image.rb +9 -0
  120. data/db/migrate/20160821150108_index_foreign_keys_in_cms_blogs.rb +6 -0
  121. data/db/migrate/20160821150109_index_foreign_keys_in_cms_media_files.rb +6 -0
  122. data/db/migrate/20160821150110_index_foreign_keys_in_cms_posts.rb +6 -0
  123. data/lib/dm_cms.rb +4 -0
  124. data/lib/dm_cms/engine.rb +16 -0
  125. data/lib/dm_cms/liquid/filters/liquid_filters.rb +11 -0
  126. data/lib/dm_cms/liquid/tags/contact_form.rb +35 -0
  127. data/lib/dm_cms/liquid/tags/div.rb +42 -0
  128. data/lib/dm_cms/liquid/tags/image.rb +76 -0
  129. data/lib/dm_cms/liquid/tags/quote.rb +38 -0
  130. data/lib/dm_cms/liquid/tags/snippet.rb +37 -0
  131. data/lib/dm_cms/liquid/tags/url_asset.rb +41 -0
  132. data/lib/dm_cms/liquid/tags/url_media.rb +42 -0
  133. data/lib/dm_cms/liquid/tags/url_protected.rb +31 -0
  134. data/lib/tasks/dm_cms_tasks.rake +4 -0
  135. data/spec/controllers/admin/cms_blogs_controller_spec.rb +173 -0
  136. data/spec/controllers/admin/cms_pages_controller_spec.rb +182 -0
  137. data/spec/controllers/admin/cms_posts_controller_spec.rb +166 -0
  138. data/spec/dummy/README.rdoc +28 -0
  139. data/spec/dummy/Rakefile +6 -0
  140. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  141. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  142. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  143. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  144. data/spec/dummy/app/models/ability.rb +12 -0
  145. data/spec/dummy/app/models/user.rb +6 -0
  146. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  147. data/spec/dummy/bin/bundle +3 -0
  148. data/spec/dummy/bin/rails +4 -0
  149. data/spec/dummy/bin/rake +4 -0
  150. data/spec/dummy/config.ru +4 -0
  151. data/spec/dummy/config/application.rb +26 -0
  152. data/spec/dummy/config/boot.rb +5 -0
  153. data/spec/dummy/config/database.yml +25 -0
  154. data/spec/dummy/config/environment.rb +5 -0
  155. data/spec/dummy/config/environments/development.rb +37 -0
  156. data/spec/dummy/config/environments/production.rb +82 -0
  157. data/spec/dummy/config/environments/test.rb +39 -0
  158. data/spec/dummy/config/initializers/_themes_for_rails.rb +39 -0
  159. data/spec/dummy/config/initializers/account_initialization.rb +28 -0
  160. data/spec/dummy/config/initializers/assets.rb +8 -0
  161. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  162. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  163. data/spec/dummy/config/initializers/dm_core.rb +6 -0
  164. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  165. data/spec/dummy/config/initializers/inflections.rb +16 -0
  166. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  167. data/spec/dummy/config/initializers/session_store.rb +3 -0
  168. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  169. data/spec/dummy/config/locales/en.yml +23 -0
  170. data/spec/dummy/config/routes.rb +19 -0
  171. data/spec/dummy/config/secrets.yml +22 -0
  172. data/spec/dummy/db/development.sqlite3 +0 -0
  173. data/spec/dummy/db/migrate/20141114170927_add_globalize_countries.dm_core.rb +50 -0
  174. data/spec/dummy/db/migrate/20141114170928_devise_create_users.dm_core.rb +46 -0
  175. data/spec/dummy/db/migrate/20141114170929_add_user_fields.dm_core.rb +14 -0
  176. data/spec/dummy/db/migrate/20141114170930_rolify_create_roles.dm_core.rb +20 -0
  177. data/spec/dummy/db/migrate/20141114170931_add_last_access.dm_core.rb +10 -0
  178. data/spec/dummy/db/migrate/20141114170932_create_versions.dm_core.rb +19 -0
  179. data/spec/dummy/db/migrate/20141114170933_add_object_changes_column_to_versions.dm_core.rb +12 -0
  180. data/spec/dummy/db/migrate/20141114170934_create_dm_core_accounts.dm_core.rb +13 -0
  181. data/spec/dummy/db/migrate/20141114170935_add_account_to_users.dm_core.rb +9 -0
  182. data/spec/dummy/db/migrate/20141114170936_create_preferences.dm_core.rb +13 -0
  183. data/spec/dummy/db/migrate/20141114170937_create_comments.dm_core.rb +22 -0
  184. data/spec/dummy/db/migrate/20141114170938_add_activity.dm_core.rb +21 -0
  185. data/spec/dummy/db/migrate/20141114170939_add_type_to_comments.dm_core.rb +9 -0
  186. data/spec/dummy/db/migrate/20141114170940_add_category.dm_core.rb +28 -0
  187. data/spec/dummy/db/migrate/20141114170941_create_email_table.dm_core.rb +26 -0
  188. data/spec/dummy/db/migrate/20141114170942_add_user_profile.dm_core.rb +46 -0
  189. data/spec/dummy/db/migrate/20141114170943_add_profile_email.dm_core.rb +14 -0
  190. data/spec/dummy/db/migrate/20141114170944_create_payment_history.dm_core.rb +37 -0
  191. data/spec/dummy/db/migrate/20141114170945_change_anchor_field.dm_core.rb +10 -0
  192. data/spec/dummy/db/migrate/20141114170946_create_user_site_profile.dm_core.rb +27 -0
  193. data/spec/dummy/db/migrate/20141114170947_add_avatar.dm_core.rb +12 -0
  194. data/spec/dummy/db/migrate/20141114170948_add_notify_to_payment_history.dm_core.rb +8 -0
  195. data/spec/dummy/db/migrate/20141114170949_acts_as_votable_migration.dm_core.rb +28 -0
  196. data/spec/dummy/db/migrate/20141114170950_add_user_site_profile_uuid.dm_core.rb +19 -0
  197. data/spec/dummy/db/migrate/20141114170951_add_invoice_id.dm_core.rb +7 -0
  198. data/spec/dummy/db/migrate/20141114170952_acts_as_follower_migration.dm_core.rb +18 -0
  199. data/spec/dummy/db/migrate/20141114170953_rename_invoice_id.dm_core.rb +12 -0
  200. data/spec/dummy/db/migrate/20141114170954_add_core_addresses.dm_core.rb +18 -0
  201. data/spec/dummy/db/migrate/20141114170955_papertrail_increase_column.dm_core.rb +9 -0
  202. data/spec/dummy/db/migrate/20141114170956_acts_as_taggable_on_migration.dm_core.rb +32 -0
  203. data/spec/dummy/db/migrate/20141114170957_add_missing_unique_indices.dm_core.rb +23 -0
  204. data/spec/dummy/db/migrate/20141114170958_add_taggings_counter_cache_to_tags.dm_core.rb +16 -0
  205. data/spec/dummy/db/migrate/20141114170959_create_custom_fields.dm_core.rb +40 -0
  206. data/spec/dummy/db/migrate/20141114170960_add_missing_taggable_index.dm_core.rb +11 -0
  207. data/spec/dummy/db/migrate/20141114170961_create_documents.dm_knowledge.rb +19 -0
  208. data/spec/dummy/db/migrate/20141114170962_add_document_notes.dm_knowledge.rb +7 -0
  209. data/spec/dummy/db/migrate/20160128134522_add_favored_locale.dm_core.rb +17 -0
  210. data/spec/dummy/db/migrate/20160128134523_update_papertrail_v4.dm_core.rb +41 -0
  211. data/spec/dummy/db/schema.rb +590 -0
  212. data/spec/dummy/db/seeds.rb +18 -0
  213. data/spec/dummy/public/404.html +67 -0
  214. data/spec/dummy/public/422.html +67 -0
  215. data/spec/dummy/public/500.html +66 -0
  216. data/spec/dummy/public/favicon.ico +0 -0
  217. data/spec/dummy/themes/_mbus/_readme.md +6 -0
  218. data/spec/dummy/themes/_mbus/_theme.yml +21 -0
  219. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/application.js +9 -0
  220. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/bootstrap.js +2114 -0
  221. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/bootstrap.min.js +6 -0
  222. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/contact_me.js +75 -0
  223. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/jqBootstrapValidation.js +912 -0
  224. data/spec/dummy/themes/_mbus/theme_assets/_mbus/javascripts/jquery-1.11.0.js +4 -0
  225. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/application.css +14 -0
  226. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/bootstrap.css +6203 -0
  227. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/bootstrap.min.css +5 -0
  228. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/css/font-awesome.css +1566 -0
  229. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/css/font-awesome.min.css +4 -0
  230. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/fonts/FontAwesome.otf +0 -0
  231. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/fonts/fontawesome-webfont.eot +0 -0
  232. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/fonts/fontawesome-webfont.svg +504 -0
  233. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/fonts/fontawesome-webfont.ttf +0 -0
  234. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/fonts/fontawesome-webfont.woff +0 -0
  235. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/bordered-pulled.less +16 -0
  236. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/core.less +12 -0
  237. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/fixed-width.less +6 -0
  238. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/font-awesome.less +17 -0
  239. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/icons.less +506 -0
  240. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/larger.less +13 -0
  241. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/list.less +19 -0
  242. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/mixins.less +20 -0
  243. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/path.less +14 -0
  244. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/rotated-flipped.less +9 -0
  245. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/spinning.less +32 -0
  246. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/stacked.less +20 -0
  247. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/less/variables.less +515 -0
  248. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_bordered-pulled.scss +16 -0
  249. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_core.scss +12 -0
  250. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_fixed-width.scss +6 -0
  251. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_icons.scss +506 -0
  252. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_larger.scss +13 -0
  253. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_list.scss +19 -0
  254. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_mixins.scss +20 -0
  255. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_path.scss +14 -0
  256. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_rotated-flipped.scss +9 -0
  257. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_spinning.scss +32 -0
  258. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_stacked.scss +20 -0
  259. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/_variables.scss +515 -0
  260. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/font-awesome-4.1.0/scss/font-awesome.scss +17 -0
  261. data/spec/dummy/themes/_mbus/theme_assets/_mbus/stylesheets/modern-business.css +93 -0
  262. data/spec/dummy/themes/_mbus/theme_support/config/load_theme.rb +0 -0
  263. data/spec/dummy/themes/_mbus/theme_support/locales/site.cs.yml +57 -0
  264. data/spec/dummy/themes/_mbus/theme_support/locales/site.de.yml +57 -0
  265. data/spec/dummy/themes/_mbus/theme_support/locales/site.en.yml +57 -0
  266. data/spec/dummy/themes/_mbus/theme_support/locales/site.fi.yml +58 -0
  267. data/spec/dummy/themes/_mbus/theme_support/locales/site.ja.yml +57 -0
  268. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_blog_right_sidebar.html.erb +91 -0
  269. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_comment.html.erb +21 -0
  270. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_comment_form.html.erb +16 -0
  271. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_comment_list.html.erb +7 -0
  272. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_comment_section.html.erb +17 -0
  273. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_page_footer.html.erb +11 -0
  274. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_page_header.html.erb +39 -0
  275. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_page_top.html.erb +24 -0
  276. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_post_summary_item.html.erb +11 -0
  277. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/_social_buttons_initialization.html.erb +10 -0
  278. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/blog.html.erb +47 -0
  279. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/blog_post.html.erb +55 -0
  280. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/content_full_width.html.erb +28 -0
  281. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/content_with_left_nav.html.erb +44 -0
  282. data/spec/dummy/themes/_mbus/theme_support/views/layouts/cms_templates/index.html.erb +19 -0
  283. data/spec/dummy/themes/local/_theme.yml +8 -0
  284. data/spec/factories/accounts.rb +17 -0
  285. data/spec/factories/blogs.rb +19 -0
  286. data/spec/factories/posts.rb +23 -0
  287. data/spec/factories/user_profiles.rb +10 -0
  288. data/spec/factories/users.rb +19 -0
  289. data/spec/features/admin/blog_admin_spec.rb +16 -0
  290. data/spec/models/cms_blog_spec.rb +37 -0
  291. data/spec/models/cms_page_spec.rb +9 -0
  292. data/spec/models/cms_post_spec.rb +44 -0
  293. data/spec/rails_helper.rb +70 -0
  294. data/spec/spec_helper.rb +85 -0
  295. data/spec/support/accounts.rb +17 -0
  296. data/spec/support/devise.rb +44 -0
  297. data/spec/support/fix_locale.rb +57 -0
  298. metadata +545 -0
@@ -0,0 +1,17 @@
1
+ /*!
2
+ * Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
3
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4
+ */
5
+
6
+ @import "variables";
7
+ @import "mixins";
8
+ @import "path";
9
+ @import "core";
10
+ @import "larger";
11
+ @import "fixed-width";
12
+ @import "list";
13
+ @import "bordered-pulled";
14
+ @import "spinning";
15
+ @import "rotated-flipped";
16
+ @import "stacked";
17
+ @import "icons";
@@ -0,0 +1,93 @@
1
+ /*!
2
+ * Start Bootstrap - Modern Business HTML Template (http://startbootstrap.com)
3
+ * Code licensed under the Apache License v2.0.
4
+ * For details, see http://www.apache.org/licenses/LICENSE-2.0.
5
+ */
6
+
7
+ /* Global Styles */
8
+
9
+ html,
10
+ body {
11
+ height: 100%;
12
+ }
13
+
14
+ body {
15
+ padding-top: 50px; /* Required padding for .navbar-fixed-top. Remove if using .navbar-static-top. Change if height of navigation changes. */
16
+ }
17
+
18
+ .img-portfolio {
19
+ margin-bottom: 30px;
20
+ }
21
+
22
+ .img-hover:hover {
23
+ opacity: 0.8;
24
+ }
25
+
26
+ /* Home Page Carousel */
27
+
28
+ header.carousel {
29
+ height: 50%;
30
+ }
31
+
32
+ header.carousel .item,
33
+ header.carousel .item.active,
34
+ header.carousel .carousel-inner {
35
+ height: 100%;
36
+ }
37
+
38
+ header.carousel .fill {
39
+ width: 100%;
40
+ height: 100%;
41
+ background-position: center;
42
+ background-size: cover;
43
+ }
44
+
45
+ /* 404 Page Styles */
46
+
47
+ .error-404 {
48
+ font-size: 100px;
49
+ }
50
+
51
+ /* Pricing Page Styles */
52
+
53
+ .price {
54
+ display: block;
55
+ font-size: 50px;
56
+ line-height: 50px;
57
+ }
58
+
59
+ .price sup {
60
+ top: -20px;
61
+ left: 2px;
62
+ font-size: 20px;
63
+ }
64
+
65
+ .period {
66
+ display: block;
67
+ font-style: italic;
68
+ }
69
+
70
+ /* Footer Styles */
71
+
72
+ footer {
73
+ margin: 50px 0;
74
+ }
75
+
76
+ /* Responsive Styles */
77
+
78
+ @media(max-width:991px) {
79
+ .customer-img,
80
+ .img-related {
81
+ margin-bottom: 30px;
82
+ }
83
+ }
84
+
85
+ @media(max-width:767px) {
86
+ .img-portfolio {
87
+ margin-bottom: 15px;
88
+ }
89
+
90
+ header.carousel .carousel {
91
+ height: 70%;
92
+ }
93
+ }
@@ -0,0 +1,57 @@
1
+ cs:
2
+ _mbus:
3
+ language: Jazyk
4
+ language_english: Anglicky
5
+ language_german: Německy
6
+ language_czech: Česky
7
+ language_japanese: Japonsky
8
+
9
+ #--- Login System
10
+ signup_title: Sign Up for a New Account
11
+ signup_first_name: Křestní jméno
12
+ signup_last_name: Příjmení
13
+ signup_country: Země
14
+ signup_email: E-mail
15
+ signup_password: Heslo
16
+ signup_password_confirm: Potvrzení hesla
17
+ signup_newsletter: Zpravodaj
18
+ signup_newsletter_desc: "Yes, I would like to receive updates and news"
19
+ signup_register_button: Registrovat
20
+ signup_public_name: Zveřejňované jméno
21
+ signup_public_name_hint: 'Jméno, které bude zobrazeno ve fórech a komentářích.'
22
+ signin_link: Přihlášení
23
+ signin_register_link: 'Ještě nemáte uživatelský účet? Vytvořit nový účet.'
24
+ signin_forgot_password_link: Zapomněli jste heslo?
25
+ signin_confirmation_instructions_link: "Nedostali jste instrukce pro potvrzení registrace?"
26
+ signin_unlock_instructions_link: "Nedostali jste instrukce pro odblokování?"
27
+ signin_title: Přihlášení
28
+ signin_rememberme: Zapamatuj si mě
29
+ signin_button: Přihlásit se
30
+ confirmation_email_4: 'Thank you'
31
+ forgot_title: Zapomenuté heslo
32
+ forgot_email_password_button: Zaslat heslo e-mailem
33
+ resend_title: Znovu zaslat instrukce pro potvrzení
34
+ change_password_title: Změna hesla
35
+ new_password: Nové heslo
36
+ new_password_confirm: Potvzení hesla
37
+ change_password: Změnit heslo
38
+ create_account: Vytvořit nový účet
39
+
40
+ #--- CMS/Site Messages
41
+
42
+ #--- Forum System
43
+ forum_list_title: Fórum
44
+ forum_list_subtitle: Anglicky
45
+
46
+ #--- Profile
47
+ profile_title: Účtu a profilu
48
+ profile_subtitle: Nastavení
49
+
50
+ #--- Newletter Signup
51
+ newsletter_choose: Vyberte si prosím
52
+
53
+ #--- Forum
54
+ forum:
55
+ no_public: "Here you have the opportunity to participate in online discussions via closed and open forums"
56
+
57
+ comment_extra_instruction: ""
@@ -0,0 +1,57 @@
1
+ de:
2
+ _mbus:
3
+ language: Sprache
4
+ language_english: Englisch
5
+ language_german: Deutsch
6
+ language_czech: Tschechisch
7
+ language_japanese: Japanese
8
+
9
+ #--- Login System
10
+ signup_title: Sign Up for a New Account
11
+ signup_first_name: Vorname
12
+ signup_last_name: Nachname
13
+ signup_country: Land
14
+ signup_email: Email
15
+ signup_password: Passwort
16
+ signup_password_confirm: Passwort Bestätigung
17
+ signup_newsletter: Newsletter
18
+ signup_newsletter_desc: "Yes, I would like to receive updates and news"
19
+ signup_register_button: Registrieren
20
+ signup_public_name: Öffentlicher Benutzername
21
+ signup_public_name_hint: 'Name, unter dem Du Beiträge im Forum veröffentlichst oder Blog-Beiträge kommentierst.'
22
+ signin_link: Anmelden
23
+ signin_register_link: 'Du hast noch keinen Benutzerzugang? Neues Benutzerkonto anlegen'
24
+ signin_forgot_password_link: Passwort vergessen?
25
+ signin_confirmation_instructions_link: "Keine Bestätigungs-Email erhalten?"
26
+ signin_unlock_instructions_link: "Keine Anweisung zum Entsperren enthalten?"
27
+ signin_title: Anmelden
28
+ signin_rememberme: Angemeldet bleiben
29
+ signin_button: Anmelden
30
+ confirmation_email_4: 'Thank you'
31
+ forgot_title: Passwort vergessen
32
+ forgot_email_password_button: E-Mail Passwort Anweisungen
33
+ resend_title: Bestätigungs- Anweisungen erneut versenden
34
+ change_password_title: Ändern Sie Ihr Passwort
35
+ new_password: Neues Passwort
36
+ new_password_confirm: Neues Passwort bestätigen
37
+ change_password: Mein Passwort ändern
38
+ create_account: Neues Benutzerkonto anlegen
39
+
40
+ #--- CMS/Site Messages
41
+
42
+ #--- Forum System
43
+ forum_list_title: Forum
44
+ forum_list_subtitle: in deutscher Sprache
45
+
46
+ #--- Profile
47
+ profile_title: Benutzerkonto und Profil
48
+ profile_subtitle: Einstellungen
49
+
50
+ #--- Newletter Signup
51
+ newsletter_choose: Bitte Newsletter auswählen
52
+
53
+ #--- Forum
54
+ forum:
55
+ no_public: "Here you have the opportunity to participate in online discussions via closed and open forums"
56
+
57
+ comment_extra_instruction: ""
@@ -0,0 +1,57 @@
1
+ en:
2
+ _mbus:
3
+ language: Language
4
+ language_english: English
5
+ language_german: German
6
+ language_czech: Czech
7
+ language_japanese: Japanese
8
+
9
+ #--- Login System
10
+ signup_title: Sign Up for a New Account
11
+ signup_first_name: First name
12
+ signup_last_name: Last name
13
+ signup_country: Country
14
+ signup_email: Email
15
+ signup_password: Password
16
+ signup_password_confirm: Password Confirmation
17
+ signup_newsletter: Newsletter
18
+ signup_newsletter_desc: "Yes, I would like to receive updates and news"
19
+ signup_register_button: Register
20
+ signup_public_name: Public Name
21
+ signup_public_name_hint: Name that will be displayed in forums and comments.
22
+ signin_link: Sign In
23
+ signin_register_link: 'You do not have a user account? Create new account'
24
+ signin_forgot_password_link: Forgot your password?
25
+ signin_confirmation_instructions_link: "Didn't receive confirmation instructions?"
26
+ signin_unlock_instructions_link: "Didn't receive unlock instructions?"
27
+ signin_title: Sign In
28
+ signin_rememberme: Remember Me
29
+ signin_button: Sign In
30
+ confirmation_email_4: 'Thank you'
31
+ forgot_title: Forgot Your Password
32
+ forgot_email_password_button: Email password instructions
33
+ resend_title: Resend confirmation instructions
34
+ change_password_title: Change your password
35
+ new_password: New password
36
+ new_password_confirm: Confirm new password
37
+ change_password: Change my password
38
+ create_account: Create new account
39
+
40
+ #--- CMS/Site Messages
41
+
42
+ #--- Forum System
43
+ forum_list_title: Forum
44
+ forum_list_subtitle: in English
45
+
46
+ #--- Profile
47
+ profile_title: Account and Profile
48
+ profile_subtitle: Settings
49
+
50
+ #--- Newletter Signup
51
+ newsletter_choose: Please Choose
52
+
53
+ #--- Forum
54
+ forum:
55
+ no_public: "Here you have the opportunity to participate in online discussions via closed and open forums"
56
+
57
+ comment_extra_instruction: ""
@@ -0,0 +1,58 @@
1
+ fi:
2
+ _mbus:
3
+ language: Kieli
4
+ language_english: englanti
5
+ language_german: saksa
6
+ language_czech: tsekki
7
+ language_japanese: japani
8
+ language_finnish: suomi
9
+
10
+ #--- Login System
11
+ signup_title: Sign Up for a New Account
12
+ signup_first_name: Etunimi
13
+ signup_last_name: Sukunimi
14
+ signup_country: Maa
15
+ signup_email: Sähköposti
16
+ signup_password: Salasana
17
+ signup_password_confirm: Salasanan vahvistaminen
18
+ signup_newsletter: Uutiskirje
19
+ signup_newsletter_desc: "Yes, I would like to receive updates and news"
20
+ signup_register_button: Rekisteröi
21
+ signup_public_name: Julkinen nimi
22
+ signup_public_name_hint: 'Nimi, joka tulee näkyviin foorumeilla ja kommenteissa.'
23
+ signin_link: Kirjaudu sisään
24
+ signin_register_link: 'Sinulla ei ole käyttäjätiliä? Luo uusi tili'
25
+ signin_forgot_password_link: Unohdit salasanasi?
26
+ signin_confirmation_instructions_link: "Vahvistusviesti ei saapunut?"
27
+ signin_unlock_instructions_link: "Avaamisviesti ei saapunut?"
28
+ signin_title: Kirjaudu sisään
29
+ signin_rememberme: Muista minut
30
+ signin_button: Kirjaudu sisään
31
+ confirmation_email_4: 'Thank you'
32
+ forgot_title: Salasanasi on unohtunut
33
+ forgot_email_password_button: Salasanaohjeet sähköpostiviestinä
34
+ resend_title: Lähetä uudelleen vahvistusohjeet
35
+ change_password_title: Muuta salasana
36
+ new_password: Uusi salasana
37
+ new_password_confirm: vahvista uusi salasana
38
+ change_password: Muuta salasana
39
+ create_account: Luo uusi tili
40
+
41
+ #--- CMS/Site Messages
42
+
43
+ #--- Forum System
44
+ forum_list_title: Foorumi
45
+ forum_list_subtitle: suomeksi
46
+
47
+ #--- Profile
48
+ profile_title: Tili ja profiili
49
+ profile_subtitle: Asetukset
50
+
51
+ #--- Newletter Kirjaudu sisään
52
+ newsletter_choose: Valitse
53
+
54
+ #--- Forum
55
+ forum:
56
+ no_public: "Here you have the opportunity to participate in online discussions via closed and open forums"
57
+
58
+ comment_extra_instruction: ""
@@ -0,0 +1,57 @@
1
+ ja:
2
+ _mbus:
3
+ language: 言語
4
+ language_english: 英語
5
+ language_german: ドイツ語
6
+ language_czech: チェコ語
7
+ language_japanese: 日本語
8
+
9
+ #--- Login System
10
+ signup_title: アカウント登録
11
+ signup_first_name: 名
12
+ signup_last_name: 姓
13
+ signup_country: 国
14
+ signup_email: Eメールアドレス
15
+ signup_password: パスワード
16
+ signup_password_confirm: パスワード(確認)
17
+ signup_newsletter: ニュースレター
18
+ signup_newsletter_desc: "Yes, I would like to receive updates and news"
19
+ signup_register_button: 登録
20
+ signup_public_name: ニックネーム
21
+ signup_public_name_hint: ニックネームはフォーラムとコメント欄において表示されます。
22
+ signin_link: サインイン
23
+ signin_register_link: 'ユーザーアカウントをお持ちではないですか?新しいアカウントを作成して下さい'
24
+ signin_forgot_password_link: パスワードをお忘れですか?
25
+ signin_confirmation_instructions_link: "認証に関する指示を受信しませんでしたか?"
26
+ signin_unlock_instructions_link: "解除に関する指示を受信しませんでしたか?"
27
+ signin_title: サインイン
28
+ signin_rememberme: 自動サインインを有効にする
29
+ signin_button: サインイン
30
+ confirmation_email_4: 'Thank you'
31
+ forgot_title: パスワードをお忘れの場合
32
+ forgot_email_password_button: パスワードに関する指示を送信する
33
+ resend_title: 認証に関する指示を再送信する
34
+ change_password_title: パスワードを変更する
35
+ new_password: 新しいパスワード
36
+ new_password_confirm: 新しいパスワード(確認)
37
+ change_password: パスワードを変更する
38
+ create_account: 新しいアカウントを作成する
39
+
40
+ #--- CMS/Site Messages
41
+
42
+ #--- Forum System
43
+ forum_list_title: フォーラム
44
+ forum_list_subtitle: in 日本語
45
+
46
+ #--- Profile
47
+ profile_title: アカウントとプロフィール
48
+ profile_subtitle: 設定
49
+
50
+ #--- Newletter Signup
51
+ newsletter_choose: 選択して下さい
52
+
53
+ #--- Forum
54
+ forum:
55
+ no_public: "Here you have the opportunity to participate in online discussions via closed and open forums"
56
+
57
+ comment_extra_instruction: ""
@@ -0,0 +1,91 @@
1
+ <% if false %>
2
+ <!-- Blog Search Well -->
3
+ <div class="well">
4
+ <h4>Blog Search</h4>
5
+ <div class="input-group">
6
+ <input type="text" class="form-control">
7
+ <span class="input-group-btn">
8
+ <button class="btn btn-default" type="button"><i class="fa fa-search"></i></button>
9
+ </span>
10
+ </div>
11
+ <!-- /.input-group -->
12
+ </div>
13
+ <% end %>
14
+
15
+ <% if false %>
16
+ <!-- Blog Categories Well -->
17
+ <div class="well">
18
+ <h4>Blog Categories</h4>
19
+ <div class="row">
20
+ <div class="col-lg-6">
21
+ <ul class="list-unstyled">
22
+ <li><a href="#">Category Name</a></li>
23
+ <li><a href="#">Category Name</a></li>
24
+ <li><a href="#">Category Name</a></li>
25
+ <li><a href="#">Category Name</a></li>
26
+ </ul>
27
+ </div>
28
+ <!-- /.col-lg-6 -->
29
+ <div class="col-lg-6">
30
+ <ul class="list-unstyled">
31
+ <li><a href="#">Category Name</a></li>
32
+ <li><a href="#">Category Name</a></li>
33
+ <li><a href="#">Category Name</a></li>
34
+ <li><a href="#">Category Name</a></li>
35
+ </ul>
36
+ </div>
37
+ <!-- /.col-lg-6 -->
38
+ </div>
39
+ <!-- /.row -->
40
+ </div>
41
+ <% end %>
42
+
43
+ <!-- Side Widget Well -->
44
+ <div class="well">
45
+ <h4>Side Widget Well</h4>
46
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore, perspiciatis adipisci accusamus laudantium odit aliquam repellat tempore quos aspernatur vero.</p>
47
+ </div>
48
+
49
+
50
+ <% if @blog %>
51
+ <div class="well">
52
+ <h4><%= I18n.t('cms.blog_follow_section.title') %></h4>
53
+ <% if @blog.is_private? %>
54
+ <div style="font-size: 12px;"><%= I18n.t('cms.blog_follow_section.description_private') %></div>
55
+ <% else %>
56
+ <div style="font-size: 12px;"><%= I18n.t('cms.blog_follow_section.description') %></div>
57
+ <% if user_signed_in? %>
58
+ <% following = @blog.followed_by?(current_user.following) %>
59
+ <% button_title = following ? I18n.t('fms.follow_stop') : I18n.t('fms.follow') %>
60
+ <% follow_class = following ? 'btn btn-default btn-small follow_active' : 'btn btn-default btn-small' %>
61
+ <%= button_to button_title, dm_cms.cms_blog_toggle_follow_path(@blog.id), remote: true, method: :patch, id: "follow_button", class: follow_class %>
62
+ <% else %>
63
+ <%= link_to I18n.t('core.login'), main_app.new_user_session_path, class: 'btn btn-default btn-small' %>
64
+ <% end %>
65
+ <% end %>
66
+ </div>
67
+ <% end %>
68
+
69
+ <div class="well">
70
+ <h4><%= I18n.t "cms.recent_posts" %></h4>
71
+ <ul>
72
+ <% @recent_posts.each do |post| %>
73
+ <li><%= link_to post.title, post_show_url(post.cms_blog.slug, post.slug) %></li>
74
+ <% end %>
75
+ </ul>
76
+ </div>
77
+
78
+ <% if @blogs.count > 1 %>
79
+ <div class="well">
80
+ <h4><%= I18n.t "cms.available_blogs" %></h4>
81
+ <ul>
82
+ <% @blogs.each do |blog| %>
83
+ <li><%= link_to blog.title, blog_show_url(blog) %></li>
84
+ <% end %>
85
+ </ul>
86
+ </div>
87
+ <% end %>
88
+
89
+ <%= link_to I18n.t("cms.all_recent_posts"), blog_root_url, class: 'btn btn-default btn-small' %>
90
+
91
+ <%= yield :sidebar %>