pages_core 3.4.3 → 3.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (375) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +74 -15
  3. data/Rakefile +2 -0
  4. data/app/assets/javascripts/pages/admin.jsx +17 -0
  5. data/app/assets/javascripts/pages/admin/components.jsx +2 -0
  6. data/app/assets/javascripts/pages/admin/components/attachment.jsx +130 -0
  7. data/app/assets/javascripts/pages/admin/components/attachment_editor.jsx +131 -0
  8. data/app/assets/javascripts/pages/admin/components/attachments.jsx +211 -0
  9. data/app/assets/javascripts/pages/admin/components/date_range_select.jsx +174 -0
  10. data/app/assets/javascripts/pages/admin/components/drag_uploader.jsx +174 -0
  11. data/app/assets/javascripts/pages/admin/components/editable_image.jsx +57 -0
  12. data/app/assets/javascripts/pages/admin/components/file_upload_button.jsx +44 -0
  13. data/app/assets/javascripts/pages/admin/components/focal_point.jsx +82 -0
  14. data/app/assets/javascripts/pages/admin/components/grid_image.jsx +124 -0
  15. data/app/assets/javascripts/pages/admin/components/image_editor.jsx +496 -0
  16. data/app/assets/javascripts/pages/admin/components/image_grid.jsx +306 -0
  17. data/app/assets/javascripts/pages/admin/components/image_uploader.jsx +176 -0
  18. data/app/assets/javascripts/pages/admin/components/modal.jsx +48 -0
  19. data/app/assets/javascripts/pages/admin/components/modal_store.jsx +20 -0
  20. data/app/assets/javascripts/pages/admin/components/page_dates.jsx +58 -0
  21. data/app/assets/javascripts/pages/admin/components/page_files.jsx +14 -0
  22. data/app/assets/javascripts/pages/admin/components/page_images.jsx +16 -0
  23. data/app/assets/javascripts/pages/admin/components/page_tree.jsx +300 -0
  24. data/app/assets/javascripts/pages/admin/components/page_tree_node.jsx +396 -0
  25. data/app/assets/javascripts/pages/admin/components/page_tree_store.jsx +203 -0
  26. data/app/assets/javascripts/pages/admin/components/rich_text_area.jsx +64 -0
  27. data/app/assets/javascripts/pages/admin/components/rich_text_toolbar.jsx +91 -0
  28. data/app/assets/javascripts/pages/admin/components/toast.jsx +34 -0
  29. data/app/assets/javascripts/pages/admin/components/toast_store.jsx +52 -0
  30. data/app/assets/javascripts/pages/admin/features/content_tabs.jsx +72 -0
  31. data/app/assets/javascripts/pages/admin/features/edit_page.jsx +97 -0
  32. data/app/assets/javascripts/pages/admin/features/rich_text.jsx +14 -0
  33. data/app/assets/javascripts/pages/admin/features/tag_editor.jsx +160 -0
  34. data/app/assets/javascripts/pages/admin/lib/tree.jsx +294 -0
  35. data/app/assets/javascripts/pages/login_form.jsx +21 -0
  36. data/app/assets/stylesheets/pages/admin.scss +144 -0
  37. data/app/assets/stylesheets/pages/admin/components/archive.scss +6 -0
  38. data/app/assets/stylesheets/pages/admin/components/attachments.scss +130 -0
  39. data/app/assets/stylesheets/pages/admin/components/buttons.scss +23 -0
  40. data/app/assets/stylesheets/pages/admin/components/forms.scss +169 -0
  41. data/app/assets/stylesheets/pages/admin/components/header.scss +157 -0
  42. data/app/assets/stylesheets/pages/admin/components/image_editor.scss +195 -0
  43. data/app/assets/stylesheets/pages/admin/components/image_grid.scss +181 -0
  44. data/app/assets/stylesheets/pages/admin/components/image_uploader.scss +53 -0
  45. data/app/assets/stylesheets/pages/admin/components/layout.scss +44 -0
  46. data/app/assets/stylesheets/pages/admin/components/links.scss +43 -0
  47. data/app/assets/stylesheets/pages/admin/components/list_table.scss +61 -0
  48. data/app/assets/stylesheets/pages/admin/{login.css.scss.erb → components/login.scss} +3 -9
  49. data/app/assets/stylesheets/pages/admin/components/modal.scss +106 -0
  50. data/app/assets/stylesheets/pages/admin/components/page_tree.scss +179 -0
  51. data/app/assets/stylesheets/pages/admin/components/pagination.scss +49 -0
  52. data/app/assets/stylesheets/pages/admin/components/sidebar.scss +28 -0
  53. data/app/assets/stylesheets/pages/admin/components/tag_editor.scss +59 -0
  54. data/app/assets/stylesheets/pages/admin/components/textarea.scss +6 -0
  55. data/app/assets/stylesheets/pages/admin/components/toast.scss +51 -0
  56. data/app/assets/stylesheets/pages/admin/components/toolbar.scss +108 -0
  57. data/app/assets/stylesheets/pages/admin/controllers/pages.scss +184 -0
  58. data/app/assets/stylesheets/pages/admin/controllers/{users.css.erb → users.scss} +2 -2
  59. data/app/assets/stylesheets/pages/admin/mixins/breakpoints.scss +21 -0
  60. data/app/assets/stylesheets/pages/admin/mixins/clearfix.scss +7 -0
  61. data/app/assets/stylesheets/pages/admin/mixins/gradients.scss +7 -0
  62. data/app/assets/stylesheets/pages/admin/vars.scss +30 -0
  63. data/app/assets/stylesheets/pages/errors.css +2 -0
  64. data/app/controller_dummies/admin/admin_controller.rb +1 -1
  65. data/app/controller_dummies/application_controller.rb +3 -3
  66. data/app/controller_dummies/attachments_controller.rb +4 -0
  67. data/app/controller_dummies/frontend_controller.rb +1 -1
  68. data/app/controller_dummies/images_controller.rb +1 -1
  69. data/app/controller_dummies/page_files_controller.rb +1 -1
  70. data/app/controller_dummies/pages_controller.rb +1 -1
  71. data/app/controller_dummies/sitemaps_controller.rb +1 -1
  72. data/app/controllers/admin/attachments_controller.rb +50 -0
  73. data/app/controllers/admin/categories_controller.rb +3 -4
  74. data/app/controllers/admin/images_controller.rb +29 -18
  75. data/app/controllers/admin/invites_controller.rb +20 -23
  76. data/app/controllers/admin/pages_controller.rb +59 -111
  77. data/app/controllers/admin/password_resets_controller.rb +23 -21
  78. data/app/controllers/admin/users_controller.rb +23 -23
  79. data/app/controllers/concerns/pages_core/admin/news_page_controller.rb +67 -0
  80. data/app/controllers/concerns/pages_core/admin/persistent_params.rb +75 -0
  81. data/app/controllers/concerns/pages_core/authentication.rb +4 -3
  82. data/app/controllers/concerns/pages_core/error_renderer.rb +36 -0
  83. data/app/controllers/concerns/pages_core/error_reporting.rb +36 -0
  84. data/app/controllers/concerns/pages_core/policies_helper.rb +16 -13
  85. data/app/controllers/concerns/pages_core/preview_pages_controller.rb +44 -0
  86. data/app/controllers/concerns/pages_core/process_titler.rb +4 -4
  87. data/app/controllers/concerns/pages_core/rss_controller.rb +25 -0
  88. data/app/controllers/concerns/pages_core/static_cache_controller.rb +48 -0
  89. data/app/controllers/errors_controller.rb +20 -30
  90. data/app/controllers/pages_core/admin_controller.rb +21 -70
  91. data/app/controllers/pages_core/attachments_controller.rb +40 -0
  92. data/app/controllers/pages_core/{application_controller.rb → base_controller.rb} +13 -8
  93. data/app/controllers/pages_core/frontend/page_files_controller.rb +7 -24
  94. data/app/controllers/pages_core/frontend/pages_controller.rb +39 -228
  95. data/app/controllers/pages_core/frontend_controller.rb +10 -3
  96. data/app/controllers/pages_core/images_controller.rb +2 -2
  97. data/app/controllers/pages_core/sitemaps_controller.rb +15 -10
  98. data/app/controllers/sessions_controller.rb +4 -14
  99. data/app/formatters/pages_core/html_formatter.rb +52 -48
  100. data/app/formatters/pages_core/image_embedder.rb +79 -0
  101. data/app/formatters/pages_core/link_renderer.rb +17 -0
  102. data/app/helpers/admin/admin_helper.rb +1 -1
  103. data/app/helpers/admin/menu_helper.rb +19 -16
  104. data/app/helpers/admin/pages_helper.rb +27 -30
  105. data/app/helpers/application_helper.rb +1 -1
  106. data/app/helpers/frontend_helper.rb +1 -1
  107. data/app/helpers/pages_core/admin/admin_helper.rb +44 -71
  108. data/app/helpers/pages_core/admin/content_tabs_helper.rb +28 -0
  109. data/app/helpers/pages_core/admin/date_range_helper.rb +55 -0
  110. data/app/helpers/pages_core/admin/form_builder.rb +44 -0
  111. data/app/helpers/pages_core/admin/image_uploads_helper.rb +48 -0
  112. data/app/helpers/pages_core/admin/labelled_field_helper.rb +19 -19
  113. data/app/helpers/pages_core/admin/page_blocks_helper.rb +66 -0
  114. data/app/helpers/pages_core/admin/page_json_helper.rb +23 -0
  115. data/app/helpers/pages_core/admin/tag_editor_helper.rb +16 -14
  116. data/app/helpers/pages_core/application_helper.rb +15 -26
  117. data/app/helpers/pages_core/attachments_helper.rb +40 -0
  118. data/app/helpers/pages_core/form_builder.rb +71 -134
  119. data/app/helpers/pages_core/frontend_helper.rb +2 -8
  120. data/app/helpers/pages_core/head_tags_helper.rb +36 -169
  121. data/app/helpers/pages_core/images_helper.rb +5 -4
  122. data/app/helpers/pages_core/meta_tags_helper.rb +96 -0
  123. data/app/helpers/pages_core/open_graph_tags_helper.rb +51 -0
  124. data/app/helpers/pages_core/page_path_helper.rb +66 -0
  125. data/app/jobs/pages_core/autopublish_job.rb +2 -2
  126. data/app/jobs/pages_core/sweep_cache_job.rb +3 -3
  127. data/app/mailers/admin_mailer.rb +8 -31
  128. data/app/models/attachment.rb +78 -0
  129. data/app/models/autopublisher.rb +7 -4
  130. data/app/models/category.rb +10 -11
  131. data/app/models/concerns/pages_core/has_roles.rb +5 -4
  132. data/app/models/concerns/pages_core/humanizable_param.rb +11 -8
  133. data/app/models/concerns/pages_core/page_model/attachments.rb +41 -0
  134. data/app/models/concerns/pages_core/page_model/autopublishable.rb +25 -0
  135. data/app/models/concerns/pages_core/page_model/dated_page.rb +59 -0
  136. data/app/models/concerns/pages_core/page_model/images.rb +51 -0
  137. data/app/models/concerns/pages_core/page_model/localizable.rb +38 -0
  138. data/app/models/concerns/pages_core/page_model/pathable.rb +114 -0
  139. data/app/models/concerns/pages_core/page_model/redirectable.rb +36 -0
  140. data/app/models/concerns/pages_core/page_model/sortable.rb +53 -0
  141. data/app/models/concerns/pages_core/page_model/status.rb +50 -0
  142. data/app/models/concerns/pages_core/page_model/templateable.rb +85 -0
  143. data/app/models/concerns/pages_core/page_model/tree.rb +134 -0
  144. data/app/models/concerns/pages_core/sweepable.rb +3 -3
  145. data/app/models/concerns/pages_core/taggable.rb +11 -4
  146. data/app/models/image.rb +15 -1
  147. data/app/models/invite.rb +3 -11
  148. data/app/models/invite_role.rb +5 -3
  149. data/app/models/page.rb +49 -234
  150. data/app/models/page_builder.rb +5 -7
  151. data/app/models/page_category.rb +7 -0
  152. data/app/models/page_exporter.rb +100 -0
  153. data/app/models/page_file.rb +26 -50
  154. data/app/models/page_image.rb +7 -40
  155. data/app/models/page_path.rb +52 -0
  156. data/app/models/password_reset_token.rb +7 -9
  157. data/app/models/role.rb +23 -7
  158. data/app/models/tag.rb +28 -19
  159. data/app/models/tagging.rb +6 -5
  160. data/app/models/user.rb +38 -32
  161. data/app/policies/invite_policy.rb +2 -0
  162. data/app/policies/page_file_policy.rb +15 -17
  163. data/app/policies/page_image_policy.rb +15 -17
  164. data/app/policies/page_policy.rb +29 -23
  165. data/app/policies/policy.rb +4 -8
  166. data/app/policies/user_policy.rb +34 -32
  167. data/app/serializers/admin/attachment_serializer.rb +31 -0
  168. data/app/serializers/admin/image_serializer.rb +55 -6
  169. data/app/serializers/admin/page_file_serializer.rb +8 -0
  170. data/app/serializers/admin/page_image_serializer.rb +3 -1
  171. data/app/serializers/page_export_serializer.rb +32 -0
  172. data/app/serializers/page_file_export_serializer.rb +6 -0
  173. data/app/serializers/page_image_export_serializer.rb +42 -0
  174. data/app/serializers/page_image_serializer.rb +4 -0
  175. data/app/serializers/page_serializer.rb +2 -0
  176. data/app/services/pages_core/create_user_service.rb +39 -0
  177. data/app/services/pages_core/destroy_invite_service.rb +25 -0
  178. data/app/services/pages_core/invite_service.rb +43 -0
  179. data/app/views/admin/images/show.json.jbuilder +8 -0
  180. data/app/views/admin/invites/new.html.erb +2 -1
  181. data/app/views/admin/invites/show.html.erb +3 -4
  182. data/app/views/admin/pages/_edit_content.html.erb +11 -2
  183. data/app/views/admin/pages/_edit_files.html.erb +8 -0
  184. data/app/views/admin/pages/_edit_images.html.erb +8 -84
  185. data/app/views/admin/pages/_edit_metadata.html.erb +23 -12
  186. data/app/views/admin/pages/_edit_options.html.erb +25 -25
  187. data/app/views/admin/pages/_list_item.html.erb +50 -0
  188. data/app/views/admin/pages/deleted.html.erb +42 -0
  189. data/app/views/admin/pages/edit.html.erb +11 -91
  190. data/app/views/admin/pages/index.html.erb +10 -54
  191. data/app/views/admin/pages/new.html.erb +5 -4
  192. data/app/views/admin/pages/news.html.erb +61 -47
  193. data/app/views/admin/password_resets/show.html.erb +6 -9
  194. data/app/views/admin/users/_access_control.html.erb +4 -1
  195. data/app/views/admin/users/_list.html.erb +12 -7
  196. data/app/views/admin/users/edit.html.erb +5 -11
  197. data/app/views/admin/users/login.html.erb +58 -15
  198. data/app/views/admin/users/show.html.erb +1 -1
  199. data/app/views/admin_mailer/invite.text.erb +1 -1
  200. data/app/views/admin_mailer/password_reset.text.erb +1 -1
  201. data/app/views/errors/401.html.erb +6 -0
  202. data/app/views/errors/403.html.erb +1 -1
  203. data/app/views/errors/422.html.erb +7 -0
  204. data/app/views/errors/500.html.erb +2 -15
  205. data/app/views/errors/_generic_help.html.erb +1 -1
  206. data/app/views/feeds/pages.rss.builder +2 -2
  207. data/app/views/layouts/admin.html.erb +83 -79
  208. data/app/views/layouts/admin/_analytics.html.erb +1 -3
  209. data/app/views/layouts/admin/_header.html.erb +4 -4
  210. data/app/views/layouts/errors.html.erb +3 -7
  211. data/app/views/sitemaps/show.xml.builder +2 -0
  212. data/config/locales/en.yml +50 -1
  213. data/config/routes.rb +57 -58
  214. data/db/migrate/20111219033112_create_pages_tables.rb +191 -276
  215. data/lib/pages_core.rb +34 -32
  216. data/lib/pages_core/admin_menu_item.rb +18 -4
  217. data/lib/pages_core/archive_finder.rb +49 -20
  218. data/lib/pages_core/attachment_embedder.rb +36 -0
  219. data/lib/pages_core/cache_sweeper.rb +9 -89
  220. data/lib/pages_core/configuration.rb +3 -3
  221. data/lib/pages_core/configuration/base.rb +8 -9
  222. data/lib/pages_core/configuration/pages.rb +8 -9
  223. data/lib/pages_core/digest_verifier.rb +70 -0
  224. data/lib/pages_core/engine.rb +72 -5
  225. data/lib/pages_core/extensions.rb +2 -3
  226. data/lib/pages_core/extensions/string_extensions.rb +2 -2
  227. data/lib/pages_core/page_path_constraint.rb +23 -0
  228. data/lib/pages_core/pages_plugin.rb +13 -2
  229. data/lib/pages_core/plugin.rb +8 -52
  230. data/lib/pages_core/pub_sub.rb +38 -0
  231. data/lib/pages_core/static_cache.rb +26 -0
  232. data/lib/pages_core/static_cache/null_handler.rb +17 -0
  233. data/lib/pages_core/static_cache/page_cache_handler.rb +56 -0
  234. data/lib/pages_core/static_cache/varnish_handler.rb +55 -0
  235. data/lib/pages_core/templates.rb +10 -10
  236. data/lib/pages_core/templates/block_configuration.rb +4 -3
  237. data/lib/pages_core/templates/configuration.rb +115 -34
  238. data/lib/pages_core/templates/configuration_handler.rb +9 -5
  239. data/lib/pages_core/templates/configuration_proxy.rb +12 -12
  240. data/lib/pages_core/templates/controller_actions.rb +1 -1
  241. data/lib/pages_core/templates/template_configuration.rb +102 -98
  242. data/lib/pages_core/version.rb +2 -2
  243. data/lib/rails/generators/pages_core/frontend/frontend_generator.rb +11 -16
  244. data/lib/rails/generators/pages_core/frontend/templates/application.js.erb +1 -2
  245. data/lib/rails/generators/pages_core/frontend/templates/{application.css.scss.erb → application.scss.erb} +0 -0
  246. data/lib/rails/generators/pages_core/frontend/templates/{base.css.scss.erb → base.scss.erb} +0 -0
  247. data/lib/rails/generators/pages_core/frontend/templates/{breakpoints.css.scss.erb → breakpoints.scss.erb} +0 -0
  248. data/lib/rails/generators/pages_core/frontend/templates/clearfix.scss.erb +7 -0
  249. data/lib/rails/generators/pages_core/frontend/templates/layout.html.erb +0 -3
  250. data/lib/rails/generators/pages_core/install/install_generator.rb +25 -66
  251. data/lib/rails/generators/pages_core/install/templates/active_job_initializer.rb +2 -0
  252. data/lib/rails/generators/pages_core/install/templates/application_controller.rb +2 -2
  253. data/lib/rails/generators/pages_core/install/templates/application_helper.rb +1 -1
  254. data/lib/rails/generators/pages_core/install/templates/delayed_job +1 -0
  255. data/lib/rails/generators/pages_core/install/templates/delayed_job_initializer.rb +16 -1
  256. data/lib/rails/generators/pages_core/install/templates/frontend_controller.rb +1 -1
  257. data/lib/rails/generators/pages_core/install/templates/frontend_helper.rb +1 -1
  258. data/lib/rails/generators/pages_core/install/templates/gitignore.erb +12 -1
  259. data/lib/rails/generators/pages_core/install/templates/page_templates_initializer.rb +9 -15
  260. data/lib/rails/generators/pages_core/install/templates/pages_controller.rb +1 -1
  261. data/lib/rails/generators/pages_core/install/templates/pages_initializer.rb +5 -23
  262. data/lib/rails/generators/pages_core/rspec/rspec_generator.rb +19 -14
  263. data/lib/rails/generators/pages_core/rspec/templates/factories.rb +3 -8
  264. data/lib/rails/generators/pages_core/rspec/templates/mailer_macros.rb +2 -0
  265. data/lib/rails/generators/pages_core/rspec/templates/page_templates_spec.rb +26 -0
  266. data/lib/rails/generators/pages_core/rspec/templates/rails_helper.rb +91 -0
  267. data/lib/rails/generators/pages_core/rspec/templates/spec_helper.rb +89 -45
  268. data/lib/tasks/pages.rake +2 -63
  269. data/lib/tasks/pages/cache.rake +12 -5
  270. data/lib/tasks/pages/export.rake +11 -0
  271. data/lib/tasks/pages/page_paths.rake +12 -0
  272. data/template.rb +5 -3
  273. data/vendor/assets/javascripts/ReactCrop.min.js +1 -0
  274. data/vendor/assets/javascripts/reflux.min.js +1 -0
  275. data/vendor/assets/stylesheets/ReactCrop.css +167 -0
  276. metadata +356 -192
  277. data/app/assets/images/pages/admin/description-bg.gif +0 -0
  278. data/app/assets/images/pages/admin/drag-handle.gif +0 -0
  279. data/app/assets/images/pages/admin/flash-error-bg.gif +0 -0
  280. data/app/assets/images/pages/admin/formelement-bg.gif +0 -0
  281. data/app/assets/images/pages/admin/header-tab-current-bg.gif +0 -0
  282. data/app/assets/images/pages/admin/list-table-td-bg.gif +0 -0
  283. data/app/assets/images/pages/admin/sidebar-bg.gif +0 -0
  284. data/app/assets/images/pages/admin/textarea_controls.gif +0 -0
  285. data/app/assets/javascripts/pages/admin.js.coffee +0 -54
  286. data/app/assets/javascripts/pages/admin/controllers/base.js.coffee +0 -4
  287. data/app/assets/javascripts/pages/admin/controllers/pages_controller.js.coffee +0 -139
  288. data/app/assets/javascripts/pages/admin/controllers/users_controller.js.coffee +0 -9
  289. data/app/assets/javascripts/pages/admin/features/content_tabs.js.coffee +0 -47
  290. data/app/assets/javascripts/pages/admin/features/editable_image.js.coffee.erb +0 -122
  291. data/app/assets/javascripts/pages/admin/features/modal.js.coffee +0 -66
  292. data/app/assets/javascripts/pages/admin/features/page_images.js +0 -329
  293. data/app/assets/javascripts/pages/admin/features/rich_text.js.coffee +0 -40
  294. data/app/assets/javascripts/pages/admin/features/tag_editor.js +0 -159
  295. data/app/assets/javascripts/pages/admin/lib/ajax_extensions.js.coffee +0 -17
  296. data/app/assets/javascripts/pages/admin/lib/center_on_screen.js.coffee +0 -21
  297. data/app/assets/javascripts/pages/admin/lib/jrichtextarea.js +0 -57
  298. data/app/assets/javascripts/pages/login_form.js.coffee +0 -17
  299. data/app/assets/stylesheets/pages/admin.css.erb +0 -404
  300. data/app/assets/stylesheets/pages/admin/buttons.css.erb +0 -5
  301. data/app/assets/stylesheets/pages/admin/controllers/artists.css.erb +0 -94
  302. data/app/assets/stylesheets/pages/admin/controllers/files.css.erb +0 -58
  303. data/app/assets/stylesheets/pages/admin/controllers/pages.css.scss.erb +0 -178
  304. data/app/assets/stylesheets/pages/admin/editable_image.css.erb +0 -19
  305. data/app/assets/stylesheets/pages/admin/forms.css.scss.erb +0 -73
  306. data/app/assets/stylesheets/pages/admin/header.css.erb +0 -129
  307. data/app/assets/stylesheets/pages/admin/images.css.scss.erb +0 -160
  308. data/app/assets/stylesheets/pages/admin/links.css.erb +0 -34
  309. data/app/assets/stylesheets/pages/admin/list_table.css.erb +0 -56
  310. data/app/assets/stylesheets/pages/admin/modal.css.erb +0 -14
  311. data/app/assets/stylesheets/pages/admin/pagination.css.scss +0 -22
  312. data/app/assets/stylesheets/pages/admin/print.css.erb +0 -17
  313. data/app/assets/stylesheets/pages/admin/sidebar.css.erb +0 -39
  314. data/app/assets/stylesheets/pages/admin/sortable_images.css.erb +0 -18
  315. data/app/assets/stylesheets/pages/admin/tag_editor.css.scss.erb +0 -48
  316. data/app/assets/stylesheets/pages/admin/textarea.css.erb +0 -55
  317. data/app/controllers/admin/page_comments_controller.rb +0 -61
  318. data/app/controllers/admin/page_files_controller.rb +0 -81
  319. data/app/controllers/admin/page_images_controller.rb +0 -116
  320. data/app/controllers/concerns/pages_core/domain_based_cache.rb +0 -28
  321. data/app/controllers/concerns/pages_core/exception_handler.rb +0 -114
  322. data/app/helpers/pages_core/login_helper.rb +0 -14
  323. data/app/indices/page_file_index.rb +0 -9
  324. data/app/indices/page_index.rb +0 -29
  325. data/app/indices/user_index.rb +0 -11
  326. data/app/models/concerns/pages_core/page_tree.rb +0 -85
  327. data/app/models/concerns/pages_core/searchable_page.rb +0 -33
  328. data/app/models/concerns/pages_core/templateable.rb +0 -85
  329. data/app/models/localization.rb +0 -27
  330. data/app/models/page_comment.rb +0 -18
  331. data/app/views/admin/pages/_edit_comments.html.erb +0 -21
  332. data/app/views/admin/pages/_pagelisting.html.erb +0 -63
  333. data/app/views/admin/users/_login_form.html.erb +0 -47
  334. data/app/views/admin_mailer/comment_notification.text.erb +0 -7
  335. data/app/views/admin_mailer/error_report.html.erb +0 -70
  336. data/app/views/errors/500_critical.html.erb +0 -7
  337. data/app/views/errors/report.html.erb +0 -4
  338. data/config/removed_migrations.yml +0 -60
  339. data/db/migrate/20120627033112_rename_textbits.rb +0 -19
  340. data/db/migrate/20121010055412_drop_removed_tables.rb +0 -83
  341. data/db/migrate/20130130053932_add_queue_to_delayed_jobs.rb +0 -11
  342. data/db/migrate/20130303053932_remove_filter_from_localizations.rb +0 -11
  343. data/db/migrate/20130303160632_remove_imagesets.rb +0 -24
  344. data/db/migrate/20130303161732_remove_sms_subscribers.rb +0 -16
  345. data/db/migrate/20130823133208_update_page_redirect_to.rb +0 -25
  346. data/db/migrate/20140203183900_create_roles.rb +0 -63
  347. data/db/migrate/20140414150500_change_locale_names.rb +0 -13
  348. data/db/migrate/20140515130100_remove_sphinx_deltas.rb +0 -15
  349. data/db/migrate/20140604142100_remove_openid_url.rb +0 -9
  350. data/db/migrate/20140920231700_convert_images_to_dis.rb +0 -79
  351. data/db/migrate/20140922124600_convert_page_files_to_dis.rb +0 -50
  352. data/db/migrate/20141004003100_create_password_reset_tokens.rb +0 -10
  353. data/db/migrate/20141006181300_remove_user_cruft.rb +0 -11
  354. data/db/migrate/20141007173000_create_invites.rb +0 -16
  355. data/db/migrate/20150204130800_update_delayed_job_table.rb +0 -9
  356. data/db/migrate/20150401131300_localize_images.rb +0 -39
  357. data/db/migrate/20150520174300_add_meta_image_to_page.rb +0 -5
  358. data/db/migrate/20150904164200_add_pinned_to_tags.rb +0 -5
  359. data/lib/pages_core/extensions/hash_extensions.rb +0 -23
  360. data/lib/pages_core/localizable.rb +0 -49
  361. data/lib/pages_core/localizable/active_record_extension.rb +0 -41
  362. data/lib/pages_core/localizable/class_methods.rb +0 -51
  363. data/lib/pages_core/localizable/configuration.rb +0 -50
  364. data/lib/pages_core/localizable/instance_methods.rb +0 -130
  365. data/lib/pages_core/localizable/localizer.rb +0 -72
  366. data/lib/pages_core/localizable/scope_extension.rb +0 -22
  367. data/lib/pages_core/paginates.rb +0 -102
  368. data/lib/rails/generators/pages_core/frontend/templates/hidpi.css.scss.erb +0 -8
  369. data/lib/rails/generators/pages_core/install/templates/cache_sweeper_initializer.rb +0 -11
  370. data/lib/rails/generators/pages_core/install/templates/thinking_sphinx.yml +0 -12
  371. data/lib/tasks/db.rake +0 -96
  372. data/lib/tasks/pages/assets.rake +0 -65
  373. data/lib/tasks/pages/update.rake +0 -19
  374. data/vendor/assets/javascripts/jquery.dimscreen.js +0 -77
  375. data/vendor/assets/javascripts/jquery.fieldselection.js +0 -59
data/lib/tasks/pages.rake CHANGED
@@ -1,69 +1,9 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  require "find"
4
4
  require "open-uri"
5
5
 
6
- begin
7
- require "delayed/tasks"
8
- rescue LoadError
9
- puts "Delayed job not installed"
10
- end
11
-
12
6
  namespace :pages do
13
- namespace :error_reports do
14
- desc "Show error reports"
15
- task list: :environment do
16
- require "term/ansicolor"
17
- include Term::ANSIColor
18
-
19
- reports = []
20
- reports_dir = Rails.root.join("log", "error_reports")
21
- if File.exist?(reports_dir)
22
- files = Dir.entries(reports_dir).select { |f| f =~ /\.yml$/ }
23
- files.each do |f|
24
- report = begin
25
- YAML
26
- .load_file(File.join(reports_dir, f))
27
- .merge(sha1_hash: f.gsub(/\.yml$/, ""))
28
- rescue
29
- nil
30
- end
31
- reports << report if report
32
- end
33
- end
34
- if reports.length > 1
35
- puts
36
- reports = reports.sort { |a, b| a[:timestamp] <=> b[:timestamp] }
37
- reports.each do |report|
38
- message = report[:message].strip.split("\n").first
39
- print "#{report[:timestamp]} "
40
- print "#{report[:sha1_hash]}".blue.bold, "\n"
41
- print "#{report[:url]}".green.bold, "\n"
42
- print "#{report[:params].inspect}\n".yellow
43
- print "#{message}\n\n"
44
- end
45
- else
46
- puts "No error reports found"
47
- end
48
- end
49
-
50
- desc "Clear all error reports"
51
- task clear: :environment do
52
- reports_dir = Rails.root.join("log", "error_reports")
53
- if File.exist?(reports_dir)
54
- files = Dir.entries(reports_dir).select { |f| f =~ /\.yml$/ }
55
- files.each do |f|
56
- `rm #{File.join(reports_dir, f)}`
57
- end
58
- end
59
- puts "Error reports cleared"
60
- end
61
- end
62
-
63
- desc "Show error reports"
64
- task error_reports: "pages:error_reports:list" do
65
- end
66
-
67
7
  desc "Autopublish due pages"
68
8
  task autopublish: :environment do
69
9
  published = Autopublisher.run!
@@ -71,6 +11,5 @@ namespace :pages do
71
11
  end
72
12
 
73
13
  desc "Perform routine maintenance"
74
- task maintenance: [:autopublish] do
75
- end
14
+ task maintenance: [:autopublish]
76
15
  end
@@ -1,16 +1,23 @@
1
- # encoding: utf-8
1
+ # frozen_string_literal: true
2
2
 
3
3
  namespace :pages do
4
4
  namespace :cache do
5
5
  desc "Sweep the pages cache"
6
6
  task sweep: :environment do
7
- swept_files = PagesCore::CacheSweeper.sweep!
8
- Rails.logger.info "Cache swept, #{swept_files.length} files deleted."
7
+ PagesCore::StaticCache.handler.sweep_now!
8
+ Rails.logger.info "Static cache swept"
9
9
  end
10
+
11
+ desc "Sweep the pages cache (queued)"
12
+ task sweep_later: :environment do
13
+ PagesCore::StaticCache.handler.sweep!
14
+ Rails.logger.info "Static cache sweeping queued"
15
+ end
16
+
10
17
  desc "Purge the entire pages cache"
11
18
  task purge: :environment do
12
- PagesCore::CacheSweeper.purge!
13
- Rails.logger.info "Cache purged."
19
+ PagesCore::StaticCache.handler.purge!
20
+ Rails.logger.info "Cache purged"
14
21
  end
15
22
  end
16
23
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ namespace :pages do
4
+ namespace :export do
5
+ desc "Export pages"
6
+ task pages: :environment do
7
+ dir = Rails.root.join("export")
8
+ PageExporter.new(dir, progress_bar: true).export
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ namespace :pages do
4
+ namespace :page_paths do
5
+ desc "Build page paths"
6
+ task build: :environment do
7
+ print "Building page paths..."
8
+ PagePath.build_all
9
+ puts "Done!"
10
+ end
11
+ end
12
+ end
data/template.rb CHANGED
@@ -1,12 +1,14 @@
1
- gem "pages_core", git: "git@github.com:manualdesign/pages.git", branch: "master"
1
+ # frozen_string_literal: true
2
+
3
+ gem "pages_core", git: "git@github.com:anyone-oslo/pages.git", branch: "master"
2
4
 
3
5
  gem_group :development do
4
- gem "manual_server", git: "git@github.com:manualdesign/manual_server.git"
6
+ gem "manual_server", git: "git@github.com:anyone-oslo/anyone_server.git"
5
7
  end
6
8
 
7
9
  route "root to: 'pages#index'"
8
10
 
9
- run "echo '2.2.2' > .ruby-version"
11
+ run "echo '2.3.1' > .ruby-version"
10
12
 
11
13
  run "bundle install"
12
14
 
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define(["react"],t):"object"==typeof exports?exports.ReactCrop=t(require("react")):e.ReactCrop=t(e.React)}("undefined"!=typeof self?self:this,function(e){return function(e){function t(o){if(r[o])return r[o].exports;var a=r[o]={i:o,l:!1,exports:{}};return e[o].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var r={};return t.m=e,t.c=r,t.d=function(e,r,o){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,r){"use strict";function o(e){return e&&e.__esModule?e:{default:e}}function a(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t<e.length;t++)r[t]=e[t];return r}return Array.from(e)}function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function c(e){var t=e.getBoundingClientRect(),r=document.documentElement;return{top:t.top+window.pageYOffset-r.clientTop,left:t.left+window.pageXOffset-r.clientLeft}}function d(e){var t=void 0,r=void 0;return e.touches?(t=e.touches[0].pageX,r=e.touches[0].pageY):(t=e.pageX,r=e.pageY),{x:t,y:r}}function h(e,t,r){return Math.min(Math.max(e,t),r)}function u(e){return e&&e.width&&e.height}function p(e){var t=void 0;return"n"===e?t="s":"ne"===e?t="sw":"e"===e?t="w":"se"===e?t="nw":"s"===e?t="n":"sw"===e?t="ne":"w"===e?t="e":"nw"===e&&(t="se"),t}function f(e,t){if(isNaN(e.aspect)||isNaN(t))return console.warn("`crop.aspect` and `imageAspect` need to be numbers in order to make an aspect crop",e),e;var r=y({},e);return e.width&&(r.height=e.width/e.aspect*t),e.height&&(r.width=(r.height||e.height)*(e.aspect/t)),e.y+(r.height||e.height)>100&&(r.height=100-e.y,r.width=r.height*e.aspect/t),e.x+(r.width||e.width)>100&&(r.width=100-e.x,r.height=r.width/e.aspect*t),r}function l(e,t){return e&&e.aspect&&(!e.width&&e.height||e.width&&!e.height)?f(e,t.naturalWidth/t.naturalHeight):e}function g(e,t){if(!e||!t)return null;var r=Math.round(e.naturalWidth*(t.x/100)),o=Math.round(e.naturalHeight*(t.y/100)),a=Math.round(e.naturalWidth*(t.width/100)),n=Math.round(e.naturalHeight*(t.height/100));return{x:r,y:o,width:h(a,0,e.naturalWidth-r),height:h(n,0,e.naturalHeight-o)}}function v(e,t,r){var o=y({},t),a=!1;o.x+o.width>100?(o.width=t.width+(100-(t.x+t.width)),o.x=t.x+(100-(t.x+o.width)),a=!0):o.x<0&&(o.width=t.x+t.width,o.x=0,a=!0),a&&t.aspect&&(o.height=o.width/t.aspect*r,e.y>o.y&&(o.y=t.y+(t.height-o.height)));var n=!1;return o.y+o.height>100?(o.height=t.height+(100-(t.y+t.height)),o.y=t.y+(100-(t.y+o.height)),n=!0):o.y<0&&(o.height=t.y+t.height,o.y=0,n=!0),n&&t.aspect&&(o.width=o.height*t.aspect/r,o.x<t.x&&(o.x=t.x+(t.width-o.width))),o}var m=function(){function e(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(t,r,o){return r&&e(t.prototype,r),o&&e(t,o),t}}(),y=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e},w=r(1),C=o(w),x=r(2),O=o(x),b=!1;try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return b=!0,!0}}))}catch(e){}var R=function(e){function t(){var e,r,o,a;n(this,t);for(var s=arguments.length,p=Array(s),f=0;f<s;f++)p[f]=arguments[f];return r=o=i(this,(e=t.__proto__||Object.getPrototypeOf(t)).call.apply(e,[this].concat(p))),o.state={},o.onCropMouseTouchDown=function(e){var t=o.props,r=t.crop;if(!t.disabled){e.preventDefault();var a=d(e);o.componentRef.focus({preventScroll:!0});var n=e.target.dataset.ord,i="nw"===n||"w"===n||"sw"===n,s="nw"===n||"n"===n||"ne"===n,h=void 0;r.aspect&&(h=c(o.cropSelectRef)),o.evData={clientStartX:a.x,clientStartY:a.y,cropStartWidth:r.width,cropStartHeight:r.height,cropStartX:i?r.x+r.width:r.x,cropStartY:s?r.y+r.height:r.y,xInversed:i,yInversed:s,xCrossOver:i,yCrossOver:s,startXCrossOver:i,startYCrossOver:s,isResize:e.target!==o.cropSelectRef,ord:n,cropOffset:h},o.mouseDownOnCrop=!0,o.setState({cropIsActive:!0})}},o.onComponentMouseTouchDown=function(e){var t=o.props,r=t.crop,a=t.disabled,n=t.keepSelection,i=t.onChange;if(e.target===o.imageRef&&!(a||n&&u(r))){e.preventDefault();var s=d(e);o.componentRef.focus({preventScroll:!0});var h=c(o.imageRef),p=(s.x-h.left)/o.imageRef.width*100,f=(s.y-h.top)/o.imageRef.height*100,l={aspect:r?r.aspect:void 0,x:p,y:f,width:0,height:0};o.evData={clientStartX:s.x,clientStartY:s.y,cropStartWidth:l.width,cropStartHeight:l.height,cropStartX:l.x,cropStartY:l.y,xInversed:!1,yInversed:!1,xCrossOver:!1,yCrossOver:!1,startXCrossOver:!1,startYCrossOver:!1,isResize:!0,ord:"nw"},o.mouseDownOnCrop=!0,i(l,g(o.imageRef,l)),o.setState({cropIsActive:!0})}},o.onDocMouseTouchMove=function(e){var t=o.props,r=t.crop,a=t.disabled,n=t.onChange;if((0,t.onDragStart)(),!a&&o.mouseDownOnCrop){e.preventDefault();var i=o,s=i.evData,c=d(e);s.isResize&&r.aspect&&s.cropOffset&&(c.y=o.straightenYPath(c.x));var h=c.x-s.clientStartX;s.xDiffPc=h/o.imageRef.width*100;var u=c.y-s.clientStartY;s.yDiffPc=u/o.imageRef.height*100;var p=void 0;p=s.isResize?o.resizeCrop():o.dragCrop(),n(p,g(o.imageRef,p))}},o.onComponentKeyDown=function(e){var r=o.props,a=r.crop,n=r.disabled,i=r.onChange,s=r.onComplete;if(!n){var c=e.which,d=!1;if(u(a)){var p=o.makeNewCrop();c===t.arrowKey.left?(p.x-=t.nudgeStep,d=!0):c===t.arrowKey.right?(p.x+=t.nudgeStep,d=!0):c===t.arrowKey.up?(p.y-=t.nudgeStep,d=!0):c===t.arrowKey.down&&(p.y+=t.nudgeStep,d=!0),d&&(e.preventDefault(),p.x=h(p.x,0,100-p.width),p.y=h(p.y,0,100-p.height),i(p,g(o.imageRef,p)),s(p,g(o.imageRef,p)))}}},o.onDocMouseTouchEnd=function(){var e=o.props,t=e.crop,r=e.disabled,a=e.onComplete;(0,e.onDragEnd)(),r||o.mouseDownOnCrop&&(o.mouseDownOnCrop=!1,a(t,g(o.imageRef,t)),o.setState({cropIsActive:!1}))},a=r,i(o,a)}return s(t,e),m(t,[{key:"componentDidMount",value:function(){var e=!!b&&{passive:!1};if(document.addEventListener("mousemove",this.onDocMouseTouchMove,e),document.addEventListener("touchmove",this.onDocMouseTouchMove,e),document.addEventListener("mouseup",this.onDocMouseTouchEnd,e),document.addEventListener("touchend",this.onDocMouseTouchEnd,e),document.addEventListener("touchcancel",this.onDocMouseTouchEnd,e),this.imageRef.complete||this.imageRef.readyState)if(0===this.imageRef.naturalWidth){var t=this.imageRef.src;this.imageRef.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",this.imageRef.src=t}else this.onImageLoad(this.imageRef)}},{key:"componentDidUpdate",value:function(e){e.crop!==this.props.crop&&this.resolveCropAndTriggerChange(this.props.crop,this.imageRef)}},{key:"componentWillUnmount",value:function(){document.removeEventListener("mousemove",this.onDocMouseTouchMove),document.removeEventListener("touchmove",this.onDocMouseTouchMove),document.removeEventListener("mouseup",this.onDocMouseTouchEnd),document.removeEventListener("touchend",this.onDocMouseTouchEnd),document.removeEventListener("touchcancel",this.onDocMouseTouchEnd)}},{key:"onImageLoad",value:function(e){var t=this.resolveCropAndTriggerChange(this.props.crop,e);this.props.onImageLoaded(e,g(e,t))}},{key:"getCropStyle",value:function(){var e=this.props.crop;return{top:e.y+"%",left:e.x+"%",width:e.width+"%",height:e.height+"%"}}},{key:"getNewSize",value:function(){var e=this.props,t=e.crop,r=e.minWidth,o=e.maxWidth,a=e.minHeight,n=e.maxHeight,i=this.evData,s=this.imageRef.width/this.imageRef.height,c=i.cropStartWidth+i.xDiffPc;i.xCrossOver&&(c=Math.abs(c)),c=h(c,r,o);var d=void 0;return d=t.aspect?c/t.aspect*s:i.cropStartHeight+i.yDiffPc,i.yCrossOver&&(d=Math.min(Math.abs(d),i.cropStartY)),d=h(d,a,n),t.aspect&&(c=h(d*t.aspect/s,0,100)),{width:c,height:d}}},{key:"resolveCropAndTriggerChange",value:function(e,t){var r=l(e,t);return r!==e&&(this.props.onChange(r,g(t,r)),this.props.onComplete(r,g(t,r))),r}},{key:"dragCrop",value:function(){var e=this.makeNewCrop(),t=this.evData;return e.x=h(t.cropStartX+t.xDiffPc,0,100-e.width),e.y=h(t.cropStartY+t.yDiffPc,0,100-e.height),e}},{key:"resizeCrop",value:function(){var e=this.makeNewCrop(),r=this.evData,o=r.ord,a=this.imageRef.width/this.imageRef.height;r.xInversed&&(r.xDiffPc-=2*r.cropStartWidth),r.yInversed&&(r.yDiffPc-=2*r.cropStartHeight);var n=this.getNewSize(),i=r.cropStartX,s=r.cropStartY;r.xCrossOver&&(i=e.x+(e.width-n.width)),r.yCrossOver&&(s=!1===r.lastYCrossover?e.y-n.height:e.y+(e.height-n.height));var c=v(this.props.crop,{x:i,y:s,width:n.width,height:n.height,aspect:e.aspect},a);return e.aspect||t.xyOrds.indexOf(o)>-1?(e.x=c.x,e.y=c.y,e.width=c.width,e.height=c.height):t.xOrds.indexOf(o)>-1?(e.x=c.x,e.width=c.width):t.yOrds.indexOf(o)>-1&&(e.y=c.y,e.height=c.height),r.lastYCrossover=r.yCrossOver,this.crossOverCheck(),e}},{key:"straightenYPath",value:function(e){var t=this.evData,r=t.ord,o=t.cropOffset,a=t.cropStartWidth/100*this.imageRef.width,n=t.cropStartHeight/100*this.imageRef.height,i=void 0,s=void 0;return"nw"===r||"se"===r?(i=n/a,s=o.top-o.left*i):(i=-n/a,s=o.top+(n-o.left*i)),i*e+s}},{key:"createCropSelection",value:function(){var e=this,t=this.props.disabled,r=this.getCropStyle();return C.default.createElement("div",{ref:function(t){e.cropSelectRef=t},style:r,className:"ReactCrop__crop-selection",onMouseDown:this.onCropMouseTouchDown,onTouchStart:this.onCropMouseTouchDown,role:"presentation"},!t&&C.default.createElement("div",{className:"ReactCrop__drag-elements"},C.default.createElement("div",{className:"ReactCrop__drag-bar ord-n","data-ord":"n"}),C.default.createElement("div",{className:"ReactCrop__drag-bar ord-e","data-ord":"e"}),C.default.createElement("div",{className:"ReactCrop__drag-bar ord-s","data-ord":"s"}),C.default.createElement("div",{className:"ReactCrop__drag-bar ord-w","data-ord":"w"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-nw","data-ord":"nw"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-n","data-ord":"n"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-ne","data-ord":"ne"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-e","data-ord":"e"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-se","data-ord":"se"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-s","data-ord":"s"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-sw","data-ord":"sw"}),C.default.createElement("div",{className:"ReactCrop__drag-handle ord-w","data-ord":"w"})))}},{key:"makeNewCrop",value:function(){return y({},t.defaultCrop,this.props.crop)}},{key:"crossOverCheck",value:function(){var e=this.evData;(!e.xCrossOver&&-Math.abs(e.cropStartWidth)-e.xDiffPc>=0||e.xCrossOver&&-Math.abs(e.cropStartWidth)-e.xDiffPc<=0)&&(e.xCrossOver=!e.xCrossOver),(!e.yCrossOver&&-Math.abs(e.cropStartHeight)-e.yDiffPc>=0||e.yCrossOver&&-Math.abs(e.cropStartHeight)-e.yDiffPc<=0)&&(e.yCrossOver=!e.yCrossOver);var t=e.xCrossOver!==e.startXCrossOver,r=e.yCrossOver!==e.startYCrossOver;e.inversedXOrd=!!t&&p(e.ord),e.inversedYOrd=!!r&&p(e.ord)}},{key:"render",value:function(){var e=this,t=this.props,r=t.children,o=t.className,n=t.crossorigin,i=t.crop,s=t.disabled,c=t.imageAlt,d=t.onImageError,h=t.src,p=t.style,f=t.imageStyle,l=this.state.cropIsActive,g=void 0;u(i)&&(g=this.createCropSelection());var v=["ReactCrop"];return l&&v.push("ReactCrop--active"),i&&(i.aspect&&v.push("ReactCrop--fixed-aspect"),!l||i.width&&i.height||v.push("ReactCrop--crop-invisible")),s&&v.push("ReactCrop--disabled"),o&&v.push.apply(v,a(o.split(" "))),C.default.createElement("div",{ref:function(t){e.componentRef=t},className:v.join(" "),style:p,onTouchStart:this.onComponentMouseTouchDown,onMouseDown:this.onComponentMouseTouchDown,role:"presentation",tabIndex:"1",onKeyDown:this.onComponentKeyDown},C.default.createElement("img",{ref:function(t){e.imageRef=t},crossOrigin:n,className:"ReactCrop__image",style:f,src:h,onLoad:function(t){return e.onImageLoad(t.target)},onError:d,alt:c}),g,r)}}]),t}(w.PureComponent);R.xOrds=["e","w"],R.yOrds=["n","s"],R.xyOrds=["nw","ne","se","sw"],R.arrowKey={left:37,up:38,right:39,down:40},R.nudgeStep=.2,R.defaultCrop={x:0,y:0,width:0,height:0},R.propTypes={className:O.default.string,crossorigin:O.default.string,children:O.default.oneOfType([O.default.arrayOf(O.default.node),O.default.node]),crop:O.default.shape({aspect:O.default.number,x:O.default.number,y:O.default.number,width:O.default.number,height:O.default.number}),disabled:O.default.bool,imageAlt:O.default.string,imageStyle:O.default.shape({}),keepSelection:O.default.bool,minWidth:O.default.number,minHeight:O.default.number,maxWidth:O.default.number,maxHeight:O.default.number,onChange:O.default.func.isRequired,onImageError:O.default.func,onComplete:O.default.func,onImageLoaded:O.default.func,onDragStart:O.default.func,onDragEnd:O.default.func,src:O.default.string.isRequired,style:O.default.shape({})},R.defaultProps={className:void 0,crop:void 0,crossorigin:void 0,disabled:!1,imageAlt:"",maxWidth:100,maxHeight:100,minWidth:0,minHeight:0,keepSelection:!1,onComplete:function(){},onImageError:function(){},onImageLoaded:function(){},onDragStart:function(){},onDragEnd:function(){},children:void 0,style:void 0,imageStyle:void 0},e.exports=R,e.exports.getPixelCrop=g,e.exports.makeAspectCrop=f,e.exports.containCrop=v},function(t,r){t.exports=e},function(e,t,r){e.exports=r(3)()},function(e,t,r){"use strict";function o(){}var a=r(4);e.exports=function(){function e(e,t,r,o,n,i){if(i!==a){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t};return r.checkPropTypes=o,r.PropTypes=r,r}},function(e,t,r){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}])});
@@ -0,0 +1 @@
1
+ !function(a){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=a();else if("function"==typeof define&&define.amd)define([],a);else{var b;b="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,b.Reflux=a()}}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b,c){"use strict";function d(a,b,c){this.fn=a,this.context=b,this.once=c||!1}function e(){}var f=Object.prototype.hasOwnProperty,g="function"!=typeof Object.create?"~":!1;e.prototype._events=void 0,e.prototype.eventNames=function(){var a,b=this._events,c=[];if(!b)return c;for(a in b)f.call(b,a)&&c.push(g?a.slice(1):a);return Object.getOwnPropertySymbols?c.concat(Object.getOwnPropertySymbols(b)):c},e.prototype.listeners=function(a,b){var c=g?g+a:a,d=this._events&&this._events[c];if(b)return!!d;if(!d)return[];if(d.fn)return[d.fn];for(var e=0,f=d.length,h=new Array(f);f>e;e++)h[e]=d[e].fn;return h},e.prototype.emit=function(a,b,c,d,e,f){var h=g?g+a:a;if(!this._events||!this._events[h])return!1;var i,j,k=this._events[h],l=arguments.length;if("function"==typeof k.fn){switch(k.once&&this.removeListener(a,k.fn,void 0,!0),l){case 1:return k.fn.call(k.context),!0;case 2:return k.fn.call(k.context,b),!0;case 3:return k.fn.call(k.context,b,c),!0;case 4:return k.fn.call(k.context,b,c,d),!0;case 5:return k.fn.call(k.context,b,c,d,e),!0;case 6:return k.fn.call(k.context,b,c,d,e,f),!0}for(j=1,i=new Array(l-1);l>j;j++)i[j-1]=arguments[j];k.fn.apply(k.context,i)}else{var m,n=k.length;for(j=0;n>j;j++)switch(k[j].once&&this.removeListener(a,k[j].fn,void 0,!0),l){case 1:k[j].fn.call(k[j].context);break;case 2:k[j].fn.call(k[j].context,b);break;case 3:k[j].fn.call(k[j].context,b,c);break;default:if(!i)for(m=1,i=new Array(l-1);l>m;m++)i[m-1]=arguments[m];k[j].fn.apply(k[j].context,i)}}return!0},e.prototype.on=function(a,b,c){var e=new d(b,c||this),f=g?g+a:a;return this._events||(this._events=g?{}:Object.create(null)),this._events[f]?this._events[f].fn?this._events[f]=[this._events[f],e]:this._events[f].push(e):this._events[f]=e,this},e.prototype.once=function(a,b,c){var e=new d(b,c||this,!0),f=g?g+a:a;return this._events||(this._events=g?{}:Object.create(null)),this._events[f]?this._events[f].fn?this._events[f]=[this._events[f],e]:this._events[f].push(e):this._events[f]=e,this},e.prototype.removeListener=function(a,b,c,d){var e=g?g+a:a;if(!this._events||!this._events[e])return this;var f=this._events[e],h=[];if(b)if(f.fn)(f.fn!==b||d&&!f.once||c&&f.context!==c)&&h.push(f);else for(var i=0,j=f.length;j>i;i++)(f[i].fn!==b||d&&!f[i].once||c&&f[i].context!==c)&&h.push(f[i]);return h.length?this._events[e]=1===h.length?h[0]:h:delete this._events[e],this},e.prototype.removeAllListeners=function(a){return this._events?(a?delete this._events[g?g+a:a]:this._events=g?{}:Object.create(null),this):this},e.prototype.off=e.prototype.removeListener,e.prototype.addListener=e.prototype.on,e.prototype.setMaxListeners=function(){return this},e.prefixed=g,"undefined"!=typeof b&&(b.exports=e)},{}],2:[function(a,b,c){"use strict";Object.defineProperty(c,"__esModule",{value:!0})},{}],3:[function(a,b,c){"use strict";function d(){var a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!0;h=a}function e(a){h&&i.push(a)}function f(a){h&&j.push(a)}function g(){for(;i.length;)i.pop();for(;j.length;)j.pop()}Object.defineProperty(c,"__esModule",{value:!0});var h=!1,i=[],j=[];c.useKeep=d,c.addStore=e,c.addAction=f,c.createdStores=i,c.createdActions=j,c.reset=g},{}],4:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}Object.defineProperty(c,"__esModule",{value:!0}),c.joinStrict=c.joinConcat=c.joinLeading=c.joinTrailing=c.fetchInitialState=c.stopListeningToAll=c.stopListeningTo=c.listenTo=c.validateListening=c.listenToMany=c.hasListener=void 0;var e=a("./utils"),f=d(e),g=a("./joins"),h=function(a){for(var b,c=0,d={};c<(a.children||[]).length;++c)b=a.children[c],a[b]&&(d[b]=a[b]);return d},i=function j(a){var b={};for(var c in a){var d=a[c],e=h(d),g=j(e);b[c]=d;for(var i in g){var k=g[i];b[c+f.capitalize(i)]=k}}return b};c.hasListener=function(a){for(var b,c,d,e=0;e<(this.subscriptions||[]).length;++e)for(d=[].concat(this.subscriptions[e].listenable),b=0;b<d.length;b++)if(c=d[b],c===a||c.hasListener&&c.hasListener(a))return!0;return!1},c.listenToMany=function(a){var b=i(a);for(var c in b){var d=f.callbackName(c),e=this[d]?d:this[c]?c:void 0;e&&this.listenTo(b[c],e,this[d+"Default"]||this[e+"Default"]||e)}},c.validateListening=function(a){return a===this?"Listener is not able to listen to itself":f.isFunction(a.listen)?a.hasListener&&a.hasListener(this)?"Listener cannot listen to this listenable because of circular loop":void 0:a+" is missing a listen method"},c.listenTo=function(a,b,c){var d,e,g,h=this.subscriptions=this.subscriptions||[];return f.throwIf(this.validateListening(a)),this.fetchInitialState(a,c),d=a.listen(this[b]||b,this),e=function(){var a=h.indexOf(g);f.throwIf(-1===a,"Tried to remove listen already gone from subscriptions list!"),h.splice(a,1),d()},g={stop:e,listenable:a},h.push(g),g},c.stopListeningTo=function(a){for(var b,c=0,d=this.subscriptions||[];c<d.length;c++)if(b=d[c],b.listenable===a)return b.stop(),f.throwIf(-1!==d.indexOf(b),"Failed to remove listen from subscriptions list!"),!0;return!1},c.stopListeningToAll=function(){for(var a,b=this.subscriptions||[];a=b.length;)b[0].stop(),f.throwIf(b.length!==a-1,"Failed to remove listen from subscriptions list!")},c.fetchInitialState=function(a,b){b=b&&this[b]||b;var c=this;if(f.isFunction(b)&&f.isFunction(a.getInitialState)){var d=a.getInitialState();d&&f.isFunction(d.then)?d.then(function(){b.apply(c,arguments)}):b.call(this,d)}},c.joinTrailing=(0,g.instanceJoinCreator)("last"),c.joinLeading=(0,g.instanceJoinCreator)("first"),c.joinConcat=(0,g.instanceJoinCreator)("all"),c.joinStrict=(0,g.instanceJoinCreator)("strict")},{"./joins":11,"./utils":13}],5:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}Object.defineProperty(c,"__esModule",{value:!0}),c.deferWith=c.triggerAsync=c.trigger=c.listen=c.shouldEmit=c.preEmit=void 0;var e=a("./utils"),f=d(e);c.preEmit=function(){},c.shouldEmit=function(){return!0},c.listen=function(a,b){b=b||this;var c=function(c){e||a.apply(b,c)},d=this,e=!1;return this.emitter.addListener(this.eventLabel,c),function(){e=!0,d.emitter.removeListener(d.eventLabel,c)}},c.trigger=function(){var a=arguments,b=this.preEmit.apply(this,a);a=void 0===b?a:f.isArguments(b)?b:[].concat(b),this.shouldEmit.apply(this,a)&&this.emitter.emit(this.eventLabel,a)},c.triggerAsync=function(){var a=arguments,b=this;f.nextTick(function(){b.trigger.apply(b,a)})},c.deferWith=function(a){var b=this.trigger,c=this,d=function(){b.apply(c,arguments)};this.trigger=function(){a.apply(c,[d].concat([].splice.call(arguments,0)))}}},{"./utils":13}],6:[function(a,b,c){arguments[4][2][0].apply(c,arguments)},{dup:2}],7:[function(a,b,c){"use strict";function d(a,b){for(var c in b)if(Object.getOwnPropertyDescriptor&&Object.defineProperty){var d=Object.getOwnPropertyDescriptor(b,c);if(!d.value||"function"!=typeof d.value||!b.hasOwnProperty(c))continue;a[c]=b[c].bind(a)}else{var e=b[c];if("function"!=typeof e||!b.hasOwnProperty(c))continue;a[c]=e.bind(a)}return a}Object.defineProperty(c,"__esModule",{value:!0}),c.bindMethods=d},{}],8:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}function e(a){a=a||{},g.isObject(a)||(a={actionName:a});for(var b in i)if(!n[b]&&k[b])throw new Error("Cannot override API method "+b+" in Reflux.ActionMethods. Use another method name or override it on Reflux.PublisherMethods instead.");for(var c in a)if(!n[c]&&k[c])throw new Error("Cannot override API method "+c+" in action creation. Use another method name or override it on Reflux.PublisherMethods instead.");a.children=a.children||[],a.asyncResult&&(a.children=a.children.concat(["completed","failed"]));for(var d=0,f={};d<a.children.length;d++){var h=a.children[d],j="string"==typeof h?h:h.actionName;f[j]=e(h)}var l=g.extend({eventLabel:"action",emitter:new g.EventEmitter,_isAction:!0},k,i,a),o=function p(){var a=!1;for(var b in p.childActions){a=!0;break}var c=!p.sync&&"undefined"!=typeof p.sync||a,d=c?"triggerAsync":"trigger";return p[d].apply(p,arguments)};return g.extend(o,f,l),m.addAction(o),o}Object.defineProperty(c,"__esModule",{value:!0}),c.createAction=e;var f=a("./utils"),g=d(f),h=a("./ActionMethods"),i=d(h),j=a("./PublisherMethods"),k=d(j),l=a("./Keep"),m=d(l),n={preEmit:1,shouldEmit:1}},{"./ActionMethods":2,"./Keep":3,"./PublisherMethods":5,"./utils":13}],9:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}function e(a){function b(){var b,c=0;if(this.subscriptions=[],this.emitter=new g.EventEmitter,this.eventLabel="change",(0,k.bindMethods)(this,a),this.init&&g.isFunction(this.init)&&this.init(),this.listenables)for(b=[].concat(this.listenables);c<b.length;c++)this.listenToMany(b[c])}a=a||{};for(var c in m)if(!r[c]&&(o[c]||q[c]))throw new Error("Cannot override API method "+c+" in Reflux.StoreMethods. Use another method name or override it on Reflux.PublisherMethods / Reflux.ListenerMethods instead.");for(var d in a)if(!r[d]&&(o[d]||q[d]))throw new Error("Cannot override API method "+d+" in store creation. Use another method name or override it on Reflux.PublisherMethods / Reflux.ListenerMethods instead.");a=(0,j.mix)(a),g.extend(b.prototype,q,o,m,a);var e=new b;return i.addStore(e),e}Object.defineProperty(c,"__esModule",{value:!0}),c.createStore=e;var f=a("./utils"),g=d(f),h=a("./Keep"),i=d(h),j=a("./mixer"),k=a("./bindMethods"),l=a("./StoreMethods"),m=d(l),n=a("./PublisherMethods"),o=d(n),p=a("./ListenerMethods"),q=d(p),r={preEmit:1,shouldEmit:1}},{"./Keep":3,"./ListenerMethods":4,"./PublisherMethods":5,"./StoreMethods":6,"./bindMethods":7,"./mixer":12,"./utils":13}],10:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}function e(a){r.EventEmitter=a}function f(a){r.nextTick=a}function g(a){a(this)}Object.defineProperty(c,"__esModule",{value:!0}),c.__keep=c.joinConcat=c.joinStrict=c.joinLeading=c.all=c.joinTrailing=c.use=c.nextTick=c.setEventEmitter=c.createActions=c.createStore=c.createAction=c.utils=c.StoreMethods=c.PublisherMethods=c.ListenerMethods=c.ActionMethods=c.version=void 0;var h=a("./ActionMethods"),i=d(h),j=a("./ListenerMethods"),k=d(j),l=a("./PublisherMethods"),m=d(l),n=a("./StoreMethods"),o=d(n),p=a("./joins"),q=a("./utils"),r=d(q),s=a("./createAction"),t=a("./createStore"),u=a("./Keep"),v=d(u),w={"reflux-core":"1.0.0"},x=(0,p.staticJoinCreator)("last"),y=x,z=(0,p.staticJoinCreator)("first"),A=(0,p.staticJoinCreator)("strict"),B=(0,p.staticJoinCreator)("all"),C=r,D=function(){var a=function(a,b){Object.keys(a).forEach(function(c){var d=a[c];b[c]=(0,s.createAction)(d)})};return function(b){var c={};return b instanceof Array?b.forEach(function(b){r.isObject(b)?a(b,c):c[b]=(0,s.createAction)(b)}):a(b,c),c}}();c.version=w,c.ActionMethods=i,c.ListenerMethods=k,c.PublisherMethods=m,c.StoreMethods=o,c.utils=C,c.createAction=s.createAction,c.createStore=t.createStore,c.createActions=D,c.setEventEmitter=e,c.nextTick=f,c.use=g,c.joinTrailing=x,c.all=y,c.joinLeading=z,c.joinStrict=A,c.joinConcat=B,c.__keep=v,Object.defineProperty(c,"default",{get:function(){return c}}),Function.prototype.bind||console.error("Function.prototype.bind not available. ES5 shim required. https://github.com/spoike/refluxjs#es5")},{"./ActionMethods":2,"./Keep":3,"./ListenerMethods":4,"./PublisherMethods":5,"./StoreMethods":6,"./createAction":8,"./createStore":9,"./joins":11,"./utils":13}],11:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}function e(a){return function(){var b=n.call(arguments);return(0,k.createStore)({init:function(){this[o[a]].apply(this,b.concat("triggerAsync"))}})}}function f(a){return function(){m.throwIf(arguments.length<2,"Cannot create a join with less than 2 listenables!");var b,c,d=n.call(arguments),e=d.pop(),f=d.length,j={numberOfListenables:f,callback:this[e]||e,listener:this,strategy:a},k=[];for(b=0;f>b;b++)m.throwIf(this.validateListening(d[b]));for(b=0;f>b;b++)k.push(d[b].listen(i(b,j),this));return h(j),c={listenable:d},c.stop=g(c,k,this),this.subscriptions=(this.subscriptions||[]).concat(c),c}}function g(a,b,c){return function(){var d,e=c.subscriptions,f=e?e.indexOf(a):-1;for(m.throwIf(-1===f,"Tried to remove join already gone from subscriptions list!"),d=0;d<b.length;d++)b[d]();e.splice(f,1)}}function h(a){a.listenablesEmitted=new Array(a.numberOfListenables),a.args=new Array(a.numberOfListenables)}function i(a,b){return function(){var c=n.call(arguments);if(b.listenablesEmitted[a])switch(b.strategy){case"strict":throw new Error("Strict join failed because listener triggered twice.");case"last":b.args[a]=c;break;case"all":b.args[a].push(c)}else b.listenablesEmitted[a]=!0,b.args[a]="all"===b.strategy?[c]:c;j(b)}}function j(a){for(var b=0;b<a.numberOfListenables;b++)if(!a.listenablesEmitted[b])return;a.callback.apply(a.listener,a.args),h(a)}Object.defineProperty(c,"__esModule",{value:!0}),c.staticJoinCreator=e,c.instanceJoinCreator=f;var k=a("./createStore"),l=a("./utils"),m=d(l),n=Array.prototype.slice,o={strict:"joinStrict",first:"joinLeading",last:"joinTrailing",all:"joinConcat"}},{"./createStore":9,"./utils":13}],12:[function(a,b,c){"use strict";function d(a){if(a&&a.__esModule)return a;var b={};if(null!=a)for(var c in a)Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=a[c]);return b["default"]=a,b}function e(a){var b={init:[],preEmit:[],shouldEmit:[]},c=function d(a){var c={};return a.mixins&&a.mixins.forEach(function(a){g.extend(c,d(a))}),g.extend(c,a),Object.keys(b).forEach(function(c){a.hasOwnProperty(c)&&b[c].push(a[c])}),c}(a);return b.init.length>1&&(c.init=function(){var a=arguments;b.init.forEach(function(b){b.apply(this,a)},this)}),b.preEmit.length>1&&(c.preEmit=function(){return b.preEmit.reduce(function(a,b){var c=b.apply(this,a);return void 0===c?a:[c]}.bind(this),arguments)}),b.shouldEmit.length>1&&(c.shouldEmit=function(){var a=arguments;return!b.shouldEmit.some(function(b){return!b.apply(this,a)},this)}),Object.keys(b).forEach(function(a){1===b[a].length&&(c[a]=b[a][0])}),c}Object.defineProperty(c,"__esModule",{value:!0}),c.mix=e;var f=a("./utils"),g=d(f)},{"./utils":13}],13:[function(a,b,c){"use strict";function d(a){return a.charAt(0).toUpperCase()+a.slice(1)}function e(a,b){return b=b||"on",b+c.capitalize(a)}function f(a){var b="undefined"==typeof a?"undefined":m(a);return"function"===b||"object"===b&&!!a}function g(a){if(!f(a))return a;for(var b,c,d,e=1,g=arguments.length;g>e;e++){b=arguments[e],c=Object.keys(b);for(var h=0;h<c.length;h++)if(d=c[h],Object.getOwnPropertyDescriptor&&Object.defineProperty){var i=Object.getOwnPropertyDescriptor(b,d);Object.defineProperty(a,d,i)}else a[d]=b[d]}return a}function h(a){return"function"==typeof a}function i(a){setTimeout(a,0)}function j(a,b){for(var c={},d=0;d<a.length;d++)c[a[d]]=b[d];return c}function k(a){return"object"===("undefined"==typeof a?"undefined":m(a))&&"callee"in a&&"number"==typeof a.length}function l(a,b){if(a)throw Error(b||a)}Object.defineProperty(c,"__esModule",{value:!0});var m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a};c.capitalize=d,c.callbackName=e,c.isObject=f,c.extend=g,c.isFunction=h,c.nextTick=i,c.object=j,c.isArguments=k,c.throwIf=l,c.EventEmitter=a("eventemitter3")},{eventemitter3:1}],14:[function(a,b,c){var d=a("reflux-core/lib/utils"),e=a("reflux-core/lib/ListenerMethods");b.exports=d.extend({componentWillUnmount:e.stopListeningToAll},e)},{"reflux-core/lib/ListenerMethods":4,"reflux-core/lib/utils":13}],15:[function(a,b,c){var d=a("reflux-core");if(d.defineReact=a("./defineReact"),d.utils.inherits=function(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function, not "+typeof b);a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),b&&(Object.setPrototypeOf?Object.setPrototypeOf(a,b):a.__proto__=b)},"undefined"!=typeof React&&React)d.defineReact(React);else try{var e=a("react");d.defineReact(e)}catch(f){}},{"./defineReact":18,react:void 0,"reflux-core":10}],16:[function(a,b,c){var d=a("reflux-core/lib/ListenerMethods"),e=a("./ListenerMixin"),f=a("reflux-core/lib/utils");b.exports=function(a,b){return f.throwIf("undefined"==typeof b,"Reflux.connect() requires a key."),{getInitialState:function(){return f.isFunction(a.getInitialState)?f.object([b],[a.getInitialState()]):{}},componentDidMount:function(){var c=this;f.extend(c,d),this.listenTo(a,function(a){c.setState(f.object([b],[a]))})},componentWillUnmount:e.componentWillUnmount}}},{"./ListenerMixin":14,"reflux-core/lib/ListenerMethods":4,"reflux-core/lib/utils":13}],17:[function(a,b,c){var d=a("reflux-core/lib/ListenerMethods"),e=a("./ListenerMixin"),f=a("reflux-core/lib/utils");b.exports=function(a,b,c){return f.throwIf(f.isFunction(b),"Reflux.connectFilter() requires a key."),{getInitialState:function(){if(!f.isFunction(a.getInitialState))return{};var d=c.call(this,a.getInitialState());return"undefined"!=typeof d?f.object([b],[d]):{}},componentDidMount:function(){var e=this;f.extend(this,d),this.listenTo(a,function(a){var d=c.call(e,a);e.setState(f.object([b],[d]))})},componentWillUnmount:e.componentWillUnmount}}},{"./ListenerMixin":14,"reflux-core/lib/ListenerMethods":4,"reflux-core/lib/utils":13}],18:[function(a,b,c){function d(a,b,c){var j,k;try{g=a||g||React,k=c||g.Component}catch(l){return}if(g&&k&&(!i||c)){var m=function(a,b,c){k.call(this,a,b,c)};if(h.utils.inherits(m,k),j=m.prototype,j.storeKeys=null,j.componentWillMount=function(){if(this.store&&(Array.isArray(this.stores)?this.stores.unshift(this.store):this.stores=[this.store]),this.stores){this.__storeunsubscribes__=this.__storeunsubscribes__||[];for(var a=this.setState.bind(this),b=function(b){var c=e(this.storeKeys,b);c&&a(c)}.bind(this),c=0,d=this.stores.length;d>c;c++){var f=this.stores[c];if("function"==typeof f){var g=f.id;if(f.singleton||(f.singleton=new f,g&&(h.stores[g]=f.singleton)),this.stores[c]=f=f.singleton,f.id=g,g&&h.GlobalState[g]){for(var i in h.GlobalState[g])f.state[i]=h.GlobalState[g][i];h.GlobalState[g]=f.state}else g&&(h.GlobalState[g]=f.state)}h.serverMode||this.__storeunsubscribes__.push(f.listen(b));var j=e(this.storeKeys,f.state);j&&this.setState(j)}}this.__readytomap__=!0;var k=this.__delayedmaps__;if(k)for(var l=0,m=k.length;m>l;l++)k[l].func(k[l].state);this.__delayedmaps__=null},j.componentWillUnmount=function(){if(this.__storeunsubscribes__)for(var a=0,b=this.__storeunsubscribes__.length;b>a;a++)this.__storeunsubscribes__[a]();this.__readytomap__=!1},j.mapStoreToState=function(a,b){function c(a){var c=b.call(d,a);if(c){var e=!1;for(var f in c){e=!0;break}e&&d.setState(c)}}"function"==typeof a&&(a=a.singleton?a.singleton:h.initStore(a));var d=this;this.__storeunsubscribes__=this.__storeunsubscribes__||[],this.__storeunsubscribes__.push(a.listen(c)),this.__readytomap__?c(a.state):(this.__delayedmaps__=this.__delayedmaps__||[],this.__delayedmaps__.push({func:c,state:a.state}))},m.extend=function(a){return d(null,null,a)},c)return m;h.Component=m,g.PureComponent&&(h.PureComponent=m.extend(g.PureComponent));var n=function(){this.__store__=h.createStore(),this.state={};var a=this;for(var b in this.__store__)!function(b){Object.defineProperty(a,b,{get:function(){return a.__store__[b]},set:function(c){a.__store__[b]=c}})}(b)};j=n.prototype,Object.defineProperty(j,"listenables",{get:function(){return this.__listenables__},set:function(a){var b={};Array.isArray(a)?a.forEach(function(a){for(var c in a)b[c]=a[c]}):b=a,this.__listenables__=b,this.listenToMany(b)},enumerable:!0,configurable:!0}),j.setState=function(a){for(var b in a)this.state[b]=a[b];this.id&&(h.GlobalState[this.id]=this.state),this.trigger(a)},Object.defineProperty(n,"isES6Store",{get:function(){return!0},enumerable:!0,configurable:!0}),Object.defineProperty(n,"state",{get:function(){if(!this.singleton)throw new Error("Reflux.Store.state is inaccessible before the store has been initialized.");return this.singleton.state},enumerable:!0,configurable:!0}),h.Store=n,h.GlobalState=h.GlobalState||{},h.stores={},h.getGlobalState=function(){return f(h.GlobalState)},h.setGlobalState=function(a){for(var b in a)h.stores[b]?h.stores[b].setState(a[b]):h.GlobalState[b]=a[b]},h.initializeGlobalStore=h.initStore=function(a){var b=a.id;if(a.singleton)return a.singleton;if(!b)return a.singleton=new a,a.singleton;var c=a.singleton=new a;if(h.stores[b]=c,c.id=b,h.GlobalState[b]){for(var d in h.GlobalState[b])c.state[d]=h.GlobalState[b][d];h.GlobalState[b]=c.state}else h.GlobalState[b]=c.state;return c},i=!0}}function e(a,b){if(!a)return b;for(var c=!1,d={},e=0,f=a.length;f>e;e++){var g=a[e];b.hasOwnProperty(g)&&(c=!0,d[g]=b[g])}return c?d:!1}function f(a,b){if(null===a||"object"!=typeof a)return a;if(a.constructor!==Object&&a.constructor!==Array)return a;if(a.constructor===Date||a.constructor===RegExp||a.constructor===Function||a.constructor===String||a.constructor===Number||a.constructor===Boolean)return new a.constructor(a);b=b||new a.constructor;for(var c in a)b[c]="undefined"==typeof b[c]?f(a[c],null):b[c];return b}var g,h=a("reflux-core"),i=!1;b.exports=d},{"reflux-core":10}],19:[function(a,b,c){var d=a("reflux-core");d.serverMode="object"!=typeof window,d.connect=a("./connect"),d.connectFilter=a("./connectFilter"),d.ListenerMixin=a("./ListenerMixin"),d.listenTo=a("./listenTo"),d.listenToMany=a("./listenToMany"),a("./addES6"),b.exports=d},{"./ListenerMixin":14,"./addES6":15,"./connect":16,"./connectFilter":17,"./listenTo":20,"./listenToMany":21,"reflux-core":10}],20:[function(a,b,c){var d=a("reflux-core/lib/ListenerMethods");b.exports=function(a,b,c){return{componentDidMount:function(){for(var e in d)if(this[e]!==d[e]){if(this[e])throw"Can't have other property '"+e+"' when using Reflux.listenTo!";this[e]=d[e]}this.listenTo(a,b,c)},componentWillUnmount:d.stopListeningToAll}}},{"reflux-core/lib/ListenerMethods":4}],21:[function(a,b,c){var d=a("reflux-core/lib/ListenerMethods");b.exports=function(a){return{componentDidMount:function(){for(var b in d)if(this[b]!==d[b]){if(this[b])throw"Can't have other property '"+b+"' when using Reflux.listenToMany!";this[b]=d[b]}this.listenToMany(a)},componentWillUnmount:d.stopListeningToAll}}},{"reflux-core/lib/ListenerMethods":4}]},{},[19])(19)});
@@ -0,0 +1,167 @@
1
+ .ReactCrop {
2
+ position: relative;
3
+ display: inline-block;
4
+ cursor: crosshair;
5
+ overflow: hidden;
6
+ max-width: 100%;
7
+ background-color: #000; }
8
+ .ReactCrop:focus {
9
+ outline: none; }
10
+ .ReactCrop--disabled {
11
+ cursor: inherit; }
12
+ .ReactCrop__image {
13
+ /* autoprefixer: off */
14
+ display: block;
15
+ max-width: 100%;
16
+ max-height: -webkit-fill-available;
17
+ max-height: -moz-available;
18
+ max-height: stretch; }
19
+ .ReactCrop--crop-invisible .ReactCrop__image {
20
+ opacity: 0.5; }
21
+ .ReactCrop__crop-selection {
22
+ position: absolute;
23
+ top: 0;
24
+ left: 0;
25
+ transform: translate3d(0, 0, 0);
26
+ box-sizing: border-box;
27
+ cursor: move;
28
+ box-shadow: 0 0 0 9999em rgba(0, 0, 0, 0.5);
29
+ border: 1px solid;
30
+ border-image-source: url("data:image/gif;base64,R0lGODlhCgAKAJECAAAAAP///////wAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEI5RDc5MTFDNkE2MTFFM0JCMDZEODI2QTI4MzJBOTIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEI5RDc5MTBDNkE2MTFFM0JCMDZEODI2QTI4MzJBOTIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuZGlkOjAyODAxMTc0MDcyMDY4MTE4MDgzQzNDMjA5MzREQ0ZDIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjAyODAxMTc0MDcyMDY4MTE4MDgzQzNDMjA5MzREQ0ZDIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEBQoAAgAsAAAAAAoACgAAAhWEERkn7W3ei7KlagMWF/dKgYeyGAUAIfkEBQoAAgAsAAAAAAoACgAAAg+UYwLJ7RnQm7QmsCyVKhUAIfkEBQoAAgAsAAAAAAoACgAAAhCUYgLJHdiinNSAVfOEKoUCACH5BAUKAAIALAAAAAAKAAoAAAIRVISAdusPo3RAzYtjaMIaUQAAIfkEBQoAAgAsAAAAAAoACgAAAg+MDiem7Q8bSLFaG5il6xQAIfkEBQoAAgAsAAAAAAoACgAAAg+UYRLJ7QnQm7SmsCyVKhUAIfkEBQoAAgAsAAAAAAoACgAAAhCUYBLJDdiinNSEVfOEKoECACH5BAUKAAIALAAAAAAKAAoAAAIRFISBdusPo3RBzYsjaMIaUQAAOw==");
31
+ border-image-slice: 1;
32
+ border-image-repeat: repeat; }
33
+ .ReactCrop--disabled .ReactCrop__crop-selection {
34
+ cursor: inherit; }
35
+ .ReactCrop__drag-handle {
36
+ position: absolute;
37
+ width: 9px;
38
+ height: 9px;
39
+ background-color: rgba(0, 0, 0, 0.2);
40
+ border: 1px solid rgba(255, 255, 255, 0.7);
41
+ box-sizing: border-box;
42
+ outline: 1px solid transparent; }
43
+ .ReactCrop .ord-nw {
44
+ top: 0;
45
+ left: 0;
46
+ margin-top: -5px;
47
+ margin-left: -5px;
48
+ cursor: nw-resize; }
49
+ .ReactCrop .ord-n {
50
+ top: 0;
51
+ left: 50%;
52
+ margin-top: -5px;
53
+ margin-left: -5px;
54
+ cursor: n-resize; }
55
+ .ReactCrop .ord-ne {
56
+ top: 0;
57
+ right: 0;
58
+ margin-top: -5px;
59
+ margin-right: -5px;
60
+ cursor: ne-resize; }
61
+ .ReactCrop .ord-e {
62
+ top: 50%;
63
+ right: 0;
64
+ margin-top: -5px;
65
+ margin-right: -5px;
66
+ cursor: e-resize; }
67
+ .ReactCrop .ord-se {
68
+ bottom: 0;
69
+ right: 0;
70
+ margin-bottom: -5px;
71
+ margin-right: -5px;
72
+ cursor: se-resize; }
73
+ .ReactCrop .ord-s {
74
+ bottom: 0;
75
+ left: 50%;
76
+ margin-bottom: -5px;
77
+ margin-left: -5px;
78
+ cursor: s-resize; }
79
+ .ReactCrop .ord-sw {
80
+ bottom: 0;
81
+ left: 0;
82
+ margin-bottom: -5px;
83
+ margin-left: -5px;
84
+ cursor: sw-resize; }
85
+ .ReactCrop .ord-w {
86
+ top: 50%;
87
+ left: 0;
88
+ margin-top: -5px;
89
+ margin-left: -5px;
90
+ cursor: w-resize; }
91
+ .ReactCrop__disabled .ReactCrop__drag-handle {
92
+ cursor: inherit; }
93
+ .ReactCrop__drag-bar {
94
+ position: absolute; }
95
+ .ReactCrop__drag-bar.ord-n {
96
+ top: 0;
97
+ left: 0;
98
+ width: 100%;
99
+ height: 6px;
100
+ margin-top: -3px; }
101
+ .ReactCrop__drag-bar.ord-e {
102
+ right: 0;
103
+ top: 0;
104
+ width: 6px;
105
+ height: 100%;
106
+ margin-right: -3px; }
107
+ .ReactCrop__drag-bar.ord-s {
108
+ bottom: 0;
109
+ left: 0;
110
+ width: 100%;
111
+ height: 6px;
112
+ margin-bottom: -3px; }
113
+ .ReactCrop__drag-bar.ord-w {
114
+ top: 0;
115
+ left: 0;
116
+ width: 6px;
117
+ height: 100%;
118
+ margin-left: -3px; }
119
+ .ReactCrop--new-crop .ReactCrop__drag-bar,
120
+ .ReactCrop--new-crop .ReactCrop__drag-handle,
121
+ .ReactCrop--fixed-aspect .ReactCrop__drag-bar {
122
+ display: none; }
123
+ .ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,
124
+ .ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,
125
+ .ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,
126
+ .ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w {
127
+ display: none; }
128
+ @media (max-width: 768px), (pointer: coarse) {
129
+ .ReactCrop__drag-handle {
130
+ width: 17px;
131
+ height: 17px; }
132
+ .ReactCrop .ord-nw {
133
+ margin-top: -9px;
134
+ margin-left: -9px; }
135
+ .ReactCrop .ord-n {
136
+ margin-top: -9px;
137
+ margin-left: -9px; }
138
+ .ReactCrop .ord-ne {
139
+ margin-top: -9px;
140
+ margin-right: -9px; }
141
+ .ReactCrop .ord-e {
142
+ margin-top: -9px;
143
+ margin-right: -9px; }
144
+ .ReactCrop .ord-se {
145
+ margin-bottom: -9px;
146
+ margin-right: -9px; }
147
+ .ReactCrop .ord-s {
148
+ margin-bottom: -9px;
149
+ margin-left: -9px; }
150
+ .ReactCrop .ord-sw {
151
+ margin-bottom: -9px;
152
+ margin-left: -9px; }
153
+ .ReactCrop .ord-w {
154
+ margin-top: -9px;
155
+ margin-left: -9px; }
156
+ .ReactCrop__drag-bar.ord-n {
157
+ height: 14px;
158
+ margin-top: -7px; }
159
+ .ReactCrop__drag-bar.ord-e {
160
+ width: 14px;
161
+ margin-right: -7px; }
162
+ .ReactCrop__drag-bar.ord-s {
163
+ height: 14px;
164
+ margin-bottom: -7px; }
165
+ .ReactCrop__drag-bar.ord-w {
166
+ width: 14px;
167
+ margin-left: -7px; } }
metadata CHANGED
@@ -1,87 +1,185 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pages_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.4.3
4
+ version: 3.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Inge Jørgensen
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-28 00:00:00.000000000 Z
11
+ date: 2021-02-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: mysql2
14
+ name: capybara
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.3.18
19
+ version: '3.32'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.3.18
26
+ version: '3.32'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rspec-rails
28
+ name: factory_bot
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.1.0
33
+ version: 4.11.0
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 3.1.0
40
+ version: 4.11.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: factory_girl
42
+ name: pg
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 4.3.0
47
+ version: 1.2.3
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 4.3.0
54
+ version: 1.2.3
55
+ - !ruby/object:Gem::Dependency
56
+ name: rails-controller-testing
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 1.0.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.0.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec_junit_formatter
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec-rails
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: 3.8.1
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: 3.8.1
55
97
  - !ruby/object:Gem::Dependency
56
98
  name: shoulda-matchers
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: simplecov
57
113
  requirement: !ruby/object:Gem::Requirement
58
114
  requirements:
59
115
  - - "~>"
60
116
  - !ruby/object:Gem::Version
61
- version: 2.8.0
117
+ version: 0.17.1
62
118
  type: :development
63
119
  prerelease: false
64
120
  version_requirements: !ruby/object:Gem::Requirement
65
121
  requirements:
66
122
  - - "~>"
67
123
  - !ruby/object:Gem::Version
68
- version: 2.8.0
124
+ version: 0.17.1
125
+ - !ruby/object:Gem::Dependency
126
+ name: timecop
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 0.8.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 0.8.0
69
139
  - !ruby/object:Gem::Dependency
70
140
  name: rails
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '5.0'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '5.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: actionpack-page_caching
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: 1.1.0
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: 1.1.0
167
+ - !ruby/object:Gem::Dependency
168
+ name: active_model_serializers
71
169
  requirement: !ruby/object:Gem::Requirement
72
170
  requirements:
73
171
  - - "~>"
74
172
  - !ruby/object:Gem::Version
75
- version: 4.2.0
173
+ version: 0.10.12
76
174
  type: :runtime
77
175
  prerelease: false
78
176
  version_requirements: !ruby/object:Gem::Requirement
79
177
  requirements:
80
178
  - - "~>"
81
179
  - !ruby/object:Gem::Version
82
- version: 4.2.0
180
+ version: 0.10.12
83
181
  - !ruby/object:Gem::Dependency
84
- name: bcrypt-ruby
182
+ name: bcrypt
85
183
  requirement: !ruby/object:Gem::Requirement
86
184
  requirements:
87
185
  - - ">="
@@ -95,49 +193,63 @@ dependencies:
95
193
  - !ruby/object:Gem::Version
96
194
  version: '0'
97
195
  - !ruby/object:Gem::Dependency
98
- name: RedCloth
196
+ name: country_select
99
197
  requirement: !ruby/object:Gem::Requirement
100
198
  requirements:
101
- - - "~>"
199
+ - - ">="
102
200
  - !ruby/object:Gem::Version
103
- version: 4.2.9
201
+ version: '0'
104
202
  type: :runtime
105
203
  prerelease: false
106
204
  version_requirements: !ruby/object:Gem::Requirement
107
205
  requirements:
108
- - - "~>"
206
+ - - ">="
109
207
  - !ruby/object:Gem::Version
110
- version: 4.2.9
208
+ version: '0'
111
209
  - !ruby/object:Gem::Dependency
112
210
  name: dis
113
211
  requirement: !ruby/object:Gem::Requirement
114
212
  requirements:
115
213
  - - "~>"
116
214
  - !ruby/object:Gem::Version
117
- version: 1.0.0
215
+ version: 1.1.2
118
216
  type: :runtime
119
217
  prerelease: false
120
218
  version_requirements: !ruby/object:Gem::Requirement
121
219
  requirements:
122
220
  - - "~>"
123
221
  - !ruby/object:Gem::Version
124
- version: 1.0.0
222
+ version: 1.1.2
125
223
  - !ruby/object:Gem::Dependency
126
224
  name: dynamic_image
127
225
  requirement: !ruby/object:Gem::Requirement
128
226
  requirements:
129
227
  - - "~>"
130
228
  - !ruby/object:Gem::Version
131
- version: 2.0.0.beta7
229
+ version: '2.0'
132
230
  type: :runtime
133
231
  prerelease: false
134
232
  version_requirements: !ruby/object:Gem::Requirement
135
233
  requirements:
136
234
  - - "~>"
137
235
  - !ruby/object:Gem::Version
138
- version: 2.0.0.beta7
236
+ version: '2.0'
139
237
  - !ruby/object:Gem::Dependency
140
- name: actionpack-page_caching
238
+ name: lograge
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: 0.11.2
244
+ type: :runtime
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: 0.11.2
251
+ - !ruby/object:Gem::Dependency
252
+ name: nokogiri
141
253
  requirement: !ruby/object:Gem::Requirement
142
254
  requirements:
143
255
  - - ">="
@@ -151,119 +263,119 @@ dependencies:
151
263
  - !ruby/object:Gem::Version
152
264
  version: '0'
153
265
  - !ruby/object:Gem::Dependency
154
- name: active_model_serializers
266
+ name: progress_bar
155
267
  requirement: !ruby/object:Gem::Requirement
156
268
  requirements:
157
- - - "~>"
269
+ - - ">="
158
270
  - !ruby/object:Gem::Version
159
- version: 0.9.0
271
+ version: '0'
160
272
  type: :runtime
161
273
  prerelease: false
162
274
  version_requirements: !ruby/object:Gem::Requirement
163
275
  requirements:
164
- - - "~>"
276
+ - - ">="
165
277
  - !ruby/object:Gem::Version
166
- version: 0.9.0
278
+ version: '0'
167
279
  - !ruby/object:Gem::Dependency
168
- name: rails-i18n
280
+ name: rails-healthcheck
169
281
  requirement: !ruby/object:Gem::Requirement
170
282
  requirements:
171
283
  - - "~>"
172
284
  - !ruby/object:Gem::Version
173
- version: 4.0.0
285
+ version: 1.0.3
174
286
  type: :runtime
175
287
  prerelease: false
176
288
  version_requirements: !ruby/object:Gem::Requirement
177
289
  requirements:
178
290
  - - "~>"
179
291
  - !ruby/object:Gem::Version
180
- version: 4.0.0
292
+ version: 1.0.3
181
293
  - !ruby/object:Gem::Dependency
182
- name: sass-rails
294
+ name: RedCloth
183
295
  requirement: !ruby/object:Gem::Requirement
184
296
  requirements:
185
297
  - - "~>"
186
298
  - !ruby/object:Gem::Version
187
- version: '5.0'
299
+ version: 4.3.2
188
300
  type: :runtime
189
301
  prerelease: false
190
302
  version_requirements: !ruby/object:Gem::Requirement
191
303
  requirements:
192
304
  - - "~>"
193
305
  - !ruby/object:Gem::Version
194
- version: '5.0'
306
+ version: 4.3.2
195
307
  - !ruby/object:Gem::Dependency
196
- name: uglifier
308
+ name: typhoeus
197
309
  requirement: !ruby/object:Gem::Requirement
198
310
  requirements:
199
- - - ">="
311
+ - - "~>"
200
312
  - !ruby/object:Gem::Version
201
- version: 1.3.0
313
+ version: 1.4.0
202
314
  type: :runtime
203
315
  prerelease: false
204
316
  version_requirements: !ruby/object:Gem::Requirement
205
317
  requirements:
206
- - - ">="
318
+ - - "~>"
207
319
  - !ruby/object:Gem::Version
208
- version: 1.3.0
320
+ version: 1.4.0
209
321
  - !ruby/object:Gem::Dependency
210
- name: coffee-rails
322
+ name: will_paginate
211
323
  requirement: !ruby/object:Gem::Requirement
212
324
  requirements:
213
325
  - - "~>"
214
326
  - !ruby/object:Gem::Version
215
- version: 4.1.0
327
+ version: 3.1.0
216
328
  type: :runtime
217
329
  prerelease: false
218
330
  version_requirements: !ruby/object:Gem::Requirement
219
331
  requirements:
220
332
  - - "~>"
221
333
  - !ruby/object:Gem::Version
222
- version: 4.1.0
334
+ version: 3.1.0
223
335
  - !ruby/object:Gem::Dependency
224
- name: jquery-rails
336
+ name: rails-i18n
225
337
  requirement: !ruby/object:Gem::Requirement
226
338
  requirements:
227
339
  - - ">="
228
340
  - !ruby/object:Gem::Version
229
- version: '0'
341
+ version: 5.0.0
230
342
  type: :runtime
231
343
  prerelease: false
232
344
  version_requirements: !ruby/object:Gem::Requirement
233
345
  requirements:
234
346
  - - ">="
235
347
  - !ruby/object:Gem::Version
236
- version: '0'
348
+ version: 5.0.0
237
349
  - !ruby/object:Gem::Dependency
238
- name: jbuilder
350
+ name: coffee-rails
239
351
  requirement: !ruby/object:Gem::Requirement
240
352
  requirements:
241
353
  - - "~>"
242
354
  - !ruby/object:Gem::Version
243
- version: '2.0'
355
+ version: '4.2'
244
356
  type: :runtime
245
357
  prerelease: false
246
358
  version_requirements: !ruby/object:Gem::Requirement
247
359
  requirements:
248
360
  - - "~>"
249
361
  - !ruby/object:Gem::Version
250
- version: '2.0'
362
+ version: '4.2'
251
363
  - !ruby/object:Gem::Dependency
252
- name: jquery-ui-rails
364
+ name: jbuilder
253
365
  requirement: !ruby/object:Gem::Requirement
254
366
  requirements:
255
367
  - - "~>"
256
368
  - !ruby/object:Gem::Version
257
- version: 4.2.1
369
+ version: '2.5'
258
370
  type: :runtime
259
371
  prerelease: false
260
372
  version_requirements: !ruby/object:Gem::Requirement
261
373
  requirements:
262
374
  - - "~>"
263
375
  - !ruby/object:Gem::Version
264
- version: 4.2.1
376
+ version: '2.5'
265
377
  - !ruby/object:Gem::Dependency
266
- name: jquery-cookie-rails
378
+ name: jquery-rails
267
379
  requirement: !ruby/object:Gem::Requirement
268
380
  requirements:
269
381
  - - ">="
@@ -277,132 +389,155 @@ dependencies:
277
389
  - !ruby/object:Gem::Version
278
390
  version: '0'
279
391
  - !ruby/object:Gem::Dependency
280
- name: jcrop-rails-v2
392
+ name: sass-rails
281
393
  requirement: !ruby/object:Gem::Requirement
282
394
  requirements:
283
395
  - - ">="
284
396
  - !ruby/object:Gem::Version
285
- version: '0'
397
+ version: '5.0'
286
398
  type: :runtime
287
399
  prerelease: false
288
400
  version_requirements: !ruby/object:Gem::Requirement
289
401
  requirements:
290
402
  - - ">="
291
403
  - !ruby/object:Gem::Version
292
- version: '0'
404
+ version: '5.0'
293
405
  - !ruby/object:Gem::Dependency
294
- name: underscore-rails
406
+ name: uglifier
295
407
  requirement: !ruby/object:Gem::Requirement
296
408
  requirements:
297
409
  - - ">="
298
410
  - !ruby/object:Gem::Version
299
- version: '0'
411
+ version: 1.3.0
300
412
  type: :runtime
301
413
  prerelease: false
302
414
  version_requirements: !ruby/object:Gem::Requirement
303
415
  requirements:
304
416
  - - ">="
305
417
  - !ruby/object:Gem::Version
306
- version: '0'
418
+ version: 1.3.0
307
419
  - !ruby/object:Gem::Dependency
308
- name: acts_as_list
420
+ name: font-awesome-rails
309
421
  requirement: !ruby/object:Gem::Requirement
310
422
  requirements:
311
- - - ">="
423
+ - - "~>"
312
424
  - !ruby/object:Gem::Version
313
- version: '0'
425
+ version: '4.7'
314
426
  type: :runtime
315
427
  prerelease: false
316
428
  version_requirements: !ruby/object:Gem::Requirement
317
429
  requirements:
318
- - - ">="
430
+ - - "~>"
319
431
  - !ruby/object:Gem::Version
320
- version: '0'
432
+ version: '4.7'
321
433
  - !ruby/object:Gem::Dependency
322
- name: recaptcha
434
+ name: jquery-ui-rails
323
435
  requirement: !ruby/object:Gem::Requirement
324
436
  requirements:
325
437
  - - "~>"
326
438
  - !ruby/object:Gem::Version
327
- version: 0.3.5
439
+ version: 6.0.0
328
440
  type: :runtime
329
441
  prerelease: false
330
442
  version_requirements: !ruby/object:Gem::Requirement
331
443
  requirements:
332
444
  - - "~>"
333
445
  - !ruby/object:Gem::Version
334
- version: 0.3.5
446
+ version: 6.0.0
335
447
  - !ruby/object:Gem::Dependency
336
- name: delayed_job
448
+ name: react-rails
337
449
  requirement: !ruby/object:Gem::Requirement
338
450
  requirements:
339
451
  - - "~>"
340
452
  - !ruby/object:Gem::Version
341
- version: 4.0.0
453
+ version: '2.4'
342
454
  type: :runtime
343
455
  prerelease: false
344
456
  version_requirements: !ruby/object:Gem::Requirement
345
457
  requirements:
346
458
  - - "~>"
347
459
  - !ruby/object:Gem::Version
348
- version: 4.0.0
460
+ version: '2.4'
349
461
  - !ruby/object:Gem::Dependency
350
- name: delayed_job_active_record
462
+ name: acts_as_list
351
463
  requirement: !ruby/object:Gem::Requirement
352
464
  requirements:
353
465
  - - "~>"
354
466
  - !ruby/object:Gem::Version
355
- version: 4.0.0
467
+ version: '0.9'
356
468
  type: :runtime
357
469
  prerelease: false
358
470
  version_requirements: !ruby/object:Gem::Requirement
359
471
  requirements:
360
472
  - - "~>"
361
473
  - !ruby/object:Gem::Version
362
- version: 4.0.0
474
+ version: '0.9'
475
+ - !ruby/object:Gem::Dependency
476
+ name: localizable_model
477
+ requirement: !ruby/object:Gem::Requirement
478
+ requirements:
479
+ - - ">="
480
+ - !ruby/object:Gem::Version
481
+ version: 0.5.3
482
+ type: :runtime
483
+ prerelease: false
484
+ version_requirements: !ruby/object:Gem::Requirement
485
+ requirements:
486
+ - - ">="
487
+ - !ruby/object:Gem::Version
488
+ version: 0.5.3
363
489
  - !ruby/object:Gem::Dependency
364
490
  name: daemons
365
491
  requirement: !ruby/object:Gem::Requirement
366
492
  requirements:
367
493
  - - "~>"
368
494
  - !ruby/object:Gem::Version
369
- version: 1.1.0
495
+ version: 1.2.0
370
496
  type: :runtime
371
497
  prerelease: false
372
498
  version_requirements: !ruby/object:Gem::Requirement
373
499
  requirements:
374
500
  - - "~>"
375
501
  - !ruby/object:Gem::Version
376
- version: 1.1.0
502
+ version: 1.2.0
503
+ - !ruby/object:Gem::Dependency
504
+ name: delayed_job
505
+ requirement: !ruby/object:Gem::Requirement
506
+ requirements:
507
+ - - "~>"
508
+ - !ruby/object:Gem::Version
509
+ version: 4.1.2
510
+ type: :runtime
511
+ prerelease: false
512
+ version_requirements: !ruby/object:Gem::Requirement
513
+ requirements:
514
+ - - "~>"
515
+ - !ruby/object:Gem::Version
516
+ version: 4.1.2
377
517
  - !ruby/object:Gem::Dependency
378
- name: thinking-sphinx
518
+ name: delayed_job_active_record
379
519
  requirement: !ruby/object:Gem::Requirement
380
520
  requirements:
381
521
  - - "~>"
382
522
  - !ruby/object:Gem::Version
383
- version: 3.1.1
523
+ version: 4.1.1
384
524
  type: :runtime
385
525
  prerelease: false
386
526
  version_requirements: !ruby/object:Gem::Requirement
387
527
  requirements:
388
528
  - - "~>"
389
529
  - !ruby/object:Gem::Version
390
- version: 3.1.1
530
+ version: 4.1.1
391
531
  description: Pages Core
392
532
  email:
393
- - inge@manualdesign.no
533
+ - inge@anyone.no
394
534
  executables: []
395
535
  extensions: []
396
536
  extra_rdoc_files: []
397
537
  files:
398
538
  - README.md
399
539
  - Rakefile
400
- - app/assets/images/pages/admin/description-bg.gif
401
- - app/assets/images/pages/admin/drag-handle.gif
402
540
  - app/assets/images/pages/admin/drag-icon.png
403
- - app/assets/images/pages/admin/flash-error-bg.gif
404
- - app/assets/images/pages/admin/formelement-bg.gif
405
- - app/assets/images/pages/admin/header-tab-current-bg.gif
406
541
  - app/assets/images/pages/admin/icon.png
407
542
  - app/assets/images/pages/admin/image-editor-bg.png
408
543
  - app/assets/images/pages/admin/list-table-pin-blue.gif
@@ -410,72 +545,99 @@ files:
410
545
  - app/assets/images/pages/admin/list-table-pin-green.gif
411
546
  - app/assets/images/pages/admin/list-table-pin-red.gif
412
547
  - app/assets/images/pages/admin/list-table-pin-yellow.gif
413
- - app/assets/images/pages/admin/list-table-td-bg.gif
414
548
  - app/assets/images/pages/admin/loading-modal.gif
415
- - app/assets/images/pages/admin/sidebar-bg.gif
416
- - app/assets/images/pages/admin/textarea_controls.gif
417
549
  - app/assets/images/pages/admin/warning-icon.gif
418
550
  - app/assets/images/pages/favicon.gif
419
551
  - app/assets/images/pages/feed-icon-14x14.png
420
- - app/assets/javascripts/pages/admin.js.coffee
421
- - app/assets/javascripts/pages/admin/controllers/base.js.coffee
422
- - app/assets/javascripts/pages/admin/controllers/pages_controller.js.coffee
423
- - app/assets/javascripts/pages/admin/controllers/users_controller.js.coffee
424
- - app/assets/javascripts/pages/admin/features/content_tabs.js.coffee
425
- - app/assets/javascripts/pages/admin/features/editable_image.js.coffee.erb
426
- - app/assets/javascripts/pages/admin/features/modal.js.coffee
427
- - app/assets/javascripts/pages/admin/features/page_images.js
428
- - app/assets/javascripts/pages/admin/features/rich_text.js.coffee
429
- - app/assets/javascripts/pages/admin/features/tag_editor.js
430
- - app/assets/javascripts/pages/admin/lib/ajax_extensions.js.coffee
431
- - app/assets/javascripts/pages/admin/lib/center_on_screen.js.coffee
432
- - app/assets/javascripts/pages/admin/lib/jrichtextarea.js
433
- - app/assets/javascripts/pages/login_form.js.coffee
434
- - app/assets/stylesheets/pages/admin.css.erb
435
- - app/assets/stylesheets/pages/admin/buttons.css.erb
436
- - app/assets/stylesheets/pages/admin/controllers/artists.css.erb
437
- - app/assets/stylesheets/pages/admin/controllers/files.css.erb
438
- - app/assets/stylesheets/pages/admin/controllers/pages.css.scss.erb
439
- - app/assets/stylesheets/pages/admin/controllers/users.css.erb
440
- - app/assets/stylesheets/pages/admin/editable_image.css.erb
441
- - app/assets/stylesheets/pages/admin/forms.css.scss.erb
442
- - app/assets/stylesheets/pages/admin/header.css.erb
443
- - app/assets/stylesheets/pages/admin/images.css.scss.erb
444
- - app/assets/stylesheets/pages/admin/links.css.erb
445
- - app/assets/stylesheets/pages/admin/list_table.css.erb
446
- - app/assets/stylesheets/pages/admin/login.css.scss.erb
447
- - app/assets/stylesheets/pages/admin/modal.css.erb
448
- - app/assets/stylesheets/pages/admin/pagination.css.scss
449
- - app/assets/stylesheets/pages/admin/print.css.erb
450
- - app/assets/stylesheets/pages/admin/sidebar.css.erb
451
- - app/assets/stylesheets/pages/admin/sortable_images.css.erb
452
- - app/assets/stylesheets/pages/admin/tag_editor.css.scss.erb
453
- - app/assets/stylesheets/pages/admin/textarea.css.erb
552
+ - app/assets/javascripts/pages/admin.jsx
553
+ - app/assets/javascripts/pages/admin/components.jsx
554
+ - app/assets/javascripts/pages/admin/components/attachment.jsx
555
+ - app/assets/javascripts/pages/admin/components/attachment_editor.jsx
556
+ - app/assets/javascripts/pages/admin/components/attachments.jsx
557
+ - app/assets/javascripts/pages/admin/components/date_range_select.jsx
558
+ - app/assets/javascripts/pages/admin/components/drag_uploader.jsx
559
+ - app/assets/javascripts/pages/admin/components/editable_image.jsx
560
+ - app/assets/javascripts/pages/admin/components/file_upload_button.jsx
561
+ - app/assets/javascripts/pages/admin/components/focal_point.jsx
562
+ - app/assets/javascripts/pages/admin/components/grid_image.jsx
563
+ - app/assets/javascripts/pages/admin/components/image_editor.jsx
564
+ - app/assets/javascripts/pages/admin/components/image_grid.jsx
565
+ - app/assets/javascripts/pages/admin/components/image_uploader.jsx
566
+ - app/assets/javascripts/pages/admin/components/modal.jsx
567
+ - app/assets/javascripts/pages/admin/components/modal_store.jsx
568
+ - app/assets/javascripts/pages/admin/components/page_dates.jsx
569
+ - app/assets/javascripts/pages/admin/components/page_files.jsx
570
+ - app/assets/javascripts/pages/admin/components/page_images.jsx
571
+ - app/assets/javascripts/pages/admin/components/page_tree.jsx
572
+ - app/assets/javascripts/pages/admin/components/page_tree_node.jsx
573
+ - app/assets/javascripts/pages/admin/components/page_tree_store.jsx
574
+ - app/assets/javascripts/pages/admin/components/rich_text_area.jsx
575
+ - app/assets/javascripts/pages/admin/components/rich_text_toolbar.jsx
576
+ - app/assets/javascripts/pages/admin/components/toast.jsx
577
+ - app/assets/javascripts/pages/admin/components/toast_store.jsx
578
+ - app/assets/javascripts/pages/admin/features/content_tabs.jsx
579
+ - app/assets/javascripts/pages/admin/features/edit_page.jsx
580
+ - app/assets/javascripts/pages/admin/features/rich_text.jsx
581
+ - app/assets/javascripts/pages/admin/features/tag_editor.jsx
582
+ - app/assets/javascripts/pages/admin/lib/tree.jsx
583
+ - app/assets/javascripts/pages/login_form.jsx
584
+ - app/assets/stylesheets/pages/admin.scss
585
+ - app/assets/stylesheets/pages/admin/components/archive.scss
586
+ - app/assets/stylesheets/pages/admin/components/attachments.scss
587
+ - app/assets/stylesheets/pages/admin/components/buttons.scss
588
+ - app/assets/stylesheets/pages/admin/components/forms.scss
589
+ - app/assets/stylesheets/pages/admin/components/header.scss
590
+ - app/assets/stylesheets/pages/admin/components/image_editor.scss
591
+ - app/assets/stylesheets/pages/admin/components/image_grid.scss
592
+ - app/assets/stylesheets/pages/admin/components/image_uploader.scss
593
+ - app/assets/stylesheets/pages/admin/components/layout.scss
594
+ - app/assets/stylesheets/pages/admin/components/links.scss
595
+ - app/assets/stylesheets/pages/admin/components/list_table.scss
596
+ - app/assets/stylesheets/pages/admin/components/login.scss
597
+ - app/assets/stylesheets/pages/admin/components/modal.scss
598
+ - app/assets/stylesheets/pages/admin/components/page_tree.scss
599
+ - app/assets/stylesheets/pages/admin/components/pagination.scss
600
+ - app/assets/stylesheets/pages/admin/components/sidebar.scss
601
+ - app/assets/stylesheets/pages/admin/components/tag_editor.scss
602
+ - app/assets/stylesheets/pages/admin/components/textarea.scss
603
+ - app/assets/stylesheets/pages/admin/components/toast.scss
604
+ - app/assets/stylesheets/pages/admin/components/toolbar.scss
605
+ - app/assets/stylesheets/pages/admin/controllers/pages.scss
606
+ - app/assets/stylesheets/pages/admin/controllers/users.scss
607
+ - app/assets/stylesheets/pages/admin/mixins/breakpoints.scss
608
+ - app/assets/stylesheets/pages/admin/mixins/clearfix.scss
609
+ - app/assets/stylesheets/pages/admin/mixins/gradients.scss
610
+ - app/assets/stylesheets/pages/admin/vars.scss
454
611
  - app/assets/stylesheets/pages/errors.css
455
612
  - app/controller_dummies/admin/admin_controller.rb
456
613
  - app/controller_dummies/application_controller.rb
614
+ - app/controller_dummies/attachments_controller.rb
457
615
  - app/controller_dummies/frontend_controller.rb
458
616
  - app/controller_dummies/images_controller.rb
459
617
  - app/controller_dummies/page_files_controller.rb
460
618
  - app/controller_dummies/pages_controller.rb
461
619
  - app/controller_dummies/sitemaps_controller.rb
620
+ - app/controllers/admin/attachments_controller.rb
462
621
  - app/controllers/admin/categories_controller.rb
463
622
  - app/controllers/admin/images_controller.rb
464
623
  - app/controllers/admin/invites_controller.rb
465
- - app/controllers/admin/page_comments_controller.rb
466
- - app/controllers/admin/page_files_controller.rb
467
- - app/controllers/admin/page_images_controller.rb
468
624
  - app/controllers/admin/pages_controller.rb
469
625
  - app/controllers/admin/password_resets_controller.rb
470
626
  - app/controllers/admin/users_controller.rb
627
+ - app/controllers/concerns/pages_core/admin/news_page_controller.rb
628
+ - app/controllers/concerns/pages_core/admin/persistent_params.rb
471
629
  - app/controllers/concerns/pages_core/authentication.rb
472
- - app/controllers/concerns/pages_core/domain_based_cache.rb
473
- - app/controllers/concerns/pages_core/exception_handler.rb
630
+ - app/controllers/concerns/pages_core/error_renderer.rb
631
+ - app/controllers/concerns/pages_core/error_reporting.rb
474
632
  - app/controllers/concerns/pages_core/policies_helper.rb
633
+ - app/controllers/concerns/pages_core/preview_pages_controller.rb
475
634
  - app/controllers/concerns/pages_core/process_titler.rb
635
+ - app/controllers/concerns/pages_core/rss_controller.rb
636
+ - app/controllers/concerns/pages_core/static_cache_controller.rb
476
637
  - app/controllers/errors_controller.rb
477
638
  - app/controllers/pages_core/admin_controller.rb
478
- - app/controllers/pages_core/application_controller.rb
639
+ - app/controllers/pages_core/attachments_controller.rb
640
+ - app/controllers/pages_core/base_controller.rb
479
641
  - app/controllers/pages_core/frontend/page_files_controller.rb
480
642
  - app/controllers/pages_core/frontend/pages_controller.rb
481
643
  - app/controllers/pages_core/frontend_controller.rb
@@ -483,44 +645,62 @@ files:
483
645
  - app/controllers/pages_core/sitemaps_controller.rb
484
646
  - app/controllers/sessions_controller.rb
485
647
  - app/formatters/pages_core/html_formatter.rb
648
+ - app/formatters/pages_core/image_embedder.rb
649
+ - app/formatters/pages_core/link_renderer.rb
486
650
  - app/helpers/admin/admin_helper.rb
487
651
  - app/helpers/admin/menu_helper.rb
488
652
  - app/helpers/admin/pages_helper.rb
489
653
  - app/helpers/application_helper.rb
490
654
  - app/helpers/frontend_helper.rb
491
655
  - app/helpers/pages_core/admin/admin_helper.rb
656
+ - app/helpers/pages_core/admin/content_tabs_helper.rb
657
+ - app/helpers/pages_core/admin/date_range_helper.rb
658
+ - app/helpers/pages_core/admin/form_builder.rb
659
+ - app/helpers/pages_core/admin/image_uploads_helper.rb
492
660
  - app/helpers/pages_core/admin/labelled_field_helper.rb
661
+ - app/helpers/pages_core/admin/page_blocks_helper.rb
662
+ - app/helpers/pages_core/admin/page_json_helper.rb
493
663
  - app/helpers/pages_core/admin/tag_editor_helper.rb
494
664
  - app/helpers/pages_core/application_helper.rb
665
+ - app/helpers/pages_core/attachments_helper.rb
495
666
  - app/helpers/pages_core/form_builder.rb
496
667
  - app/helpers/pages_core/frontend_helper.rb
497
668
  - app/helpers/pages_core/head_tags_helper.rb
498
669
  - app/helpers/pages_core/images_helper.rb
499
- - app/helpers/pages_core/login_helper.rb
500
- - app/indices/page_file_index.rb
501
- - app/indices/page_index.rb
502
- - app/indices/user_index.rb
670
+ - app/helpers/pages_core/meta_tags_helper.rb
671
+ - app/helpers/pages_core/open_graph_tags_helper.rb
672
+ - app/helpers/pages_core/page_path_helper.rb
503
673
  - app/jobs/pages_core/autopublish_job.rb
504
674
  - app/jobs/pages_core/sweep_cache_job.rb
505
675
  - app/mailers/admin_mailer.rb
676
+ - app/models/attachment.rb
506
677
  - app/models/autopublisher.rb
507
678
  - app/models/category.rb
508
679
  - app/models/concerns/pages_core/has_roles.rb
509
680
  - app/models/concerns/pages_core/humanizable_param.rb
510
- - app/models/concerns/pages_core/page_tree.rb
511
- - app/models/concerns/pages_core/searchable_page.rb
681
+ - app/models/concerns/pages_core/page_model/attachments.rb
682
+ - app/models/concerns/pages_core/page_model/autopublishable.rb
683
+ - app/models/concerns/pages_core/page_model/dated_page.rb
684
+ - app/models/concerns/pages_core/page_model/images.rb
685
+ - app/models/concerns/pages_core/page_model/localizable.rb
686
+ - app/models/concerns/pages_core/page_model/pathable.rb
687
+ - app/models/concerns/pages_core/page_model/redirectable.rb
688
+ - app/models/concerns/pages_core/page_model/sortable.rb
689
+ - app/models/concerns/pages_core/page_model/status.rb
690
+ - app/models/concerns/pages_core/page_model/templateable.rb
691
+ - app/models/concerns/pages_core/page_model/tree.rb
512
692
  - app/models/concerns/pages_core/sweepable.rb
513
693
  - app/models/concerns/pages_core/taggable.rb
514
- - app/models/concerns/pages_core/templateable.rb
515
694
  - app/models/image.rb
516
695
  - app/models/invite.rb
517
696
  - app/models/invite_role.rb
518
- - app/models/localization.rb
519
697
  - app/models/page.rb
520
698
  - app/models/page_builder.rb
521
- - app/models/page_comment.rb
699
+ - app/models/page_category.rb
700
+ - app/models/page_exporter.rb
522
701
  - app/models/page_file.rb
523
702
  - app/models/page_image.rb
703
+ - app/models/page_path.rb
524
704
  - app/models/password_reset_token.rb
525
705
  - app/models/role.rb
526
706
  - app/models/tag.rb
@@ -532,18 +712,28 @@ files:
532
712
  - app/policies/page_policy.rb
533
713
  - app/policies/policy.rb
534
714
  - app/policies/user_policy.rb
715
+ - app/serializers/admin/attachment_serializer.rb
535
716
  - app/serializers/admin/image_serializer.rb
717
+ - app/serializers/admin/page_file_serializer.rb
536
718
  - app/serializers/admin/page_image_serializer.rb
719
+ - app/serializers/page_export_serializer.rb
720
+ - app/serializers/page_file_export_serializer.rb
721
+ - app/serializers/page_image_export_serializer.rb
537
722
  - app/serializers/page_image_serializer.rb
538
723
  - app/serializers/page_serializer.rb
724
+ - app/services/pages_core/create_user_service.rb
725
+ - app/services/pages_core/destroy_invite_service.rb
726
+ - app/services/pages_core/invite_service.rb
727
+ - app/views/admin/images/show.json.jbuilder
539
728
  - app/views/admin/invites/new.html.erb
540
729
  - app/views/admin/invites/show.html.erb
541
- - app/views/admin/pages/_edit_comments.html.erb
542
730
  - app/views/admin/pages/_edit_content.html.erb
731
+ - app/views/admin/pages/_edit_files.html.erb
543
732
  - app/views/admin/pages/_edit_images.html.erb
544
733
  - app/views/admin/pages/_edit_metadata.html.erb
545
734
  - app/views/admin/pages/_edit_options.html.erb
546
- - app/views/admin/pages/_pagelisting.html.erb
735
+ - app/views/admin/pages/_list_item.html.erb
736
+ - app/views/admin/pages/deleted.html.erb
547
737
  - app/views/admin/pages/edit.html.erb
548
738
  - app/views/admin/pages/index.html.erb
549
739
  - app/views/admin/pages/new.html.erb
@@ -551,7 +741,6 @@ files:
551
741
  - app/views/admin/password_resets/show.html.erb
552
742
  - app/views/admin/users/_access_control.html.erb
553
743
  - app/views/admin/users/_list.html.erb
554
- - app/views/admin/users/_login_form.html.erb
555
744
  - app/views/admin/users/deactivated.html.erb
556
745
  - app/views/admin/users/edit.html.erb
557
746
  - app/views/admin/users/index.html.erb
@@ -559,17 +748,15 @@ files:
559
748
  - app/views/admin/users/new.html.erb
560
749
  - app/views/admin/users/new_password.html.erb
561
750
  - app/views/admin/users/show.html.erb
562
- - app/views/admin_mailer/comment_notification.text.erb
563
- - app/views/admin_mailer/error_report.html.erb
564
751
  - app/views/admin_mailer/invite.text.erb
565
752
  - app/views/admin_mailer/password_reset.text.erb
753
+ - app/views/errors/401.html.erb
566
754
  - app/views/errors/403.html.erb
567
755
  - app/views/errors/404.html.erb
568
756
  - app/views/errors/405.html.erb
757
+ - app/views/errors/422.html.erb
569
758
  - app/views/errors/500.html.erb
570
- - app/views/errors/500_critical.html.erb
571
759
  - app/views/errors/_generic_help.html.erb
572
- - app/views/errors/report.html.erb
573
760
  - app/views/feeds/pages.rss.builder
574
761
  - app/views/layouts/admin.html.erb
575
762
  - app/views/layouts/admin/_analytics.html.erb
@@ -577,50 +764,28 @@ files:
577
764
  - app/views/layouts/errors.html.erb
578
765
  - app/views/sitemaps/show.xml.builder
579
766
  - config/locales/en.yml
580
- - config/removed_migrations.yml
581
767
  - config/routes.rb
582
768
  - db/migrate/20111219033112_create_pages_tables.rb
583
- - db/migrate/20120627033112_rename_textbits.rb
584
- - db/migrate/20121010055412_drop_removed_tables.rb
585
- - db/migrate/20130130053932_add_queue_to_delayed_jobs.rb
586
- - db/migrate/20130303053932_remove_filter_from_localizations.rb
587
- - db/migrate/20130303160632_remove_imagesets.rb
588
- - db/migrate/20130303161732_remove_sms_subscribers.rb
589
- - db/migrate/20130823133208_update_page_redirect_to.rb
590
- - db/migrate/20140203183900_create_roles.rb
591
- - db/migrate/20140414150500_change_locale_names.rb
592
- - db/migrate/20140515130100_remove_sphinx_deltas.rb
593
- - db/migrate/20140604142100_remove_openid_url.rb
594
- - db/migrate/20140920231700_convert_images_to_dis.rb
595
- - db/migrate/20140922124600_convert_page_files_to_dis.rb
596
- - db/migrate/20141004003100_create_password_reset_tokens.rb
597
- - db/migrate/20141006181300_remove_user_cruft.rb
598
- - db/migrate/20141007173000_create_invites.rb
599
- - db/migrate/20150204130800_update_delayed_job_table.rb
600
- - db/migrate/20150401131300_localize_images.rb
601
- - db/migrate/20150520174300_add_meta_image_to_page.rb
602
- - db/migrate/20150904164200_add_pinned_to_tags.rb
603
769
  - lib/pages_core.rb
604
770
  - lib/pages_core/admin_menu_item.rb
605
771
  - lib/pages_core/archive_finder.rb
772
+ - lib/pages_core/attachment_embedder.rb
606
773
  - lib/pages_core/cache_sweeper.rb
607
774
  - lib/pages_core/configuration.rb
608
775
  - lib/pages_core/configuration/base.rb
609
776
  - lib/pages_core/configuration/pages.rb
777
+ - lib/pages_core/digest_verifier.rb
610
778
  - lib/pages_core/engine.rb
611
779
  - lib/pages_core/extensions.rb
612
- - lib/pages_core/extensions/hash_extensions.rb
613
780
  - lib/pages_core/extensions/string_extensions.rb
614
- - lib/pages_core/localizable.rb
615
- - lib/pages_core/localizable/active_record_extension.rb
616
- - lib/pages_core/localizable/class_methods.rb
617
- - lib/pages_core/localizable/configuration.rb
618
- - lib/pages_core/localizable/instance_methods.rb
619
- - lib/pages_core/localizable/localizer.rb
620
- - lib/pages_core/localizable/scope_extension.rb
781
+ - lib/pages_core/page_path_constraint.rb
621
782
  - lib/pages_core/pages_plugin.rb
622
- - lib/pages_core/paginates.rb
623
783
  - lib/pages_core/plugin.rb
784
+ - lib/pages_core/pub_sub.rb
785
+ - lib/pages_core/static_cache.rb
786
+ - lib/pages_core/static_cache/null_handler.rb
787
+ - lib/pages_core/static_cache/page_cache_handler.rb
788
+ - lib/pages_core/static_cache/varnish_handler.rb
624
789
  - lib/pages_core/templates.rb
625
790
  - lib/pages_core/templates/block_configuration.rb
626
791
  - lib/pages_core/templates/configuration.rb
@@ -630,18 +795,17 @@ files:
630
795
  - lib/pages_core/templates/template_configuration.rb
631
796
  - lib/pages_core/version.rb
632
797
  - lib/rails/generators/pages_core/frontend/frontend_generator.rb
633
- - lib/rails/generators/pages_core/frontend/templates/application.css.scss.erb
634
798
  - lib/rails/generators/pages_core/frontend/templates/application.js.erb
635
- - lib/rails/generators/pages_core/frontend/templates/base.css.scss.erb
636
- - lib/rails/generators/pages_core/frontend/templates/breakpoints.css.scss.erb
637
- - lib/rails/generators/pages_core/frontend/templates/hidpi.css.scss.erb
799
+ - lib/rails/generators/pages_core/frontend/templates/application.scss.erb
800
+ - lib/rails/generators/pages_core/frontend/templates/base.scss.erb
801
+ - lib/rails/generators/pages_core/frontend/templates/breakpoints.scss.erb
802
+ - lib/rails/generators/pages_core/frontend/templates/clearfix.scss.erb
638
803
  - lib/rails/generators/pages_core/frontend/templates/layout.html.erb
639
804
  - lib/rails/generators/pages_core/frontend/templates/normalize.css.erb
640
805
  - lib/rails/generators/pages_core/install/install_generator.rb
641
806
  - lib/rails/generators/pages_core/install/templates/active_job_initializer.rb
642
807
  - lib/rails/generators/pages_core/install/templates/application_controller.rb
643
808
  - lib/rails/generators/pages_core/install/templates/application_helper.rb
644
- - lib/rails/generators/pages_core/install/templates/cache_sweeper_initializer.rb
645
809
  - lib/rails/generators/pages_core/install/templates/default_page_template.html.erb
646
810
  - lib/rails/generators/pages_core/install/templates/delayed_job
647
811
  - lib/rails/generators/pages_core/install/templates/delayed_job_initializer.rb
@@ -651,23 +815,24 @@ files:
651
815
  - lib/rails/generators/pages_core/install/templates/page_templates_initializer.rb
652
816
  - lib/rails/generators/pages_core/install/templates/pages_controller.rb
653
817
  - lib/rails/generators/pages_core/install/templates/pages_initializer.rb
654
- - lib/rails/generators/pages_core/install/templates/thinking_sphinx.yml
655
818
  - lib/rails/generators/pages_core/rspec/rspec_generator.rb
656
819
  - lib/rails/generators/pages_core/rspec/templates/factories.rb
657
820
  - lib/rails/generators/pages_core/rspec/templates/mailer_macros.rb
821
+ - lib/rails/generators/pages_core/rspec/templates/page_templates_spec.rb
822
+ - lib/rails/generators/pages_core/rspec/templates/rails_helper.rb
658
823
  - lib/rails/generators/pages_core/rspec/templates/spec_helper.rb
659
- - lib/tasks/db.rake
660
824
  - lib/tasks/pages.rake
661
- - lib/tasks/pages/assets.rake
662
825
  - lib/tasks/pages/cache.rake
663
- - lib/tasks/pages/update.rake
826
+ - lib/tasks/pages/export.rake
827
+ - lib/tasks/pages/page_paths.rake
664
828
  - template.rb
665
- - vendor/assets/javascripts/jquery.dimscreen.js
666
- - vendor/assets/javascripts/jquery.fieldselection.js
829
+ - vendor/assets/javascripts/ReactCrop.min.js
830
+ - vendor/assets/javascripts/reflux.min.js
831
+ - vendor/assets/stylesheets/ReactCrop.css
667
832
  homepage: ''
668
833
  licenses: []
669
834
  metadata: {}
670
- post_install_message:
835
+ post_install_message:
671
836
  rdoc_options: []
672
837
  require_paths:
673
838
  - lib
@@ -675,16 +840,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
675
840
  requirements:
676
841
  - - ">="
677
842
  - !ruby/object:Gem::Version
678
- version: 1.9.2
843
+ version: 2.7.0
679
844
  required_rubygems_version: !ruby/object:Gem::Requirement
680
845
  requirements:
681
846
  - - ">="
682
847
  - !ruby/object:Gem::Version
683
848
  version: '0'
684
849
  requirements: []
685
- rubyforge_project: "."
686
- rubygems_version: 2.5.1
687
- signing_key:
850
+ rubygems_version: 3.1.4
851
+ signing_key:
688
852
  specification_version: 4
689
853
  summary: Pages Core
690
854
  test_files: []