lcms-engine 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. checksums.yaml +4 -4
  2. data/{spec/dummy/.env.docker → .env.docker} +0 -0
  3. data/.env.template +34 -0
  4. data/.gitignore +0 -1
  5. data/CHANGELOG.md +25 -0
  6. data/Dockerfile +1 -0
  7. data/Gemfile +0 -1
  8. data/Gemfile.lock +682 -0
  9. data/README.md +5 -11
  10. data/app/assets/javascripts/lcms/engine/admin/application.js +2 -11
  11. data/app/assets/javascripts/lcms/engine/application.js +1 -44
  12. data/app/assets/javascripts/lcms/engine/application_lti.js +1 -29
  13. data/app/assets/javascripts/lcms/engine/initializers/foundation.js +5 -0
  14. data/app/assets/stylesheets/lcms/engine/admin.scss +0 -1
  15. data/app/assets/stylesheets/lcms/engine/application.scss +6 -61
  16. data/app/assets/stylesheets/lcms/engine/base/_colors.scss +2 -2
  17. data/app/assets/stylesheets/lcms/engine/components/lesson/_icons.scss +0 -25
  18. data/app/assets/stylesheets/lcms/engine/layout/_footer.scss +2 -0
  19. data/app/assets/stylesheets/lcms/engine/layout/_header.scss +1 -210
  20. data/app/assets/stylesheets/lcms/engine/pdf.scss +3 -27
  21. data/app/assets/stylesheets/lcms/engine/pdf_plain.scss +3 -11
  22. data/app/assets/stylesheets/lcms/engine/print/_typography.scss +0 -5
  23. data/app/assets/stylesheets/lcms/engine/utils/_variables.scss +4 -4
  24. data/app/controllers/concerns/lcms/engine/reimportable.rb +9 -0
  25. data/app/controllers/lcms/engine/admin/admin_controller.rb +2 -0
  26. data/app/controllers/lcms/engine/admin/documents_controller.rb +7 -17
  27. data/app/controllers/lcms/engine/admin/materials_controller.rb +16 -19
  28. data/app/controllers/lcms/engine/admin/resources_controller.rb +77 -41
  29. data/app/controllers/lcms/engine/surveys_controller.rb +3 -14
  30. data/app/forms/lcms/engine/material_form.rb +1 -0
  31. data/app/helpers/lcms/engine/application_helper.rb +6 -2
  32. data/app/helpers/lcms/engine/resource_helper.rb +0 -17
  33. data/app/presenters/lcms/engine/content_presenter.rb +1 -1
  34. data/app/presenters/lcms/engine/document_presenter.rb +3 -5
  35. data/app/views/devise/confirmations/new.html.erb +1 -1
  36. data/app/views/devise/passwords/edit.html.erb +1 -1
  37. data/app/views/devise/passwords/new.html.erb +1 -1
  38. data/app/views/devise/registrations/new.html.erb +1 -1
  39. data/app/views/devise/sessions/new.html.erb +2 -2
  40. data/app/views/layouts/lcms/engine/admin.html.erb +1 -3
  41. data/app/views/layouts/lcms/engine/application.html.erb +0 -6
  42. data/app/views/layouts/lcms/engine/cg_pdf.erb +0 -38
  43. data/app/views/layouts/lcms/engine/lti.html.erb +0 -1
  44. data/app/views/lcms/engine/admin/curriculums/edit.html.erb +3 -0
  45. data/app/views/lcms/engine/admin/materials/index.html.erb +1 -1
  46. data/app/views/lcms/engine/admin/resource_bulk_edits/new.html.erb +3 -3
  47. data/app/views/lcms/engine/admin/shared/_header.html.erb +1 -8
  48. data/app/views/lcms/engine/documents/_content.html.erb +0 -1
  49. data/app/views/lcms/engine/documents/_sticky_header.html.erb +1 -1
  50. data/app/views/lcms/engine/documents/_sticky_site_menu.html.erb +0 -1
  51. data/app/views/lcms/engine/resources/_download.html.erb +2 -2
  52. data/app/views/lcms/engine/resources/_unit_bundles.html.erb +2 -2
  53. data/app/views/lcms/engine/resources/show.html.erb +2 -2
  54. data/app/views/lcms/engine/shared/_footer.html.erb +1 -3
  55. data/app/views/lcms/engine/shared/_header.html.erb +2 -36
  56. data/app/views/lcms/engine/surveys/show.html.erb +1 -1
  57. data/app/views/lcms/engine/welcome/index.html.erb +1 -80
  58. data/config/locales/admin/en.yml +1 -0
  59. data/config/routes.rb +2 -36
  60. data/db/migrate/20200422130652_add_reimported_at_to_documents.rb +1 -1
  61. data/db/migrate/20200429130353_drop_pages.rb +13 -0
  62. data/docs/env-variables.md +87 -0
  63. data/docs/google-cloud-platform-setup.md +106 -0
  64. data/lcms-engine.gemspec +50 -59
  65. data/lib/doc_template/document.rb +2 -2
  66. data/lib/doc_template/tables/activity.rb +1 -2
  67. data/lib/doc_template/tables/base.rb +4 -0
  68. data/lib/doc_template/tables/section.rb +1 -2
  69. data/lib/doc_template/xpath_functions.rb +3 -1
  70. data/lib/lcms/engine/engine.rb +0 -8
  71. data/lib/lcms/engine/version.rb +1 -1
  72. data/lib/lt/lcms/metadata/context.rb +5 -7
  73. data/spec/controllers/admin/admin_controller_spec.rb +1 -1
  74. data/spec/controllers/admin/documents_controller_spec.rb +38 -6
  75. data/spec/controllers/admin/materials_controller_spec.rb +64 -0
  76. data/spec/controllers/admin/resources_controller_spec.rb +72 -0
  77. data/spec/dummy/config/lcms-admin.yml +3 -3
  78. data/spec/dummy/db/schema.rb +29 -37
  79. data/spec/features/welcome_spec.rb +1 -1
  80. data/spec/fixtures/tables/activity-metadata-3activities.html +1 -0
  81. data/spec/fixtures/tables/document-metadata-2paragpraphs.html +97 -0
  82. data/spec/fixtures/tables/document-metadata-2spans.html +96 -0
  83. data/spec/fixtures/tables/document-metadata.html +96 -0
  84. data/spec/lib/doc_template/tables/activity_spec.rb +28 -0
  85. data/spec/lib/doc_template/tables/metadata_spec.rb +40 -0
  86. data/spec/lib/doc_template/tables/shared_examples/remove_table.rb +11 -0
  87. data/spec/rails_helper.rb +1 -0
  88. data/spec/support/fixture_helper.rb +16 -0
  89. data/vendor/assets/javascripts/selectize.min.js +4 -0
  90. data/vendor/assets/stylesheets/selectize.scss +333 -0
  91. data/yarn.lock +634 -452
  92. metadata +274 -494
  93. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.eot +0 -0
  94. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.svg +0 -689
  95. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.ttf +0 -0
  96. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.woff +0 -0
  97. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.eot +0 -0
  98. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.svg +0 -697
  99. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.ttf +0 -0
  100. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.woff +0 -0
  101. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.eot +0 -0
  102. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.svg +0 -768
  103. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.ttf +0 -0
  104. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.woff +0 -0
  105. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.eot +0 -0
  106. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.svg +0 -685
  107. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.ttf +0 -0
  108. data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.woff +0 -0
  109. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.eot +0 -0
  110. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.svg +0 -5603
  111. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.woff +0 -0
  112. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.eot +0 -0
  113. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.svg +0 -5763
  114. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.woff +0 -0
  115. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.eot +0 -0
  116. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.otf +0 -0
  117. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.svg +0 -5400
  118. data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.woff +0 -0
  119. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.eot +0 -0
  120. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.html +0 -15
  121. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.otf +0 -0
  122. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.svg +0 -13061
  123. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.woff +0 -0
  124. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.eot +0 -0
  125. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.html +0 -15
  126. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.otf +0 -0
  127. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.svg +0 -13075
  128. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.woff +0 -0
  129. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.eot +0 -0
  130. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.otf +0 -0
  131. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.svg +0 -13142
  132. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.woff +0 -0
  133. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.eot +0 -0
  134. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.ttf +0 -0
  135. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.woff +0 -0
  136. data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.woff2 +0 -0
  137. data/app/assets/fonts/lcms/engine/cursive/Sriracha-Regular.ttf +0 -0
  138. data/app/assets/fonts/lcms/engine/icons/ubicons.eot +0 -0
  139. data/app/assets/fonts/lcms/engine/icons/ubicons.svg +0 -50
  140. data/app/assets/fonts/lcms/engine/icons/ubicons.ttf +0 -0
  141. data/app/assets/fonts/lcms/engine/icons/ubicons.woff +0 -0
  142. data/app/assets/fonts/lcms/engine/ub/UBIcons.eot +0 -0
  143. data/app/assets/fonts/lcms/engine/ub/UBIcons.svg +0 -18
  144. data/app/assets/fonts/lcms/engine/ub/UBIcons.ttf +0 -0
  145. data/app/assets/fonts/lcms/engine/ub/UBIcons.woff +0 -0
  146. data/app/assets/images/lcms/engine/lessons/ld_p1.png +0 -0
  147. data/app/assets/images/lcms/engine/lessons/ld_p2.png +0 -0
  148. data/app/assets/images/lcms/engine/lessons/ld_p3.png +0 -0
  149. data/app/assets/images/lcms/engine/lessons/tens.png +0 -0
  150. data/app/assets/images/lcms/engine/lessons/wp.svg +0 -30
  151. data/app/assets/images/lcms/engine/tile-wide.png +0 -0
  152. data/app/assets/images/lcms/engine/tile.png +0 -0
  153. data/app/assets/javascripts/lcms/engine/components.js +0 -7
  154. data/app/assets/javascripts/lcms/engine/components/.gitkeep +0 -0
  155. data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMap.js.jsx +0 -31
  156. data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapLesson.js.jsx +0 -18
  157. data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapModule.js.jsx +0 -59
  158. data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapUnit.js.jsx +0 -56
  159. data/app/assets/javascripts/lcms/engine/components/curriculum-map/ResourceHover.js.jsx +0 -27
  160. data/app/assets/javascripts/lcms/engine/components/curriculum-map/ResourcePreview.js.jsx +0 -29
  161. data/app/assets/javascripts/lcms/engine/components/enhance-instruction/EnhanceInstructionCards.js.jsx +0 -13
  162. data/app/assets/javascripts/lcms/engine/components/enhance-instruction/EnhanceInstructionPage.js.jsx +0 -139
  163. data/app/assets/javascripts/lcms/engine/components/enhance-instruction/GenericResourceCard.js.jsx +0 -20
  164. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumCardItem.js.jsx +0 -152
  165. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumGradeMap.js.jsx +0 -44
  166. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumHeader.js.jsx +0 -10
  167. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumItem.js.jsx +0 -77
  168. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx +0 -59
  169. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumOpr.js.jsx +0 -62
  170. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumPage.js.jsx +0 -258
  171. data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumUnitMap.js.jsx +0 -50
  172. data/app/assets/javascripts/lcms/engine/components/filterbar/FilterBarResponsive.js.jsx +0 -62
  173. data/app/assets/javascripts/lcms/engine/components/filterbar/Filterbar.js.jsx +0 -258
  174. data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarFacet.js.jsx +0 -12
  175. data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarGrade.js.jsx +0 -14
  176. data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarSearch.js.jsx +0 -48
  177. data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarSubject.js.jsx +0 -12
  178. data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsCards.js.jsx +0 -11
  179. data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsCardsEmpty.js.jsx +0 -17
  180. data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsPage.js.jsx +0 -58
  181. data/app/assets/javascripts/lcms/engine/components/helpers/FreshdeskBtn.js.jsx +0 -9
  182. data/app/assets/javascripts/lcms/engine/components/helpers/MediaTime.js.jsx +0 -6
  183. data/app/assets/javascripts/lcms/engine/components/helpers/SearchResultsHeader.js.jsx +0 -41
  184. data/app/assets/javascripts/lcms/engine/components/helpers/TimeToTeach.js.jsx +0 -29
  185. data/app/assets/javascripts/lcms/engine/components/instruction-card/InstructionCard.js.jsx +0 -57
  186. data/app/assets/javascripts/lcms/engine/components/lesson-card/LessonCard.js.jsx +0 -45
  187. data/app/assets/javascripts/lcms/engine/components/materials/CollapsedMaterial.js.jsx +0 -40
  188. data/app/assets/javascripts/lcms/engine/components/materials/DocumentMaterialsList.js.jsx +0 -33
  189. data/app/assets/javascripts/lcms/engine/components/materials/ExpandedMaterial.js.jsx +0 -37
  190. data/app/assets/javascripts/lcms/engine/components/materials/MaterialsContainer.js.jsx +0 -92
  191. data/app/assets/javascripts/lcms/engine/components/materials/MaterialsList.js.jsx +0 -19
  192. data/app/assets/javascripts/lcms/engine/components/modals/DownloadModal.js.jsx +0 -68
  193. data/app/assets/javascripts/lcms/engine/components/related-instruction/RelatedInstruction.js.jsx +0 -72
  194. data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdown.js.jsx +0 -159
  195. data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdownResult.js.jsx +0 -12
  196. data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdownResults.js.jsx +0 -36
  197. data/app/assets/javascripts/lcms/engine/components/search/SearchPage.js.jsx +0 -44
  198. data/app/assets/javascripts/lcms/engine/components/search/SearchResult.js.jsx +0 -22
  199. data/app/assets/javascripts/lcms/engine/components/search/SearchResults.js.jsx +0 -17
  200. data/app/assets/javascripts/lcms/engine/components/search/SearchResultsEmpty.js.jsx +0 -25
  201. data/app/assets/javascripts/lcms/engine/components/search/searchPageWrapper.js.jsx +0 -77
  202. data/app/assets/javascripts/lcms/engine/components/select-activity/SelectActivityConfirmationModal.js.jsx +0 -107
  203. data/app/assets/javascripts/lcms/engine/components/select-activity/SelectActivityToggle.js.jsx +0 -39
  204. data/app/assets/javascripts/lcms/engine/components/stores/ExcludesStore.js.jsx +0 -11
  205. data/app/assets/javascripts/lcms/engine/components/tabs/SimpleTab.js.jsx +0 -130
  206. data/app/assets/javascripts/lcms/engine/components/utils/UrlHistory.js.jsx +0 -113
  207. data/app/assets/javascripts/lcms/engine/components/utils/colorcodecss.js.jsx +0 -4
  208. data/app/assets/javascripts/lcms/engine/components/utils/converttobem.js.jsx +0 -3
  209. data/app/assets/javascripts/lcms/engine/components/utils/filterbarupdate.js.jsx +0 -5
  210. data/app/assets/javascripts/lcms/engine/components/utils/heaptrackpd.js.jsx +0 -5
  211. data/app/assets/javascripts/lcms/engine/components/utils/regexpescape.js.jsx +0 -5
  212. data/app/assets/javascripts/lcms/engine/components/utils/scalenumber.js.jsx +0 -8
  213. data/app/assets/javascripts/lcms/engine/initializers/about_people.js +0 -8
  214. data/app/assets/javascripts/lcms/engine/initializers/analytics.js +0 -10
  215. data/app/assets/javascripts/lcms/engine/initializers/bundles.js +0 -12
  216. data/app/assets/javascripts/lcms/engine/initializers/events.js +0 -3
  217. data/app/assets/javascripts/lcms/engine/initializers/freshdesk.js +0 -18
  218. data/app/assets/javascripts/lcms/engine/initializers/header_dropdown.js +0 -44
  219. data/app/assets/javascripts/lcms/engine/initializers/heap_analytics.js +0 -78
  220. data/app/assets/javascripts/lcms/engine/initializers/leadership.js +0 -22
  221. data/app/assets/javascripts/lcms/engine/initializers/lessons.js +0 -299
  222. data/app/assets/javascripts/lcms/engine/initializers/loadasync.js +0 -30
  223. data/app/assets/javascripts/lcms/engine/initializers/pdf_preview.js +0 -15
  224. data/app/assets/javascripts/lcms/engine/initializers/resource_details.js +0 -21
  225. data/app/assets/javascripts/lcms/engine/initializers/sidebar/SideBar.js.jsx +0 -86
  226. data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarCGMenu.js.jsx +0 -37
  227. data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarDocMenu.js.jsx +0 -75
  228. data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarMobile.js.jsx +0 -43
  229. data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarSticky.js.jsx +0 -43
  230. data/app/assets/javascripts/lcms/engine/initializers/sidebar/TopScroll.js.jsx +0 -21
  231. data/app/assets/javascripts/lcms/engine/initializers/social_sharing.js +0 -29
  232. data/app/assets/javascripts/lcms/engine/initializers/soundcloud.js +0 -52
  233. data/app/assets/javascripts/lcms/engine/initializers/subscribe_placeholder.js +0 -12
  234. data/app/assets/javascripts/lcms/engine/initializers/survey.js +0 -31
  235. data/app/assets/stylesheets/lcms/engine/base/_cg-colors.scss +0 -48
  236. data/app/assets/stylesheets/lcms/engine/base/_fonts.scss +0 -103
  237. data/app/assets/stylesheets/lcms/engine/base/_icons.scss +0 -342
  238. data/app/assets/stylesheets/lcms/engine/components/_buttons.scss +0 -200
  239. data/app/assets/stylesheets/lcms/engine/components/_cards.scss +0 -36
  240. data/app/assets/stylesheets/lcms/engine/components/_cg-base.scss +0 -22
  241. data/app/assets/stylesheets/lcms/engine/components/_curriculum-cards.scss +0 -237
  242. data/app/assets/stylesheets/lcms/engine/components/_curriculum-map.scss +0 -214
  243. data/app/assets/stylesheets/lcms/engine/components/_download-modal.scss +0 -56
  244. data/app/assets/stylesheets/lcms/engine/components/_filterbar-modal.scss +0 -20
  245. data/app/assets/stylesheets/lcms/engine/components/_filterbar.scss +0 -184
  246. data/app/assets/stylesheets/lcms/engine/components/_generic-resource.scss +0 -58
  247. data/app/assets/stylesheets/lcms/engine/components/_inputs.scss +0 -12
  248. data/app/assets/stylesheets/lcms/engine/components/_instruction-cards.scss +0 -160
  249. data/app/assets/stylesheets/lcms/engine/components/_lesson-base.scss +0 -31
  250. data/app/assets/stylesheets/lcms/engine/components/_lesson-cards.scss +0 -119
  251. data/app/assets/stylesheets/lcms/engine/components/_ls-post.scss +0 -38
  252. data/app/assets/stylesheets/lcms/engine/components/_material-base.scss +0 -6
  253. data/app/assets/stylesheets/lcms/engine/components/_media-resources.scss +0 -6
  254. data/app/assets/stylesheets/lcms/engine/components/_media.scss +0 -95
  255. data/app/assets/stylesheets/lcms/engine/components/_pagination.scss +0 -84
  256. data/app/assets/stylesheets/lcms/engine/components/_panel-dsc.scss +0 -37
  257. data/app/assets/stylesheets/lcms/engine/components/_panel.scss +0 -7
  258. data/app/assets/stylesheets/lcms/engine/components/_related-instruction.scss +0 -31
  259. data/app/assets/stylesheets/lcms/engine/components/_resource.scss +0 -217
  260. data/app/assets/stylesheets/lcms/engine/components/_search-dropdown.scss +0 -23
  261. data/app/assets/stylesheets/lcms/engine/components/_search-header.scss +0 -45
  262. data/app/assets/stylesheets/lcms/engine/components/_search.scss +0 -57
  263. data/app/assets/stylesheets/lcms/engine/components/_sidebar.scss +0 -159
  264. data/app/assets/stylesheets/lcms/engine/components/_simple-tab.scss +0 -57
  265. data/app/assets/stylesheets/lcms/engine/components/_social-sharing.scss +0 -20
  266. data/app/assets/stylesheets/lcms/engine/components/_titles.scss +0 -33
  267. data/app/assets/stylesheets/lcms/engine/components/_top-scroll-button.scss +0 -28
  268. data/app/assets/stylesheets/lcms/engine/components/_unit-bundles.scss +0 -14
  269. data/app/assets/stylesheets/lcms/engine/components/cg/_annotations.scss +0 -48
  270. data/app/assets/stylesheets/lcms/engine/components/cg/_colorscheme.scss +0 -60
  271. data/app/assets/stylesheets/lcms/engine/components/cg/_contents-modal.scss +0 -20
  272. data/app/assets/stylesheets/lcms/engine/components/cg/_elements.scss +0 -11
  273. data/app/assets/stylesheets/lcms/engine/components/cg/_faq.scss +0 -35
  274. data/app/assets/stylesheets/lcms/engine/components/cg/_footnote.scss +0 -20
  275. data/app/assets/stylesheets/lcms/engine/components/cg/_hacks.scss +0 -11
  276. data/app/assets/stylesheets/lcms/engine/components/cg/_icons.scss +0 -30
  277. data/app/assets/stylesheets/lcms/engine/components/cg/_keywords.scss +0 -5
  278. data/app/assets/stylesheets/lcms/engine/components/cg/_links.scss +0 -3
  279. data/app/assets/stylesheets/lcms/engine/components/cg/_quotes.scss +0 -18
  280. data/app/assets/stylesheets/lcms/engine/components/cg/_standards.scss +0 -23
  281. data/app/assets/stylesheets/lcms/engine/components/cg/_table.scss +0 -50
  282. data/app/assets/stylesheets/lcms/engine/components/cg/_task.scss +0 -43
  283. data/app/assets/stylesheets/lcms/engine/components/cg/_video.scss +0 -10
  284. data/app/assets/stylesheets/lcms/engine/components/support/_helpdesk.scss +0 -25
  285. data/app/assets/stylesheets/lcms/engine/freshdesk/base/_colors.scss +0 -25
  286. data/app/assets/stylesheets/lcms/engine/freshdesk/base/_typography.scss +0 -19
  287. data/app/assets/stylesheets/lcms/engine/freshdesk/components/_block.scss +0 -5
  288. data/app/assets/stylesheets/lcms/engine/freshdesk/components/_buttons.scss +0 -5
  289. data/app/assets/stylesheets/lcms/engine/freshdesk/components/_help-center.scss +0 -59
  290. data/app/assets/stylesheets/lcms/engine/freshdesk/components/_tabs.scss +0 -33
  291. data/app/assets/stylesheets/lcms/engine/freshdesk/freshdesk.scss +0 -42
  292. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_footer.scss +0 -44
  293. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_header.scss +0 -49
  294. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_page.scss +0 -40
  295. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/footer.liquid +0 -14
  296. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/header.liquid +0 -41
  297. data/app/assets/stylesheets/lcms/engine/freshdesk/layout/page.liquid +0 -22
  298. data/app/assets/stylesheets/lcms/engine/freshdesk/pages/_portal-home.scss +0 -18
  299. data/app/assets/stylesheets/lcms/engine/freshdesk/pages/portal.home.liquid +0 -74
  300. data/app/assets/stylesheets/lcms/engine/freshdesk/themes/_settings.scss +0 -19
  301. data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_breakpoint.scss +0 -288
  302. data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_helpers.scss +0 -22
  303. data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_unit.scss +0 -95
  304. data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_value.scss +0 -138
  305. data/app/assets/stylesheets/lcms/engine/layout/_connect.scss +0 -63
  306. data/app/assets/stylesheets/lcms/engine/layout/_header-search-form.scss +0 -30
  307. data/app/assets/stylesheets/lcms/engine/layout/_sticky-header.scss +0 -179
  308. data/app/assets/stylesheets/lcms/engine/layout/_sticky-navigation.scss +0 -124
  309. data/app/assets/stylesheets/lcms/engine/layout/_subscribe.scss +0 -68
  310. data/app/assets/stylesheets/lcms/engine/pages/_about-people.scss +0 -115
  311. data/app/assets/stylesheets/lcms/engine/pages/_about.scss +0 -61
  312. data/app/assets/stylesheets/lcms/engine/pages/_content-guide.scss +0 -205
  313. data/app/assets/stylesheets/lcms/engine/pages/_enhance-instruction.scss +0 -19
  314. data/app/assets/stylesheets/lcms/engine/pages/_explore-curriculum.scss +0 -46
  315. data/app/assets/stylesheets/lcms/engine/pages/_find-lessons.scss +0 -1
  316. data/app/assets/stylesheets/lcms/engine/pages/_home.scss +0 -237
  317. data/app/assets/stylesheets/lcms/engine/pages/_leadership.scss +0 -263
  318. data/app/assets/stylesheets/lcms/engine/pages/_lesson-document.scss +0 -138
  319. data/app/assets/stylesheets/lcms/engine/pages/_unsupported.scss +0 -18
  320. data/app/assets/stylesheets/lcms/engine/print/_b64-fonts.scss.erb +0 -65
  321. data/app/assets/stylesheets/lcms/engine/print/_cg-base.scss +0 -4
  322. data/app/assets/stylesheets/lcms/engine/print/_hacks.scss +0 -6
  323. data/app/assets/stylesheets/lcms/engine/print/cg/_base-typography.scss +0 -21
  324. data/app/assets/stylesheets/lcms/engine/print/cg/_breaks.scss +0 -7
  325. data/app/assets/stylesheets/lcms/engine/print/cg/_elements-typography.scss +0 -14
  326. data/app/assets/stylesheets/lcms/engine/vendors/swiper.css +0 -547
  327. data/app/controllers/concerns/lcms/engine/analytics_tracking.rb +0 -51
  328. data/app/controllers/concerns/lcms/engine/heap_notifyable.rb +0 -20
  329. data/app/controllers/lcms/engine/admin/configurable_admin.rb +0 -56
  330. data/app/controllers/lcms/engine/admin/google_oauth2_controller.rb +0 -15
  331. data/app/controllers/lcms/engine/admin/pages_controller.rb +0 -54
  332. data/app/controllers/lcms/engine/analytics_exclusion_controller.rb +0 -14
  333. data/app/controllers/lcms/engine/downloads_controller.rb +0 -50
  334. data/app/controllers/lcms/engine/enhance_instruction_controller.rb +0 -18
  335. data/app/controllers/lcms/engine/explore_curriculum_controller.rb +0 -28
  336. data/app/controllers/lcms/engine/find_lessons_controller.rb +0 -15
  337. data/app/controllers/lcms/engine/pages_controller.rb +0 -26
  338. data/app/controllers/lcms/engine/search_controller.rb +0 -15
  339. data/app/controllers/lcms/engine/sessions_controller.rb +0 -19
  340. data/app/models/lcms/engine/page.rb +0 -13
  341. data/app/services/lcms/engine/generate_thumbnails.rb +0 -54
  342. data/app/services/lcms/engine/svg_social_thumbnail.rb +0 -223
  343. data/app/views/layouts/lcms/engine/ld_docx.html.erb +0 -16
  344. data/app/views/lcms/engine/admin/pages/_form.html.erb +0 -8
  345. data/app/views/lcms/engine/admin/pages/edit.html.erb +0 -9
  346. data/app/views/lcms/engine/admin/pages/index.html.erb +0 -25
  347. data/app/views/lcms/engine/admin/pages/new.html.erb +0 -5
  348. data/app/views/lcms/engine/documents/_helpdesk.html.erb +0 -9
  349. data/app/views/lcms/engine/pages/_about_people_staff.html.erb +0 -27
  350. data/app/views/lcms/engine/pages/_leadership_in_action.html.erb +0 -25
  351. data/app/views/lcms/engine/pages/_leadership_why_i_lead.html.erb +0 -34
  352. data/app/views/lcms/engine/pages/about.html.erb +0 -87
  353. data/app/views/lcms/engine/pages/about_people.html.erb +0 -27
  354. data/app/views/lcms/engine/pages/forthcoming.html.erb +0 -9
  355. data/app/views/lcms/engine/pages/leadership.html.erb +0 -82
  356. data/app/views/lcms/engine/pages/not_found.html.erb +0 -9
  357. data/app/views/lcms/engine/pages/privacy.html.erb +0 -9
  358. data/app/views/lcms/engine/pages/show.html.erb +0 -8
  359. data/app/views/lcms/engine/pages/show_slug.html.erb +0 -0
  360. data/app/views/lcms/engine/pages/tos.html.erb +0 -9
  361. data/app/views/lcms/engine/shared/_connect.html.erb +0 -60
  362. data/app/views/lcms/engine/shared/_freshdesk.html.erb +0 -22
  363. data/app/views/lcms/engine/shared/_google_analytics.html.erb +0 -9
  364. data/app/views/lcms/engine/shared/_heap_analytics.html.erb +0 -7
  365. data/app/views/lcms/engine/shared/_open_graph_meta.html.erb +0 -15
  366. data/app/views/lcms/engine/shared/_open_graph_meta_js.html.erb +0 -39
  367. data/app/views/lcms/engine/shared/_search_form.html.erb +0 -10
  368. data/app/views/lcms/engine/shared/_social_sharing_menu.html.erb +0 -34
  369. data/app/views/lcms/engine/shared/_subscribe.html.erb +0 -30
  370. data/app/views/lcms/engine/shared/_unsupported.html.erb +0 -3
  371. data/app/views/lcms/engine/shared/social_thumbnail.svg.erb +0 -54
  372. data/config/initializers/heap.rb +0 -3
  373. data/lib/tasks/thumbnails.rake +0 -59
  374. data/spec/controllers/admin/pages_controller_spec.rb +0 -19
  375. data/spec/controllers/enhance_instruction_controller_spec.rb +0 -15
  376. data/spec/controllers/explore_curriculum_controller_spec.rb +0 -29
  377. data/spec/controllers/find_lessons_controller_spec.rb +0 -50
  378. data/spec/controllers/pages_controller_spec.rb +0 -32
  379. data/spec/controllers/search_controller_spec.rb +0 -16
  380. data/spec/factories/pages.rb +0 -21
  381. data/spec/features/admin/pages_spec.rb +0 -79
  382. data/spec/features/pages/page_not_found_spec.rb +0 -26
  383. data/spec/features/pages/page_titles_spec.rb +0 -86
  384. data/spec/support/heap.rb +0 -3
  385. data/vendor/assets/javascripts/foundation.initialize.js +0 -115
  386. data/vendor/assets/javascripts/foundation.magellanex.js +0 -335
  387. data/vendor/assets/javascripts/freshwidget.js +0 -1
  388. data/vendor/assets/javascripts/jquery.easytabs.js +0 -704
  389. data/vendor/assets/javascripts/jquery.hashchange.js +0 -9
  390. data/vendor/assets/javascripts/modernizr-custom.js +0 -3
  391. data/vendor/assets/javascripts/smoothscrolling.js +0 -22
  392. data/vendor/assets/javascripts/swiper.jquery.js +0 -3777
  393. data/vendor/assets/javascripts/tabs.js +0 -6
@@ -2,10 +2,7 @@
2
2
 
3
3
  @import
4
4
  'utils/variables',
5
- 'utils/mixins',
6
- 'base/colors',
7
- 'base/cg-colors',
8
- 'base/ld-colors';
5
+ 'utils/mixins';
9
6
 
10
7
  @import
11
8
  'themes/settings';
@@ -20,34 +17,13 @@
20
17
  'utils/colorcodes',
21
18
  'utils/functions';
22
19
 
23
- @import
24
- //'print/b64-fonts',
25
- 'base/icons',
26
- 'base/typography',
27
- 'print/typography';
28
-
29
- @import
30
- 'components/cg/annotations',
31
- 'components/cg/colorscheme',
32
- 'components/cg/elements',
33
- 'components/cg/footnote',
34
- 'components/cg/icons',
35
- 'components/cg/keywords',
36
- 'components/cg/quotes',
37
- 'components/cg/standards',
38
- 'components/cg/table',
39
- 'components/cg/task',
40
- 'components/cg/hacks';
20
+ @import 'print/typography';
41
21
 
42
- @import
43
- 'components/lesson-base',
44
- 'components/material/material';
22
+ @import 'components/material/material';
45
23
 
46
24
  @import
47
25
  'print/base',
48
- 'print/cg-base',
49
26
  'print/colorscheme',
50
- 'print/hacks',
51
27
  'print/header',
52
28
  'print/helpers',
53
29
  'print/lesson-base',
@@ -2,10 +2,7 @@
2
2
 
3
3
  @import
4
4
  'utils/variables',
5
- 'utils/mixins',
6
- 'base/colors',
7
- 'base/cg-colors',
8
- 'base/ld-colors';
5
+ 'utils/mixins';
9
6
 
10
7
  @import
11
8
  'themes/settings';
@@ -17,17 +14,12 @@
17
14
  'utils/colorcodes',
18
15
  'utils/helpers';
19
16
 
20
- @import
21
- //'print/b64-fonts',
22
- 'print/typography';
17
+ @import 'print/typography';
23
18
 
24
- @import
25
- 'components/cg/colorscheme',
26
- 'components/lesson/override';
19
+ @import 'components/lesson/override';
27
20
 
28
21
  @import
29
22
  'print/base',
30
- 'print/cg-base',
31
23
  'print/cover',
32
24
  'print/colorscheme',
33
25
  'print/footer',
@@ -1,8 +1,3 @@
1
- // Font families
2
- // $ub-sanserif: 'PF Centro Sans Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
3
- // $ub-serif: 'Caponi Slab Web', Georgia, "Times New Roman", Times, serif;
4
- // $ub-sanserif-condensed: 'PF Centro Sans Condensed', $ub-sanserif;
5
-
6
1
  $ub-pdf-typography: (
7
2
  h1: ('font-size': 30pt, 'line-height': 30pt, 'font-family': $ub-serif, 'font-weight': 500, 'font-style': normal, color: $ub-pdf-black),
8
3
  h2: ('font-size': 15pt, 'line-height': 18pt, 'font-family': $ub-serif, color: $ub-pdf-gray, 'font-style': normal),
@@ -1,8 +1,8 @@
1
1
  // Font families
2
- $ub-sanserif: 'PF Centro Sans Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
3
- $ub-serif: 'Caponi Slab Web', Georgia, "Times New Roman", Times, serif;
4
- $ub-sanserif-condensed: 'PF Centro Sans Condensed', $ub-sanserif;
5
- $ub-cursive: 'Sriracha', cursive;
2
+ $ub-sanserif: 'Helvetica Neue', Helvetica, Arial, sans-serif;
3
+ $ub-serif: Georgia, 'Times New Roman', Times, serif;
4
+ $ub-sanserif-condensed: $ub-sanserif;
5
+ $ub-cursive: 'Times New Roman', cursive;
6
6
 
7
7
  $panel-radius: 3px;
8
8
 
@@ -5,6 +5,15 @@ module Lcms
5
5
  module Reimportable
6
6
  private
7
7
 
8
+ def create_from_folder
9
+ # Import all from a folder
10
+ file_ids = gdoc_files_from form_params[:link]
11
+ return bulk_import(file_ids) && render(:import) if file_ids.any?
12
+
13
+ flash.now[:alert] = t 'lcms.engine.admin.common.empty_folder'
14
+ render(:new)
15
+ end
16
+
8
17
  def import_status_for(job_class)
9
18
  params.fetch(:jids, []).each_with_object({}) do |jid, obj|
10
19
  status = job_class.status(jid)
@@ -11,6 +11,8 @@ module Lcms
11
11
  materials_query: Lcms::Engine::AdminMaterialsQuery
12
12
  }.freeze
13
13
 
14
+ RE_GOOGLE_FOLDER = %r{/drive/(.*/)?folders/}
15
+
14
16
  layout :customized_layout
15
17
 
16
18
  before_action :authenticate_admin!
@@ -18,17 +18,14 @@ module Lcms
18
18
  end
19
19
 
20
20
  def create
21
- if gdoc_files.size > 1
22
- bulk_import gdoc_files
23
- return render :import
24
- end
21
+ return create_from_folder if form_params[:link].match?(RE_GOOGLE_FOLDER)
25
22
 
26
23
  @document = reimport_lesson
27
24
  if @document.save
28
25
  redirect_to AdminController.document_path(@document.document),
29
26
  notice: t('.success', name: @document.document.name)
30
27
  else
31
- render :new, alert: t('.error')
28
+ render :new
32
29
  end
33
30
  end
34
31
 
@@ -77,18 +74,11 @@ module Lcms
77
74
  @documents = Document.where(id: ids)
78
75
  end
79
76
 
80
- def gdoc_files
81
- @gdoc_files ||= begin
82
- link = form_params[:link]
83
- if link.match?(%r{/drive/(.*/)?folders/})
84
- folder_id = ::Lt::Google::Api::Drive.folder_id_for(link)
85
- ::Lt::Google::Api::Drive.new(google_credentials)
86
- .list_file_ids_in(folder_id)
87
- .map { |id| Lt::Lcms::Lesson::Downloader::Gdoc.gdoc_file_url(id) }
88
- else
89
- [link]
90
- end
91
- end
77
+ def gdoc_files_from(url)
78
+ folder_id = ::Lt::Google::Api::Drive.folder_id_for(url)
79
+ ::Lt::Google::Api::Drive.new(google_credentials)
80
+ .list_file_ids_in(folder_id)
81
+ .map { |id| ::Lt::Lcms::Lesson::Downloader::Gdoc.gdoc_file_url(id) }
92
82
  end
93
83
 
94
84
  def form_params
@@ -16,12 +16,14 @@ module Lcms
16
16
  end
17
17
 
18
18
  def create
19
- return bulk_import(gdoc_files) && render(:import) if gdoc_files.size > 1
20
-
21
19
  @material_form = DocumentGenerator.material_form.new(form_params)
20
+
21
+ return create_from_folder if form_params[:link].match?(RE_GOOGLE_FOLDER)
22
+
22
23
  if @material_form.save
23
24
  material = @material_form.material
24
- redirect_to AdminController.material_path(material.id), notice: t('.success', name: material.name)
25
+ redirect_to AdminController.material_path(material),
26
+ notice: t('.success', name: material.name)
25
27
  else
26
28
  render :new
27
29
  end
@@ -74,22 +76,17 @@ module Lcms
74
76
  params.require(:material_form).permit(:link, :source_type)
75
77
  end
76
78
 
77
- def gdoc_files
78
- @gdoc_files ||= begin
79
- link = form_params[:link]
80
- return [link] unless link =~ %r{/drive/(.*/)?folders/}
81
-
82
- folder_id = ::Lt::Google::Api::Drive.folder_id_for(link)
83
- if form_params[:source_type] == 'pdf'
84
- mime_type = Lt::Lcms::Lesson::Downloader::PDF::MIME_TYPE
85
- ::Lt::Google::Api::Drive.new(google_credentials)
86
- .list_file_ids_in(folder_id, mime_type: mime_type)
87
- .map { |id| Lt::Lcms::Lesson::Downloader::PDF.gdoc_file_url(id) }
88
- else
89
- ::Lt::Google::Api::Drive.new(google_credentials)
90
- .list_file_ids_in(folder_id)
91
- .map { |id| Lt::Lcms::Lesson::Downloader::Gdoc.gdoc_file_url(id) }
92
- end
79
+ def gdoc_files_from(url)
80
+ folder_id = ::Lt::Google::Api::Drive.folder_id_for(url)
81
+ if form_params[:source_type] == 'pdf'
82
+ mime_type = Lt::Lcms::Lesson::Downloader::PDF::MIME_TYPE
83
+ ::Lt::Google::Api::Drive.new(google_credentials)
84
+ .list_file_ids_in(folder_id, mime_type: mime_type)
85
+ .map { |id| ::Lt::Lcms::Lesson::Downloader::PDF.gdoc_file_url(id) }
86
+ else
87
+ ::Lt::Google::Api::Drive.new(google_credentials)
88
+ .list_file_ids_in(folder_id)
89
+ .map { |id| ::Lt::Lcms::Lesson::Downloader::Gdoc.gdoc_file_url(id) }
93
90
  end
94
91
  end
95
92
  end
@@ -81,6 +81,80 @@ module Lcms
81
81
  redirect_to :admin_resources, notice: t('.success', resource_id: @resource.id)
82
82
  end
83
83
 
84
+ protected
85
+
86
+ def form_params_arrays
87
+ download_categories_settings =
88
+ DownloadCategory.select(:title).map do |category|
89
+ { category.title.parameterize => %i(show_long_description show_short_description) }
90
+ end
91
+ {
92
+ additional_resource_ids: [],
93
+ common_core_standard_ids: [],
94
+ download_categories_settings: download_categories_settings,
95
+ resource_downloads_attributes: [
96
+ :_destroy,
97
+ :description,
98
+ :id,
99
+ :download_category_id, { download_attributes: %i(description file main filename_cache id title) }
100
+ ],
101
+ related_resource_ids: [],
102
+ standard_ids: [],
103
+ new_standard_names: [],
104
+ topic_ids: [],
105
+ tag_ids: [],
106
+ content_source_ids: [],
107
+ reading_assignment_text_ids: [],
108
+ new_topic_names: [],
109
+ new_tag_names: [],
110
+ new_content_source_names: [],
111
+ **form_params_arrays_override
112
+ }
113
+ end
114
+
115
+ #
116
+ # The result of this method will be splatted into +form_params_ararys+
117
+ # and will be injected into the final +form_params+ call.
118
+ #
119
+ # Should be used to extend the list of permitted parameters
120
+ #
121
+ # @return [Hash]
122
+ def form_params_arrays_override
123
+ {}
124
+ end
125
+
126
+ def form_params_simple
127
+ %i(
128
+ curriculum_type
129
+ directory
130
+ parent_id
131
+ tree
132
+ description
133
+ hidden
134
+ resource_type
135
+ short_title
136
+ subtitle
137
+ title
138
+ teaser
139
+ url
140
+ time_to_teach
141
+ ell_appropriate
142
+ image_file
143
+ opr_description
144
+ ).concat(form_params_simple_override)
145
+ end
146
+
147
+ #
148
+ # The result of this method will be added to +form_params_simple+
149
+ # and will be injected into the final +form_params+ call.
150
+ #
151
+ # Should be used to extend the list of permitted parameters
152
+ #
153
+ # @return [Array]
154
+ def form_params_simple_override
155
+ []
156
+ end
157
+
84
158
  private
85
159
 
86
160
  def can_bundle?(resource)
@@ -89,6 +163,7 @@ module Lcms
89
163
  .detect { |type| resource.send "#{type}?" }
90
164
  .present?
91
165
  end
166
+
92
167
  helper_method :can_bundle?
93
168
 
94
169
  def find_resource
@@ -99,50 +174,12 @@ module Lcms
99
174
  params.fetch(:q, {}).fetch(:grades, []).select(&:present?)
100
175
  end
101
176
 
102
- # rubocop:disable Metrics/MethodLength
103
177
  def form_params
104
178
  @form_params ||=
105
179
  begin
106
- download_categories_settings =
107
- DownloadCategory.select(:title).map do |category|
108
- { category.title.parameterize => %i(show_long_description show_short_description) }
109
- end
110
180
  ps = params.require(:resource).permit(
111
- :curriculum_type,
112
- :directory,
113
- :parent_id,
114
- :tree,
115
- :description,
116
- :hidden,
117
- :resource_type,
118
- :short_title,
119
- :subtitle,
120
- :title,
121
- :teaser,
122
- :url,
123
- :time_to_teach,
124
- :ell_appropriate,
125
- :image_file,
126
- :opr_description,
127
- additional_resource_ids: [],
128
- common_core_standard_ids: [],
129
- download_categories_settings: download_categories_settings,
130
- resource_downloads_attributes: [
131
- :_destroy,
132
- :description,
133
- :id,
134
- :download_category_id, { download_attributes: %i(description file main filename_cache id title) }
135
- ],
136
- related_resource_ids: [],
137
- standard_ids: [],
138
- new_standard_names: [],
139
- topic_ids: [],
140
- tag_ids: [],
141
- content_source_ids: [],
142
- reading_assignment_text_ids: [],
143
- new_topic_names: [],
144
- new_tag_names: [],
145
- new_content_source_names: []
181
+ form_params_simple,
182
+ form_params_arrays
146
183
  ).to_h
147
184
  if ps[:download_categories_settings].present?
148
185
  ps[:download_categories_settings].transform_values! do |settings|
@@ -153,7 +190,6 @@ module Lcms
153
190
  ps
154
191
  end
155
192
  end
156
- # rubocop:enable Metrics/MethodLength
157
193
 
158
194
  def metadata(directory)
159
195
  return {} unless @resource.present?
@@ -9,33 +9,22 @@ module Lcms
9
9
  @form = SurveyForm.new(permitted_params)
10
10
  if @form.valid?
11
11
  current_user.update(survey: @form.attributes)
12
- notify_heap
13
12
  loc = stored_location_for(:user)
14
- loc = root_path if loc.is_a?(String) && loc[survey_path]
15
- redirect_to loc || root_path
13
+ loc = lcms_engine.root_path if loc.is_a?(String) && loc[survey_path]
14
+ redirect_to loc || lcms_engine.root_path
16
15
  else
17
16
  render :show
18
17
  end
19
18
  end
20
19
 
21
20
  def show
22
- return redirect_to root_path if current_user.ready_to_go?
21
+ return redirect_to lcms_engine.root_path if current_user.ready_to_go?
23
22
 
24
23
  @form = SurveyForm.new(current_user.survey)
25
24
  end
26
25
 
27
26
  private
28
27
 
29
- def notify_heap
30
- data = current_user
31
- .survey.except('first_name', 'last_name')
32
- .merge(
33
- access_code: current_user.access_code,
34
- email: current_user.email
35
- )
36
- Heap.add_user_properties current_user.id, data
37
- end
38
-
39
28
  def permitted_params
40
29
  params.require(:survey_form).permit(
41
30
  :additional_period,
@@ -22,6 +22,7 @@ module Lcms
22
22
  return false unless valid?
23
23
 
24
24
  params = {
25
+ dpi: options[:dpi],
25
26
  import_retry: options[:import_retry],
26
27
  source_type: source_type.presence
27
28
  }.compact
@@ -8,8 +8,12 @@ module Lcms
8
8
  include ViewHelper
9
9
  include ::Webpacker::Helper
10
10
 
11
- def current_webpacker_instance
12
- Lcms::Engine.webpacker
11
+ # Use this to include lcms-engine based packs
12
+ def lcms_engine_javascript_pack_tag(*names, **options)
13
+ entries = names
14
+ .map { |name| Lcms::Engine.webpacker.manifest.lookup!(name, type: :javascript) }
15
+ .flatten
16
+ javascript_include_tag(*entries, **options)
13
17
  end
14
18
  end
15
19
  end
@@ -37,13 +37,6 @@ module Lcms
37
37
  ResourceDownload::DOWNLOAD_PER_CATEGORY_LIMIT
38
38
  end
39
39
 
40
- def download_heap_data(download, opts = {})
41
- {
42
- category: download.download_category&.title,
43
- url: download.download.filename.url
44
- }.merge(opts).to_json
45
- end
46
-
47
40
  def resource_breadcrumbs_with_links(resource)
48
41
  return GenericPresenter.new(resource).generic_title if resource.generic?
49
42
 
@@ -78,16 +71,6 @@ module Lcms
78
71
  .where(id: ids).pluck(:alt_names).flatten.uniq
79
72
  .map { |n| Standard.filter_ccss_standards(n, resource.subject) }.compact.sort
80
73
  end
81
-
82
- def bundle_heap_data(resource, bundle, cat, content_type)
83
- {
84
- resource_id: resource.id,
85
- resource_title: resource.title,
86
- url: bundle.file&.url.presence || bundle.url,
87
- category: cat,
88
- type: content_type
89
- }.to_json
90
- end
91
74
  end
92
75
  end
93
76
  end