lcms-engine 0.1.2 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +1 -1
- data/.env.docker +5 -0
- data/.env.template +34 -0
- data/.gitignore +0 -1
- data/.rubocop.yml +8 -7
- data/.ruby-version +1 -1
- data/CHANGELOG.md +56 -1
- data/Dockerfile +2 -1
- data/Gemfile +0 -1
- data/Gemfile.lock +721 -0
- data/README.md +10 -6
- data/app/assets/javascripts/lcms/engine/admin/application.js +2 -15
- data/app/assets/javascripts/lcms/engine/application.js +1 -44
- data/app/assets/javascripts/lcms/engine/application_lti.js +1 -29
- data/app/assets/javascripts/lcms/engine/initializers/foundation.js +5 -0
- data/app/assets/stylesheets/lcms/engine/admin.scss +1 -2
- data/app/assets/stylesheets/lcms/engine/application.scss +6 -60
- data/app/assets/stylesheets/lcms/engine/base/_colors.scss +2 -2
- data/app/assets/stylesheets/lcms/engine/components/lesson/_icons.scss +0 -25
- data/app/assets/stylesheets/lcms/engine/layout/_footer.scss +2 -0
- data/app/assets/stylesheets/lcms/engine/layout/_header.scss +1 -210
- data/app/assets/stylesheets/lcms/engine/pdf.scss +4 -28
- data/app/assets/stylesheets/lcms/engine/pdf_plain.scss +3 -11
- data/app/assets/stylesheets/lcms/engine/print/_typography.scss +0 -5
- data/app/assets/stylesheets/lcms/engine/themes/_settings.scss +419 -116
- data/app/assets/stylesheets/lcms/engine/utils/_mixins.scss +2 -2
- data/app/assets/stylesheets/lcms/engine/utils/_variables.scss +4 -4
- data/app/assets/stylesheets/lcms/engine/vendors/foundation_and_overrides-pdf.scss +0 -1
- data/app/assets/stylesheets/lcms/engine/vendors/foundation_and_overrides.scss +13 -2
- data/app/controllers/concerns/lcms/engine/reimportable.rb +20 -1
- data/app/controllers/lcms/engine/admin/admin_controller.rb +2 -0
- data/app/controllers/lcms/engine/admin/association_picker_controller.rb +10 -9
- data/app/controllers/lcms/engine/admin/documents_controller.rb +27 -22
- data/app/controllers/lcms/engine/admin/materials_controller.rb +28 -22
- data/app/controllers/lcms/engine/admin/resource_picker_controller.rb +2 -2
- data/app/controllers/lcms/engine/admin/resources_controller.rb +81 -43
- data/app/controllers/lcms/engine/admin/sketch_compilers_controller.rb +2 -2
- data/app/controllers/lcms/engine/admin/standards_controller.rb +6 -1
- data/app/controllers/lcms/engine/admin/users_controller.rb +6 -1
- data/app/controllers/lcms/engine/application_controller.rb +0 -15
- data/app/controllers/lcms/engine/surveys_controller.rb +3 -14
- data/app/entities/lcms/engine/grades.rb +17 -6
- data/app/entities/lcms/engine/media_embed.rb +1 -1
- data/app/entities/lcms/engine/pagination.rb +14 -5
- data/app/entities/lcms/engine/roman_numerals.rb +1 -1
- data/app/forms/lcms/engine/document_form.rb +19 -14
- data/app/forms/lcms/engine/material_form.rb +4 -2
- data/app/helpers/admin/components_helper.rb +2 -2
- data/app/helpers/lcms/engine/application_helper.rb +6 -2
- data/app/helpers/lcms/engine/resource_helper.rb +0 -17
- data/app/helpers/lcms/engine/view_helper.rb +2 -4
- data/app/interactors/lcms/engine/explore_curriculum_interactor.rb +2 -2
- data/app/javascript/components/admin/ImportStatus.jsx +8 -4
- data/app/javascript/components/admin/MultiSelectedOperation.jsx +1 -0
- data/app/javascript/components/admin/association-picker/AssociationPicker.jsx +1 -0
- data/app/javascript/components/admin/association-picker/AssociationPickerResults.jsx +2 -1
- data/app/javascript/components/admin/association-picker/AssociationPickerWindow.jsx +1 -0
- data/app/javascript/components/admin/curriculum/CurriculumEditor.jsx +1 -0
- data/app/javascript/components/admin/picker/pickerWindowWrapper.jsx +0 -1
- data/app/javascript/components/admin/resource-picker/ResourcePicker.jsx +1 -0
- data/app/jobs/concerns/lcms/engine/nested_resque_job.rb +1 -4
- data/app/jobs/lcms/engine/document_generate_gdoc_job.rb +2 -2
- data/app/jobs/lcms/engine/document_generate_job.rb +1 -1
- data/app/jobs/lcms/engine/document_parse_job.rb +1 -1
- data/app/models/lcms/engine/access_code.rb +1 -1
- data/app/models/lcms/engine/application_record.rb +9 -0
- data/app/models/lcms/engine/author.rb +1 -1
- data/app/models/lcms/engine/component.rb +3 -3
- data/app/models/lcms/engine/copyright_attribution.rb +1 -1
- data/app/models/lcms/engine/curriculum.rb +1 -1
- data/app/models/lcms/engine/document.rb +3 -3
- data/app/models/lcms/engine/document_bundle.rb +2 -2
- data/app/models/lcms/engine/document_part.rb +1 -1
- data/app/models/lcms/engine/download.rb +4 -4
- data/app/models/lcms/engine/download_category.rb +1 -1
- data/app/models/lcms/engine/leadership_post.rb +1 -1
- data/app/models/lcms/engine/material.rb +2 -2
- data/app/models/lcms/engine/material_part.rb +1 -1
- data/app/models/lcms/engine/reading_assignment_author.rb +1 -1
- data/app/models/lcms/engine/reading_assignment_text.rb +1 -1
- data/app/models/lcms/engine/resource.rb +4 -12
- data/app/models/lcms/engine/resource_additional_resource.rb +1 -1
- data/app/models/lcms/engine/resource_download.rb +1 -1
- data/app/models/lcms/engine/resource_reading_assignment.rb +1 -1
- data/app/models/lcms/engine/resource_related_resource.rb +1 -1
- data/app/models/lcms/engine/resource_standard.rb +1 -1
- data/app/models/lcms/engine/search/document.rb +4 -3
- data/app/models/lcms/engine/search/elastic_search_document.rb +1 -1
- data/app/models/lcms/engine/settings.rb +1 -1
- data/app/models/lcms/engine/social_thumbnail.rb +1 -1
- data/app/models/lcms/engine/staff_member.rb +1 -1
- data/app/models/lcms/engine/standard.rb +1 -1
- data/app/models/lcms/engine/standard_link.rb +1 -1
- data/app/models/lcms/engine/user.rb +3 -3
- data/app/presenters/lcms/engine/content_presenter.rb +1 -1
- data/app/presenters/lcms/engine/document_presenter.rb +5 -7
- data/app/queries/lcms/engine/admin_documents_query.rb +2 -2
- data/app/queries/lcms/engine/admin_materials_query.rb +1 -1
- data/app/serializers/lcms/engine/association_item_serializer.rb +0 -1
- data/app/serializers/lcms/engine/curriculum_resource_serializer.rb +0 -2
- data/app/serializers/lcms/engine/document_material_serializer.rb +0 -1
- data/app/serializers/lcms/engine/material_serializer.rb +0 -1
- data/app/serializers/lcms/engine/previews_material_serializer.rb +1 -1
- data/app/serializers/lcms/engine/resource_details_serializer.rb +0 -2
- data/app/serializers/lcms/engine/resource_instruction_serializer.rb +0 -2
- data/app/serializers/lcms/engine/resource_picker_serializer.rb +0 -2
- data/app/serializers/lcms/engine/resource_serializer.rb +0 -2
- data/app/serializers/lcms/engine/search_document_serializer.rb +0 -2
- data/app/services/lcms/engine/document_build_service.rb +5 -0
- data/app/services/lcms/engine/html_sanitizer.rb +5 -5
- data/app/services/lcms/engine/lessons_gdoc_bundler.rb +1 -1
- data/app/services/lcms/engine/material_build_service.rb +6 -2
- data/app/services/lcms/engine/material_preview_generator.rb +2 -2
- data/app/services/lcms/engine/react_materials_resolver.rb +3 -2
- data/app/services/lcms/engine/s3_service.rb +1 -1
- data/app/uploaders/social_thumbnail_uploader.rb +0 -4
- data/app/views/devise/confirmations/new.html.erb +1 -1
- data/app/views/devise/passwords/edit.html.erb +1 -1
- data/app/views/devise/passwords/new.html.erb +1 -1
- data/app/views/devise/registrations/new.html.erb +1 -1
- data/app/views/devise/sessions/new.html.erb +2 -2
- data/app/views/layouts/lcms/engine/admin.html.erb +1 -3
- data/app/views/layouts/lcms/engine/application.html.erb +0 -6
- data/app/views/layouts/lcms/engine/cg_pdf.erb +0 -38
- data/app/views/layouts/lcms/engine/lti.html.erb +0 -1
- data/app/views/lcms/engine/admin/access_codes/index.html.erb +10 -8
- data/app/views/lcms/engine/admin/batch_reimports/_search_form.html.erb +1 -1
- data/app/views/lcms/engine/admin/curriculums/edit.html.erb +3 -2
- data/app/views/lcms/engine/admin/documents/_materials_links.html.erb +2 -2
- data/app/views/lcms/engine/admin/documents/_search_form.html.erb +1 -1
- data/app/views/lcms/engine/admin/documents/index.html.erb +4 -4
- data/app/views/lcms/engine/admin/documents/new.html.erb +1 -1
- data/app/views/lcms/engine/admin/materials/_search_form.html.erb +1 -1
- data/app/views/lcms/engine/admin/materials/index.html.erb +6 -6
- data/app/views/lcms/engine/admin/resource_bulk_edits/new.html.erb +3 -3
- data/app/views/lcms/engine/admin/resources/_fields.html.erb +3 -0
- data/app/views/lcms/engine/admin/resources/_search_form.html.erb +1 -1
- data/app/views/lcms/engine/admin/shared/_header.html.erb +1 -8
- data/app/views/lcms/engine/admin/standards/index.html.erb +9 -7
- data/app/views/lcms/engine/admin/users/index.html.erb +16 -14
- data/app/views/lcms/engine/documents/_content.html.erb +0 -1
- data/app/views/lcms/engine/documents/_sticky_header.html.erb +1 -1
- data/app/views/lcms/engine/documents/_sticky_site_menu.html.erb +0 -1
- data/app/views/lcms/engine/documents/gdoc/_agenda.html.erb +1 -1
- data/app/views/lcms/engine/documents/show.html.erb +1 -1
- data/app/views/lcms/engine/materials/show.html.erb +1 -1
- data/app/views/lcms/engine/resources/_children_list.html.erb +1 -1
- data/app/views/lcms/engine/resources/_download.html.erb +4 -4
- data/app/views/lcms/engine/resources/_unit_bundles.html.erb +4 -4
- data/app/views/lcms/engine/resources/show.html.erb +2 -2
- data/app/views/lcms/engine/shared/_footer.html.erb +1 -3
- data/app/views/lcms/engine/shared/_header.html.erb +2 -36
- data/app/views/lcms/engine/surveys/show.html.erb +1 -1
- data/app/views/lcms/engine/welcome/index.html.erb +1 -80
- data/config/initializers/carrier_wave.rb +0 -1
- data/config/locales/admin/en.yml +2 -1
- data/config/routes.rb +2 -36
- data/db/migrate/20200422130652_add_reimported_at_to_documents.rb +7 -0
- data/db/migrate/20200429130353_drop_pages.rb +13 -0
- data/db/schema.rb +1 -1
- data/docs/env-variables.md +87 -0
- data/docs/google-cloud-platform-setup.md +106 -0
- data/lcms-engine.gemspec +69 -89
- data/lib/doc_template.rb +1 -1
- data/lib/doc_template/document.rb +2 -2
- data/lib/doc_template/objects/agenda_metadata.rb +1 -1
- data/lib/doc_template/objects/metadata_helpers.rb +1 -1
- data/lib/doc_template/objects/toc_metadata.rb +2 -2
- data/lib/doc_template/tables/activity.rb +1 -2
- data/lib/doc_template/tables/base.rb +7 -2
- data/lib/doc_template/tables/section.rb +1 -2
- data/lib/doc_template/tags/activity_metadata_type_tag.rb +1 -1
- data/lib/doc_template/tags/answer_space_tag.rb +1 -1
- data/lib/doc_template/tags/base_tag.rb +3 -3
- data/lib/doc_template/tags/columns_tag.rb +1 -1
- data/lib/doc_template/tags/def_tag.rb +1 -1
- data/lib/doc_template/tags/expand_tag.rb +1 -0
- data/lib/doc_template/tags/heading_tag.rb +1 -1
- data/lib/doc_template/tags/inset_tag.rb +2 -2
- data/lib/doc_template/tags/latex_tag.rb +1 -1
- data/lib/doc_template/tags/link_tag.rb +1 -1
- data/lib/doc_template/tags/page_break_tag.rb +1 -1
- data/lib/doc_template/tags/pd_tag.rb +4 -4
- data/lib/doc_template/tags/section_tag.rb +2 -2
- data/lib/doc_template/tags/standard_tag.rb +3 -3
- data/lib/doc_template/tags/table_preserve_alignment_tag.rb +1 -1
- data/lib/doc_template/xpath_functions.rb +3 -1
- data/lib/document_exporter/base.rb +1 -2
- data/lib/document_exporter/docx.rb +0 -1
- data/lib/document_exporter/gdoc/base.rb +1 -1
- data/lib/document_renderer/part.rb +3 -3
- data/lib/elasticsearch/persistence/repository/response/results.rb +1 -1
- data/lib/generators/lcms/engine/install/install_generator.rb +1 -4
- data/lib/generators/lcms/engine/install/templates/config/lcms.yml +1 -1
- data/lib/lcms/engine/engine.rb +1 -25
- data/lib/lcms/engine/migration.rb +2 -0
- data/lib/lcms/engine/version.rb +1 -1
- data/lib/lt/lcms/metadata/base_service.rb +2 -1
- data/lib/lt/lcms/metadata/context.rb +6 -8
- data/lib/lt/lcms/metadata/service.rb +3 -1
- data/lib/resque_job.rb +3 -6
- data/lib/standard_importer.rb +4 -4
- data/lib/tasks/cloud66.rake +6 -4
- data/lib/tasks/document.rake +3 -3
- data/lib/tasks/google.rake +1 -1
- data/package.json +1 -0
- data/spec/controllers/admin/admin_controller_spec.rb +1 -1
- data/spec/controllers/admin/association_picker_controller_spec.rb +6 -8
- data/spec/controllers/admin/curriculums_controller_spec.rb +1 -2
- data/spec/controllers/admin/documents_controller_spec.rb +47 -11
- data/spec/controllers/admin/materials_controller_spec.rb +72 -6
- data/spec/controllers/admin/resource_bulk_edit_controller_spec.rb +3 -3
- data/spec/controllers/admin/resources_controller_spec.rb +72 -0
- data/spec/controllers/admin/sketch_compilers_controller_spec.rb +5 -4
- data/spec/controllers/admin/standards_controller_spec.rb +12 -9
- data/spec/controllers/admin/users_controller_spec.rb +2 -2
- data/spec/controllers/admin/welcome_controller_spec.rb +1 -1
- data/spec/controllers/documents_controller_spec.rb +3 -3
- data/spec/controllers/resources_controller_spec.rb +2 -2
- data/spec/dummy/.env.docker +1 -1
- data/spec/dummy/bin/spring +2 -2
- data/spec/dummy/config/application.rb +3 -3
- data/spec/dummy/config/environments/production.rb +1 -1
- data/spec/dummy/config/environments/test.rb +2 -5
- data/spec/dummy/config/lcms-admin.yml +3 -3
- data/spec/dummy/config/puma.rb +3 -3
- data/spec/dummy/config/webpack/development.js +5 -0
- data/spec/dummy/config/webpack/environment.js +3 -0
- data/spec/dummy/config/webpack/production.js +5 -0
- data/spec/dummy/config/webpack/test.js +5 -0
- data/spec/dummy/config/webpacker.yml +96 -0
- data/spec/dummy/db/schema.rb +275 -307
- data/spec/entities/grades_spec.rb +12 -0
- data/spec/factories/document_bundles.rb +1 -1
- data/spec/factories/standard_links.rb +2 -0
- data/spec/factories/taggings.rb +1 -0
- data/spec/features/admin/lessons/add_lesson_spec.rb +3 -3
- data/spec/features/admin/materials/add_material_spec.rb +3 -3
- data/spec/features/welcome_spec.rb +1 -1
- data/spec/fixtures/tables/activity-metadata-3activities.html +1 -0
- data/spec/fixtures/tables/document-metadata-2paragpraphs.html +97 -0
- data/spec/fixtures/tables/document-metadata-2spans.html +96 -0
- data/spec/fixtures/tables/document-metadata.html +96 -0
- data/spec/forms/document_form_spec.rb +11 -1
- data/spec/lib/doc_template/tables/activity_spec.rb +28 -0
- data/spec/lib/doc_template/tables/metadata_spec.rb +40 -0
- data/spec/lib/doc_template/tables/shared_examples/remove_table.rb +11 -0
- data/spec/models/document_bundle_spec.rb +0 -6
- data/spec/models/resource_spec.rb +0 -33
- data/spec/rails_helper.rb +19 -1
- data/spec/requests/admin/curriculum_spec.rb +17 -0
- data/spec/services/document_build_service_spec.rb +76 -62
- data/spec/support/capybara.rb +1 -3
- data/spec/support/concerns/searchable.rb +2 -0
- data/spec/support/database_cleaner.rb +5 -16
- data/spec/support/devise.rb +2 -0
- data/spec/support/fixture_helper.rb +16 -0
- data/vendor/assets/javascripts/selectize.min.js +4 -0
- data/vendor/assets/stylesheets/selectize.scss +333 -0
- data/yarn.lock +765 -608
- metadata +376 -760
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.eot +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.svg +0 -689
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.ttf +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Medium-Web.woff +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.eot +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.svg +0 -697
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.ttf +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Regular-Web.woff +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.eot +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.svg +0 -768
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.ttf +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-RegularItalic-Web.woff +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.eot +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.svg +0 -685
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.ttf +0 -0
- data/app/assets/fonts/lcms/engine/caponi/CaponiSlab-Semibold-Web.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.svg +0 -5603
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Bold.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.svg +0 -5763
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Light.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.otf +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.svg +0 -5400
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansCond-Medium.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.html +0 -15
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.otf +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.svg +0 -13061
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Bold.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.html +0 -15
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.otf +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.svg +0 -13075
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Light.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.otf +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.svg +0 -13142
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-LightItalic.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.eot +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.ttf +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.woff +0 -0
- data/app/assets/fonts/lcms/engine/centro/PFCentroSansPro-Medium.woff2 +0 -0
- data/app/assets/fonts/lcms/engine/cursive/Sriracha-Regular.ttf +0 -0
- data/app/assets/fonts/lcms/engine/icons/ubicons.eot +0 -0
- data/app/assets/fonts/lcms/engine/icons/ubicons.svg +0 -50
- data/app/assets/fonts/lcms/engine/icons/ubicons.ttf +0 -0
- data/app/assets/fonts/lcms/engine/icons/ubicons.woff +0 -0
- data/app/assets/fonts/lcms/engine/ub/UBIcons.eot +0 -0
- data/app/assets/fonts/lcms/engine/ub/UBIcons.svg +0 -18
- data/app/assets/fonts/lcms/engine/ub/UBIcons.ttf +0 -0
- data/app/assets/fonts/lcms/engine/ub/UBIcons.woff +0 -0
- data/app/assets/images/lcms/engine/lessons/ld_p1.png +0 -0
- data/app/assets/images/lcms/engine/lessons/ld_p2.png +0 -0
- data/app/assets/images/lcms/engine/lessons/ld_p3.png +0 -0
- data/app/assets/images/lcms/engine/lessons/tens.png +0 -0
- data/app/assets/images/lcms/engine/lessons/wp.svg +0 -30
- data/app/assets/images/lcms/engine/tile-wide.png +0 -0
- data/app/assets/images/lcms/engine/tile.png +0 -0
- data/app/assets/javascripts/lcms/engine/components.js +0 -7
- data/app/assets/javascripts/lcms/engine/components/.gitkeep +0 -0
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMap.js.jsx +0 -31
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapLesson.js.jsx +0 -18
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapModule.js.jsx +0 -59
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/CurriculumMapUnit.js.jsx +0 -56
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/ResourceHover.js.jsx +0 -27
- data/app/assets/javascripts/lcms/engine/components/curriculum-map/ResourcePreview.js.jsx +0 -29
- data/app/assets/javascripts/lcms/engine/components/enhance-instruction/EnhanceInstructionCards.js.jsx +0 -13
- data/app/assets/javascripts/lcms/engine/components/enhance-instruction/EnhanceInstructionPage.js.jsx +0 -139
- data/app/assets/javascripts/lcms/engine/components/enhance-instruction/GenericResourceCard.js.jsx +0 -20
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumCardItem.js.jsx +0 -152
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumGradeMap.js.jsx +0 -44
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumHeader.js.jsx +0 -10
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumItem.js.jsx +0 -77
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumModuleMap.js.jsx +0 -59
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumOpr.js.jsx +0 -62
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumPage.js.jsx +0 -258
- data/app/assets/javascripts/lcms/engine/components/explore-curriculum/ExploreCurriculumUnitMap.js.jsx +0 -50
- data/app/assets/javascripts/lcms/engine/components/filterbar/FilterBarResponsive.js.jsx +0 -62
- data/app/assets/javascripts/lcms/engine/components/filterbar/Filterbar.js.jsx +0 -258
- data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarFacet.js.jsx +0 -12
- data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarGrade.js.jsx +0 -14
- data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarSearch.js.jsx +0 -48
- data/app/assets/javascripts/lcms/engine/components/filterbar/FilterbarSubject.js.jsx +0 -12
- data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsCards.js.jsx +0 -11
- data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsCardsEmpty.js.jsx +0 -17
- data/app/assets/javascripts/lcms/engine/components/find-lessons/FindLessonsPage.js.jsx +0 -58
- data/app/assets/javascripts/lcms/engine/components/helpers/FreshdeskBtn.js.jsx +0 -9
- data/app/assets/javascripts/lcms/engine/components/helpers/MediaTime.js.jsx +0 -6
- data/app/assets/javascripts/lcms/engine/components/helpers/SearchResultsHeader.js.jsx +0 -41
- data/app/assets/javascripts/lcms/engine/components/helpers/TimeToTeach.js.jsx +0 -29
- data/app/assets/javascripts/lcms/engine/components/instruction-card/InstructionCard.js.jsx +0 -57
- data/app/assets/javascripts/lcms/engine/components/lesson-card/LessonCard.js.jsx +0 -45
- data/app/assets/javascripts/lcms/engine/components/materials/CollapsedMaterial.js.jsx +0 -40
- data/app/assets/javascripts/lcms/engine/components/materials/DocumentMaterialsList.js.jsx +0 -33
- data/app/assets/javascripts/lcms/engine/components/materials/ExpandedMaterial.js.jsx +0 -37
- data/app/assets/javascripts/lcms/engine/components/materials/MaterialsContainer.js.jsx +0 -92
- data/app/assets/javascripts/lcms/engine/components/materials/MaterialsList.js.jsx +0 -19
- data/app/assets/javascripts/lcms/engine/components/modals/DownloadModal.js.jsx +0 -68
- data/app/assets/javascripts/lcms/engine/components/related-instruction/RelatedInstruction.js.jsx +0 -72
- data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdown.js.jsx +0 -159
- data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdownResult.js.jsx +0 -12
- data/app/assets/javascripts/lcms/engine/components/search-dropdown/SearchDropdownResults.js.jsx +0 -36
- data/app/assets/javascripts/lcms/engine/components/search/SearchPage.js.jsx +0 -44
- data/app/assets/javascripts/lcms/engine/components/search/SearchResult.js.jsx +0 -22
- data/app/assets/javascripts/lcms/engine/components/search/SearchResults.js.jsx +0 -17
- data/app/assets/javascripts/lcms/engine/components/search/SearchResultsEmpty.js.jsx +0 -25
- data/app/assets/javascripts/lcms/engine/components/search/searchPageWrapper.js.jsx +0 -77
- data/app/assets/javascripts/lcms/engine/components/select-activity/SelectActivityConfirmationModal.js.jsx +0 -107
- data/app/assets/javascripts/lcms/engine/components/select-activity/SelectActivityToggle.js.jsx +0 -39
- data/app/assets/javascripts/lcms/engine/components/stores/ExcludesStore.js.jsx +0 -11
- data/app/assets/javascripts/lcms/engine/components/tabs/SimpleTab.js.jsx +0 -130
- data/app/assets/javascripts/lcms/engine/components/utils/UrlHistory.js.jsx +0 -113
- data/app/assets/javascripts/lcms/engine/components/utils/colorcodecss.js.jsx +0 -4
- data/app/assets/javascripts/lcms/engine/components/utils/converttobem.js.jsx +0 -3
- data/app/assets/javascripts/lcms/engine/components/utils/filterbarupdate.js.jsx +0 -5
- data/app/assets/javascripts/lcms/engine/components/utils/heaptrackpd.js.jsx +0 -5
- data/app/assets/javascripts/lcms/engine/components/utils/regexpescape.js.jsx +0 -5
- data/app/assets/javascripts/lcms/engine/components/utils/scalenumber.js.jsx +0 -8
- data/app/assets/javascripts/lcms/engine/initializers/about_people.js +0 -8
- data/app/assets/javascripts/lcms/engine/initializers/bundles.js +0 -12
- data/app/assets/javascripts/lcms/engine/initializers/events.js +0 -3
- data/app/assets/javascripts/lcms/engine/initializers/freshdesk.js +0 -18
- data/app/assets/javascripts/lcms/engine/initializers/google_analytics.js +0 -10
- data/app/assets/javascripts/lcms/engine/initializers/header_dropdown.js +0 -44
- data/app/assets/javascripts/lcms/engine/initializers/heap_analytics.js +0 -78
- data/app/assets/javascripts/lcms/engine/initializers/leadership.js +0 -22
- data/app/assets/javascripts/lcms/engine/initializers/lessons.js +0 -299
- data/app/assets/javascripts/lcms/engine/initializers/loadasync.js +0 -30
- data/app/assets/javascripts/lcms/engine/initializers/pdf_preview.js +0 -15
- data/app/assets/javascripts/lcms/engine/initializers/resource_details.js +0 -21
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/SideBar.js.jsx +0 -86
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarCGMenu.js.jsx +0 -37
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarDocMenu.js.jsx +0 -75
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarMobile.js.jsx +0 -43
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/SidebarSticky.js.jsx +0 -43
- data/app/assets/javascripts/lcms/engine/initializers/sidebar/TopScroll.js.jsx +0 -21
- data/app/assets/javascripts/lcms/engine/initializers/social_sharing.js +0 -29
- data/app/assets/javascripts/lcms/engine/initializers/soundcloud.js +0 -52
- data/app/assets/javascripts/lcms/engine/initializers/subscribe_placeholder.js +0 -12
- data/app/assets/javascripts/lcms/engine/initializers/survey.js +0 -31
- data/app/assets/stylesheets/lcms/engine/base/_cg-colors.scss +0 -48
- data/app/assets/stylesheets/lcms/engine/base/_fonts.scss +0 -103
- data/app/assets/stylesheets/lcms/engine/base/_icons.scss +0 -342
- data/app/assets/stylesheets/lcms/engine/components/_buttons.scss +0 -200
- data/app/assets/stylesheets/lcms/engine/components/_cards.scss +0 -36
- data/app/assets/stylesheets/lcms/engine/components/_cg-base.scss +0 -22
- data/app/assets/stylesheets/lcms/engine/components/_curriculum-cards.scss +0 -237
- data/app/assets/stylesheets/lcms/engine/components/_curriculum-map.scss +0 -214
- data/app/assets/stylesheets/lcms/engine/components/_download-modal.scss +0 -56
- data/app/assets/stylesheets/lcms/engine/components/_filterbar-modal.scss +0 -20
- data/app/assets/stylesheets/lcms/engine/components/_filterbar.scss +0 -184
- data/app/assets/stylesheets/lcms/engine/components/_generic-resource.scss +0 -58
- data/app/assets/stylesheets/lcms/engine/components/_inputs.scss +0 -12
- data/app/assets/stylesheets/lcms/engine/components/_instruction-cards.scss +0 -160
- data/app/assets/stylesheets/lcms/engine/components/_lesson-base.scss +0 -31
- data/app/assets/stylesheets/lcms/engine/components/_lesson-cards.scss +0 -119
- data/app/assets/stylesheets/lcms/engine/components/_ls-post.scss +0 -38
- data/app/assets/stylesheets/lcms/engine/components/_material-base.scss +0 -6
- data/app/assets/stylesheets/lcms/engine/components/_media-resources.scss +0 -6
- data/app/assets/stylesheets/lcms/engine/components/_media.scss +0 -95
- data/app/assets/stylesheets/lcms/engine/components/_pagination.scss +0 -84
- data/app/assets/stylesheets/lcms/engine/components/_panel-dsc.scss +0 -37
- data/app/assets/stylesheets/lcms/engine/components/_panel.scss +0 -7
- data/app/assets/stylesheets/lcms/engine/components/_related-instruction.scss +0 -31
- data/app/assets/stylesheets/lcms/engine/components/_resource.scss +0 -217
- data/app/assets/stylesheets/lcms/engine/components/_search-dropdown.scss +0 -23
- data/app/assets/stylesheets/lcms/engine/components/_search-header.scss +0 -45
- data/app/assets/stylesheets/lcms/engine/components/_search.scss +0 -57
- data/app/assets/stylesheets/lcms/engine/components/_sidebar.scss +0 -159
- data/app/assets/stylesheets/lcms/engine/components/_simple-tab.scss +0 -57
- data/app/assets/stylesheets/lcms/engine/components/_social-sharing.scss +0 -20
- data/app/assets/stylesheets/lcms/engine/components/_titles.scss +0 -33
- data/app/assets/stylesheets/lcms/engine/components/_top-scroll-button.scss +0 -28
- data/app/assets/stylesheets/lcms/engine/components/_unit-bundles.scss +0 -14
- data/app/assets/stylesheets/lcms/engine/components/cg/_annotations.scss +0 -48
- data/app/assets/stylesheets/lcms/engine/components/cg/_colorscheme.scss +0 -60
- data/app/assets/stylesheets/lcms/engine/components/cg/_contents-modal.scss +0 -20
- data/app/assets/stylesheets/lcms/engine/components/cg/_elements.scss +0 -11
- data/app/assets/stylesheets/lcms/engine/components/cg/_faq.scss +0 -35
- data/app/assets/stylesheets/lcms/engine/components/cg/_footnote.scss +0 -20
- data/app/assets/stylesheets/lcms/engine/components/cg/_hacks.scss +0 -11
- data/app/assets/stylesheets/lcms/engine/components/cg/_icons.scss +0 -30
- data/app/assets/stylesheets/lcms/engine/components/cg/_keywords.scss +0 -5
- data/app/assets/stylesheets/lcms/engine/components/cg/_links.scss +0 -3
- data/app/assets/stylesheets/lcms/engine/components/cg/_quotes.scss +0 -18
- data/app/assets/stylesheets/lcms/engine/components/cg/_standards.scss +0 -23
- data/app/assets/stylesheets/lcms/engine/components/cg/_table.scss +0 -50
- data/app/assets/stylesheets/lcms/engine/components/cg/_task.scss +0 -43
- data/app/assets/stylesheets/lcms/engine/components/cg/_video.scss +0 -10
- data/app/assets/stylesheets/lcms/engine/components/support/_helpdesk.scss +0 -25
- data/app/assets/stylesheets/lcms/engine/freshdesk/base/_colors.scss +0 -25
- data/app/assets/stylesheets/lcms/engine/freshdesk/base/_typography.scss +0 -19
- data/app/assets/stylesheets/lcms/engine/freshdesk/components/_block.scss +0 -5
- data/app/assets/stylesheets/lcms/engine/freshdesk/components/_buttons.scss +0 -5
- data/app/assets/stylesheets/lcms/engine/freshdesk/components/_help-center.scss +0 -59
- data/app/assets/stylesheets/lcms/engine/freshdesk/components/_tabs.scss +0 -33
- data/app/assets/stylesheets/lcms/engine/freshdesk/freshdesk.scss +0 -42
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_footer.scss +0 -44
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_header.scss +0 -49
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/_page.scss +0 -40
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/footer.liquid +0 -14
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/header.liquid +0 -41
- data/app/assets/stylesheets/lcms/engine/freshdesk/layout/page.liquid +0 -22
- data/app/assets/stylesheets/lcms/engine/freshdesk/pages/_portal-home.scss +0 -18
- data/app/assets/stylesheets/lcms/engine/freshdesk/pages/portal.home.liquid +0 -74
- data/app/assets/stylesheets/lcms/engine/freshdesk/themes/_settings.scss +0 -19
- data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_breakpoint.scss +0 -288
- data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_helpers.scss +0 -22
- data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_unit.scss +0 -95
- data/app/assets/stylesheets/lcms/engine/freshdesk/utils/_value.scss +0 -138
- data/app/assets/stylesheets/lcms/engine/layout/_connect.scss +0 -63
- data/app/assets/stylesheets/lcms/engine/layout/_header-search-form.scss +0 -30
- data/app/assets/stylesheets/lcms/engine/layout/_sticky-header.scss +0 -179
- data/app/assets/stylesheets/lcms/engine/layout/_sticky-navigation.scss +0 -124
- data/app/assets/stylesheets/lcms/engine/layout/_subscribe.scss +0 -68
- data/app/assets/stylesheets/lcms/engine/pages/_about-people.scss +0 -115
- data/app/assets/stylesheets/lcms/engine/pages/_about.scss +0 -61
- data/app/assets/stylesheets/lcms/engine/pages/_content-guide.scss +0 -205
- data/app/assets/stylesheets/lcms/engine/pages/_enhance-instruction.scss +0 -19
- data/app/assets/stylesheets/lcms/engine/pages/_explore-curriculum.scss +0 -46
- data/app/assets/stylesheets/lcms/engine/pages/_find-lessons.scss +0 -1
- data/app/assets/stylesheets/lcms/engine/pages/_home.scss +0 -237
- data/app/assets/stylesheets/lcms/engine/pages/_leadership.scss +0 -263
- data/app/assets/stylesheets/lcms/engine/pages/_lesson-document.scss +0 -138
- data/app/assets/stylesheets/lcms/engine/pages/_unsupported.scss +0 -18
- data/app/assets/stylesheets/lcms/engine/print/_b64-fonts.scss.erb +0 -65
- data/app/assets/stylesheets/lcms/engine/print/_cg-base.scss +0 -4
- data/app/assets/stylesheets/lcms/engine/print/_hacks.scss +0 -6
- data/app/assets/stylesheets/lcms/engine/print/cg/_base-typography.scss +0 -21
- data/app/assets/stylesheets/lcms/engine/print/cg/_breaks.scss +0 -7
- data/app/assets/stylesheets/lcms/engine/print/cg/_elements-typography.scss +0 -14
- data/app/assets/stylesheets/lcms/engine/vendors/swiper.css +0 -547
- data/app/controllers/concerns/lcms/engine/analytics_tracking.rb +0 -51
- data/app/controllers/concerns/lcms/engine/heap_notifyable.rb +0 -20
- data/app/controllers/lcms/engine/admin/configurable_admin.rb +0 -56
- data/app/controllers/lcms/engine/admin/google_oauth2_controller.rb +0 -15
- data/app/controllers/lcms/engine/admin/pages_controller.rb +0 -54
- data/app/controllers/lcms/engine/analytics_exclusion_controller.rb +0 -14
- data/app/controllers/lcms/engine/downloads_controller.rb +0 -50
- data/app/controllers/lcms/engine/enhance_instruction_controller.rb +0 -18
- data/app/controllers/lcms/engine/explore_curriculum_controller.rb +0 -28
- data/app/controllers/lcms/engine/find_lessons_controller.rb +0 -15
- data/app/controllers/lcms/engine/pages_controller.rb +0 -26
- data/app/controllers/lcms/engine/search_controller.rb +0 -15
- data/app/controllers/lcms/engine/sessions_controller.rb +0 -19
- data/app/models/lcms/engine/page.rb +0 -13
- data/app/services/lcms/engine/generate_thumbnails.rb +0 -54
- data/app/services/lcms/engine/svg_social_thumbnail.rb +0 -223
- data/app/views/layouts/lcms/engine/ld_docx.html.erb +0 -16
- data/app/views/lcms/engine/admin/pages/_form.html.erb +0 -8
- data/app/views/lcms/engine/admin/pages/edit.html.erb +0 -9
- data/app/views/lcms/engine/admin/pages/index.html.erb +0 -25
- data/app/views/lcms/engine/admin/pages/new.html.erb +0 -5
- data/app/views/lcms/engine/documents/_helpdesk.html.erb +0 -9
- data/app/views/lcms/engine/pages/_about_people_staff.html.erb +0 -27
- data/app/views/lcms/engine/pages/_leadership_in_action.html.erb +0 -25
- data/app/views/lcms/engine/pages/_leadership_why_i_lead.html.erb +0 -34
- data/app/views/lcms/engine/pages/about.html.erb +0 -87
- data/app/views/lcms/engine/pages/about_people.html.erb +0 -27
- data/app/views/lcms/engine/pages/forthcoming.html.erb +0 -9
- data/app/views/lcms/engine/pages/leadership.html.erb +0 -82
- data/app/views/lcms/engine/pages/not_found.html.erb +0 -9
- data/app/views/lcms/engine/pages/privacy.html.erb +0 -9
- data/app/views/lcms/engine/pages/show.html.erb +0 -8
- data/app/views/lcms/engine/pages/show_slug.html.erb +0 -0
- data/app/views/lcms/engine/pages/tos.html.erb +0 -9
- data/app/views/lcms/engine/shared/_connect.html.erb +0 -60
- data/app/views/lcms/engine/shared/_freshdesk.html.erb +0 -22
- data/app/views/lcms/engine/shared/_google_analytics.html.erb +0 -9
- data/app/views/lcms/engine/shared/_heap_analytics.html.erb +0 -7
- data/app/views/lcms/engine/shared/_open_graph_meta.html.erb +0 -15
- data/app/views/lcms/engine/shared/_open_graph_meta_js.html.erb +0 -39
- data/app/views/lcms/engine/shared/_search_form.html.erb +0 -10
- data/app/views/lcms/engine/shared/_social_sharing_menu.html.erb +0 -34
- data/app/views/lcms/engine/shared/_subscribe.html.erb +0 -30
- data/app/views/lcms/engine/shared/_unsupported.html.erb +0 -3
- data/app/views/lcms/engine/shared/social_thumbnail.svg.erb +0 -54
- data/config/initializers/active_record.rb +0 -3
- data/config/initializers/heap.rb +0 -3
- data/lib/tasks/thumbnails.rake +0 -59
- data/spec/controllers/admin/pages_controller_spec.rb +0 -19
- data/spec/controllers/enhance_instruction_controller_spec.rb +0 -15
- data/spec/controllers/explore_curriculum_controller_spec.rb +0 -29
- data/spec/controllers/find_lessons_controller_spec.rb +0 -50
- data/spec/controllers/pages_controller_spec.rb +0 -35
- data/spec/controllers/search_controller_spec.rb +0 -16
- data/spec/factories/pages.rb +0 -21
- data/spec/features/admin/pages_spec.rb +0 -79
- data/spec/features/pages/page_not_found_spec.rb +0 -26
- data/spec/features/pages/page_titles_spec.rb +0 -86
- data/spec/support/heap.rb +0 -3
- data/vendor/assets/javascripts/foundation.initialize.js +0 -115
- data/vendor/assets/javascripts/foundation.magellanex.js +0 -335
- data/vendor/assets/javascripts/freshwidget.js +0 -1
- data/vendor/assets/javascripts/jquery.easytabs.js +0 -704
- data/vendor/assets/javascripts/jquery.hashchange.js +0 -9
- data/vendor/assets/javascripts/modernizr-custom.js +0 -3
- data/vendor/assets/javascripts/smoothscrolling.js +0 -22
- data/vendor/assets/javascripts/swiper.jquery.js +0 -3777
- data/vendor/assets/javascripts/tabs.js +0 -6
@@ -15,9 +15,9 @@ module Lcms
|
|
15
15
|
|
16
16
|
if response.success?
|
17
17
|
url = DocumentExporter::Gdoc::Base.url_for JSON.parse(response.body)['id']
|
18
|
-
|
18
|
+
redirect_back fallback_location: new_admin_sketch_compiler_path, notice: t('.success', url: url)
|
19
19
|
else
|
20
|
-
|
20
|
+
redirect_back fallback_location: new_admin_sketch_compiler_path, alert: t('.compile_error')
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
@@ -5,11 +5,12 @@ module Lcms
|
|
5
5
|
module Admin
|
6
6
|
class StandardsController < AdminController
|
7
7
|
before_action :find_standard, except: [:index]
|
8
|
+
before_action :set_query_params
|
8
9
|
|
9
10
|
def edit; end
|
10
11
|
|
11
12
|
def index
|
12
|
-
@query = OpenStruct.new
|
13
|
+
@query = OpenStruct.new @query_params
|
13
14
|
|
14
15
|
scope = Standard.order(:id)
|
15
16
|
scope = scope.search_by_name(@query.name) if @query.name.present?
|
@@ -31,6 +32,10 @@ module Lcms
|
|
31
32
|
@standard = Standard.find(params[:id])
|
32
33
|
end
|
33
34
|
|
35
|
+
def set_query_params
|
36
|
+
@query_params = params[:query]&.permit(:name) || {}
|
37
|
+
end
|
38
|
+
|
34
39
|
def standard_params
|
35
40
|
params.require(:standard).permit(:description)
|
36
41
|
end
|
@@ -5,9 +5,10 @@ module Lcms
|
|
5
5
|
module Admin
|
6
6
|
class UsersController < AdminController
|
7
7
|
before_action :find_user, except: %i(index new create)
|
8
|
+
before_action :set_query_params
|
8
9
|
|
9
10
|
def index
|
10
|
-
@query = OpenStruct.new
|
11
|
+
@query = OpenStruct.new @query_params
|
11
12
|
@users = users(@query)
|
12
13
|
end
|
13
14
|
|
@@ -52,6 +53,10 @@ module Lcms
|
|
52
53
|
@user = User.find(params[:id])
|
53
54
|
end
|
54
55
|
|
56
|
+
def set_query_params
|
57
|
+
@query_params = params[:query]&.permit(:access_code, :email) || {}
|
58
|
+
end
|
59
|
+
|
55
60
|
def user_params
|
56
61
|
params.require(:user).permit(:access_code, :email, :name, :role)
|
57
62
|
end
|
@@ -6,12 +6,6 @@ module Lcms
|
|
6
6
|
# store location to use at after sign in or other devise callbacks
|
7
7
|
include LocationStorable
|
8
8
|
|
9
|
-
protect_from_forgery with: :exception
|
10
|
-
|
11
|
-
# NOTE: Temporary disabled
|
12
|
-
# require auth for accessing the pilot
|
13
|
-
# before_action :pilot_authentication if Rails.env.production? || Rails.env.production_swap?
|
14
|
-
|
15
9
|
before_action :authenticate_user!, unless: :pdf_request?
|
16
10
|
|
17
11
|
before_action :check_user_has_survey_filled_in, if: :user_signed_in?, unless: :devise_controller?
|
@@ -54,15 +48,6 @@ module Lcms
|
|
54
48
|
def after_sign_out_path_for(resource_or_scope)
|
55
49
|
session_path(resource_or_scope)
|
56
50
|
end
|
57
|
-
|
58
|
-
# NOTE: Temporary disabled
|
59
|
-
# def pilot_authentication
|
60
|
-
# return unless request.format.html?
|
61
|
-
#
|
62
|
-
# authenticate_or_request_with_http_basic('Administration') do |username, password|
|
63
|
-
# username == ENV['HTTP_AUTH_NAME'] && password == ENV['HTTP_AUTH_PASS']
|
64
|
-
# end
|
65
|
-
# end
|
66
51
|
end
|
67
52
|
end
|
68
53
|
end
|
@@ -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,
|
@@ -12,31 +12,42 @@ module Lcms
|
|
12
12
|
|
13
13
|
attr_reader :model
|
14
14
|
|
15
|
+
class << self
|
16
|
+
def grades
|
17
|
+
::Lcms::Engine::Grades::GRADES
|
18
|
+
end
|
19
|
+
|
20
|
+
def grades_abbrevs
|
21
|
+
::Lcms::Engine::Grades::GRADES_ABBR
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
15
25
|
def initialize(model)
|
16
26
|
@model = model
|
17
27
|
end
|
18
28
|
|
19
29
|
def list
|
20
|
-
@list ||=
|
30
|
+
@list ||= case model
|
31
|
+
when Resource
|
21
32
|
Array.wrap model.metadata['grade']
|
22
|
-
|
33
|
+
when Search::Document
|
23
34
|
Array.wrap model.grade.presence
|
24
35
|
else
|
25
36
|
model.grade_list
|
26
|
-
end.sort_by { |g|
|
37
|
+
end.sort_by { |g| self.class.grades.index(g) }
|
27
38
|
end
|
28
39
|
|
29
40
|
def average(abbr: true)
|
30
41
|
return nil if average_number.nil?
|
31
42
|
|
32
|
-
avg =
|
43
|
+
avg = self.class.grades[average_number]
|
33
44
|
abbr ? (grade_abbr(avg) || 'base') : avg
|
34
45
|
end
|
35
46
|
|
36
47
|
def average_number
|
37
48
|
return nil if list.empty?
|
38
49
|
|
39
|
-
list.map { |g|
|
50
|
+
list.map { |g| self.class.grades.index(g) }.sum / (list.size.nonzero? || 1)
|
40
51
|
end
|
41
52
|
|
42
53
|
def grade_abbr(abbr)
|
@@ -62,7 +73,7 @@ module Lcms
|
|
62
73
|
abbr = grade_abbr(g).upcase
|
63
74
|
|
64
75
|
# if the current grade is subsequent we store on the same chain
|
65
|
-
if idx.zero? ||
|
76
|
+
if idx.zero? || self.class.grades.index(g) == self.class.grades.index(prev) + 1
|
66
77
|
chain << abbr
|
67
78
|
else
|
68
79
|
# the grade is not subsequent, so we store the current chain, and create a new one
|
@@ -26,7 +26,7 @@ module Lcms
|
|
26
26
|
when /vimeo\.com/
|
27
27
|
url.match(%r{https?://(www\.)?vimeo.com/(\d+)}).try(:[], 2)
|
28
28
|
when /youtu\.be/
|
29
|
-
url.match(%r{https?://(www\.)?youtu\.be/([^"
|
29
|
+
url.match(%r{https?://(www\.)?youtu\.be/([^"&?/]+)}).try(:[], 2)
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -3,15 +3,16 @@
|
|
3
3
|
module Lcms
|
4
4
|
module Engine
|
5
5
|
class Pagination
|
6
|
+
PARAMS_DEFAULT = { page: 1, per_page: 20, order: :asc }.freeze
|
7
|
+
|
6
8
|
def initialize(params)
|
7
|
-
@params = params
|
9
|
+
@params = handle_params params
|
8
10
|
end
|
9
11
|
|
10
12
|
def params(strict: false)
|
11
13
|
@pagination_params ||= begin
|
12
|
-
|
13
|
-
|
14
|
-
pagination = default_params.merge(expected_params)
|
14
|
+
expected_params = @params.slice(*PARAMS_DEFAULT.keys).symbolize_keys
|
15
|
+
pagination = PARAMS_DEFAULT.merge(expected_params)
|
15
16
|
|
16
17
|
pagination[:page] = pagination[:page].to_i
|
17
18
|
pagination[:per_page] = pagination[:per_page].to_i
|
@@ -37,7 +38,15 @@ module Lcms
|
|
37
38
|
total_hits: resources.total_entries
|
38
39
|
}
|
39
40
|
options[:each_serializer] = serializer
|
40
|
-
ActiveModel::
|
41
|
+
ActiveModel::Serializer::CollectionSerializer.new(resources, options).as_json
|
42
|
+
end
|
43
|
+
|
44
|
+
private
|
45
|
+
|
46
|
+
def handle_params(params)
|
47
|
+
return params unless params.is_a?(ActionController::Parameters)
|
48
|
+
|
49
|
+
params.permit(*PARAMS_DEFAULT.keys).to_h
|
41
50
|
end
|
42
51
|
end
|
43
52
|
end
|
@@ -13,7 +13,7 @@ module Lcms
|
|
13
13
|
validates_presence_of :link, if: -> { link_fs.blank? }
|
14
14
|
validates_presence_of :link_fs, if: -> { link.blank? }
|
15
15
|
|
16
|
-
attr_reader :document
|
16
|
+
attr_reader :document, :service_errors
|
17
17
|
|
18
18
|
def initialize(attributes = {}, opts = {})
|
19
19
|
@is_reimport = attributes.delete(:reimport).present? || false
|
@@ -29,7 +29,7 @@ module Lcms
|
|
29
29
|
@document.update(reimported: true)
|
30
30
|
rescue StandardError => e
|
31
31
|
@document&.update(reimported: false)
|
32
|
-
Rails.logger.error e.message
|
32
|
+
Rails.logger.error "#{e.message}\n #{e.backtrace.join("\n ")}"
|
33
33
|
errors.add(:link, e.message)
|
34
34
|
false
|
35
35
|
end
|
@@ -45,18 +45,23 @@ module Lcms
|
|
45
45
|
def build_document
|
46
46
|
service = document_build_service
|
47
47
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
48
|
+
result =
|
49
|
+
if is_reimport
|
50
|
+
doc = service.build_for(link)
|
51
|
+
doc = service.build_for(link_fs, expand: true) if link_fs.present?
|
52
|
+
doc
|
53
|
+
elsif (full_doc = find_full_document)
|
54
|
+
# if there is a document with the same file_id or foundational_file_id
|
55
|
+
# we need to make full re-import to correctly handle expand process
|
56
|
+
service.build_for(full_doc.file_url)
|
57
|
+
service.build_for(full_doc.file_fs_url, expand: true)
|
58
|
+
else
|
59
|
+
service.build_for link
|
60
|
+
end
|
61
|
+
|
62
|
+
@service_errors = service.errors
|
63
|
+
|
64
|
+
result
|
60
65
|
end
|
61
66
|
|
62
67
|
def document_build_service
|
@@ -11,7 +11,7 @@ module Lcms
|
|
11
11
|
attribute :source_type, String
|
12
12
|
validates :link, presence: true
|
13
13
|
|
14
|
-
attr_accessor :material
|
14
|
+
attr_accessor :material, :service_errors
|
15
15
|
|
16
16
|
def initialize(attributes = {}, opts = {})
|
17
17
|
super(attributes)
|
@@ -22,17 +22,19 @@ 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
|
28
29
|
service = MaterialBuildService.new google_credentials, params
|
29
30
|
@material = service.build link
|
31
|
+
@service_errors = service.errors
|
30
32
|
|
31
33
|
material.update preview_links: {}
|
32
34
|
after_reimport_hook
|
33
35
|
true
|
34
36
|
rescue StandardError => e
|
35
|
-
Rails.logger.error e.message
|
37
|
+
Rails.logger.error "#{e.message}\n #{e.backtrace.join("\n ")}"
|
36
38
|
errors.add(:link, e.message)
|
37
39
|
false
|
38
40
|
end
|
@@ -2,9 +2,9 @@
|
|
2
2
|
|
3
3
|
module Admin
|
4
4
|
module ComponentsHelper
|
5
|
-
HIDDEN_FIELD_RE = /\b(?<=name=")[^"]+(?=")
|
5
|
+
HIDDEN_FIELD_RE = /\b(?<=name=")[^"]+(?=")/.freeze
|
6
6
|
|
7
|
-
def resource_picker_field(form, collection,
|
7
|
+
def resource_picker_field(form, collection, path:, name:, allow_multiple: true)
|
8
8
|
path = path.to_s
|
9
9
|
|
10
10
|
base_name = form.hidden_field(name).scan(HIDDEN_FIELD_RE)[0]
|
@@ -8,8 +8,12 @@ module Lcms
|
|
8
8
|
include ViewHelper
|
9
9
|
include ::Webpacker::Helper
|
10
10
|
|
11
|
-
|
12
|
-
|
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
|
@@ -3,9 +3,7 @@
|
|
3
3
|
module Lcms
|
4
4
|
module Engine
|
5
5
|
module ViewHelper # rubocop:disable Metrics/ModuleLength
|
6
|
-
ENABLE_BASE64_CACHING = ActiveRecord::
|
7
|
-
ENV.fetch('ENABLE_BASE64_CACHING', true)
|
8
|
-
)
|
6
|
+
ENABLE_BASE64_CACHING = ActiveRecord::Type::Boolean.new.cast ENV.fetch('ENABLE_BASE64_CACHING', true)
|
9
7
|
|
10
8
|
def add_class_for_path(link_path, klass, klass_prefix = nil)
|
11
9
|
[
|
@@ -118,7 +116,7 @@ module Lcms
|
|
118
116
|
return unless selected_ids.present?
|
119
117
|
|
120
118
|
case selected_ids
|
121
|
-
when Array
|
119
|
+
when Array
|
122
120
|
selected_ids.include?(id.to_s)
|
123
121
|
else
|
124
122
|
selected_ids.split(',').include?(id.to_s)
|
@@ -32,7 +32,7 @@ module Lcms
|
|
32
32
|
end
|
33
33
|
|
34
34
|
def grades_props
|
35
|
-
ActiveModel::
|
35
|
+
ActiveModel::Serializer::CollectionSerializer.new(
|
36
36
|
grades,
|
37
37
|
each_serializer: CurriculumResourceSerializer,
|
38
38
|
root: :results
|
@@ -70,7 +70,7 @@ module Lcms
|
|
70
70
|
|
71
71
|
def slug_param
|
72
72
|
slug = params[:p]
|
73
|
-
(slug.start_with?('/') ? slug[1
|
73
|
+
(slug.start_with?('/') ? slug[1..] : slug) if slug.present?
|
74
74
|
end
|
75
75
|
|
76
76
|
def expanded?
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import React from 'react'
|
2
|
+
import _ from 'lodash'
|
2
3
|
|
3
4
|
class ImportStatus extends React.Component {
|
4
5
|
constructor(props) {
|
@@ -53,7 +54,8 @@ class ImportStatus extends React.Component {
|
|
53
54
|
if (this.withPdf) {
|
54
55
|
return (
|
55
56
|
<a href={job.link}
|
56
|
-
className="o-adm-materials__resource
|
57
|
+
className="o-adm-materials__resource button primary u-margin-left--small u-margin-bottom--zero" target="_blank">
|
58
|
+
<i className="far fa-file-pdf"></i>
|
57
59
|
</a>
|
58
60
|
)
|
59
61
|
}
|
@@ -69,13 +71,14 @@ class ImportStatus extends React.Component {
|
|
69
71
|
return _.map(this.links, (link, idx) => (
|
70
72
|
<a key={`pl-${idx}`}
|
71
73
|
href={linkWithParams(link, { id: job.model.id })}
|
72
|
-
className="o-adm-materials__resource
|
74
|
+
className="o-adm-materials__resource button primary u-margin-left--small u-margin-bottom--zero" target="_blank">
|
75
|
+
<i className="fas fa-eye"></i>
|
73
76
|
</a>
|
74
77
|
))
|
75
78
|
}
|
76
79
|
|
77
80
|
spinner() {
|
78
|
-
return <span className="o-adm-materials__spinner button primary u-margin-bottom--zero"><i className="
|
81
|
+
return <span className="o-adm-materials__spinner button primary u-margin-bottom--zero"><i className="fas fa-spin fa-spinner" /></span>
|
79
82
|
}
|
80
83
|
|
81
84
|
render() {
|
@@ -99,7 +102,8 @@ class ImportStatus extends React.Component {
|
|
99
102
|
{job.status !== 'done' ? this.spinner() : null}
|
100
103
|
{job.status === 'done' && job.ok ? <span>{this.resourceButton(job)}</span> : null}
|
101
104
|
</div>
|
102
|
-
{job.errors ? (<p dangerouslySetInnerHTML={{__html: _.join(job.errors, '<br/>')}}></p>) : null}
|
105
|
+
{!(_.isEmpty(job.errors)) ? (<p dangerouslySetInnerHTML={{__html: _.join(job.errors, '<br/>')}}></p>) : null}
|
106
|
+
{!(_.isEmpty(job.warnings)) ? (<p dangerouslySetInnerHTML={{ __html: _.join(job.warnings, '<br/>') }}></p>) : null}
|
103
107
|
</li>
|
104
108
|
)
|
105
109
|
})
|