lcms-engine 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
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