tenon 1.1.8 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (579) hide show
  1. checksums.yaml +4 -4
  2. data/README.rdoc +768 -69
  3. data/Rakefile +7 -13
  4. data/app/assets/javascripts/tenon/application.js +4 -0
  5. data/app/controllers/tenon/assets_controller.rb +22 -23
  6. data/app/controllers/tenon/base_controller.rb +22 -13
  7. data/app/controllers/tenon/index_controller.rb +0 -4
  8. data/app/controllers/tenon/item_versions_controller.rb +20 -8
  9. data/app/controllers/tenon/resources_controller.rb +100 -30
  10. data/app/controllers/tenon/simple_resources_controller.rb +7 -7
  11. data/app/controllers/tenon/styleguides_controller.rb +10 -0
  12. data/app/decorators/tenon/application_decorator.rb +4 -8
  13. data/app/decorators/tenon/asset_decorator.rb +0 -25
  14. data/app/filterers/tenon/generic_filterer.rb +24 -0
  15. data/app/form_builders/tenon/form_builder.rb +189 -19
  16. data/app/helpers/tenon/active_link_to_helper.rb +9 -0
  17. data/app/helpers/tenon/application_helper.rb +4 -23
  18. data/app/helpers/tenon/asset_helper.rb +2 -2
  19. data/app/helpers/tenon/back_to_index_path_helper.rb +13 -0
  20. data/app/helpers/tenon/breadcrumbs_helper.rb +33 -0
  21. data/app/helpers/tenon/flash_helper.rb +14 -0
  22. data/app/helpers/tenon/icon_helper.rb +7 -0
  23. data/app/helpers/tenon/input_block_helper.rb +25 -0
  24. data/app/helpers/tenon/item_version_helper.rb +22 -9
  25. data/app/helpers/tenon/nav_helper.rb +21 -17
  26. data/app/helpers/tenon/piece_helper.rb +2 -7
  27. data/app/helpers/tenon/platform_hints_helper.rb +3 -5
  28. data/app/helpers/tenon/styleguide_helper.rb +15 -0
  29. data/app/helpers/tenon/tenon_content_helper.rb +11 -6
  30. data/app/helpers/tenon/tenon_helper.rb +19 -9
  31. data/app/models/tenon/application_record.rb +5 -0
  32. data/app/models/tenon/asset.rb +2 -2
  33. data/app/models/tenon/item_asset.rb +1 -1
  34. data/app/models/tenon/item_version.rb +1 -1
  35. data/app/models/tenon/styleguide.rb +11 -0
  36. data/app/models/tenon/tenon_content/piece.rb +13 -13
  37. data/app/models/tenon/tenon_content/row.rb +1 -1
  38. data/app/models/tenon/tenon_content/row_types/four_column_image.rb +4 -4
  39. data/app/models/tenon/tenon_content/row_types/four_column_image_and_text.rb +8 -8
  40. data/app/models/tenon/tenon_content/row_types/four_column_text.rb +4 -4
  41. data/app/models/tenon/tenon_content/row_types/full_width_embedded_content.rb +1 -1
  42. data/app/models/tenon/tenon_content/row_types/full_width_image.rb +1 -1
  43. data/app/models/tenon/tenon_content/row_types/full_width_text.rb +1 -1
  44. data/app/models/tenon/tenon_content/row_types/left_image_right_text.rb +2 -2
  45. data/app/models/tenon/tenon_content/row_types/left_text_right_image.rb +2 -2
  46. data/app/models/tenon/tenon_content/row_types/left_wrapped_image_with_text.rb +2 -2
  47. data/app/models/tenon/tenon_content/row_types/right_wrapped_image_with_text.rb +2 -2
  48. data/app/models/tenon/tenon_content/row_types/six_column_image.rb +6 -6
  49. data/app/models/tenon/tenon_content/row_types/six_column_image_and_text.rb +12 -12
  50. data/app/models/tenon/tenon_content/row_types/three_column_image.rb +3 -3
  51. data/app/models/tenon/tenon_content/row_types/three_column_image_and_text.rb +6 -6
  52. data/app/models/tenon/tenon_content/row_types/three_column_text.rb +3 -3
  53. data/app/models/tenon/tenon_content/row_types/two_column_image.rb +2 -2
  54. data/app/models/tenon/tenon_content/row_types/two_column_image_and_text.rb +4 -4
  55. data/app/models/tenon/tenon_content/row_types/two_column_text.rb +2 -2
  56. data/app/models/tenon/tenon_content/row_types/two_column_with_background_image.rb +3 -3
  57. data/app/models/tenon/tenon_content/row_types.rb +17 -17
  58. data/app/policies/my_settings_policy.rb +2 -0
  59. data/app/policies/tenon/application_policy.rb +63 -0
  60. data/app/policies/tenon/asset_policy.rb +4 -0
  61. data/app/policies/tenon/item_version_policy.rb +4 -0
  62. data/app/serializers/item_version_serializer.rb +23 -0
  63. data/app/serializers/tenon/application_serializer.rb +37 -0
  64. data/app/serializers/tenon/asset_serializer.rb +5 -0
  65. data/app/serializers/tenon/paginating_serializer.rb +18 -0
  66. data/app/views/layouts/tenon/application.html.haml +28 -18
  67. data/app/views/tenon/assets/_form.html.haml +29 -12
  68. data/app/views/tenon/assets/crop.html.haml +13 -13
  69. data/app/views/tenon/assets/edit.html.haml +1 -12
  70. data/app/views/tenon/assets/index.html.haml +5 -19
  71. data/app/views/tenon/assets/new.html.haml +1 -0
  72. data/app/views/tenon/fields/_asset.html.haml +26 -27
  73. data/app/views/tenon/fields/_base.html.haml +7 -0
  74. data/app/views/tenon/fields/_base_inline.html.haml +4 -0
  75. data/app/views/tenon/fields/_check_box.html.haml +9 -0
  76. data/app/views/tenon/fields/_collection_select.html.haml +4 -0
  77. data/app/views/tenon/fields/_color_field.html.haml +3 -0
  78. data/app/views/tenon/fields/_date_picker.html.haml +2 -0
  79. data/app/views/tenon/fields/_date_time_picker.html.haml +6 -0
  80. data/app/views/tenon/fields/_email_field.html.haml +2 -0
  81. data/app/views/tenon/fields/_inline_check_box.html.haml +5 -0
  82. data/app/views/tenon/fields/_inline_radio_button.html.haml +5 -0
  83. data/app/views/tenon/fields/_number_field.html.haml +2 -0
  84. data/app/views/tenon/fields/_password_field.html.haml +2 -0
  85. data/app/views/tenon/fields/_phone_field.html.haml +2 -0
  86. data/app/views/tenon/fields/_radio_button.html.haml +9 -0
  87. data/app/views/tenon/fields/_rich_text.html.haml +3 -6
  88. data/app/views/tenon/fields/_select.html.haml +3 -0
  89. data/app/views/tenon/fields/_text_area.html.haml +2 -0
  90. data/app/views/tenon/fields/_text_field.html.haml +2 -0
  91. data/app/views/tenon/fields/_title_text_field.html.haml +2 -0
  92. data/app/views/tenon/fields/_url_field.html.haml +2 -0
  93. data/app/views/tenon/index/index.html.haml +8 -29
  94. data/app/views/tenon/item_assets/new.html.haml +20 -22
  95. data/app/views/tenon/item_versions/_item_version.json.jbuilder +4 -4
  96. data/app/views/tenon/item_versions/index.html.haml +14 -6
  97. data/app/views/tenon/item_versions/new.html.haml +8 -10
  98. data/app/views/tenon/settings/_contact.html.haml +14 -19
  99. data/app/views/tenon/settings/_general.html.haml +15 -11
  100. data/app/views/tenon/settings/_seo.html.haml +10 -9
  101. data/app/views/tenon/settings/show.html.haml +12 -31
  102. data/app/views/tenon/shared/_account_dropdown.html.haml +6 -0
  103. data/app/views/tenon/shared/_app_info.html.haml +5 -0
  104. data/app/views/tenon/shared/_breadcrumbs.html.haml +1 -0
  105. data/app/views/tenon/shared/_burger.html.haml +5 -0
  106. data/app/views/tenon/shared/_default_form_toolbar.html.haml +26 -0
  107. data/app/views/tenon/shared/_draft_controls.html.haml +18 -0
  108. data/app/views/tenon/shared/_i18n_language_nav.html.haml +2 -2
  109. data/app/views/tenon/shared/_main_nav.html.haml +3 -14
  110. data/app/views/tenon/shared/_platform_hints.html.haml +15 -15
  111. data/app/views/tenon/shared/_seo_fields.html.haml +8 -6
  112. data/app/views/tenon/shared/_site_title.html.haml +6 -0
  113. data/app/views/tenon/shared/_util_nav.html.haml +4 -27
  114. data/app/views/tenon/shared/_version_warning.html.haml +11 -11
  115. data/app/views/tenon/styleguides/_buttons.html.haml +118 -0
  116. data/app/views/tenon/styleguides/_colors.html.haml +59 -0
  117. data/app/views/tenon/styleguides/_forms.html.haml +4 -0
  118. data/app/views/tenon/styleguides/_icons.html.haml +21 -0
  119. data/app/views/tenon/styleguides/_typography.html.haml +27 -0
  120. data/app/views/tenon/styleguides/buttons/_colors.html.haml +43 -0
  121. data/app/views/tenon/styleguides/buttons/_styles.html.haml +59 -0
  122. data/app/views/tenon/styleguides/colors/_helpers.html.haml +48 -0
  123. data/app/views/tenon/styleguides/colors/_variables.html.haml +31 -0
  124. data/app/views/tenon/styleguides/forms/_default.html.haml +92 -0
  125. data/app/views/tenon/styleguides/forms/_html5.html.haml +31 -0
  126. data/app/views/tenon/styleguides/forms/_tenon_content.html.haml +15 -0
  127. data/app/views/tenon/styleguides/index.html.haml +52 -0
  128. data/app/views/tenon/styleguides/typography/_blockquote.html.haml +7 -0
  129. data/app/views/tenon/styleguides/typography/_inline.html.haml +8 -0
  130. data/app/views/tenon/styleguides/typography/_lists.html.haml +40 -0
  131. data/app/views/tenon/styleguides/typography/_paragraphs.html.haml +17 -0
  132. data/app/views/tenon/styleguides/typography/_small.html.haml +18 -0
  133. data/app/views/tenon/styleguides/typography/_styles.html.haml +14 -0
  134. data/app/views/tenon/styleguides/typography/_variables.html.haml +43 -0
  135. data/app/views/tenon/tenon_content/_display.html.haml +2 -2
  136. data/app/views/tenon/tenon_content/_embed_modal.html.haml +3 -3
  137. data/app/views/tenon/tenon_content/_fields.html.haml +21 -35
  138. data/app/views/tenon/tenon_content/_row.html.haml +14 -13
  139. data/app/views/tenon/tenon_content/{_builder.html.haml → _tenon_content.html.haml} +2 -2
  140. data/app/views/tenon/tenon_content/piece_types/form/_background_image.html.haml +6 -6
  141. data/app/views/tenon/tenon_content/piece_types/form/_embedded_content.html.haml +2 -1
  142. data/app/views/tenon/tenon_content/piece_types/form/_image.html.haml +37 -29
  143. data/app/views/tenon/tenon_content/row_types/display/_four_column_image.html.haml +4 -4
  144. data/app/views/tenon/tenon_content/row_types/display/_four_column_image_and_text.html.haml +3 -3
  145. data/app/views/tenon/tenon_content/row_types/display/_four_column_text.html.haml +4 -4
  146. data/app/views/tenon/tenon_content/row_types/display/_full_width_embedded_content.html.haml +3 -3
  147. data/app/views/tenon/tenon_content/row_types/display/_full_width_image.html.haml +3 -3
  148. data/app/views/tenon/tenon_content/row_types/display/_full_width_text.html.haml +3 -3
  149. data/app/views/tenon/tenon_content/row_types/display/_left_image_right_text.html.haml +8 -8
  150. data/app/views/tenon/tenon_content/row_types/display/_left_text_right_image.html.haml +7 -7
  151. data/app/views/tenon/tenon_content/row_types/display/_left_wrapped_image_with_text.html.haml +6 -6
  152. data/app/views/tenon/tenon_content/row_types/display/_right_wrapped_image_with_text.html.haml +7 -7
  153. data/app/views/tenon/tenon_content/row_types/display/_six_column_image.html.haml +4 -4
  154. data/app/views/tenon/tenon_content/row_types/display/_six_column_image_and_text.html.haml +5 -5
  155. data/app/views/tenon/tenon_content/row_types/display/_three_column_image.html.haml +4 -4
  156. data/app/views/tenon/tenon_content/row_types/display/_three_column_image_and_text.html.haml +4 -4
  157. data/app/views/tenon/tenon_content/row_types/display/_three_column_text.html.haml +4 -4
  158. data/app/views/tenon/tenon_content/row_types/display/_two_column_image.html.haml +3 -3
  159. data/app/views/tenon/tenon_content/row_types/display/_two_column_image_and_text.html.haml +4 -4
  160. data/app/views/tenon/tenon_content/row_types/display/_two_column_text.html.haml +3 -3
  161. data/app/views/tenon/tenon_content/row_types/display/_two_column_with_background_image.html.haml +3 -3
  162. data/app/views/tenon/tenon_content/row_types/form/_four_column_image.html.haml +2 -2
  163. data/app/views/tenon/tenon_content/row_types/form/_four_column_image_and_text.html.haml +3 -3
  164. data/app/views/tenon/tenon_content/row_types/form/_four_column_text.html.haml +3 -3
  165. data/app/views/tenon/tenon_content/row_types/form/_full_width_embedded_content.html.haml +3 -3
  166. data/app/views/tenon/tenon_content/row_types/form/_full_width_image.html.haml +3 -3
  167. data/app/views/tenon/tenon_content/row_types/form/_full_width_text.html.haml +3 -3
  168. data/app/views/tenon/tenon_content/row_types/form/_left_image_right_text.html.haml +9 -8
  169. data/app/views/tenon/tenon_content/row_types/form/_left_text_right_image.html.haml +6 -6
  170. data/app/views/tenon/tenon_content/row_types/form/_left_wrapped_image_with_text.html.haml +7 -7
  171. data/app/views/tenon/tenon_content/row_types/form/_right_wrapped_image_with_text.html.haml +7 -7
  172. data/app/views/tenon/tenon_content/row_types/form/_six_column_image.html.haml +2 -2
  173. data/app/views/tenon/tenon_content/row_types/form/_six_column_image_and_text.html.haml +3 -3
  174. data/app/views/tenon/tenon_content/row_types/form/_three_column_image.html.haml +2 -2
  175. data/app/views/tenon/tenon_content/row_types/form/_three_column_image_and_text.html.haml +3 -3
  176. data/app/views/tenon/tenon_content/row_types/form/_three_column_text.html.haml +3 -3
  177. data/app/views/tenon/tenon_content/row_types/form/_two_column_image.html.haml +2 -2
  178. data/app/views/tenon/tenon_content/row_types/form/_two_column_image_and_text.html.haml +3 -3
  179. data/app/views/tenon/tenon_content/row_types/form/_two_column_text.html.haml +3 -3
  180. data/app/views/tenon/tenon_content/row_types/form/_two_column_with_background_image.html.haml +2 -2
  181. data/config/initializers/class_extensions/hash.rb +1 -1
  182. data/config/initializers/client_side_validations.rb +27 -0
  183. data/config/initializers/tenon.rb +0 -14
  184. data/config/routes.rb +10 -46
  185. data/db/migrate/20151117171000_drop_default_tenon_resources.rb +15 -0
  186. data/db/migrate/20160119185645_remove_tenon_users.rb +7 -0
  187. data/db/migrate/20160126123154_remove_tenon_callouts_subscribers.rb +8 -0
  188. data/db/migrate/20160126194219_convert_piece_size_to_int.rb +6 -0
  189. data/lib/ckeditor/plugins/pastefromword/filter/default.js +1 -1
  190. data/lib/generators/tenon/scaffold/scaffold_generator.rb +52 -27
  191. data/lib/generators/tenon/scaffold/templates/controller.rb +7 -4
  192. data/lib/generators/tenon/scaffold/templates/policy.rb +2 -0
  193. data/lib/generators/tenon/scaffold/templates/serializer.rb +2 -0
  194. data/lib/generators/tenon/scaffold/templates/view__form.html.haml +49 -54
  195. data/lib/generators/tenon/scaffold/templates/view_edit.html.haml +1 -8
  196. data/lib/generators/tenon/scaffold/templates/view_index.html.haml +8 -24
  197. data/lib/generators/tenon/scaffold/templates/view_new.html.haml +1 -8
  198. data/lib/tasks/tenon_tasks.rake +2 -2
  199. data/lib/templates/active_record/model/model.rb +12 -13
  200. data/lib/templates/migration/templates/create_table_migration.rb +1 -1
  201. data/lib/tenon/can_be_foreign.rb +1 -1
  202. data/lib/tenon/engine.rb +26 -32
  203. data/lib/tenon/filterers/base_filterer.rb +64 -0
  204. data/lib/tenon/has_history/attr_serializer.rb +6 -6
  205. data/lib/tenon/proxy_attachment.rb +2 -2
  206. data/lib/tenon/version.rb +1 -1
  207. data/lib/tenon.rb +1 -3
  208. data/vendor/assets/javascripts/bootstrap.modal.js +1 -1
  209. data/vendor/assets/javascripts/date_picker/picker.date.js +1429 -0
  210. data/vendor/assets/javascripts/date_picker/picker.js +1122 -0
  211. data/vendor/assets/javascripts/number-to-words.es6 +35 -0
  212. data/vendor/assets/stylesheets/bootstrap.scss +1 -1
  213. metadata +206 -972
  214. data/app/assets/images/tenon/icons/delete.png +0 -0
  215. data/app/assets/images/tenon/icons/edit.png +0 -0
  216. data/app/assets/images/tenon/icons/thumbdown.png +0 -0
  217. data/app/assets/images/tenon/icons/thumbup.png +0 -0
  218. data/app/assets/images/tenon/select2-spinner.gif +0 -0
  219. data/app/assets/images/tenon/select2.png +0 -0
  220. data/app/assets/images/tenon/select2x2.png +0 -0
  221. data/app/assets/javascripts/tenon/controllers/assets.js.coffee +0 -3
  222. data/app/assets/javascripts/tenon/controllers/index.js.coffee +0 -6
  223. data/app/assets/javascripts/tenon/controllers/tenon.js.coffee +0 -1
  224. data/app/assets/javascripts/tenon/features/asset_attachment.js.coffee +0 -37
  225. data/app/assets/javascripts/tenon/features/asset_cropping.js.coffee +0 -49
  226. data/app/assets/javascripts/tenon/features/asset_detachment.js.coffee +0 -11
  227. data/app/assets/javascripts/tenon/features/asset_list_post_crop_handler.js.coffee +0 -15
  228. data/app/assets/javascripts/tenon/features/asset_uploader.js.coffee +0 -88
  229. data/app/assets/javascripts/tenon/features/box_toggles.js.coffee +0 -17
  230. data/app/assets/javascripts/tenon/features/cocoon_hooks.js.coffee +0 -12
  231. data/app/assets/javascripts/tenon/features/date_time_picker.js.coffee +0 -25
  232. data/app/assets/javascripts/tenon/features/editor.js.coffee +0 -24
  233. data/app/assets/javascripts/tenon/features/file_select_widget.js.erb +0 -39
  234. data/app/assets/javascripts/tenon/features/flash.js.coffee +0 -13
  235. data/app/assets/javascripts/tenon/features/focus_first_field.js.coffee +0 -8
  236. data/app/assets/javascripts/tenon/features/hamburger_navigation.js.coffee +0 -26
  237. data/app/assets/javascripts/tenon/features/header_menu.js.coffee +0 -20
  238. data/app/assets/javascripts/tenon/features/i18n_fields.js.coffee +0 -23
  239. data/app/assets/javascripts/tenon/features/infinite_loading.js.coffee +0 -12
  240. data/app/assets/javascripts/tenon/features/item_version_autosave.js.coffee +0 -35
  241. data/app/assets/javascripts/tenon/features/item_version_index_handler.js.coffee +0 -3
  242. data/app/assets/javascripts/tenon/features/main_menu.js.coffee +0 -11
  243. data/app/assets/javascripts/tenon/features/modal_forms.js.coffee +0 -44
  244. data/app/assets/javascripts/tenon/features/modal_windows.js.coffee +0 -104
  245. data/app/assets/javascripts/tenon/features/multiple_asset_attachment.js.coffee +0 -8
  246. data/app/assets/javascripts/tenon/features/nested_fields.js +0 -95
  247. data/app/assets/javascripts/tenon/features/nested_lists.js +0 -10
  248. data/app/assets/javascripts/tenon/features/nested_set_writer.js.coffee +0 -65
  249. data/app/assets/javascripts/tenon/features/new_item_version_handler.js.coffee +0 -32
  250. data/app/assets/javascripts/tenon/features/pagination.js.coffee +0 -21
  251. data/app/assets/javascripts/tenon/features/protect_changes.js.coffee +0 -25
  252. data/app/assets/javascripts/tenon/features/quick_search.js.coffee +0 -41
  253. data/app/assets/javascripts/tenon/features/record_approval.js.coffee +0 -33
  254. data/app/assets/javascripts/tenon/features/record_boolean_toggle.js.coffee +0 -37
  255. data/app/assets/javascripts/tenon/features/record_deletion.js.coffee +0 -24
  256. data/app/assets/javascripts/tenon/features/record_list.js.coffee +0 -86
  257. data/app/assets/javascripts/tenon/features/record_list_updater.js.coffee +0 -56
  258. data/app/assets/javascripts/tenon/features/s3_direct_upload.js.coffee +0 -43
  259. data/app/assets/javascripts/tenon/features/sidebar_active_links.js.coffee +0 -20
  260. data/app/assets/javascripts/tenon/features/sortable_nested_fields.js.coffee +0 -17
  261. data/app/assets/javascripts/tenon/features/tenon_content/aesthetics.js.coffee +0 -31
  262. data/app/assets/javascripts/tenon/features/tenon_content/asset_attachment.js.coffee +0 -15
  263. data/app/assets/javascripts/tenon/features/tenon_content/asset_link.js.coffee +0 -11
  264. data/app/assets/javascripts/tenon/features/tenon_content/base.js.coffee +0 -16
  265. data/app/assets/javascripts/tenon/features/tenon_content/bottombar_toggler.js.coffee +0 -15
  266. data/app/assets/javascripts/tenon/features/tenon_content/caption_toggler.js.coffee +0 -11
  267. data/app/assets/javascripts/tenon/features/tenon_content/column_sizing.js.coffee +0 -53
  268. data/app/assets/javascripts/tenon/features/tenon_content/column_swap.js.coffee +0 -44
  269. data/app/assets/javascripts/tenon/features/tenon_content/editor.js.coffee +0 -34
  270. data/app/assets/javascripts/tenon/features/tenon_content/embedded_content_modal_handler.js.coffee +0 -12
  271. data/app/assets/javascripts/tenon/features/tenon_content/image_asset_link.js.coffee +0 -5
  272. data/app/assets/javascripts/tenon/features/tenon_content/image_controls.js.coffee +0 -63
  273. data/app/assets/javascripts/tenon/features/tenon_content/image_links.js.coffee +0 -54
  274. data/app/assets/javascripts/tenon/features/tenon_content/library.js.coffee +0 -39
  275. data/app/assets/javascripts/tenon/features/tenon_content/library_filter.js.coffee +0 -17
  276. data/app/assets/javascripts/tenon/features/tenon_content/pop_out.js.coffee +0 -46
  277. data/app/assets/javascripts/tenon/features/tenon_content/post_crop_handler.js.coffee +0 -22
  278. data/app/assets/javascripts/tenon/features/tenon_content/sidebar_navigation.js.coffee +0 -26
  279. data/app/assets/javascripts/tenon/features/tenon_content/sortable.js.coffee +0 -18
  280. data/app/assets/javascripts/tenon/features/tenon_content/stretch_to_fill.js.coffee +0 -50
  281. data/app/assets/javascripts/tenon/features/tenon_content/wrapped_sizing.js.coffee +0 -48
  282. data/app/assets/javascripts/tenon/features/tenon_content.js.coffee +0 -1
  283. data/app/assets/javascripts/tenon/features/video_feeds.js.coffee +0 -4
  284. data/app/assets/javascripts/tenon/manifest.json +0 -44
  285. data/app/assets/javascripts/tenon/medium-on-tenon.js +0 -1465
  286. data/app/assets/javascripts/tenon/templates/assets/asset_field.jst.eco +0 -17
  287. data/app/assets/javascripts/tenon/templates/assets/asset_progress.jst.eco +0 -8
  288. data/app/assets/javascripts/tenon/templates/assets/asset_row.jst.eco +0 -21
  289. data/app/assets/javascripts/tenon/templates/assets/asset_select.jst.eco +0 -1
  290. data/app/assets/javascripts/tenon/templates/comments/comment_row.jst.eco +0 -23
  291. data/app/assets/javascripts/tenon/templates/contacts/contact_row.jst.eco +0 -56
  292. data/app/assets/javascripts/tenon/templates/errors.jst.eco +0 -13
  293. data/app/assets/javascripts/tenon/templates/events/event_row.jst.eco +0 -22
  294. data/app/assets/javascripts/tenon/templates/galleries/gallery_row.jst.eco +0 -12
  295. data/app/assets/javascripts/tenon/templates/item_versions/item_version_row.jst.eco +0 -22
  296. data/app/assets/javascripts/tenon/templates/modal.jst.eco +0 -14
  297. data/app/assets/javascripts/tenon/templates/pages/page_row.jst.eco +0 -21
  298. data/app/assets/javascripts/tenon/templates/post_categories/post_category_row.jst.eco +0 -12
  299. data/app/assets/javascripts/tenon/templates/posts/post_row.jst.eco +0 -30
  300. data/app/assets/javascripts/tenon/templates/redirects/redirect_row.jst.eco +0 -18
  301. data/app/assets/javascripts/tenon/templates/tenon_callouts/tenon_callout_row.jst.eco +0 -19
  302. data/app/assets/javascripts/tenon/templates/tenon_content/popped_out.jst.eco +0 -6
  303. data/app/assets/javascripts/tenon/templates/users/user_row.jst.eco +0 -21
  304. data/app/assets/javascripts/tenon/tenon.js +0 -68
  305. data/app/assets/javascripts/tenon/tenon_dispatcher.js.coffee +0 -25
  306. data/app/assets/javascripts/tenon/tenon_manifest.js +0 -45
  307. data/app/assets/stylesheets/tenon/colors-custom.scss +0 -25
  308. data/app/assets/stylesheets/tenon/colors-named.scss +0 -22
  309. data/app/assets/stylesheets/tenon/helpers.scss +0 -28
  310. data/app/assets/stylesheets/tenon/layout/assets.scss +0 -49
  311. data/app/assets/stylesheets/tenon/layout/breakpoints.scss +0 -48
  312. data/app/assets/stylesheets/tenon/layout/global.scss +0 -36
  313. data/app/assets/stylesheets/tenon/layout/grid.scss +0 -145
  314. data/app/assets/stylesheets/tenon/layout/main-nav.scss +0 -149
  315. data/app/assets/stylesheets/tenon/layout/margins.scss +0 -3
  316. data/app/assets/stylesheets/tenon/layout/mobile.scss +0 -5
  317. data/app/assets/stylesheets/tenon/layout/sidebar.scss +0 -102
  318. data/app/assets/stylesheets/tenon/layout/util-nav.scss +0 -51
  319. data/app/assets/stylesheets/tenon/mixins.scss +0 -81
  320. data/app/assets/stylesheets/tenon/styleguide.scss +0 -6
  321. data/app/assets/stylesheets/tenon/tenon.scss +0 -71
  322. data/app/assets/stylesheets/tenon/typography.scss +0 -65
  323. data/app/assets/stylesheets/tenon/ui/alerts.scss +0 -65
  324. data/app/assets/stylesheets/tenon/ui/asset-attachment.scss +0 -136
  325. data/app/assets/stylesheets/tenon/ui/asset-cropping.scss +0 -51
  326. data/app/assets/stylesheets/tenon/ui/asset-uploads.scss +0 -26
  327. data/app/assets/stylesheets/tenon/ui/buttons.scss +0 -65
  328. data/app/assets/stylesheets/tenon/ui/callouts.scss +0 -26
  329. data/app/assets/stylesheets/tenon/ui/comments.scss +0 -57
  330. data/app/assets/stylesheets/tenon/ui/forms.scss +0 -204
  331. data/app/assets/stylesheets/tenon/ui/generic-loader.scss +0 -21
  332. data/app/assets/stylesheets/tenon/ui/header-tools.scss +0 -116
  333. data/app/assets/stylesheets/tenon/ui/i18n.scss +0 -18
  334. data/app/assets/stylesheets/tenon/ui/list-style-toggle.scss +0 -39
  335. data/app/assets/stylesheets/tenon/ui/login.scss +0 -97
  336. data/app/assets/stylesheets/tenon/ui/medium-editor.scss +0 -114
  337. data/app/assets/stylesheets/tenon/ui/modals.scss +0 -179
  338. data/app/assets/stylesheets/tenon/ui/pagination.scss +0 -113
  339. data/app/assets/stylesheets/tenon/ui/progress-bars.scss +0 -131
  340. data/app/assets/stylesheets/tenon/ui/quick-search.scss +0 -20
  341. data/app/assets/stylesheets/tenon/ui/record-grids.scss +0 -95
  342. data/app/assets/stylesheets/tenon/ui/record-lists.scss +0 -154
  343. data/app/assets/stylesheets/tenon/ui/section-headers.scss +0 -30
  344. data/app/assets/stylesheets/tenon/ui/select2-custom.scss +0 -70
  345. data/app/assets/stylesheets/tenon/ui/tables.scss +0 -19
  346. data/app/assets/stylesheets/tenon/ui/tabs.scss +0 -7
  347. data/app/assets/stylesheets/tenon/ui/tenon-content-library.scss +0 -80
  348. data/app/assets/stylesheets/tenon/ui/tenon-content-popped-out.scss +0 -92
  349. data/app/assets/stylesheets/tenon/ui/tenon-content.scss +0 -318
  350. data/app/assets/stylesheets/tenon/ui/thinking.scss +0 -3
  351. data/app/assets/stylesheets/tenon/ui/toolbox.scss +0 -31
  352. data/app/assets/stylesheets/tenon/z-indexes.scss +0 -35
  353. data/app/assets/stylesheets/tenon_addons.scss +0 -1
  354. data/app/controllers/tenon/comments_controller.rb +0 -51
  355. data/app/controllers/tenon/contacts_controller.rb +0 -65
  356. data/app/controllers/tenon/events_controller.rb +0 -9
  357. data/app/controllers/tenon/galleries_controller.rb +0 -9
  358. data/app/controllers/tenon/pages_controller.rb +0 -51
  359. data/app/controllers/tenon/post_categories_controller.rb +0 -9
  360. data/app/controllers/tenon/posts_controller.rb +0 -28
  361. data/app/controllers/tenon/redirects_controller.rb +0 -25
  362. data/app/controllers/tenon/tenon_callouts_controller.rb +0 -7
  363. data/app/controllers/tenon/users_controller.rb +0 -64
  364. data/app/decorators/tenon/comment_decorator.rb +0 -22
  365. data/app/decorators/tenon/contact_decorator.rb +0 -13
  366. data/app/decorators/tenon/event_decorator.rb +0 -11
  367. data/app/decorators/tenon/gallery_decorator.rb +0 -4
  368. data/app/decorators/tenon/page_decorator.rb +0 -11
  369. data/app/decorators/tenon/post_category_decorator.rb +0 -4
  370. data/app/decorators/tenon/post_decorator.rb +0 -4
  371. data/app/decorators/tenon/redirect_decorator.rb +0 -2
  372. data/app/decorators/tenon/tenon_callout_decorator.rb +0 -4
  373. data/app/decorators/tenon/user_decorator.rb +0 -4
  374. data/app/mailers/tenon/comment_mailer.rb +0 -16
  375. data/app/mailers/tenon/contact_mailer.rb +0 -15
  376. data/app/models/ability.rb +0 -32
  377. data/app/models/tenon/comment.rb +0 -47
  378. data/app/models/tenon/comment_subscriber.rb +0 -7
  379. data/app/models/tenon/contact.rb +0 -46
  380. data/app/models/tenon/event.rb +0 -45
  381. data/app/models/tenon/gallery.rb +0 -15
  382. data/app/models/tenon/page.rb +0 -105
  383. data/app/models/tenon/photo.rb +0 -10
  384. data/app/models/tenon/post.rb +0 -35
  385. data/app/models/tenon/post_category.rb +0 -7
  386. data/app/models/tenon/redirect.rb +0 -17
  387. data/app/models/tenon/role.rb +0 -8
  388. data/app/models/tenon/role_assignment.rb +0 -6
  389. data/app/models/tenon/s3_direct_upload.rb +0 -75
  390. data/app/models/tenon/tenon_callout.rb +0 -16
  391. data/app/models/tenon/user.rb +0 -60
  392. data/app/views/devise/confirmations/new.html.erb +0 -12
  393. data/app/views/devise/confirmations/new.html.haml +0 -0
  394. data/app/views/devise/mailer/confirmation_instructions.html.haml +0 -7
  395. data/app/views/devise/mailer/reset_password_instructions.html.haml +0 -15
  396. data/app/views/devise/mailer/unlock_instructions.html.haml +0 -9
  397. data/app/views/devise/passwords/edit.html.haml +0 -22
  398. data/app/views/devise/passwords/new.html.haml +0 -17
  399. data/app/views/devise/registrations/edit.html.haml +0 -0
  400. data/app/views/devise/registrations/new.html.haml +0 -22
  401. data/app/views/devise/sessions/new.html.haml +0 -28
  402. data/app/views/devise/shared/_links.erb +0 -19
  403. data/app/views/devise/shared/_links.haml +0 -0
  404. data/app/views/devise/unlocks/new.html.erb +0 -12
  405. data/app/views/devise/unlocks/new.html.haml +0 -0
  406. data/app/views/layouts/tenon/login.html.haml +0 -19
  407. data/app/views/tenon/assets/_asset.json.jbuilder +0 -7
  408. data/app/views/tenon/assets/_sidebar_index.html.haml +0 -18
  409. data/app/views/tenon/assets/create.json.jbuilder +0 -1
  410. data/app/views/tenon/assets/index.json.jbuilder +0 -5
  411. data/app/views/tenon/assets/update.json.jbuilder +0 -1
  412. data/app/views/tenon/comment_mailer/comment_notification.html.haml +0 -7
  413. data/app/views/tenon/comments/_sidebar_index.html.haml +0 -22
  414. data/app/views/tenon/comments/index.html.haml +0 -19
  415. data/app/views/tenon/comments/index.json.jbuilder +0 -22
  416. data/app/views/tenon/contact_mailer/contact_notification.html.haml +0 -15
  417. data/app/views/tenon/contacts/_sidebar_index.html.haml +0 -32
  418. data/app/views/tenon/contacts/index.html.haml +0 -19
  419. data/app/views/tenon/contacts/index.json.jbuilder +0 -15
  420. data/app/views/tenon/events/_form.html.haml +0 -44
  421. data/app/views/tenon/events/edit.html.haml +0 -8
  422. data/app/views/tenon/events/index.html.haml +0 -23
  423. data/app/views/tenon/events/index.json.jbuilder +0 -16
  424. data/app/views/tenon/events/new.html.haml +0 -8
  425. data/app/views/tenon/galleries/_form.html.haml +0 -38
  426. data/app/views/tenon/galleries/_photo_fields.html.haml +0 -3
  427. data/app/views/tenon/galleries/edit.html.haml +0 -8
  428. data/app/views/tenon/galleries/index.html.haml +0 -22
  429. data/app/views/tenon/galleries/index.json.jbuilder +0 -15
  430. data/app/views/tenon/galleries/new.html.haml +0 -8
  431. data/app/views/tenon/pages/_form.html.haml +0 -58
  432. data/app/views/tenon/pages/edit.html.haml +0 -8
  433. data/app/views/tenon/pages/index.html.haml +0 -23
  434. data/app/views/tenon/pages/index.json.jbuilder +0 -22
  435. data/app/views/tenon/pages/new.html.haml +0 -8
  436. data/app/views/tenon/post_categories/_form.html.haml +0 -11
  437. data/app/views/tenon/post_categories/_post_category.json.jbuilder +0 -2
  438. data/app/views/tenon/post_categories/create.json.jbuilder +0 -1
  439. data/app/views/tenon/post_categories/edit.html.haml +0 -1
  440. data/app/views/tenon/post_categories/index.html.haml +0 -30
  441. data/app/views/tenon/post_categories/index.json.jbuilder +0 -5
  442. data/app/views/tenon/post_categories/update.json.jbuilder +0 -1
  443. data/app/views/tenon/posts/_form.html.haml +0 -65
  444. data/app/views/tenon/posts/edit.html.haml +0 -8
  445. data/app/views/tenon/posts/index.html.haml +0 -27
  446. data/app/views/tenon/posts/index.json.jbuilder +0 -20
  447. data/app/views/tenon/posts/new.html.haml +0 -8
  448. data/app/views/tenon/redirects/_form.html.haml +0 -42
  449. data/app/views/tenon/redirects/_redirect.json.jbuilder +0 -3
  450. data/app/views/tenon/redirects/edit.html.haml +0 -8
  451. data/app/views/tenon/redirects/index.html.haml +0 -29
  452. data/app/views/tenon/redirects/index.json.jbuilder +0 -5
  453. data/app/views/tenon/redirects/new.html.haml +0 -8
  454. data/app/views/tenon/shared/_posts_nav.html.haml +0 -8
  455. data/app/views/tenon/shared/menu_items/_assets.html.haml +0 -3
  456. data/app/views/tenon/shared/menu_items/_comments.html.haml +0 -2
  457. data/app/views/tenon/shared/menu_items/_events.html.haml +0 -6
  458. data/app/views/tenon/shared/menu_items/_galleries.html.haml +0 -6
  459. data/app/views/tenon/shared/menu_items/_pages.html.haml +0 -6
  460. data/app/views/tenon/shared/menu_items/_posts.html.haml +0 -7
  461. data/app/views/tenon/shared/menu_items/_settings.html.haml +0 -2
  462. data/app/views/tenon/shared/menu_items/_users.html.haml +0 -2
  463. data/app/views/tenon/shared/section_header/_quick_search.html.haml +0 -3
  464. data/app/views/tenon/shared/section_header/_sidebar_toggle.html.haml +0 -1
  465. data/app/views/tenon/tenon_callouts/_form.html.haml +0 -45
  466. data/app/views/tenon/tenon_callouts/_tenon_callout.json.jbuilder +0 -1
  467. data/app/views/tenon/tenon_callouts/edit.html.haml +0 -8
  468. data/app/views/tenon/tenon_callouts/index.html.haml +0 -24
  469. data/app/views/tenon/tenon_callouts/index.json.jbuilder +0 -5
  470. data/app/views/tenon/tenon_callouts/new.html.haml +0 -8
  471. data/app/views/tenon/users/_form.html.haml +0 -50
  472. data/app/views/tenon/users/edit.html.haml +0 -8
  473. data/app/views/tenon/users/index.html.haml +0 -23
  474. data/app/views/tenon/users/index.json.jbuilder +0 -28
  475. data/app/views/tenon/users/new.html.haml +0 -8
  476. data/config/initializers/devise.rb +0 -258
  477. data/config/locales/devise.en.yml +0 -60
  478. data/config/locales/tenon.en.yml +0 -313
  479. data/db/seeds.rb +0 -47
  480. data/lib/generators/tenon/scaffold/templates/view__item.json.jbuilder +0 -1
  481. data/lib/generators/tenon/scaffold/templates/view_index.json.jbuilder +0 -5
  482. data/lib/generators/tenon/scaffold/templates/view_item_row.jst.eco +0 -13
  483. data/lib/generators/tenon/scaffold_small/scaffold_small_generator.rb +0 -8
  484. data/lib/generators/tenon/scaffold_small/templates/controller.rb +0 -19
  485. data/lib/generators/tenon/scaffold_small/templates/decorator.rb +0 -2
  486. data/lib/generators/tenon/scaffold_small/templates/view__form.html.haml +0 -26
  487. data/lib/generators/tenon/scaffold_small/templates/view__item.json.jbuilder +0 -2
  488. data/lib/generators/tenon/scaffold_small/templates/view_create.json.jbuilder +0 -1
  489. data/lib/generators/tenon/scaffold_small/templates/view_index.html.haml +0 -27
  490. data/lib/generators/tenon/scaffold_small/templates/view_index.json.jbuilder +0 -5
  491. data/lib/generators/tenon/scaffold_small/templates/view_item_row.jst.eco +0 -12
  492. data/lib/generators/tenon/scaffold_small/templates/view_update.json.jbuilder +0 -1
  493. data/lib/tenon/can_have_comments.rb +0 -16
  494. data/lib/tenon/config/events.rb +0 -29
  495. data/lib/tenon/factories/comments.rb +0 -10
  496. data/lib/tenon/factories/contacts.rb +0 -9
  497. data/lib/tenon/factories/events.rb +0 -7
  498. data/lib/tenon/factories/galleries.rb +0 -5
  499. data/lib/tenon/factories/pages.rb +0 -5
  500. data/lib/tenon/factories/posts.rb +0 -10
  501. data/lib/tenon/factories/redirects.rb +0 -9
  502. data/lib/tenon/factories/tenon_callouts.rb +0 -9
  503. data/lib/tenon/factories/users.rb +0 -26
  504. data/lib/tenon/warning_generator.rb +0 -29
  505. data/spec/controllers/tenon/assets_controller_spec.rb +0 -262
  506. data/spec/controllers/tenon/comments_controller_spec.rb +0 -173
  507. data/spec/controllers/tenon/contacts_controller_spec.rb +0 -174
  508. data/spec/controllers/tenon/index_controller_spec.rb +0 -31
  509. data/spec/controllers/tenon/item_assets_controller_spec.rb +0 -29
  510. data/spec/controllers/tenon/pages_controller_spec.rb +0 -67
  511. data/spec/controllers/tenon/posts_controller_spec.rb +0 -31
  512. data/spec/controllers/tenon/resources_controller_spec.rb +0 -352
  513. data/spec/controllers/tenon/settings_controller_spec.rb +0 -65
  514. data/spec/controllers/tenon/simple_resources_controller_spec.rb +0 -42
  515. data/spec/controllers/tenon/users_controller_spec.rb +0 -112
  516. data/spec/decorators/tenon/application_decorator_spec.rb +0 -75
  517. data/spec/decorators/tenon/asset_decorator_spec.rb +0 -101
  518. data/spec/decorators/tenon/comment_decorator_spec.rb +0 -43
  519. data/spec/decorators/tenon/contact_decorator_spec.rb +0 -24
  520. data/spec/decorators/tenon/event_decorator_spec.rb +0 -26
  521. data/spec/decorators/tenon/page_decorator_spec.rb +0 -23
  522. data/spec/decorators/tenon/tenon_content/row_type_decorator_spec.rb +0 -20
  523. data/spec/features/settings_spec.rb +0 -75
  524. data/spec/features/tenon/assets_spec.rb +0 -88
  525. data/spec/features/tenon/comments_spec.rb +0 -51
  526. data/spec/features/tenon/contacts_spec.rb +0 -51
  527. data/spec/features/tenon/events_spec.rb +0 -104
  528. data/spec/features/tenon/galleries_spec.rb +0 -107
  529. data/spec/features/tenon/i18n_spec.rb +0 -106
  530. data/spec/features/tenon/pages_spec.rb +0 -97
  531. data/spec/features/tenon/post_categories_spec.rb +0 -91
  532. data/spec/features/tenon/posts_spec.rb +0 -93
  533. data/spec/features/tenon/tenon_callouts_spec.rb +0 -101
  534. data/spec/features/tenon/users_spec.rb +0 -98
  535. data/spec/fixtures/files/test.png +0 -0
  536. data/spec/lib/tenon/asset_style_generator_spec.rb +0 -84
  537. data/spec/lib/tenon/can_be_foreign_spec.rb +0 -20
  538. data/spec/lib/tenon/can_have_comments_spec.rb +0 -22
  539. data/spec/lib/tenon/has_asset_spec.rb +0 -46
  540. data/spec/lib/tenon/has_history/attr_serializer_spec.rb +0 -63
  541. data/spec/lib/tenon/i18n_lookup_spec.rb +0 -88
  542. data/spec/lib/tenon/proxy_attachment_spec.rb +0 -96
  543. data/spec/lib/tenon/reorderable_spec.rb +0 -25
  544. data/spec/lib/tenon/tenon_content_spec.rb +0 -22
  545. data/spec/lib/tenon/warning_generator_spec.rb +0 -153
  546. data/spec/models/tenon/asset_spec.rb +0 -98
  547. data/spec/models/tenon/comment_spec.rb +0 -81
  548. data/spec/models/tenon/contact_spec.rb +0 -62
  549. data/spec/models/tenon/event_spec.rb +0 -79
  550. data/spec/models/tenon/gallery_spec.rb +0 -12
  551. data/spec/models/tenon/item_asset_spec.rb +0 -19
  552. data/spec/models/tenon/my_settings_spec.rb +0 -27
  553. data/spec/models/tenon/page_spec.rb +0 -60
  554. data/spec/models/tenon/post_spec.rb +0 -48
  555. data/spec/models/tenon/redirect_spec.rb +0 -31
  556. data/spec/models/tenon/tenon_callout_spec.rb +0 -10
  557. data/spec/models/tenon/tenon_content/row_spec.rb +0 -34
  558. data/spec/models/tenon/user_spec.rb +0 -59
  559. data/spec/services/tenon/redirector_spec.rb +0 -30
  560. data/spec/spec_helper.rb +0 -79
  561. data/spec/support/integration_example_group.rb +0 -35
  562. data/spec/support/request_helpers.rb +0 -10
  563. data/vendor/assets/javascripts/backstretch.js +0 -4
  564. data/vendor/assets/javascripts/bootstrap.collapse.js +0 -179
  565. data/vendor/assets/javascripts/bootstrap.datetimepicker.js +0 -954
  566. data/vendor/assets/javascripts/bootstrap.tabs.js +0 -135
  567. data/vendor/assets/javascripts/cufon/Aller_400.font.js +0 -7
  568. data/vendor/assets/javascripts/cufon/Aller_700.font.js +0 -7
  569. data/vendor/assets/javascripts/cufon/cufon.js +0 -7
  570. data/vendor/assets/javascripts/jquery.corner.js +0 -249
  571. data/vendor/assets/javascripts/jquery.hoverIntent.js +0 -115
  572. data/vendor/assets/javascripts/jquery.radioSlider.js +0 -55
  573. data/vendor/assets/javascripts/jscrollpane.js +0 -1435
  574. data/vendor/assets/javascripts/select2.js +0 -3
  575. data/vendor/assets/javascripts/underscore.inflection.js +0 -177
  576. data/vendor/assets/stylesheets/bootstrap.datetimepicker.css +0 -152
  577. data/vendor/assets/stylesheets/bootstrap.tables.scss +0 -201
  578. data/vendor/assets/stylesheets/jscrollpane.scss +0 -20
  579. data/vendor/assets/stylesheets/select2.css +0 -1
@@ -1,313 +0,0 @@
1
- en:
2
- tenon:
3
- common:
4
- save: Save
5
- please_wait: Please wait...
6
- edit: Edit
7
- are_you_sure: Are you sure? There is no undo for this!
8
- delete: Delete
9
- filter: Filter
10
- all: All
11
- approve: Approve
12
- unapprove: Unapprove
13
- unapproved: Unapproved
14
- approved: Approved
15
- publish: Publish
16
- browse: Browse
17
- publish_date: Publish Date
18
- view_on_site: View on Site
19
- edit_options: Edit Options
20
- search_optimization: Search Optimization
21
- details: Details
22
- active: Actions
23
- search: Search
24
- languages: Languages
25
- english: English
26
- home: Home
27
- for_an_optimal_tenon_experience: "For an optimal Tenon experience, please upgrade Internet Explorer to the %{latest_version} or switch to another %{modern_browser}."
28
- mobile: Mobile
29
- at: at
30
- there_were_problems_with_the_following_fields: There were problems with the following fields
31
- saved_successfully: saved successfully
32
- you_are_not_authorized: You are not authorized to access that page.
33
- youre_not_authorized_for_that: You're not authorized for that.
34
- new: New
35
- loading: Loading...
36
- you_have_unsaved_changes: You have unsaved changes, are you sure you want to leave this page?
37
- the_following_errors_occurred: The following errors occurred
38
-
39
- assets:
40
- enter_a_title_for_your_asset: Enter a title for your asset. You can leave this blank to just use the file name as the title.
41
- multiple_assets: If you upload multiple assets a numerical series will be created.
42
- choose_file: Choose File
43
- choose_files: Choose Files
44
- choose_another_file: Choose Another File
45
- asset_library: Asset Library
46
- upload_new: Upload New
47
- upload_assets: Upload Assets
48
- file_types: File Types
49
- all_assets: All Assets
50
- images: Images
51
- documents: Documents
52
- crop: Crop
53
- create_new_asset_from_crop: Create New Asset From Crop?
54
- load_more: Load More Assets
55
- edit_asset: Edit Asset
56
- size: Size
57
- asset: Asset
58
- successfully_uploaded: Asset was successfully uploaded.
59
- download: Download
60
- in_use: This asset has been attached to items in your site and can't be deleted.
61
- from_your_computer: From Your Computer
62
- from_the_asset_library: From the Asset Library
63
- filter_assets: Filter Assets
64
- asset_link: Asset Link
65
- no_asset_selected: No asset selected.
66
-
67
- comment_mailer:
68
- a_new_comment_has_been_added: A new comment has been added to
69
-
70
- comments:
71
- comments: Comments
72
- load_more: Load More Comments
73
- read: Read
74
- read_comment: Read Comment
75
- new_comment: New Comment
76
- comment_approved: Comment Approved
77
- error_approving_comment: Error approving comment.
78
-
79
- contact_mailer:
80
- new_contact_request_received: A new contact request has been recieved.
81
- reply_to_this_email: Reply to this email to get in touch with the person who sent it.
82
- from: From
83
- email: Email
84
- new_contact_request: New Contact Request
85
- sent_on: Sent on
86
- name: Name
87
- phone: Phone
88
- ip: IP
89
- agent: Agent
90
- referrer: Referrer
91
-
92
- contacts:
93
- contacts: Contacts
94
- unread: Unread
95
- read: Read
96
- awaiting_reply: Awaiting reply
97
- replied: Replied
98
- load_more: Load More Contacts
99
- view_contact_details: View Contact Details
100
- contact_details: Contact Details
101
- mark_as_unread: Mark as Unread
102
- mark_as_read: Mark as Read
103
- mark_as_pending: Mark as Pending
104
- mark_as_replied: Mark as Replied
105
- contact_flagged_as_read: Cotact flagged as read.
106
- error_flagging_contact_as_read: Error flagging contact as read.
107
- contact_flagged_as_replied: Contact flagged as replied.
108
- error_flagging_contact_as_replied: Error flagging contact as replied.
109
-
110
- events:
111
- events: Events
112
- new_event: New Event
113
- event_details: Event Details
114
- publish_your_event: Publish Your Event
115
- editing_event: Editing Event
116
- load_more: Load More Events
117
- create_a_new_event: Create a New Event
118
- from: from
119
- until: until
120
- when: When
121
- where: Where
122
-
123
- fields:
124
- remove: remove
125
- select: Select
126
-
127
- galleries:
128
- galleries: Galleries
129
- new_gallery: New Gallery
130
- add_another_photo: Add another photo
131
- add_several: Add several
132
- load_more: Load More Galleries
133
-
134
- index:
135
- notifications: Notifications
136
- some_items_need_your_attention: Some items need your attention!
137
- welcome_to_tenon: Welcome to Tenon
138
-
139
- item_versions:
140
- no_title: (No Title)
141
- view_draft: View Draft
142
- choose_a_draft: Choose a draft to load from the list below. Loading a draft will open it but it will not overwrite the active version of your item until you press Save.
143
- load_other_drafts: Load Older Drafts
144
- load_active_version: Load Active Version
145
- load_draft: Load Draft
146
- save_draft: Save Draft
147
- you_are_viewing_a_draft: You are viewing a draft version of this resource. Hitting save will replace the active version with this version.
148
- auto_saving_is_disabled: Auto-saving is disabled when you are viewing a draft version.
149
- draft: Draft
150
- was_created_on: was created on
151
- by: by
152
- post_save: Post-Save
153
- failed_to_save_draft: Failed to save draft.
154
- created: Created
155
- creator: Creator
156
-
157
- pages:
158
- pages: Pages
159
- page_content: Page Content
160
- this_is_the_title: This is the title that shows up at the top of your page.
161
- parent_page: Parent Page
162
- no_parent: (No Parent)
163
- show_in_menu: Show in Menu?
164
- show_contact_form: Show Contact Form?
165
- publish_your_page: Publish Your Page
166
- edit_a_page: Edit a Page
167
- new_page: New Page
168
- load_more: Load More Pages
169
- unknown_user: Unknown User
170
- create_a_sub_page: Create a Sub-Page
171
- required_page: Required Page, Can't Delete
172
- create_a_new_page: Create a New Page
173
- must_exist_in_order_to_have: must exist in order to have a properly generated URL.
174
- theres_already_something_happening: "There's already something happening at %{path}. Try giving the page a different name."
175
- cannot_be_itself_or_one_of_its_subpages: cannot be itself or one of its subpages.
176
- last_updated: Last Updated
177
-
178
- post_categories:
179
- post_categories: Post Categories
180
- edit_post_category: Edit Post Category
181
- new_post_category: New Post Category
182
- load_more: Load More Post Categories
183
-
184
- posts:
185
- posts: Posts
186
- post_content: Post Content
187
- give_your_post_a_title: Give your post a title.
188
- categories: Categories
189
- publish_your_post: Publish Your Post
190
- author: Author
191
- no_author: (No Author)
192
- allow_comments: Allow Comments?
193
- edit_a_post: Edit a Post
194
- new_post: New Post
195
- load_more: Load More Posts
196
- date_not_set: Date not set
197
- create_a_new_post: Create a New Post
198
- published: Published
199
-
200
- redirects:
201
- redirects: Redirects
202
- new_redirect: New Redirect
203
- redirects_will_be_run: Redirects will be run when a page cannot be found. It will not redirect an existing page.
204
- route_to_match: Route to match
205
- string_can_be_written: "String, can be written as a regular expression (without opening and closing /)"
206
- destination: Destination
207
- zero_indexed_captures: "Zero-indexed captures can be returned in {x}"
208
- active: Active
209
- not_active: Not Active
210
- edit_redirect: Edit Redirect
211
- drag_and_drop_to_set_priority: Drag and drop to set priority.
212
- load_more: Load More Redirects
213
-
214
- settings:
215
- contact_details: Contact Details
216
- contact_email: Contact Email
217
- destination_email_address_for_alerts: Destination email address for alerts. Separate multiple email addresses with commas.
218
- sender_email: Sender Email
219
- from_email_address_for_alerts: \"From\" email address for alerts.
220
- comment_notifications: Comment Notifications
221
- comment_email: Comment Email
222
- do_you_want_to_receive: Do you want to receive an email when someone posts a comment?
223
- site_name: Site Name
224
- site_domain: Site Domain
225
- google_analytics_code: Google Analytics Code
226
- create_a_new_profile_here: Create a New Profile Here
227
- meta_keywords: META Keywords
228
- these_meta_keywords_will: "These META keywords will be used by some search engines when crawling your site. Separate keywords with a comma. Note: Google does not factor in keywords when calculating your rank. Other search engines may or may not."
229
- meta_description: META Description
230
- this_description_will_show_up: "This description will show up on search engines and in some cases will affect your rank. It should be no longer than 150-160 characters (about the length of a tweet.)"
231
- settings: Settings
232
- sections: Sections
233
- general_settings: General Settings
234
- contact_management: Contact Management
235
- site_settings: Site Settings
236
- title_tag: Title Tag
237
- this_is_the_title_that_will_show: "This is the title that will show on search engine results and in the title bar of a visitor's browser. By default, this will use the item's title."
238
-
239
- users:
240
- users: Users
241
- new_user: New User
242
- edit_info: Edit Info
243
- sign_out: Sign Out
244
- new_password: New Password
245
- confirm_new_password: Confirm New Password
246
- confirm_password: Confirm Password
247
- roles: Roles
248
- roles_define_a_users_abilities: Roles define a user's abilities throughout the site.
249
- approved: Approved?
250
- edit_a_user: Edit a User
251
- load_more: Load More Users
252
- never: Never
253
- are_you_sure_you_want_to_unapprove: Are you sure you want to unapprove this user?
254
- are_you_sure_the_user_will_be_notified: Are you sure? The user will be notified by email.
255
- last_login: Last Login
256
-
257
- tenon_callouts:
258
- tenon_callouts: Tenon Callouts
259
- new_tenon_callout: New Tenon Callout
260
- open_in_new_window: Open in New Window
261
- edit_a_tenon_callout: Edit a Tenon Callout
262
- load_more: Load More Callouts
263
-
264
- tenon_content:
265
- select_image: Select Image
266
- add_image: Add Image
267
- replace_image: Replace Image
268
- edit_embed_code: Edit Embed Code
269
- enter_caption_here: Enter caption here...
270
- link_to_an_asset: Link to an Asset
271
- paste_or_type_a_link: Paste or type a link
272
- cancel: Cancel
273
- grow: Grow
274
- shrink: Shrink
275
- toggle_caption: Toggle Caption
276
- swap_sides: Swap Sides
277
- stretch_to_fill: Stretch to Fill
278
- add_link: Add Link
279
- paste_your_embed_code_here: Paste your embed code here
280
- note_in_order_to_get_your_embed_to_work: "Note: In order to get your embed to work with various screen sizes, you may want to get a code from"
281
- update: Update
282
- select_rows_from_the_library: Select rows from the library to build this section.
283
- you_can_format_your_text: You can format your text by highlighting it and selecting options from the pop-up menu.
284
- edit_in_preview_mode: Edit in Preview Mode
285
- add_content: Add Content
286
- preview_mode: Preview Mode
287
- use_preview_mode_to_see: "Use preview mode to see how your content will look on different devices. You can still make edits when you're in preview mode, but the toolbars are hidden to give you a better picture of how your content will be laid out."
288
- done: Done
289
- insert_content: Insert Content
290
-
291
- row_types:
292
- one_column_of_text: One Column of Text
293
- one_column_image: One Column Image
294
- two_columns_of_text: Two Columns of Text
295
- two_images: Two Images
296
- three_columns_of_text: Three Columns of Text
297
- three_images: Three Images
298
- four_columns_of_text: Four Columns of Text
299
- four_images: Four Images
300
- wrapped_image_with_text: Wrapped Image with Text
301
- six_images: Six Images
302
- embedded_content: Embedded Content
303
- image_and_text_no_wrap: Image and Text (No Wrap)
304
- two_column_image_and_text: Two Column Image and Text
305
- three_column_image_and_text: Three Column Image and Text
306
- four_column_image_and_text: Four Column Image and Text
307
- six_column_image_and_text: Six Column Image and Text
308
- two_columns_with_background_image: Two Columns with Background Image
309
-
310
- record_list:
311
- no_entries_found: No entries found.
312
- there_was_an_error_contacting_the_server: There was an error contacting the server.
313
-
data/db/seeds.rb DELETED
@@ -1,47 +0,0 @@
1
- # This file should contain all the record creation needed to seed the database with its default values.
2
- # The data can then be loaded with the rake db:seed (or created alongside the db with db:setup).
3
- #
4
- # Examples:
5
- #
6
- # cities = City.create([{ :name => 'Chicago' }, { :name => 'Copenhagen' }])
7
- # Mayor.create(:name => 'Daley', :city => cities.first)
8
- ['Super Admin', 'Admin'].each { |r| Tenon::Role.find_or_create_by(title: r) }
9
-
10
- %w(admin super_admin).each do |role|
11
- password = ENV['PASSWORD'].blank? ? role + '1234' : ENV['PASSWORD']
12
- user = Tenon::User.new(password: password, password_confirmation: password, email: "#{role}@factore.ca")
13
- user.approved = true
14
- user.roles << Tenon::Role.find_by(title: role.humanize.titleize)
15
- if user.save
16
- puts "#{role.humanize.titleize} user created with username: #{user.email}, password: #{password}"
17
- else
18
- puts "#{role.humanize.titleize} user not saved because #{user.errors.full_messages.to_sentence}. Make sure your database is set up correctly."
19
- end
20
- end
21
-
22
- # Get config/sitemap.yml
23
- # require 'yaml'
24
- # classes = YAML.load(File.new("#{Rails.root}/config/sitemap.yml"))
25
-
26
- # # Default Pages from config/sitemap.yml
27
- # puts '\n============\nBUILDING PAGES'
28
- # content = '<p>Edit this page in Tenon</p>'
29
- # classes['Pages'].each do |page, subpages|
30
- # p = Tenon::Page.new(:title => page, :slug => page.parameterize, :key => page.parameterize, :content => content, :published => true)
31
- # puts p.save ? "Created #{page}" : "Errors on #{page}: " + p.errors.map { |e| "#{e[0]} #{e[1]}" }.join(', ')
32
- # # Build the Subpages
33
- # if p.errors.blank?
34
- # subpages.each do |subpage, subsubpages|
35
- # subp = Page.new(:title => subpage, :slug => subpage.parameterize, :content => content, :parent => p, :published => true)
36
- # subp.published = true
37
- # puts subp.save ? " - Created #{subpage}" : "Errors on #{subpage}: " + subp.errors.map { |e| "#{e[0]} #{e[1]}" }.join(', ')
38
- # end unless subpages.blank?
39
- # end
40
- # end
41
-
42
- # # Default Post Categories from config/sitemap.yml
43
- # puts '\n============\nPOST CATEGORIES'
44
- # classes['PostCategory'].each do |category|
45
- # pc = Tenon::PostCategory.new(:title => category)
46
- # puts pc.save ? "Created #{category}" : "Errors on #{category}: " + pc.errors.map { |e| "#{e[0]} #{e[1]}" }.join(', ')
47
- # end
@@ -1 +0,0 @@
1
- json.extract!(<%= singular_name %>, :id, :title, :edit_path, :edit_link, :delete_link)
@@ -1,5 +0,0 @@
1
- json.records do
2
- json.partial! '<%= singular_name %>', collection: @<%= plural_name %>, as: :<%= singular_name %>
3
- end
4
-
5
- json.partial!('tenon/shared/pagination', collection: @<%= plural_name %>)
@@ -1,13 +0,0 @@
1
- <li data-record-id="<%%= @<%= singular_name %>.id %>">
2
- <div class="record-details">
3
- <div class="record-actions">
4
- <%%- @<%= singular_name %>.delete_link %>
5
- <%%- @<%= singular_name %>.edit_link %>
6
- </div>
7
-
8
- <div class="record-title">
9
- <a href="<%%= @<%= singular_name %>.edit_path %>"><%%= @<%= singular_name %>.title %></a>
10
- </div>
11
-
12
- </div>
13
- </li>
@@ -1,8 +0,0 @@
1
- require File.join(File.dirname(__FILE__), '..', 'scaffold', 'scaffold_generator.rb')
2
- module Tenon
3
- module Generators
4
- class ScaffoldSmallGenerator < Tenon::Generators::ScaffoldGenerator
5
- source_root File.expand_path('../templates', __FILE__)
6
- end
7
- end
8
- end
@@ -1,19 +0,0 @@
1
- <% collections = attributes.select {|a| a.name.match(/_id$/)}.map {|a| a.name.gsub(/_id$/, '')}.uniq -%>
2
- class Tenon::<%= class_name.pluralize %>Controller < Tenon::SimpleResourcesController
3
- <% unless collections.blank? -%>
4
- before_filter :get_collections, :only => [:index, :edit, :update, :new, :create]
5
- <% end -%>
6
-
7
- <% unless collections.blank? -%>
8
- private
9
- def get_collections
10
- <% collections.each do |c| -%>
11
- @<%= c.pluralize %> = <%= c.camelize %>.all
12
- <% end -%>
13
- end
14
- <% end -%>
15
-
16
- def resource_params
17
- params.require(:<%= singular_name %>).permit!
18
- end
19
- end
@@ -1,2 +0,0 @@
1
- class <%= class_name %>Decorator < Tenon::ApplicationDecorator
2
- end
@@ -1,26 +0,0 @@
1
- <% collections = attributes.select {|a| a.name.match(/_id$/)}.map {|a| a.name.gsub(/_id$/, '')}.uniq -%>
2
- = form_for @<%= singular_name %>, builder: Tenon::FormBuilder, data: {modal: true, remote: true, type: 'json', record: '<%= singular_name %>'} do |f|
3
- .modal-body
4
- .fields.full
5
- <% collections.each do |c| %>
6
- .form-group
7
- = f.super_label :<%= c %>, '<%= c.titleize %>'
8
- = f.collection_select :<%=c%>_id, @<%= c.pluralize %>, :id, :title, prompt: '--'
9
- <% end -%>
10
-
11
- <% attributes.reject {|a| a.field_type.to_s == "text_area" || ["timestamp", "datetime"].include?(a.type.to_s) }.reject {|a| a.name.match(/_id$/)}.each do |attribute| -%>
12
- <% if !attribute.name.match(/_content_type|_file_size|_file_name/) && !['list_order', 'published'].include?(attribute.name) -%>
13
- .form-group
14
- = f.text_field :<%= attribute.name %>
15
- <% end -%>
16
- <% end -%>
17
-
18
- <% attributes.select { |a| ["datetime", "timestamp"].include?(a.type.to_s) }.each do |f| -%>
19
- .form-group
20
- = f.text_field :<%= f.name %>, data: {behaviour: 'datetimepicker'}
21
- <% end -%>
22
-
23
- .spacer
24
-
25
- .modal-footer
26
- = f.submit "Save", class: 'btn btn-comp', data: { disable_with: "Please wait..." }
@@ -1,2 +0,0 @@
1
- json.extract!(<%= singular_name %>, :id, :title, :edit_path, :delete_link)
2
- json.edit_link edit_link(<%= singular_name %>, data: {'modal-remote' => true, 'modal-title' => 'Edit <%= singular_name.titleize %>'})
@@ -1 +0,0 @@
1
- json.partial! '<%= singular_name %>', <%= singular_name %>: @<%= singular_name %>
@@ -1,27 +0,0 @@
1
- - content_for :sidebar do
2
- #new-<%= singular_name %>{:style => "display: none;"}
3
- = render "form"
4
-
5
- .sidebar
6
- .content
7
- %h2 <%= plural_name.titleize %>
8
- = link_to "New <%= singular_name.titleize %>", '#', class: 'btn btn-block btn-primary', data: {'modal-target' => '#new-<%= singular_name %>', 'modal-title' => 'New <%= singular_name.titleize %>'}
9
-
10
- %header
11
- %h1 <%= plural_name.titleize %>
12
-
13
- .tools
14
- = render "tenon/shared/section_header/sidebar_toggle"
15
-
16
- .header-button
17
- = link_to '#', id: 'quick-search-toggle' do
18
- .header-icon= fa_icon('fw search')
19
-
20
- .toolbox
21
- = render "tenon/shared/section_header/quick_search", record_list: '#<%= plural_name %>'
22
-
23
- .main-content
24
- = error_messages_for :<%= singular_name %>
25
- %ul#<%= plural_name %>.record-list<% if attributes.map(&:name).include?('list_order') %>.sortable<% end -%>{data: {records: {url: <%= plural_name %>_path(format: 'json'), template: 'tenon/templates/<%= plural_name %>/<%= singular_name %>_row', name: '<%= singular_name %>'}<% if attributes.map(&:name).include?('list_order') %>, :'reorder-path' => reorder_<%= plural_name %>_path<% end %>}}
26
-
27
- = link_to "Load More <%= plural_name.titleize %>", '#', :class => 'btn btn-comp infinite-loader', 'data-record-list' => '#<%= plural_name %>'
@@ -1,5 +0,0 @@
1
- json.records do
2
- json.partial! '<%= singular_name %>', collection: @<%= plural_name %>, as: :<%= singular_name %>
3
- end
4
-
5
- json.partial!('tenon/shared/pagination', collection: @<%= plural_name %>)
@@ -1,12 +0,0 @@
1
- <li data-record-id="<%%= @<%= singular_name %>.id %>">
2
- <div class="record-details">
3
- <div class="record-actions">
4
- <%%- @<%= singular_name %>.delete_link %>
5
- <%%- @<%= singular_name %>.edit_link %>
6
- </div>
7
-
8
- <div class="record-title">
9
- <a href="<%%= @<%= singular_name %>.edit_path %>" data-modal-remote="true" data-modal-title="Edit <%= singular_name.titleize %>"><%%= @<%= singular_name %>.title %></a>
10
- </div>
11
- </div>
12
- </li>
@@ -1 +0,0 @@
1
- json.partial! '<%= singular_name %>', <%= singular_name %>: @<%= singular_name %>
@@ -1,16 +0,0 @@
1
- module Tenon
2
- module CanHaveComments
3
- def self.included(mod)
4
- mod.extend(ClassMethods)
5
- end
6
-
7
- module ClassMethods
8
- def can_have_comments
9
- send(:has_many, :comments, as: :commentable, dependent: :destroy)
10
- send(:has_many, :subscribers, class_name: 'CommentSubscriber', as: :commentable, dependent: :destroy)
11
- end
12
- end
13
- end
14
- end
15
-
16
- ActiveRecord::Base.send(:include, Tenon::CanHaveComments)
@@ -1,29 +0,0 @@
1
- # File: lib/tenon/videos.rb
2
- # Adds configuration options for videos
3
- # eg.
4
- #
5
- # Tenon.configure do |config|
6
- # config.events.display = :calendar
7
- # end
8
-
9
- module Tenon
10
- class Configuration
11
- attr_accessor :events
12
-
13
- def events
14
- @events ||= EventConfiguration.new
15
- end
16
-
17
- class EventConfiguration
18
- attr_accessor :display
19
-
20
- def initialize
21
- @display = :list
22
- end
23
-
24
- def display
25
- @display.to_sym
26
- end
27
- end
28
- end
29
- end
@@ -1,10 +0,0 @@
1
- FactoryGirl.define do
2
- factory :comment, class: Tenon::Comment do
3
- author_email 'sean@factore.ca'
4
- author_url 'www.factore.ca'
5
- author 'Sean Roberts'
6
- content 'Test Comment'
7
- commentable { create(:post) }
8
- bypass_humanizer true
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- FactoryGirl.define do
2
- factory :contact, class: Tenon::Contact do
3
- email 'jamie@factore.ca'
4
- phone '555.555.5555'
5
- name 'Jamie Allen'
6
- content 'This is the message!'
7
- bypass_humanizer true
8
- end
9
- end
@@ -1,7 +0,0 @@
1
- FactoryGirl.define do
2
- factory :event, class: Tenon::Event do
3
- sequence(:title) { |n| "Test Event - #{n}" }
4
- starts_at Time.now
5
- ends_at Time.now + 1.hour
6
- end
7
- end
@@ -1,5 +0,0 @@
1
- FactoryGirl.define do
2
- factory :gallery, class: Tenon::Gallery do
3
- sequence(:title) { |n| "Test Gallery - #{n}" }
4
- end
5
- end
@@ -1,5 +0,0 @@
1
- FactoryGirl.define do
2
- factory :page, class: Tenon::Page do
3
- sequence(:title) { |n| "Test Page - #{n}" }
4
- end
5
- end
@@ -1,10 +0,0 @@
1
- FactoryGirl.define do
2
- factory :post, class: Tenon::Post do
3
- title 'Test Post'
4
- excerpt 'Lorem ipsum test post'
5
- end
6
-
7
- factory :post_category, class: Tenon::PostCategory do
8
- sequence(:title) { |n| "Test Post Category - #{n}" }
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- FactoryGirl.define do
2
- factory :tenon_redirect, class: Tenon::Redirect do
3
- sequence(:title) { |n| "Test Page - #{n}" }
4
- 'in' '\/on-the-floor\/(\d+-.*)'
5
- 'out' '/posts/{0}'
6
- end
7
- end
8
-
9
-
@@ -1,9 +0,0 @@
1
- FactoryGirl.define do
2
- factory :tenon_callout, class: Tenon::TenonCallout do
3
- sequence(:title) { |n| "Test Tenon Callout - #{n}" }
4
- uri '/tenon/pages/new'
5
- icon 'file-o'
6
- button_text 'Go for it!'
7
- content 'Tenon Callout test content'
8
- end
9
- end
@@ -1,26 +0,0 @@
1
- FactoryGirl.define do
2
- factory :user, class: Tenon::User do
3
- sequence(:email) { |n| "user#{n}@factore.ca" }
4
- password 'password'
5
- password_confirmation 'password'
6
- approved true
7
- roles { [Tenon::Role.find_by_title('Member') || create(:member_role)] }
8
- end
9
-
10
- factory :admin, parent: :user do
11
- email 'admin@factore.ca'
12
- roles { [Tenon::Role.find_by_title('Admin') || create(:admin_role)] }
13
- end
14
-
15
- factory :role, class: Tenon::Role do
16
- sequence(:title) { |n| "role-#{n}" }
17
- end
18
-
19
- factory :admin_role, parent: :role do
20
- title 'Admin'
21
- end
22
-
23
- factory :member_role, parent: :role do
24
- title 'Member'
25
- end
26
- end