cloudrider 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +18 -0
- data/.rspec +1 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +31 -0
- data/Rakefile +2 -0
- data/cloudrider.gemspec +30 -0
- data/generica/.bowerrc +3 -0
- data/generica/.rspec +2 -0
- data/generica/Gemfile +67 -0
- data/generica/Gemfile.lock +363 -0
- data/generica/LICENSE.txt +22 -0
- data/generica/README.md +156 -0
- data/generica/Rakefile +5 -0
- data/generica/app/assets/images/.keep +0 -0
- data/generica/app/assets/images/cookie-splash/albatross.jpg +0 -0
- data/generica/app/assets/images/cookie-splash/california.png +0 -0
- data/generica/app/assets/images/hero-splash/albatross.jpg +0 -0
- data/generica/app/assets/images/hero-splash/california.jpg +0 -0
- data/generica/app/assets/images/hero-splash/rocks.jpg +0 -0
- data/generica/app/assets/images/hero-splash/seaweed.png +0 -0
- data/generica/app/assets/images/introductory-lobby/fishing.jpg +0 -0
- data/generica/app/assets/images/products-showcase/rocks.jpg +0 -0
- data/generica/app/assets/images/table-booths/411.png +0 -0
- data/generica/app/assets/javascripts/adapters/admin/employee.js.ls +20 -0
- data/generica/app/assets/javascripts/adapters/admin/product.js.ls +20 -0
- data/generica/app/assets/javascripts/adapters/admin/session.js.em +2 -0
- data/generica/app/assets/javascripts/adapters/application.js.em +2 -0
- data/generica/app/assets/javascripts/apiv1.js.ls +24 -0
- data/generica/app/assets/javascripts/application.js +23 -0
- data/generica/app/assets/javascripts/components/.gitkeep +0 -0
- data/generica/app/assets/javascripts/components/block-grid-pictures.js.em +3 -0
- data/generica/app/assets/javascripts/components/block-picture.js.em +8 -0
- data/generica/app/assets/javascripts/components/cookie-splash.js.em +2 -0
- data/generica/app/assets/javascripts/components/fancy-paginator.js.em +23 -0
- data/generica/app/assets/javascripts/components/files-field.js.em +28 -0
- data/generica/app/assets/javascripts/components/flash-message.js.em +6 -0
- data/generica/app/assets/javascripts/components/flash-slice.js.em +32 -0
- data/generica/app/assets/javascripts/components/form-for.js.em +28 -0
- data/generica/app/assets/javascripts/components/hero-splash.js.em +17 -0
- data/generica/app/assets/javascripts/components/introductory-lobby.js.em +13 -0
- data/generica/app/assets/javascripts/components/product-display.js.em +3 -0
- data/generica/app/assets/javascripts/components/product-listing.js.em +3 -0
- data/generica/app/assets/javascripts/components/products-catalog.js.em +2 -0
- data/generica/app/assets/javascripts/components/products-showcase.js.ls +5 -0
- data/generica/app/assets/javascripts/components/promise-button.js.em +20 -0
- data/generica/app/assets/javascripts/components/search-and-filter.js.em +13 -0
- data/generica/app/assets/javascripts/components/select-locale.js.em +19 -0
- data/generica/app/assets/javascripts/components/site-footer.js.em +8 -0
- data/generica/app/assets/javascripts/components/site-nav.js.em +3 -0
- data/generica/app/assets/javascripts/components/table-booths.js.em +10 -0
- data/generica/app/assets/javascripts/components/tr-span.js.em +18 -0
- data/generica/app/assets/javascripts/components/tree/taxon-li.js.em +46 -0
- data/generica/app/assets/javascripts/components/tree/taxon-ul.js.em +3 -0
- data/generica/app/assets/javascripts/components/tree/taxon-wrapper.js.em +22 -0
- data/generica/app/assets/javascripts/components/type-ahead.js.em +17 -0
- data/generica/app/assets/javascripts/config/i18n-translations.js.ls +3 -0
- data/generica/app/assets/javascripts/config/router.js.ls +29 -0
- data/generica/app/assets/javascripts/controllers/.gitkeep +0 -0
- data/generica/app/assets/javascripts/controllers/admin/employees/new_controller.js.em +16 -0
- data/generica/app/assets/javascripts/controllers/admin/employees/slice_controller.js.em +4 -0
- data/generica/app/assets/javascripts/controllers/admin/product/edit_controller.js.em +21 -0
- data/generica/app/assets/javascripts/controllers/admin/products/new_controller.js.em +16 -0
- data/generica/app/assets/javascripts/controllers/admin/products/slice_controller.js.em +4 -0
- data/generica/app/assets/javascripts/controllers/admin/translation/edit_controller.js.em +19 -0
- data/generica/app/assets/javascripts/controllers/admin/translation/form_controller.js.em +10 -0
- data/generica/app/assets/javascripts/controllers/admin/translations/index_controller.js.em +19 -0
- data/generica/app/assets/javascripts/controllers/admin/translations/sliver_controller.js.em +8 -0
- data/generica/app/assets/javascripts/controllers/application_controller.js.em +9 -0
- data/generica/app/assets/javascripts/controllers/index_controller.js.em +20 -0
- data/generica/app/assets/javascripts/controllers/modals/login_controller.js.em +24 -0
- data/generica/app/assets/javascripts/controllers/products/index_controller.js.em +28 -0
- data/generica/app/assets/javascripts/controllers/products/product/show_controller.js.em +17 -0
- data/generica/app/assets/javascripts/helpers/.gitkeep +0 -0
- data/generica/app/assets/javascripts/helpers/array_ex.js.ls +27 -0
- data/generica/app/assets/javascripts/helpers/i18n.js.ls +3 -0
- data/generica/app/assets/javascripts/helpers/string_ex.js.ls +21 -0
- data/generica/app/assets/javascripts/mixins/.gitkeep +0 -0
- data/generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em +57 -0
- data/generica/app/assets/javascripts/mixins/type_ahead_builder.js.em +41 -0
- data/generica/app/assets/javascripts/models/.gitkeep +0 -0
- data/generica/app/assets/javascripts/models/admin/employee.js.em +6 -0
- data/generica/app/assets/javascripts/models/admin/offer.js.em +1 -0
- data/generica/app/assets/javascripts/models/admin/product.js.em +12 -0
- data/generica/app/assets/javascripts/models/admin/session.js.em +3 -0
- data/generica/app/assets/javascripts/models/admin/taxon.js.em +1 -0
- data/generica/app/assets/javascripts/models/attachment.js.em +9 -0
- data/generica/app/assets/javascripts/models/employee.js.em +16 -0
- data/generica/app/assets/javascripts/models/listing.js.em +20 -0
- data/generica/app/assets/javascripts/models/offer.js.em +12 -0
- data/generica/app/assets/javascripts/models/picture.js.em +11 -0
- data/generica/app/assets/javascripts/models/product.js.em +29 -0
- data/generica/app/assets/javascripts/models/session.js.ls +4 -0
- data/generica/app/assets/javascripts/models/taxon.js.em +31 -0
- data/generica/app/assets/javascripts/models/translation.js.em +46 -0
- data/generica/app/assets/javascripts/packages/flash.js.em +36 -0
- data/generica/app/assets/javascripts/packages/tranny.js.ls +51 -0
- data/generica/app/assets/javascripts/routes/.gitkeep +0 -0
- data/generica/app/assets/javascripts/routes/admin/employees/index_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/admin/employees/new_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/admin/index_route.js.em +1 -0
- data/generica/app/assets/javascripts/routes/admin/product_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/admin/products/index_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/admin/products/new_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/admin/taxons/index_route.js.em +2 -0
- data/generica/app/assets/javascripts/routes/admin/translation/edit_route.js.em +1 -0
- data/generica/app/assets/javascripts/routes/admin/translation_route.js.em +12 -0
- data/generica/app/assets/javascripts/routes/admin/translations/index_route.js.em +20 -0
- data/generica/app/assets/javascripts/routes/admin_route.js.em +4 -0
- data/generica/app/assets/javascripts/routes/application_route.js.em +19 -0
- data/generica/app/assets/javascripts/routes/index_route.js.em +4 -0
- data/generica/app/assets/javascripts/routes/products/index_route.js.em +3 -0
- data/generica/app/assets/javascripts/routes/products_route.js.em +4 -0
- data/generica/app/assets/javascripts/templates/.gitkeep +0 -0
- data/generica/app/assets/javascripts/templates/admin.emblem +23 -0
- data/generica/app/assets/javascripts/templates/admin/employees/index.emblem +22 -0
- data/generica/app/assets/javascripts/templates/admin/employees/new.emblem +35 -0
- data/generica/app/assets/javascripts/templates/admin/employees/slice.emblem +22 -0
- data/generica/app/assets/javascripts/templates/admin/index.emblem +3 -0
- data/generica/app/assets/javascripts/templates/admin/product/edit.emblem +69 -0
- data/generica/app/assets/javascripts/templates/admin/products/index.emblem +22 -0
- data/generica/app/assets/javascripts/templates/admin/products/new.emblem +56 -0
- data/generica/app/assets/javascripts/templates/admin/products/slice.emblem +22 -0
- data/generica/app/assets/javascripts/templates/admin/taxons/index.emblem +10 -0
- data/generica/app/assets/javascripts/templates/admin/taxons/new.emblem +0 -0
- data/generica/app/assets/javascripts/templates/admin/translation/edit.emblem +11 -0
- data/generica/app/assets/javascripts/templates/admin/translation/form.emblem +20 -0
- data/generica/app/assets/javascripts/templates/admin/translations/index.emblem +43 -0
- data/generica/app/assets/javascripts/templates/admin/translations/slice.emblem +23 -0
- data/generica/app/assets/javascripts/templates/admin/translations/sliver.emblem +18 -0
- data/generica/app/assets/javascripts/templates/application.emblem +14 -0
- data/generica/app/assets/javascripts/templates/components/.gitkeep +0 -0
- data/generica/app/assets/javascripts/templates/components/block-grid-pictures.emblem +5 -0
- data/generica/app/assets/javascripts/templates/components/block-picture.emblem +7 -0
- data/generica/app/assets/javascripts/templates/components/cookie-splash.emblem +14 -0
- data/generica/app/assets/javascripts/templates/components/fancy-paginator.emblem +31 -0
- data/generica/app/assets/javascripts/templates/components/flash-message.emblem +2 -0
- data/generica/app/assets/javascripts/templates/components/flash-slice.emblem +6 -0
- data/generica/app/assets/javascripts/templates/components/form-for.emblem +2 -0
- data/generica/app/assets/javascripts/templates/components/hero-splash.emblem +13 -0
- data/generica/app/assets/javascripts/templates/components/hero-splash/_splash-cta.emblem +7 -0
- data/generica/app/assets/javascripts/templates/components/hero-splash/_splash-tagline.emblem +8 -0
- data/generica/app/assets/javascripts/templates/components/introductory-lobby.emblem +12 -0
- data/generica/app/assets/javascripts/templates/components/product-display.emblem +47 -0
- data/generica/app/assets/javascripts/templates/components/product-listing.emblem +26 -0
- data/generica/app/assets/javascripts/templates/components/products-catalog.emblem +16 -0
- data/generica/app/assets/javascripts/templates/components/products-showcase.emblem +12 -0
- data/generica/app/assets/javascripts/templates/components/products-showcase/_contained-media-one.emblem +20 -0
- data/generica/app/assets/javascripts/templates/components/promise-button.emblem +6 -0
- data/generica/app/assets/javascripts/templates/components/search-and-filter.emblem +11 -0
- data/generica/app/assets/javascripts/templates/components/select-locale.emblem +1 -0
- data/generica/app/assets/javascripts/templates/components/site-footer.emblem +9 -0
- data/generica/app/assets/javascripts/templates/components/site-nav.emblem +7 -0
- data/generica/app/assets/javascripts/templates/components/site-nav/_left-nav.emblem +19 -0
- data/generica/app/assets/javascripts/templates/components/site-nav/_top-nav.emblem +22 -0
- data/generica/app/assets/javascripts/templates/components/table-booths.emblem +75 -0
- data/generica/app/assets/javascripts/templates/components/tr-span.emblem +1 -0
- data/generica/app/assets/javascripts/templates/components/tree-taxon-li.emblem +29 -0
- data/generica/app/assets/javascripts/templates/components/tree-taxon-ul.emblem +9 -0
- data/generica/app/assets/javascripts/templates/components/tree-taxon-wrapper.emblem +3 -0
- data/generica/app/assets/javascripts/templates/index.emblem +7 -0
- data/generica/app/assets/javascripts/templates/modals/login.emblem +27 -0
- data/generica/app/assets/javascripts/templates/products.emblem +3 -0
- data/generica/app/assets/javascripts/templates/products/index.emblem +7 -0
- data/generica/app/assets/javascripts/templates/products/product/show.emblem +71 -0
- data/generica/app/assets/javascripts/transforms/files_transform.js.ls +7 -0
- data/generica/app/assets/javascripts/transforms/form_data_transformer.js.ls +25 -0
- data/generica/app/assets/javascripts/transforms/strings_transform.js.ls +4 -0
- data/generica/app/assets/javascripts/views/.gitkeep +0 -0
- data/generica/app/assets/stylesheets/apiv1.css.scss +8 -0
- data/generica/app/assets/stylesheets/apiv1/_admin.css.scss +14 -0
- data/generica/app/assets/stylesheets/apiv1/_application.css.scss +70 -0
- data/generica/app/assets/stylesheets/apiv1/admin/contacts/_index.css.scss +3 -0
- data/generica/app/assets/stylesheets/apiv1/admin/products/_index.css.scss +64 -0
- data/generica/app/assets/stylesheets/apiv1/admin/products/_new.css.scss +11 -0
- data/generica/app/assets/stylesheets/apiv1/admin/translations/_index.css.scss +68 -0
- data/generica/app/assets/stylesheets/apiv1/components/_block-grid-pictures.css.scss +21 -0
- data/generica/app/assets/stylesheets/apiv1/components/_cookie-splash.css.scss +60 -0
- data/generica/app/assets/stylesheets/apiv1/components/_fancy-paginator.css.scss +22 -0
- data/generica/app/assets/stylesheets/apiv1/components/_files-field.css.scss +10 -0
- data/generica/app/assets/stylesheets/apiv1/components/_flash-message.css.scss +35 -0
- data/generica/app/assets/stylesheets/apiv1/components/_hero-splash.css.scss +39 -0
- data/generica/app/assets/stylesheets/apiv1/components/_introductory-lobby.css.scss +22 -0
- data/generica/app/assets/stylesheets/apiv1/components/_product-display.css.scss +27 -0
- data/generica/app/assets/stylesheets/apiv1/components/_product-listing.css.scss +34 -0
- data/generica/app/assets/stylesheets/apiv1/components/_products-catalog.css.scss +2 -0
- data/generica/app/assets/stylesheets/apiv1/components/_products-showcase.css.scss +2 -0
- data/generica/app/assets/stylesheets/apiv1/components/_promise-button.css.scss +8 -0
- data/generica/app/assets/stylesheets/apiv1/components/_search-and-filter.css.scss +9 -0
- data/generica/app/assets/stylesheets/apiv1/components/_select-locale.css.scss +48 -0
- data/generica/app/assets/stylesheets/apiv1/components/_site-footer.css.scss +23 -0
- data/generica/app/assets/stylesheets/apiv1/components/_site-nav.css.scss +1 -0
- data/generica/app/assets/stylesheets/apiv1/components/_table-booths.css.scss +25 -0
- data/generica/app/assets/stylesheets/apiv1/components/_tree-taxon-wrapper.css.scss +92 -0
- data/generica/app/assets/stylesheets/apiv1/components/_type-ahead.css.scss +59 -0
- data/generica/app/assets/stylesheets/apiv1/components/products-catalog/_expanding-media.css.scss +3 -0
- data/generica/app/assets/stylesheets/apiv1/components/products-showcase/_contained-media-one.css.scss +35 -0
- data/generica/app/assets/stylesheets/apiv1/components/site-nav/_left-nav.css.scss +105 -0
- data/generica/app/assets/stylesheets/apiv1/components/site-nav/_top-nav.css.scss +106 -0
- data/generica/app/assets/stylesheets/apiv1/modals/_login.css.scss +26 -0
- data/generica/app/assets/stylesheets/apiv1/products/product/_show.css.scss +18 -0
- data/generica/app/assets/stylesheets/apiv1/shared/_constants.css.scss +77 -0
- data/generica/app/assets/stylesheets/apiv1/shared/_variables.css.scss +23 -0
- data/generica/app/assets/stylesheets/application.css +15 -0
- data/generica/app/assets/stylesheets/foundation_and_overrides.scss +1322 -0
- data/generica/app/controllers/admin/base_controller.rb +9 -0
- data/generica/app/controllers/admin/employees/create_controller.rb +26 -0
- data/generica/app/controllers/admin/products/create_controller.rb +26 -0
- data/generica/app/controllers/admin/products/update_controller.rb +29 -0
- data/generica/app/controllers/admin/sessions/create_controller.rb +34 -0
- data/generica/app/controllers/apiv1/employees/destroy_controller.rb +9 -0
- data/generica/app/controllers/apiv1/employees/index_controller.rb +9 -0
- data/generica/app/controllers/apiv1/home_controller.rb +4 -0
- data/generica/app/controllers/apiv1/i18n_translations/index_controller.rb +11 -0
- data/generica/app/controllers/apiv1/pictures/destroy_controller.rb +13 -0
- data/generica/app/controllers/apiv1/pictures/show_controller.rb +9 -0
- data/generica/app/controllers/apiv1/product_metadatum/show_controller.rb +16 -0
- data/generica/app/controllers/apiv1/products/destroy_controller.rb +9 -0
- data/generica/app/controllers/apiv1/products/index_controller.rb +21 -0
- data/generica/app/controllers/apiv1/products/show_controller.rb +12 -0
- data/generica/app/controllers/apiv1/taxons/index_controller.rb +11 -0
- data/generica/app/controllers/apiv1/taxons/show_controller.rb +9 -0
- data/generica/app/controllers/apiv1/translations/create_controller.rb +31 -0
- data/generica/app/controllers/apiv1/translations/index_controller.rb +22 -0
- data/generica/app/controllers/apiv1/translations/show_controller.rb +9 -0
- data/generica/app/controllers/apiv1/translations/update_controller.rb +35 -0
- data/generica/app/controllers/application_controller.rb +5 -0
- data/generica/app/controllers/concerns/.keep +0 -0
- data/generica/app/helpers/application_helper.rb +2 -0
- data/generica/app/mailers/.keep +0 -0
- data/generica/app/models/.keep +0 -0
- data/generica/app/models/admin.rb +5 -0
- data/generica/app/models/admin/employee_factory.rb +31 -0
- data/generica/app/models/admin/pictures_factory.rb +17 -0
- data/generica/app/models/admin/product_factory.rb +51 -0
- data/generica/app/models/admin/product_modifier.rb +39 -0
- data/generica/app/models/admin/user.rb +25 -0
- data/generica/app/models/apiv1.rb +5 -0
- data/generica/app/models/apiv1/attachment.rb +45 -0
- data/generica/app/models/apiv1/employee.rb +29 -0
- data/generica/app/models/apiv1/listings.rb +5 -0
- data/generica/app/models/apiv1/listings/taxon_relationship.rb +19 -0
- data/generica/app/models/apiv1/permalinkifier.rb +22 -0
- data/generica/app/models/apiv1/picture.rb +37 -0
- data/generica/app/models/apiv1/product.rb +71 -0
- data/generica/app/models/apiv1/products_machine.rb +65 -0
- data/generica/app/models/apiv1/taxon.rb +88 -0
- data/generica/app/models/apiv1/translation.rb +57 -0
- data/generica/app/models/apiv1/translation_machine.rb +57 -0
- data/generica/app/models/concerns/.keep +0 -0
- data/generica/app/varissets/javascripts/templates/application.emblem.erb +28 -0
- data/generica/app/varissets/javascripts/templates/components/cookie-splash.emblem.erb +17 -0
- data/generica/app/varissets/javascripts/templates/components/hero-splash.emblem.erb +25 -0
- data/generica/app/varissets/javascripts/templates/components/introductory-lobby.emblem.erb +12 -0
- data/generica/app/varissets/javascripts/templates/components/product-display.emblem.erb +51 -0
- data/generica/app/varissets/javascripts/templates/components/product-listing.emblem.erb +29 -0
- data/generica/app/varissets/javascripts/templates/components/products-catalog.emblem.erb +18 -0
- data/generica/app/varissets/javascripts/templates/components/products-showcase.emblem.erb +23 -0
- data/generica/app/varissets/javascripts/templates/components/site-nav.emblem.erb +47 -0
- data/generica/app/varissets/javascripts/templates/components/table-booths.emblem.erb +71 -0
- data/generica/app/varissets/javascripts/templates/index.emblem.erb +11 -0
- data/generica/app/varissets/stylesheets/apiv1/_application.css.scss.erb +66 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_cookie-splash.css.scss.erb +61 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_hero-splash.css.scss.erb +42 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_introductory-lobby.css.scss.erb +26 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_product-display.css.scss.erb +30 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_product-listing.css.scss.erb +37 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_products-catalog.css.scss.erb +5 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_products-showcase.css.scss.erb +39 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_site-nav.css.scss.erb +213 -0
- data/generica/app/varissets/stylesheets/apiv1/components/_table-booths.css.scss.erb +28 -0
- data/generica/app/views/apiv1/home/index.html.haml +2 -0
- data/generica/app/views/apiv1/layouts/application.html.haml +21 -0
- data/generica/app/views/layouts/application.html.erb +14 -0
- data/generica/bin/bundle +3 -0
- data/generica/bin/rails +8 -0
- data/generica/bin/rake +8 -0
- data/generica/bin/spring +18 -0
- data/generica/bower.json +21 -0
- data/generica/config.ru +4 -0
- data/generica/config/application.rb +23 -0
- data/generica/config/boot.rb +4 -0
- data/generica/config/database.yml +54 -0
- data/generica/config/database.yml.erb +53 -0
- data/generica/config/desired_languages.yml +28 -0
- data/generica/config/environment.rb +5 -0
- data/generica/config/environments/development.rb +37 -0
- data/generica/config/environments/production.rb +82 -0
- data/generica/config/environments/test.rb +39 -0
- data/generica/config/initializers/assets.rb +8 -0
- data/generica/config/initializers/backtrace_silencers.rb +7 -0
- data/generica/config/initializers/cookies_serializer.rb +3 -0
- data/generica/config/initializers/filter_parameter_logging.rb +4 -0
- data/generica/config/initializers/inflections.rb +16 -0
- data/generica/config/initializers/mime_types.rb +4 -0
- data/generica/config/initializers/session_store.rb +3 -0
- data/generica/config/initializers/sorcery.rb +437 -0
- data/generica/config/initializers/wrap_parameters.rb +14 -0
- data/generica/config/locales/ar.yml +78 -0
- data/generica/config/locales/ca.yml +78 -0
- data/generica/config/locales/cs.yml +78 -0
- data/generica/config/locales/da.yml +78 -0
- data/generica/config/locales/de.yml +78 -0
- data/generica/config/locales/el.yml +78 -0
- data/generica/config/locales/en.yml +78 -0
- data/generica/config/locales/es.yml +78 -0
- data/generica/config/locales/fi.yml +78 -0
- data/generica/config/locales/fr.yml +78 -0
- data/generica/config/locales/hu.yml +78 -0
- data/generica/config/locales/id.yml +78 -0
- data/generica/config/locales/is.yml +78 -0
- data/generica/config/locales/it.yml +78 -0
- data/generica/config/locales/ja.yml +78 -0
- data/generica/config/locales/ko.yml +78 -0
- data/generica/config/locales/ms.yml +78 -0
- data/generica/config/locales/nl.yml +78 -0
- data/generica/config/locales/no.yml +78 -0
- data/generica/config/locales/pl.yml +78 -0
- data/generica/config/locales/pt.yml +78 -0
- data/generica/config/locales/ru.yml +78 -0
- data/generica/config/locales/sv.yml +78 -0
- data/generica/config/locales/th.yml +78 -0
- data/generica/config/locales/tr.yml +78 -0
- data/generica/config/locales/zh-CN.yml +78 -0
- data/generica/config/locales/zh-TW.yml +78 -0
- data/generica/config/nginx.conf +36 -0
- data/generica/config/routes.rb +35 -0
- data/generica/config/secrets.yml +22 -0
- data/generica/config/unicorn.conf.rb +101 -0
- data/generica/db/migrate/20140930052333_create_apiv1_taxons.rb +14 -0
- data/generica/db/migrate/20140930052559_create_apiv1_listings_plastics.rb +18 -0
- data/generica/db/migrate/20140930180107_create_apiv1_pictures.rb +8 -0
- data/generica/db/migrate/20140930180108_add_attachment_pic_to_apiv1_pictures.rb +11 -0
- data/generica/db/migrate/20141001063631_create_commerce_units_dimensions.rb +11 -0
- data/generica/db/migrate/20141001212635_create_apiv1_listings_taxon_relationships.rb +9 -0
- data/generica/db/migrate/20141006231820_create_apiv1_employees.rb +11 -0
- data/generica/db/migrate/20141010215459_create_apiv1_translations.rb +11 -0
- data/generica/db/migrate/20141018235809_add_attachment_document_to_attachments.rb +13 -0
- data/generica/db/migrate/20141021003733_sorcery_core.rb +13 -0
- data/generica/db/migrate/20141021003734_sorcery_remember_me.rb +8 -0
- data/generica/db/schema.rb +141 -0
- data/generica/db/seeds.rb +15 -0
- data/generica/db/seeds/dimensions.rb +42 -0
- data/generica/db/seeds/products.rb +30 -0
- data/generica/db/seeds/taxons.rb +81 -0
- data/generica/db/seeds/translation_seeds.rb +2132 -0
- data/generica/db/seeds/users.rb +2 -0
- data/generica/lib/assets/.keep +0 -0
- data/generica/lib/generica.rb +4 -0
- data/generica/lib/generica/locale.yml.erb +6 -0
- data/generica/lib/generica/seed.en.yml +77 -0
- data/generica/lib/generica/seed_generator.rb +119 -0
- data/generica/lib/generica/translation_seeds.rb.erb +4 -0
- data/generica/lib/generica/yaml_writer.rb +54 -0
- data/generica/lib/tasks/.keep +0 -0
- data/generica/lib/tasks/assets_unretardifier.rake +7 -0
- data/generica/lib/tasks/cloudrider.rake +7 -0
- data/generica/lib/tasks/elasticsearch.rake +10 -0
- data/generica/lib/tasks/production.rake +14 -0
- data/generica/lib/tasks/seeds.rake +13 -0
- data/generica/lib/tasks/translation.rake +7 -0
- data/generica/log/.keep +0 -0
- data/generica/public/404.html +67 -0
- data/generica/public/422.html +67 -0
- data/generica/public/500.html +66 -0
- data/generica/public/favicon.ico +0 -0
- data/generica/public/javascripts/translations.js +2 -0
- data/generica/public/robots.txt +5 -0
- data/generica/public/tests/dog.png +0 -0
- data/generica/public/tests/husky.png +0 -0
- data/generica/spec/controllers/admin/employees/create_controller_spec.rb +48 -0
- data/generica/spec/controllers/admin/products/create_controller_spec.rb +55 -0
- data/generica/spec/controllers/admin/products/update_controller_spec.rb +44 -0
- data/generica/spec/controllers/admin/sessions/create_controller_spec.rb +66 -0
- data/generica/spec/controllers/apiv1/pictures/destroy_controller_spec.rb +36 -0
- data/generica/spec/factories/admin/user_factory.rb +22 -0
- data/generica/spec/factories/apiv1/picture_factory.rb +25 -0
- data/generica/spec/factories/apiv1/product_factory.rb +48 -0
- data/generica/spec/factories/apiv1/taxon_factory.rb +40 -0
- data/generica/spec/factories/base_factory.rb +30 -0
- data/generica/spec/models/admin/pictures_factory_spec.rb +14 -0
- data/generica/spec/models/admin/product_factory_spec.rb +54 -0
- data/generica/spec/models/admin/product_modifier_spec.rb +123 -0
- data/generica/spec/models/apiv1/product_spec.rb +61 -0
- data/generica/spec/rails_helper.rb +51 -0
- data/generica/spec/spec_helper.rb +85 -0
- data/generica/vendor/assets/javascripts/.keep +0 -0
- data/generica/vendor/assets/stylesheets/.keep +0 -0
- data/lib/cloudrider.rb +4 -0
- data/lib/cloudrider/apiv1.rb +72 -0
- data/lib/cloudrider/apiv1/application_emblem.rb +12 -0
- data/lib/cloudrider/apiv1/application_sass.rb +31 -0
- data/lib/cloudrider/apiv1/base.rb +63 -0
- data/lib/cloudrider/apiv1/cookie_splash_component.rb +14 -0
- data/lib/cloudrider/apiv1/cookie_splash_sass.rb +20 -0
- data/lib/cloudrider/apiv1/hero_splash_component.rb +37 -0
- data/lib/cloudrider/apiv1/hero_splash_sass.rb +43 -0
- data/lib/cloudrider/apiv1/index_emblem.rb +11 -0
- data/lib/cloudrider/apiv1/introductory_lobby_component.rb +17 -0
- data/lib/cloudrider/apiv1/introductory_lobby_sass.rb +17 -0
- data/lib/cloudrider/apiv1/product_display_component.rb +11 -0
- data/lib/cloudrider/apiv1/product_display_sass.rb +11 -0
- data/lib/cloudrider/apiv1/product_listing_component.rb +11 -0
- data/lib/cloudrider/apiv1/product_listing_sass.rb +11 -0
- data/lib/cloudrider/apiv1/products_catalog_component.rb +11 -0
- data/lib/cloudrider/apiv1/products_catalog_sass.rb +11 -0
- data/lib/cloudrider/apiv1/products_showcase_component.rb +11 -0
- data/lib/cloudrider/apiv1/products_showcase_sass.rb +20 -0
- data/lib/cloudrider/apiv1/site_nav_component.rb +15 -0
- data/lib/cloudrider/apiv1/site_nav_sass.rb +11 -0
- data/lib/cloudrider/apiv1/table_booths_component.rb +11 -0
- data/lib/cloudrider/apiv1/table_booths_sass.rb +11 -0
- data/lib/cloudrider/application_commander.rb +119 -0
- data/lib/cloudrider/file_orders_maker.rb +24 -0
- data/lib/cloudrider/protofile.rb +9 -0
- data/lib/cloudrider/templates/application.emblem.erb +28 -0
- data/lib/cloudrider/version.rb +3 -0
- data/lib/generators/cloudrider/USAGE +1 -0
- data/lib/generators/cloudrider/backend/backend_generator.rb +49 -0
- data/lib/generators/cloudrider/client/client_generator.rb +110 -0
- data/lib/generators/cloudrider/varissets/varissets_generator.rb +35 -0
- data/spec/cloudrider/apiv1_base_spec.rb +46 -0
- data/spec/cloudrider/apiv1_spec.rb +20 -0
- data/spec/spec_helper.rb +1 -0
- metadata +555 -0
@@ -0,0 +1,119 @@
|
|
1
|
+
require "cloudrider/apiv1"
|
2
|
+
require "cloudrider/protofile"
|
3
|
+
class Cloudrider::ApplicationCommander
|
4
|
+
class UnknownOrUnimplmenetedVarisset < StandardError; end
|
5
|
+
class << self
|
6
|
+
def varisset_protofiles_for(params)
|
7
|
+
new(params).files_to_write
|
8
|
+
end
|
9
|
+
def all_varissets
|
10
|
+
new(name: :all).all_files
|
11
|
+
end
|
12
|
+
end
|
13
|
+
def initialize(params)
|
14
|
+
@params = params
|
15
|
+
end
|
16
|
+
|
17
|
+
def files_to_write
|
18
|
+
_related_assets.flatten.map { |ac| ac.new _varisset_style }.map(&:protofile)
|
19
|
+
end
|
20
|
+
|
21
|
+
def all_files
|
22
|
+
[
|
23
|
+
_product_display,
|
24
|
+
_application,
|
25
|
+
_hero_splash,
|
26
|
+
_introductory_lobby,
|
27
|
+
_product_listing,
|
28
|
+
_index,
|
29
|
+
_cookie_splash,
|
30
|
+
_products_catalog,
|
31
|
+
_products_showcase,
|
32
|
+
_site_nav,
|
33
|
+
_table_booths
|
34
|
+
].flatten.map { |ac| ac.new _varisset_style }.map(&:protofile)
|
35
|
+
end
|
36
|
+
|
37
|
+
private
|
38
|
+
def _product_display
|
39
|
+
[Cloudrider::Apiv1::ProductDisplayComponent, Cloudrider::Apiv1::ProductDisplaySass]
|
40
|
+
end
|
41
|
+
def _application
|
42
|
+
[Cloudrider::Apiv1::ApplicationSass, Cloudrider::Apiv1::ApplicationEmblem]
|
43
|
+
end
|
44
|
+
def _hero_splash
|
45
|
+
[Cloudrider::Apiv1::HeroSplashSass, Cloudrider::Apiv1::HeroSplashComponent]
|
46
|
+
end
|
47
|
+
def _introductory_lobby
|
48
|
+
[Cloudrider::Apiv1::IntroductoryLobbySass, Cloudrider::Apiv1::IntroductoryLobbyComponent]
|
49
|
+
end
|
50
|
+
def _product_listing
|
51
|
+
[Cloudrider::Apiv1::ProductListingComponent, Cloudrider::Apiv1::ProductListingSass]
|
52
|
+
end
|
53
|
+
def _index
|
54
|
+
[Cloudrider::Apiv1::IndexEmblem]
|
55
|
+
end
|
56
|
+
def _cookie_splash
|
57
|
+
[Cloudrider::Apiv1::CookieSplashComponent, Cloudrider::Apiv1::CookieSplashSass]
|
58
|
+
end
|
59
|
+
def _products_catalog
|
60
|
+
[Cloudrider::Apiv1::ProductsCatalogComponent, Cloudrider::Apiv1::ProductsCatalogSass]
|
61
|
+
end
|
62
|
+
def _products_showcase
|
63
|
+
[Cloudrider::Apiv1::ProductsShowcaseComponent, Cloudrider::Apiv1::ProductsShowcaseSass]
|
64
|
+
end
|
65
|
+
def _site_nav
|
66
|
+
[Cloudrider::Apiv1::SiteNavComponent, Cloudrider::Apiv1::SiteNavSass]
|
67
|
+
end
|
68
|
+
def _table_booths
|
69
|
+
[Cloudrider::Apiv1::TableBoothsComponent, Cloudrider::Apiv1::TableBoothsSass]
|
70
|
+
end
|
71
|
+
def _varisset_name
|
72
|
+
@params[:name]
|
73
|
+
end
|
74
|
+
def _varisset_style
|
75
|
+
@params[:style]
|
76
|
+
end
|
77
|
+
def _related_assets
|
78
|
+
case _varisset_name
|
79
|
+
when "application"
|
80
|
+
_application
|
81
|
+
when "index"
|
82
|
+
_index
|
83
|
+
when "cookie-splash"
|
84
|
+
_cookie_splash
|
85
|
+
when "hero-splash"
|
86
|
+
_hero_splash
|
87
|
+
when "introductory-lobby"
|
88
|
+
_introductory_lobby
|
89
|
+
when "product-display"
|
90
|
+
_product_display
|
91
|
+
when "product-listing"
|
92
|
+
_product_listing
|
93
|
+
when "products-catalog"
|
94
|
+
_products_catalog
|
95
|
+
when "products-showcase"
|
96
|
+
_products_showcase
|
97
|
+
when "site-nav"
|
98
|
+
_site_nav
|
99
|
+
when "table-booths"
|
100
|
+
_table_booths
|
101
|
+
else
|
102
|
+
raise UnknownOrUnimplmenetedVarisset, _varisset_name
|
103
|
+
end
|
104
|
+
end
|
105
|
+
KnownVarissets = [
|
106
|
+
"application",
|
107
|
+
"index",
|
108
|
+
"cookie-splash",
|
109
|
+
"hero-splash",
|
110
|
+
"introductory-lobby",
|
111
|
+
"product-display",
|
112
|
+
"product-listing",
|
113
|
+
"products-catalog",
|
114
|
+
"products-showcase",
|
115
|
+
"site-nav",
|
116
|
+
"table-booths"
|
117
|
+
]
|
118
|
+
end
|
119
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'tilt'
|
2
|
+
require 'erb'
|
3
|
+
class Cloudrider::FileOrdersMaker
|
4
|
+
def initialize(hash)
|
5
|
+
@request = hash
|
6
|
+
end
|
7
|
+
|
8
|
+
def file_orders
|
9
|
+
_website_application
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
def _website_application
|
14
|
+
WebsiteIndexPage.new.tap do |w|
|
15
|
+
w.site_nav = Cloudrider::EmberApp::SiteNav.new @request
|
16
|
+
w.hero_splash = Cloudrider::EmberApp::HeroSplash.new @request
|
17
|
+
w.introductory_lobby = Cloudrider::EmberApp::IntroductoryLobby.new @request
|
18
|
+
w.products_showcase = Cloudrider::EmberApp::ProductsShowcase.new @request
|
19
|
+
w.table_booths = Cloudrider::EmberApp::TableBooths.new @request
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
.application-container.toggle-shift.shifted
|
2
|
+
<% if top_nav? %>
|
3
|
+
#canvas-menu-top
|
4
|
+
site-nav
|
5
|
+
#page-wrapper
|
6
|
+
.site-content
|
7
|
+
.not-site-footer
|
8
|
+
== outlet
|
9
|
+
site-footer action="displayModal"
|
10
|
+
|
11
|
+
<% else %>
|
12
|
+
#canvas-menu-left
|
13
|
+
site-nav
|
14
|
+
#page-wrapper
|
15
|
+
.small-time-header.hide-for-large-up.pointer click=toggleCanvasShift
|
16
|
+
i.fa.fa-bars.fa-3x
|
17
|
+
.site-content
|
18
|
+
.not-site-footer
|
19
|
+
== outlet
|
20
|
+
site-footer action="displayModal"
|
21
|
+
<% end %>
|
22
|
+
#fixed-bottom
|
23
|
+
.row
|
24
|
+
flash-message
|
25
|
+
|
26
|
+
.modal-background
|
27
|
+
.modal-vertical-container
|
28
|
+
== outlet "modal"
|
@@ -0,0 +1 @@
|
|
1
|
+
USAGE
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'rails/generators/migration'
|
2
|
+
module Cloudrider; end
|
3
|
+
module Cloudrider::Generators; end
|
4
|
+
class Cloudrider::Generators::BackendGenerator < Rails::Generators::Base
|
5
|
+
source_root File.expand_path "../../../../../generica", __FILE__
|
6
|
+
include Rails::Generators::Migration
|
7
|
+
class << self
|
8
|
+
def next_migration_number(dirname)
|
9
|
+
next_migration_number = current_migration_number(dirname) + 1
|
10
|
+
ActiveRecord::Migration.next_migration_number(next_migration_number)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
desc "Migrates in various rubies files"
|
14
|
+
|
15
|
+
def install_rubies
|
16
|
+
_migrate_backend
|
17
|
+
say "Be sure to run bundle and bower install"
|
18
|
+
end
|
19
|
+
private
|
20
|
+
def _migrate_backend
|
21
|
+
copy_file "bower.json", "bower.json"
|
22
|
+
copy_file ".bowerrc", ".bowerrc"
|
23
|
+
directory "app/models", "app/models"
|
24
|
+
directory "app/controllers", "app/controllers"
|
25
|
+
directory "app/views", "app/views"
|
26
|
+
directory "spec", "spec"
|
27
|
+
directory "db/seeds", "db/seeds"
|
28
|
+
migration_template "db/migrate/20140930180107_create_apiv1_pictures.rb", "db/migrate/create_apiv1_pictures.rb"
|
29
|
+
migration_template "db/migrate/20140930052333_create_apiv1_taxons.rb", "db/migrate/create_apiv1_taxons.rb"
|
30
|
+
migration_template "db/migrate/20141021003733_sorcery_core.rb", "db/migrate/sorcery_core.rb"
|
31
|
+
migration_template "db/migrate/20140930052559_create_apiv1_listings_plastics.rb", "db/migrate/create_apiv1_listings_plastics.rb"
|
32
|
+
migration_template "db/migrate/20140930180108_add_attachment_pic_to_apiv1_pictures.rb", "db/migrate/add_attachment_pic_to_apiv1_pictures.rb"
|
33
|
+
migration_template "db/migrate/20141021003734_sorcery_remember_me.rb", "db/migrate/sorcery_remember_me.rb"
|
34
|
+
migration_template "db/migrate/20141010215459_create_apiv1_translations.rb", "db/migrate/create_apiv1_translations.rb"
|
35
|
+
migration_template "db/migrate/20141006231820_create_apiv1_employees.rb", "db/migrate/create_apiv1_employees.rb"
|
36
|
+
migration_template "db/migrate/20141001212635_create_apiv1_listings_taxon_relationships.rb", "db/migrate/create_apiv1_listings_taxon_relationships.rb"
|
37
|
+
migration_template "db/migrate/20141001063631_create_commerce_units_dimensions.rb" , "db/migrate/create_commerce_units_dimensions.rb"
|
38
|
+
migration_template "db/migrate/20141018235809_add_attachment_document_to_attachments.rb", "db/migrate/add_attachment_document_to_attachments.rb"
|
39
|
+
directory "lib/tasks", "lib/tasks"
|
40
|
+
directory "lib/generica", "lib/generica"
|
41
|
+
copy_file "lib/generica.rb", "lib/generica.rb"
|
42
|
+
copy_file "config/desired_languages.yml", "config/desired_languages.yml"
|
43
|
+
copy_file ".rspec", ".rspec"
|
44
|
+
copy_file "public/tests/dog.png", "public/tests/dog.png"
|
45
|
+
copy_file "config/routes.rb", "config/routes.rb"
|
46
|
+
copy_file "config/initializers/sorcery.rb", "config/initializers/sorcery.rb"
|
47
|
+
copy_file "Gemfile", "Gemfile"
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,110 @@
|
|
1
|
+
module Cloudrider; end
|
2
|
+
module Cloudrider::Generators; end
|
3
|
+
class Cloudrider::Generators::ClientGenerator < Rails::Generators::Base
|
4
|
+
source_root File.expand_path "../../../../../generica", __FILE__
|
5
|
+
desc "Migrates in assets/javascripts and assets/stylesheets files that don't vary from site to site"
|
6
|
+
|
7
|
+
def install_assets
|
8
|
+
_copy_config_files
|
9
|
+
_copy_support_folders
|
10
|
+
_copy_support_styles
|
11
|
+
_copy_static_style_folders
|
12
|
+
_copy_asset_images
|
13
|
+
_copy_static_components
|
14
|
+
_copy_static_pages
|
15
|
+
_copy_static_component_styles
|
16
|
+
say "You'll need to separately install varying assets"
|
17
|
+
say "varying assets include:"
|
18
|
+
say "emblems: "
|
19
|
+
say ["application.emblem", "index.emblem"].to_s
|
20
|
+
say "components: "
|
21
|
+
say ["cookie-splash", "hero-splash", "introductory-lobby", "product-catalog", "product-display", "product-listing", "products-showcase", "site-nav", "table-booths"].to_s
|
22
|
+
say "sass: "
|
23
|
+
say ["cookie-splash", "hero-splash", "introductory-lobby", "products-catalog", "products-showcase", "site-nav", "table-booths"].to_s
|
24
|
+
say "Be sure to run bundle and bower install"
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
def _copy_asset_images
|
29
|
+
directory "app/assets/images", "app/assets/images"
|
30
|
+
end
|
31
|
+
def _copy_config_files
|
32
|
+
["apiv1.js.ls", "application.js"].each do |file|
|
33
|
+
copy_file "app/assets/javascripts/#{file}", "app/assets/javascripts/#{file}"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
def _copy_support_folders
|
37
|
+
[
|
38
|
+
"adapters",
|
39
|
+
"components",
|
40
|
+
"config",
|
41
|
+
"controllers",
|
42
|
+
"helpers",
|
43
|
+
"mixins",
|
44
|
+
"models",
|
45
|
+
"packages",
|
46
|
+
"routes",
|
47
|
+
"transforms",
|
48
|
+
"views"
|
49
|
+
].each do |folder|
|
50
|
+
directory "app/assets/javascripts/#{folder}", "app/assets/javascripts/#{folder}"
|
51
|
+
end
|
52
|
+
end
|
53
|
+
def _copy_support_styles
|
54
|
+
[
|
55
|
+
"application.css",
|
56
|
+
"apiv1.css.scss",
|
57
|
+
"foundation_and_overrides.scss",
|
58
|
+
"apiv1/_admin.css.scss",
|
59
|
+
"apiv1/modals/_login.css.scss",
|
60
|
+
"apiv1/products/product/_show.css.scss"
|
61
|
+
].each do |file|
|
62
|
+
copy_file "app/assets/stylesheets/#{file}", "app/assets/stylesheets/#{file}"
|
63
|
+
end
|
64
|
+
end
|
65
|
+
def _copy_static_style_folders
|
66
|
+
["admin", "shared"].each do |folder|
|
67
|
+
directory "app/assets/stylesheets/apiv1/#{folder}", "app/assets/stylesheets/apiv1/#{folder}"
|
68
|
+
end
|
69
|
+
end
|
70
|
+
def _copy_static_components
|
71
|
+
[
|
72
|
+
"tr-span",
|
73
|
+
"fancy-paginator",
|
74
|
+
"form-for",
|
75
|
+
"flash-message",
|
76
|
+
"block-grid-pictures",
|
77
|
+
"block-picture",
|
78
|
+
"flash-slice",
|
79
|
+
"promise-button",
|
80
|
+
"search-and-filter",
|
81
|
+
"select-locale",
|
82
|
+
"site-footer",
|
83
|
+
"tree-taxon-li",
|
84
|
+
"tree-taxon-ul",
|
85
|
+
"tree-taxon-wrapper"
|
86
|
+
].each do |component|
|
87
|
+
copy_file "app/assets/javascripts/templates/components/#{component}.emblem", "app/assets/javascripts/templates/components/#{component}.emblem"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
def _copy_static_pages
|
91
|
+
["modals/login", "products/product/show", "products", "admin"].each do |file|
|
92
|
+
copy_file "app/assets/javascripts/templates/#{file}.emblem", "app/assets/javascripts/templates/#{file}.emblem"
|
93
|
+
end
|
94
|
+
end
|
95
|
+
def _copy_static_component_styles
|
96
|
+
[
|
97
|
+
"block-grid-pictures",
|
98
|
+
"fancy-paginator",
|
99
|
+
"files-field",
|
100
|
+
"flash-message",
|
101
|
+
"promise-button",
|
102
|
+
"search-and-filter",
|
103
|
+
"select-locale",
|
104
|
+
"site-footer",
|
105
|
+
"type-ahead",
|
106
|
+
"tree-taxon-wrapper"].each do |file|
|
107
|
+
copy_file "app/assets/stylesheets/apiv1/components/_#{file}.css.scss", "app/assets/stylesheets/apiv1/components/_#{file}.css.scss"
|
108
|
+
end
|
109
|
+
end
|
110
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require "cloudrider/application_commander"
|
2
|
+
|
3
|
+
module Cloudrider::Generators; end
|
4
|
+
class Cloudrider::Generators::VarissetsGenerator < Rails::Generators::NamedBase
|
5
|
+
|
6
|
+
desc "Generates a varying asset and inserts it properly into your application.
|
7
|
+
Known varissets are: #{Cloudrider::ApplicationCommander::KnownVarissets}"
|
8
|
+
def create_the_variable_files
|
9
|
+
return _all_varissets if _all_varissets?
|
10
|
+
_selective_varissets
|
11
|
+
end
|
12
|
+
private
|
13
|
+
def _selective_varissets
|
14
|
+
Cloudrider::ApplicationCommander.varisset_protofiles_for(_varisset_opts).each do |protofile|
|
15
|
+
create_file protofile.full_name, protofile.content
|
16
|
+
end
|
17
|
+
end
|
18
|
+
def _all_varissets
|
19
|
+
Cloudrider::ApplicationCommander.all_varissets.each do |protofile|
|
20
|
+
create_file protofile.full_name, protofile.content
|
21
|
+
end
|
22
|
+
end
|
23
|
+
def _all_varissets?
|
24
|
+
_varisset_name == "all"
|
25
|
+
end
|
26
|
+
def _varisset_opts
|
27
|
+
{ name: _varisset_name, style: _varisset_style }
|
28
|
+
end
|
29
|
+
def _varisset_name
|
30
|
+
name.split(":").first
|
31
|
+
end
|
32
|
+
def _varisset_style
|
33
|
+
name.split(":").second
|
34
|
+
end
|
35
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
class Cloudrider::Apiv1::TestApplicationComponent < Cloudrider::Apiv1::Base; end
|
4
|
+
class Cloudrider::Apiv1::TestApplicationSass < Cloudrider::Apiv1::Base; end
|
5
|
+
class Cloudrider::Apiv1::TestApplicationEmblem < Cloudrider::Apiv1::Base; end
|
6
|
+
describe Cloudrider::Apiv1::Base do
|
7
|
+
let(:component) { Cloudrider::Apiv1::TestApplicationComponent.new }
|
8
|
+
let(:sass) { Cloudrider::Apiv1::TestApplicationSass.new }
|
9
|
+
let(:emblem) { Cloudrider::Apiv1::TestApplicationEmblem.new }
|
10
|
+
context '#_source_file' do
|
11
|
+
subject { component.send :_source_file }
|
12
|
+
specify { should eq "test-application.emblem.erb" }
|
13
|
+
end
|
14
|
+
context '#_source_file' do
|
15
|
+
subject { sass.send :_source_file }
|
16
|
+
specify { should eq "_test-application.css.scss.erb" }
|
17
|
+
end
|
18
|
+
context '#_source_file' do
|
19
|
+
subject { emblem.send :_source_file }
|
20
|
+
specify { should eq "test_application.emblem.erb" }
|
21
|
+
end
|
22
|
+
context '#_file_name' do
|
23
|
+
subject { component.send :_file_name }
|
24
|
+
specify { should eq "test-application.emblem" }
|
25
|
+
end
|
26
|
+
context '#_file_name' do
|
27
|
+
subject { sass.send :_file_name }
|
28
|
+
specify { should eq "_test-application.css.scss" }
|
29
|
+
end
|
30
|
+
context '#_file_name' do
|
31
|
+
subject { emblem.send :_file_name }
|
32
|
+
specify { should eq "test_application.emblem" }
|
33
|
+
end
|
34
|
+
context '#_family' do
|
35
|
+
subject { emblem.send :_family }
|
36
|
+
specify { should eq :emblem }
|
37
|
+
end
|
38
|
+
context '#_family' do
|
39
|
+
subject { sass.send :_family }
|
40
|
+
specify { should eq :sass }
|
41
|
+
end
|
42
|
+
context '#_family' do
|
43
|
+
subject { component.send :_family }
|
44
|
+
specify { should eq :component }
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Cloudrider::Apiv1 do
|
4
|
+
context ':file_name_from_class_name' do
|
5
|
+
subject { Cloudrider::Apiv1.file_name_from_class_name "Cloudrider::Apiv1::DonkeyPunchSass" }
|
6
|
+
specify { should eq "_donkey-punch" }
|
7
|
+
end
|
8
|
+
context ':file_name_from_class_name' do
|
9
|
+
subject { Cloudrider::Apiv1.file_name_from_class_name "Cloudrider::Apiv1::PearlNecklaceComponent" }
|
10
|
+
specify { should eq "pearl-necklace" }
|
11
|
+
end
|
12
|
+
context ':file_ext_from_class_name' do
|
13
|
+
subject { Cloudrider::Apiv1.file_ext_from_class_name "Cloudrider::Apiv1::ApplicationComponent" }
|
14
|
+
specify { should eq ".emblem" }
|
15
|
+
end
|
16
|
+
context ':file_ext_from_class_name' do
|
17
|
+
subject { Cloudrider::Apiv1.file_ext_from_class_name "Cloudrider::Apiv1::DicksAreUsSass" }
|
18
|
+
specify { should eq ".css.scss" }
|
19
|
+
end
|
20
|
+
end
|