cloudrider 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (426) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/.rspec +1 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +31 -0
  7. data/Rakefile +2 -0
  8. data/cloudrider.gemspec +30 -0
  9. data/generica/.bowerrc +3 -0
  10. data/generica/.rspec +2 -0
  11. data/generica/Gemfile +67 -0
  12. data/generica/Gemfile.lock +363 -0
  13. data/generica/LICENSE.txt +22 -0
  14. data/generica/README.md +156 -0
  15. data/generica/Rakefile +5 -0
  16. data/generica/app/assets/images/.keep +0 -0
  17. data/generica/app/assets/images/cookie-splash/albatross.jpg +0 -0
  18. data/generica/app/assets/images/cookie-splash/california.png +0 -0
  19. data/generica/app/assets/images/hero-splash/albatross.jpg +0 -0
  20. data/generica/app/assets/images/hero-splash/california.jpg +0 -0
  21. data/generica/app/assets/images/hero-splash/rocks.jpg +0 -0
  22. data/generica/app/assets/images/hero-splash/seaweed.png +0 -0
  23. data/generica/app/assets/images/introductory-lobby/fishing.jpg +0 -0
  24. data/generica/app/assets/images/products-showcase/rocks.jpg +0 -0
  25. data/generica/app/assets/images/table-booths/411.png +0 -0
  26. data/generica/app/assets/javascripts/adapters/admin/employee.js.ls +20 -0
  27. data/generica/app/assets/javascripts/adapters/admin/product.js.ls +20 -0
  28. data/generica/app/assets/javascripts/adapters/admin/session.js.em +2 -0
  29. data/generica/app/assets/javascripts/adapters/application.js.em +2 -0
  30. data/generica/app/assets/javascripts/apiv1.js.ls +24 -0
  31. data/generica/app/assets/javascripts/application.js +23 -0
  32. data/generica/app/assets/javascripts/components/.gitkeep +0 -0
  33. data/generica/app/assets/javascripts/components/block-grid-pictures.js.em +3 -0
  34. data/generica/app/assets/javascripts/components/block-picture.js.em +8 -0
  35. data/generica/app/assets/javascripts/components/cookie-splash.js.em +2 -0
  36. data/generica/app/assets/javascripts/components/fancy-paginator.js.em +23 -0
  37. data/generica/app/assets/javascripts/components/files-field.js.em +28 -0
  38. data/generica/app/assets/javascripts/components/flash-message.js.em +6 -0
  39. data/generica/app/assets/javascripts/components/flash-slice.js.em +32 -0
  40. data/generica/app/assets/javascripts/components/form-for.js.em +28 -0
  41. data/generica/app/assets/javascripts/components/hero-splash.js.em +17 -0
  42. data/generica/app/assets/javascripts/components/introductory-lobby.js.em +13 -0
  43. data/generica/app/assets/javascripts/components/product-display.js.em +3 -0
  44. data/generica/app/assets/javascripts/components/product-listing.js.em +3 -0
  45. data/generica/app/assets/javascripts/components/products-catalog.js.em +2 -0
  46. data/generica/app/assets/javascripts/components/products-showcase.js.ls +5 -0
  47. data/generica/app/assets/javascripts/components/promise-button.js.em +20 -0
  48. data/generica/app/assets/javascripts/components/search-and-filter.js.em +13 -0
  49. data/generica/app/assets/javascripts/components/select-locale.js.em +19 -0
  50. data/generica/app/assets/javascripts/components/site-footer.js.em +8 -0
  51. data/generica/app/assets/javascripts/components/site-nav.js.em +3 -0
  52. data/generica/app/assets/javascripts/components/table-booths.js.em +10 -0
  53. data/generica/app/assets/javascripts/components/tr-span.js.em +18 -0
  54. data/generica/app/assets/javascripts/components/tree/taxon-li.js.em +46 -0
  55. data/generica/app/assets/javascripts/components/tree/taxon-ul.js.em +3 -0
  56. data/generica/app/assets/javascripts/components/tree/taxon-wrapper.js.em +22 -0
  57. data/generica/app/assets/javascripts/components/type-ahead.js.em +17 -0
  58. data/generica/app/assets/javascripts/config/i18n-translations.js.ls +3 -0
  59. data/generica/app/assets/javascripts/config/router.js.ls +29 -0
  60. data/generica/app/assets/javascripts/controllers/.gitkeep +0 -0
  61. data/generica/app/assets/javascripts/controllers/admin/employees/new_controller.js.em +16 -0
  62. data/generica/app/assets/javascripts/controllers/admin/employees/slice_controller.js.em +4 -0
  63. data/generica/app/assets/javascripts/controllers/admin/product/edit_controller.js.em +21 -0
  64. data/generica/app/assets/javascripts/controllers/admin/products/new_controller.js.em +16 -0
  65. data/generica/app/assets/javascripts/controllers/admin/products/slice_controller.js.em +4 -0
  66. data/generica/app/assets/javascripts/controllers/admin/translation/edit_controller.js.em +19 -0
  67. data/generica/app/assets/javascripts/controllers/admin/translation/form_controller.js.em +10 -0
  68. data/generica/app/assets/javascripts/controllers/admin/translations/index_controller.js.em +19 -0
  69. data/generica/app/assets/javascripts/controllers/admin/translations/sliver_controller.js.em +8 -0
  70. data/generica/app/assets/javascripts/controllers/application_controller.js.em +9 -0
  71. data/generica/app/assets/javascripts/controllers/index_controller.js.em +20 -0
  72. data/generica/app/assets/javascripts/controllers/modals/login_controller.js.em +24 -0
  73. data/generica/app/assets/javascripts/controllers/products/index_controller.js.em +28 -0
  74. data/generica/app/assets/javascripts/controllers/products/product/show_controller.js.em +17 -0
  75. data/generica/app/assets/javascripts/helpers/.gitkeep +0 -0
  76. data/generica/app/assets/javascripts/helpers/array_ex.js.ls +27 -0
  77. data/generica/app/assets/javascripts/helpers/i18n.js.ls +3 -0
  78. data/generica/app/assets/javascripts/helpers/string_ex.js.ls +21 -0
  79. data/generica/app/assets/javascripts/mixins/.gitkeep +0 -0
  80. data/generica/app/assets/javascripts/mixins/file_drag_and_drop.js.em +57 -0
  81. data/generica/app/assets/javascripts/mixins/type_ahead_builder.js.em +41 -0
  82. data/generica/app/assets/javascripts/models/.gitkeep +0 -0
  83. data/generica/app/assets/javascripts/models/admin/employee.js.em +6 -0
  84. data/generica/app/assets/javascripts/models/admin/offer.js.em +1 -0
  85. data/generica/app/assets/javascripts/models/admin/product.js.em +12 -0
  86. data/generica/app/assets/javascripts/models/admin/session.js.em +3 -0
  87. data/generica/app/assets/javascripts/models/admin/taxon.js.em +1 -0
  88. data/generica/app/assets/javascripts/models/attachment.js.em +9 -0
  89. data/generica/app/assets/javascripts/models/employee.js.em +16 -0
  90. data/generica/app/assets/javascripts/models/listing.js.em +20 -0
  91. data/generica/app/assets/javascripts/models/offer.js.em +12 -0
  92. data/generica/app/assets/javascripts/models/picture.js.em +11 -0
  93. data/generica/app/assets/javascripts/models/product.js.em +29 -0
  94. data/generica/app/assets/javascripts/models/session.js.ls +4 -0
  95. data/generica/app/assets/javascripts/models/taxon.js.em +31 -0
  96. data/generica/app/assets/javascripts/models/translation.js.em +46 -0
  97. data/generica/app/assets/javascripts/packages/flash.js.em +36 -0
  98. data/generica/app/assets/javascripts/packages/tranny.js.ls +51 -0
  99. data/generica/app/assets/javascripts/routes/.gitkeep +0 -0
  100. data/generica/app/assets/javascripts/routes/admin/employees/index_route.js.em +3 -0
  101. data/generica/app/assets/javascripts/routes/admin/employees/new_route.js.em +3 -0
  102. data/generica/app/assets/javascripts/routes/admin/index_route.js.em +1 -0
  103. data/generica/app/assets/javascripts/routes/admin/product_route.js.em +3 -0
  104. data/generica/app/assets/javascripts/routes/admin/products/index_route.js.em +3 -0
  105. data/generica/app/assets/javascripts/routes/admin/products/new_route.js.em +3 -0
  106. data/generica/app/assets/javascripts/routes/admin/taxons/index_route.js.em +2 -0
  107. data/generica/app/assets/javascripts/routes/admin/translation/edit_route.js.em +1 -0
  108. data/generica/app/assets/javascripts/routes/admin/translation_route.js.em +12 -0
  109. data/generica/app/assets/javascripts/routes/admin/translations/index_route.js.em +20 -0
  110. data/generica/app/assets/javascripts/routes/admin_route.js.em +4 -0
  111. data/generica/app/assets/javascripts/routes/application_route.js.em +19 -0
  112. data/generica/app/assets/javascripts/routes/index_route.js.em +4 -0
  113. data/generica/app/assets/javascripts/routes/products/index_route.js.em +3 -0
  114. data/generica/app/assets/javascripts/routes/products_route.js.em +4 -0
  115. data/generica/app/assets/javascripts/templates/.gitkeep +0 -0
  116. data/generica/app/assets/javascripts/templates/admin.emblem +23 -0
  117. data/generica/app/assets/javascripts/templates/admin/employees/index.emblem +22 -0
  118. data/generica/app/assets/javascripts/templates/admin/employees/new.emblem +35 -0
  119. data/generica/app/assets/javascripts/templates/admin/employees/slice.emblem +22 -0
  120. data/generica/app/assets/javascripts/templates/admin/index.emblem +3 -0
  121. data/generica/app/assets/javascripts/templates/admin/product/edit.emblem +69 -0
  122. data/generica/app/assets/javascripts/templates/admin/products/index.emblem +22 -0
  123. data/generica/app/assets/javascripts/templates/admin/products/new.emblem +56 -0
  124. data/generica/app/assets/javascripts/templates/admin/products/slice.emblem +22 -0
  125. data/generica/app/assets/javascripts/templates/admin/taxons/index.emblem +10 -0
  126. data/generica/app/assets/javascripts/templates/admin/taxons/new.emblem +0 -0
  127. data/generica/app/assets/javascripts/templates/admin/translation/edit.emblem +11 -0
  128. data/generica/app/assets/javascripts/templates/admin/translation/form.emblem +20 -0
  129. data/generica/app/assets/javascripts/templates/admin/translations/index.emblem +43 -0
  130. data/generica/app/assets/javascripts/templates/admin/translations/slice.emblem +23 -0
  131. data/generica/app/assets/javascripts/templates/admin/translations/sliver.emblem +18 -0
  132. data/generica/app/assets/javascripts/templates/application.emblem +14 -0
  133. data/generica/app/assets/javascripts/templates/components/.gitkeep +0 -0
  134. data/generica/app/assets/javascripts/templates/components/block-grid-pictures.emblem +5 -0
  135. data/generica/app/assets/javascripts/templates/components/block-picture.emblem +7 -0
  136. data/generica/app/assets/javascripts/templates/components/cookie-splash.emblem +14 -0
  137. data/generica/app/assets/javascripts/templates/components/fancy-paginator.emblem +31 -0
  138. data/generica/app/assets/javascripts/templates/components/flash-message.emblem +2 -0
  139. data/generica/app/assets/javascripts/templates/components/flash-slice.emblem +6 -0
  140. data/generica/app/assets/javascripts/templates/components/form-for.emblem +2 -0
  141. data/generica/app/assets/javascripts/templates/components/hero-splash.emblem +13 -0
  142. data/generica/app/assets/javascripts/templates/components/hero-splash/_splash-cta.emblem +7 -0
  143. data/generica/app/assets/javascripts/templates/components/hero-splash/_splash-tagline.emblem +8 -0
  144. data/generica/app/assets/javascripts/templates/components/introductory-lobby.emblem +12 -0
  145. data/generica/app/assets/javascripts/templates/components/product-display.emblem +47 -0
  146. data/generica/app/assets/javascripts/templates/components/product-listing.emblem +26 -0
  147. data/generica/app/assets/javascripts/templates/components/products-catalog.emblem +16 -0
  148. data/generica/app/assets/javascripts/templates/components/products-showcase.emblem +12 -0
  149. data/generica/app/assets/javascripts/templates/components/products-showcase/_contained-media-one.emblem +20 -0
  150. data/generica/app/assets/javascripts/templates/components/promise-button.emblem +6 -0
  151. data/generica/app/assets/javascripts/templates/components/search-and-filter.emblem +11 -0
  152. data/generica/app/assets/javascripts/templates/components/select-locale.emblem +1 -0
  153. data/generica/app/assets/javascripts/templates/components/site-footer.emblem +9 -0
  154. data/generica/app/assets/javascripts/templates/components/site-nav.emblem +7 -0
  155. data/generica/app/assets/javascripts/templates/components/site-nav/_left-nav.emblem +19 -0
  156. data/generica/app/assets/javascripts/templates/components/site-nav/_top-nav.emblem +22 -0
  157. data/generica/app/assets/javascripts/templates/components/table-booths.emblem +75 -0
  158. data/generica/app/assets/javascripts/templates/components/tr-span.emblem +1 -0
  159. data/generica/app/assets/javascripts/templates/components/tree-taxon-li.emblem +29 -0
  160. data/generica/app/assets/javascripts/templates/components/tree-taxon-ul.emblem +9 -0
  161. data/generica/app/assets/javascripts/templates/components/tree-taxon-wrapper.emblem +3 -0
  162. data/generica/app/assets/javascripts/templates/index.emblem +7 -0
  163. data/generica/app/assets/javascripts/templates/modals/login.emblem +27 -0
  164. data/generica/app/assets/javascripts/templates/products.emblem +3 -0
  165. data/generica/app/assets/javascripts/templates/products/index.emblem +7 -0
  166. data/generica/app/assets/javascripts/templates/products/product/show.emblem +71 -0
  167. data/generica/app/assets/javascripts/transforms/files_transform.js.ls +7 -0
  168. data/generica/app/assets/javascripts/transforms/form_data_transformer.js.ls +25 -0
  169. data/generica/app/assets/javascripts/transforms/strings_transform.js.ls +4 -0
  170. data/generica/app/assets/javascripts/views/.gitkeep +0 -0
  171. data/generica/app/assets/stylesheets/apiv1.css.scss +8 -0
  172. data/generica/app/assets/stylesheets/apiv1/_admin.css.scss +14 -0
  173. data/generica/app/assets/stylesheets/apiv1/_application.css.scss +70 -0
  174. data/generica/app/assets/stylesheets/apiv1/admin/contacts/_index.css.scss +3 -0
  175. data/generica/app/assets/stylesheets/apiv1/admin/products/_index.css.scss +64 -0
  176. data/generica/app/assets/stylesheets/apiv1/admin/products/_new.css.scss +11 -0
  177. data/generica/app/assets/stylesheets/apiv1/admin/translations/_index.css.scss +68 -0
  178. data/generica/app/assets/stylesheets/apiv1/components/_block-grid-pictures.css.scss +21 -0
  179. data/generica/app/assets/stylesheets/apiv1/components/_cookie-splash.css.scss +60 -0
  180. data/generica/app/assets/stylesheets/apiv1/components/_fancy-paginator.css.scss +22 -0
  181. data/generica/app/assets/stylesheets/apiv1/components/_files-field.css.scss +10 -0
  182. data/generica/app/assets/stylesheets/apiv1/components/_flash-message.css.scss +35 -0
  183. data/generica/app/assets/stylesheets/apiv1/components/_hero-splash.css.scss +39 -0
  184. data/generica/app/assets/stylesheets/apiv1/components/_introductory-lobby.css.scss +22 -0
  185. data/generica/app/assets/stylesheets/apiv1/components/_product-display.css.scss +27 -0
  186. data/generica/app/assets/stylesheets/apiv1/components/_product-listing.css.scss +34 -0
  187. data/generica/app/assets/stylesheets/apiv1/components/_products-catalog.css.scss +2 -0
  188. data/generica/app/assets/stylesheets/apiv1/components/_products-showcase.css.scss +2 -0
  189. data/generica/app/assets/stylesheets/apiv1/components/_promise-button.css.scss +8 -0
  190. data/generica/app/assets/stylesheets/apiv1/components/_search-and-filter.css.scss +9 -0
  191. data/generica/app/assets/stylesheets/apiv1/components/_select-locale.css.scss +48 -0
  192. data/generica/app/assets/stylesheets/apiv1/components/_site-footer.css.scss +23 -0
  193. data/generica/app/assets/stylesheets/apiv1/components/_site-nav.css.scss +1 -0
  194. data/generica/app/assets/stylesheets/apiv1/components/_table-booths.css.scss +25 -0
  195. data/generica/app/assets/stylesheets/apiv1/components/_tree-taxon-wrapper.css.scss +92 -0
  196. data/generica/app/assets/stylesheets/apiv1/components/_type-ahead.css.scss +59 -0
  197. data/generica/app/assets/stylesheets/apiv1/components/products-catalog/_expanding-media.css.scss +3 -0
  198. data/generica/app/assets/stylesheets/apiv1/components/products-showcase/_contained-media-one.css.scss +35 -0
  199. data/generica/app/assets/stylesheets/apiv1/components/site-nav/_left-nav.css.scss +105 -0
  200. data/generica/app/assets/stylesheets/apiv1/components/site-nav/_top-nav.css.scss +106 -0
  201. data/generica/app/assets/stylesheets/apiv1/modals/_login.css.scss +26 -0
  202. data/generica/app/assets/stylesheets/apiv1/products/product/_show.css.scss +18 -0
  203. data/generica/app/assets/stylesheets/apiv1/shared/_constants.css.scss +77 -0
  204. data/generica/app/assets/stylesheets/apiv1/shared/_variables.css.scss +23 -0
  205. data/generica/app/assets/stylesheets/application.css +15 -0
  206. data/generica/app/assets/stylesheets/foundation_and_overrides.scss +1322 -0
  207. data/generica/app/controllers/admin/base_controller.rb +9 -0
  208. data/generica/app/controllers/admin/employees/create_controller.rb +26 -0
  209. data/generica/app/controllers/admin/products/create_controller.rb +26 -0
  210. data/generica/app/controllers/admin/products/update_controller.rb +29 -0
  211. data/generica/app/controllers/admin/sessions/create_controller.rb +34 -0
  212. data/generica/app/controllers/apiv1/employees/destroy_controller.rb +9 -0
  213. data/generica/app/controllers/apiv1/employees/index_controller.rb +9 -0
  214. data/generica/app/controllers/apiv1/home_controller.rb +4 -0
  215. data/generica/app/controllers/apiv1/i18n_translations/index_controller.rb +11 -0
  216. data/generica/app/controllers/apiv1/pictures/destroy_controller.rb +13 -0
  217. data/generica/app/controllers/apiv1/pictures/show_controller.rb +9 -0
  218. data/generica/app/controllers/apiv1/product_metadatum/show_controller.rb +16 -0
  219. data/generica/app/controllers/apiv1/products/destroy_controller.rb +9 -0
  220. data/generica/app/controllers/apiv1/products/index_controller.rb +21 -0
  221. data/generica/app/controllers/apiv1/products/show_controller.rb +12 -0
  222. data/generica/app/controllers/apiv1/taxons/index_controller.rb +11 -0
  223. data/generica/app/controllers/apiv1/taxons/show_controller.rb +9 -0
  224. data/generica/app/controllers/apiv1/translations/create_controller.rb +31 -0
  225. data/generica/app/controllers/apiv1/translations/index_controller.rb +22 -0
  226. data/generica/app/controllers/apiv1/translations/show_controller.rb +9 -0
  227. data/generica/app/controllers/apiv1/translations/update_controller.rb +35 -0
  228. data/generica/app/controllers/application_controller.rb +5 -0
  229. data/generica/app/controllers/concerns/.keep +0 -0
  230. data/generica/app/helpers/application_helper.rb +2 -0
  231. data/generica/app/mailers/.keep +0 -0
  232. data/generica/app/models/.keep +0 -0
  233. data/generica/app/models/admin.rb +5 -0
  234. data/generica/app/models/admin/employee_factory.rb +31 -0
  235. data/generica/app/models/admin/pictures_factory.rb +17 -0
  236. data/generica/app/models/admin/product_factory.rb +51 -0
  237. data/generica/app/models/admin/product_modifier.rb +39 -0
  238. data/generica/app/models/admin/user.rb +25 -0
  239. data/generica/app/models/apiv1.rb +5 -0
  240. data/generica/app/models/apiv1/attachment.rb +45 -0
  241. data/generica/app/models/apiv1/employee.rb +29 -0
  242. data/generica/app/models/apiv1/listings.rb +5 -0
  243. data/generica/app/models/apiv1/listings/taxon_relationship.rb +19 -0
  244. data/generica/app/models/apiv1/permalinkifier.rb +22 -0
  245. data/generica/app/models/apiv1/picture.rb +37 -0
  246. data/generica/app/models/apiv1/product.rb +71 -0
  247. data/generica/app/models/apiv1/products_machine.rb +65 -0
  248. data/generica/app/models/apiv1/taxon.rb +88 -0
  249. data/generica/app/models/apiv1/translation.rb +57 -0
  250. data/generica/app/models/apiv1/translation_machine.rb +57 -0
  251. data/generica/app/models/concerns/.keep +0 -0
  252. data/generica/app/varissets/javascripts/templates/application.emblem.erb +28 -0
  253. data/generica/app/varissets/javascripts/templates/components/cookie-splash.emblem.erb +17 -0
  254. data/generica/app/varissets/javascripts/templates/components/hero-splash.emblem.erb +25 -0
  255. data/generica/app/varissets/javascripts/templates/components/introductory-lobby.emblem.erb +12 -0
  256. data/generica/app/varissets/javascripts/templates/components/product-display.emblem.erb +51 -0
  257. data/generica/app/varissets/javascripts/templates/components/product-listing.emblem.erb +29 -0
  258. data/generica/app/varissets/javascripts/templates/components/products-catalog.emblem.erb +18 -0
  259. data/generica/app/varissets/javascripts/templates/components/products-showcase.emblem.erb +23 -0
  260. data/generica/app/varissets/javascripts/templates/components/site-nav.emblem.erb +47 -0
  261. data/generica/app/varissets/javascripts/templates/components/table-booths.emblem.erb +71 -0
  262. data/generica/app/varissets/javascripts/templates/index.emblem.erb +11 -0
  263. data/generica/app/varissets/stylesheets/apiv1/_application.css.scss.erb +66 -0
  264. data/generica/app/varissets/stylesheets/apiv1/components/_cookie-splash.css.scss.erb +61 -0
  265. data/generica/app/varissets/stylesheets/apiv1/components/_hero-splash.css.scss.erb +42 -0
  266. data/generica/app/varissets/stylesheets/apiv1/components/_introductory-lobby.css.scss.erb +26 -0
  267. data/generica/app/varissets/stylesheets/apiv1/components/_product-display.css.scss.erb +30 -0
  268. data/generica/app/varissets/stylesheets/apiv1/components/_product-listing.css.scss.erb +37 -0
  269. data/generica/app/varissets/stylesheets/apiv1/components/_products-catalog.css.scss.erb +5 -0
  270. data/generica/app/varissets/stylesheets/apiv1/components/_products-showcase.css.scss.erb +39 -0
  271. data/generica/app/varissets/stylesheets/apiv1/components/_site-nav.css.scss.erb +213 -0
  272. data/generica/app/varissets/stylesheets/apiv1/components/_table-booths.css.scss.erb +28 -0
  273. data/generica/app/views/apiv1/home/index.html.haml +2 -0
  274. data/generica/app/views/apiv1/layouts/application.html.haml +21 -0
  275. data/generica/app/views/layouts/application.html.erb +14 -0
  276. data/generica/bin/bundle +3 -0
  277. data/generica/bin/rails +8 -0
  278. data/generica/bin/rake +8 -0
  279. data/generica/bin/spring +18 -0
  280. data/generica/bower.json +21 -0
  281. data/generica/config.ru +4 -0
  282. data/generica/config/application.rb +23 -0
  283. data/generica/config/boot.rb +4 -0
  284. data/generica/config/database.yml +54 -0
  285. data/generica/config/database.yml.erb +53 -0
  286. data/generica/config/desired_languages.yml +28 -0
  287. data/generica/config/environment.rb +5 -0
  288. data/generica/config/environments/development.rb +37 -0
  289. data/generica/config/environments/production.rb +82 -0
  290. data/generica/config/environments/test.rb +39 -0
  291. data/generica/config/initializers/assets.rb +8 -0
  292. data/generica/config/initializers/backtrace_silencers.rb +7 -0
  293. data/generica/config/initializers/cookies_serializer.rb +3 -0
  294. data/generica/config/initializers/filter_parameter_logging.rb +4 -0
  295. data/generica/config/initializers/inflections.rb +16 -0
  296. data/generica/config/initializers/mime_types.rb +4 -0
  297. data/generica/config/initializers/session_store.rb +3 -0
  298. data/generica/config/initializers/sorcery.rb +437 -0
  299. data/generica/config/initializers/wrap_parameters.rb +14 -0
  300. data/generica/config/locales/ar.yml +78 -0
  301. data/generica/config/locales/ca.yml +78 -0
  302. data/generica/config/locales/cs.yml +78 -0
  303. data/generica/config/locales/da.yml +78 -0
  304. data/generica/config/locales/de.yml +78 -0
  305. data/generica/config/locales/el.yml +78 -0
  306. data/generica/config/locales/en.yml +78 -0
  307. data/generica/config/locales/es.yml +78 -0
  308. data/generica/config/locales/fi.yml +78 -0
  309. data/generica/config/locales/fr.yml +78 -0
  310. data/generica/config/locales/hu.yml +78 -0
  311. data/generica/config/locales/id.yml +78 -0
  312. data/generica/config/locales/is.yml +78 -0
  313. data/generica/config/locales/it.yml +78 -0
  314. data/generica/config/locales/ja.yml +78 -0
  315. data/generica/config/locales/ko.yml +78 -0
  316. data/generica/config/locales/ms.yml +78 -0
  317. data/generica/config/locales/nl.yml +78 -0
  318. data/generica/config/locales/no.yml +78 -0
  319. data/generica/config/locales/pl.yml +78 -0
  320. data/generica/config/locales/pt.yml +78 -0
  321. data/generica/config/locales/ru.yml +78 -0
  322. data/generica/config/locales/sv.yml +78 -0
  323. data/generica/config/locales/th.yml +78 -0
  324. data/generica/config/locales/tr.yml +78 -0
  325. data/generica/config/locales/zh-CN.yml +78 -0
  326. data/generica/config/locales/zh-TW.yml +78 -0
  327. data/generica/config/nginx.conf +36 -0
  328. data/generica/config/routes.rb +35 -0
  329. data/generica/config/secrets.yml +22 -0
  330. data/generica/config/unicorn.conf.rb +101 -0
  331. data/generica/db/migrate/20140930052333_create_apiv1_taxons.rb +14 -0
  332. data/generica/db/migrate/20140930052559_create_apiv1_listings_plastics.rb +18 -0
  333. data/generica/db/migrate/20140930180107_create_apiv1_pictures.rb +8 -0
  334. data/generica/db/migrate/20140930180108_add_attachment_pic_to_apiv1_pictures.rb +11 -0
  335. data/generica/db/migrate/20141001063631_create_commerce_units_dimensions.rb +11 -0
  336. data/generica/db/migrate/20141001212635_create_apiv1_listings_taxon_relationships.rb +9 -0
  337. data/generica/db/migrate/20141006231820_create_apiv1_employees.rb +11 -0
  338. data/generica/db/migrate/20141010215459_create_apiv1_translations.rb +11 -0
  339. data/generica/db/migrate/20141018235809_add_attachment_document_to_attachments.rb +13 -0
  340. data/generica/db/migrate/20141021003733_sorcery_core.rb +13 -0
  341. data/generica/db/migrate/20141021003734_sorcery_remember_me.rb +8 -0
  342. data/generica/db/schema.rb +141 -0
  343. data/generica/db/seeds.rb +15 -0
  344. data/generica/db/seeds/dimensions.rb +42 -0
  345. data/generica/db/seeds/products.rb +30 -0
  346. data/generica/db/seeds/taxons.rb +81 -0
  347. data/generica/db/seeds/translation_seeds.rb +2132 -0
  348. data/generica/db/seeds/users.rb +2 -0
  349. data/generica/lib/assets/.keep +0 -0
  350. data/generica/lib/generica.rb +4 -0
  351. data/generica/lib/generica/locale.yml.erb +6 -0
  352. data/generica/lib/generica/seed.en.yml +77 -0
  353. data/generica/lib/generica/seed_generator.rb +119 -0
  354. data/generica/lib/generica/translation_seeds.rb.erb +4 -0
  355. data/generica/lib/generica/yaml_writer.rb +54 -0
  356. data/generica/lib/tasks/.keep +0 -0
  357. data/generica/lib/tasks/assets_unretardifier.rake +7 -0
  358. data/generica/lib/tasks/cloudrider.rake +7 -0
  359. data/generica/lib/tasks/elasticsearch.rake +10 -0
  360. data/generica/lib/tasks/production.rake +14 -0
  361. data/generica/lib/tasks/seeds.rake +13 -0
  362. data/generica/lib/tasks/translation.rake +7 -0
  363. data/generica/log/.keep +0 -0
  364. data/generica/public/404.html +67 -0
  365. data/generica/public/422.html +67 -0
  366. data/generica/public/500.html +66 -0
  367. data/generica/public/favicon.ico +0 -0
  368. data/generica/public/javascripts/translations.js +2 -0
  369. data/generica/public/robots.txt +5 -0
  370. data/generica/public/tests/dog.png +0 -0
  371. data/generica/public/tests/husky.png +0 -0
  372. data/generica/spec/controllers/admin/employees/create_controller_spec.rb +48 -0
  373. data/generica/spec/controllers/admin/products/create_controller_spec.rb +55 -0
  374. data/generica/spec/controllers/admin/products/update_controller_spec.rb +44 -0
  375. data/generica/spec/controllers/admin/sessions/create_controller_spec.rb +66 -0
  376. data/generica/spec/controllers/apiv1/pictures/destroy_controller_spec.rb +36 -0
  377. data/generica/spec/factories/admin/user_factory.rb +22 -0
  378. data/generica/spec/factories/apiv1/picture_factory.rb +25 -0
  379. data/generica/spec/factories/apiv1/product_factory.rb +48 -0
  380. data/generica/spec/factories/apiv1/taxon_factory.rb +40 -0
  381. data/generica/spec/factories/base_factory.rb +30 -0
  382. data/generica/spec/models/admin/pictures_factory_spec.rb +14 -0
  383. data/generica/spec/models/admin/product_factory_spec.rb +54 -0
  384. data/generica/spec/models/admin/product_modifier_spec.rb +123 -0
  385. data/generica/spec/models/apiv1/product_spec.rb +61 -0
  386. data/generica/spec/rails_helper.rb +51 -0
  387. data/generica/spec/spec_helper.rb +85 -0
  388. data/generica/vendor/assets/javascripts/.keep +0 -0
  389. data/generica/vendor/assets/stylesheets/.keep +0 -0
  390. data/lib/cloudrider.rb +4 -0
  391. data/lib/cloudrider/apiv1.rb +72 -0
  392. data/lib/cloudrider/apiv1/application_emblem.rb +12 -0
  393. data/lib/cloudrider/apiv1/application_sass.rb +31 -0
  394. data/lib/cloudrider/apiv1/base.rb +63 -0
  395. data/lib/cloudrider/apiv1/cookie_splash_component.rb +14 -0
  396. data/lib/cloudrider/apiv1/cookie_splash_sass.rb +20 -0
  397. data/lib/cloudrider/apiv1/hero_splash_component.rb +37 -0
  398. data/lib/cloudrider/apiv1/hero_splash_sass.rb +43 -0
  399. data/lib/cloudrider/apiv1/index_emblem.rb +11 -0
  400. data/lib/cloudrider/apiv1/introductory_lobby_component.rb +17 -0
  401. data/lib/cloudrider/apiv1/introductory_lobby_sass.rb +17 -0
  402. data/lib/cloudrider/apiv1/product_display_component.rb +11 -0
  403. data/lib/cloudrider/apiv1/product_display_sass.rb +11 -0
  404. data/lib/cloudrider/apiv1/product_listing_component.rb +11 -0
  405. data/lib/cloudrider/apiv1/product_listing_sass.rb +11 -0
  406. data/lib/cloudrider/apiv1/products_catalog_component.rb +11 -0
  407. data/lib/cloudrider/apiv1/products_catalog_sass.rb +11 -0
  408. data/lib/cloudrider/apiv1/products_showcase_component.rb +11 -0
  409. data/lib/cloudrider/apiv1/products_showcase_sass.rb +20 -0
  410. data/lib/cloudrider/apiv1/site_nav_component.rb +15 -0
  411. data/lib/cloudrider/apiv1/site_nav_sass.rb +11 -0
  412. data/lib/cloudrider/apiv1/table_booths_component.rb +11 -0
  413. data/lib/cloudrider/apiv1/table_booths_sass.rb +11 -0
  414. data/lib/cloudrider/application_commander.rb +119 -0
  415. data/lib/cloudrider/file_orders_maker.rb +24 -0
  416. data/lib/cloudrider/protofile.rb +9 -0
  417. data/lib/cloudrider/templates/application.emblem.erb +28 -0
  418. data/lib/cloudrider/version.rb +3 -0
  419. data/lib/generators/cloudrider/USAGE +1 -0
  420. data/lib/generators/cloudrider/backend/backend_generator.rb +49 -0
  421. data/lib/generators/cloudrider/client/client_generator.rb +110 -0
  422. data/lib/generators/cloudrider/varissets/varissets_generator.rb +35 -0
  423. data/spec/cloudrider/apiv1_base_spec.rb +46 -0
  424. data/spec/cloudrider/apiv1_spec.rb +20 -0
  425. data/spec/spec_helper.rb +1 -0
  426. metadata +555 -0
@@ -0,0 +1,2 @@
1
+ Admin::User.create! email: "test@example.co",
2
+ password: "asdf123"
File without changes
@@ -0,0 +1,4 @@
1
+ module Generica
2
+ require File.join __dir__, "generica", "seed_generator"
3
+ require File.join __dir__, "generica", "yaml_writer"
4
+ end
@@ -0,0 +1,6 @@
1
+ # File generated by yaml_writer
2
+ # <%= translations.count %> translations
3
+ <%= locale.inspect %>:
4
+ <% translations.each do |translation| %>
5
+ <%= translation.key.inspect %>: <%= translation.translated_text.inspect %>
6
+ <% end %>
@@ -0,0 +1,77 @@
1
+ en:
2
+ about: about
3
+ product: product
4
+ products: products
5
+ contact: contact
6
+ contacts: contacts
7
+ three_to_four_words: three to four words
8
+ couple_more_four_to_six_words: couple more four to six words
9
+ about_us: about us
10
+ rest_of_the_showcase: rest of the showcase
11
+ availability: availability
12
+ location: location
13
+ total_products: total products
14
+ our_team: our team
15
+ loading_employees: loading employees
16
+ or_perhaps_no_employees_have_been_listed: or perhaps no employees have been listed
17
+ contact_us: contact us
18
+ your_company: your company
19
+ company_email: company email
20
+ subject: subject
21
+ message: message
22
+ submit: submit
23
+ admin: admin
24
+ home: home
25
+ cancel: cancel
26
+ product_index: product index
27
+ browse_and_search: browse and search
28
+ material: material
29
+ form: form
30
+ Los_Angeles: Los Angeles
31
+ San_Diego: San Diego
32
+ Oakland: Oakland
33
+ Seattle: Seattle
34
+ Tacoma: Tacoma
35
+ Chicago: Chicago
36
+ Houston: Houston
37
+ New_York: New York
38
+ New_Orleans: New Orleans
39
+ Norfolk: Norfolk
40
+ Boston: Boston
41
+ Miami: Miami
42
+ virgin: virgin
43
+ natural: natural
44
+ colored: colored
45
+ black: black
46
+ blue: blue
47
+ red: red
48
+ green: green
49
+ white: white
50
+ yellow: yellow
51
+ mixed: mixed
52
+ form: form
53
+ rigid: rigid
54
+ bottle: bottle
55
+ film: film
56
+ processing: processing
57
+ none: none
58
+ admin_panel: admin panel
59
+ welcome: welcome
60
+ translations: translations
61
+ taxons: taxons
62
+ new_product: new product
63
+ edit: edit
64
+ delete: delete
65
+ keys: keys
66
+ new_translation: new translation
67
+ now_loading: now loading
68
+ query: query
69
+ locales: locales
70
+ languages: languages
71
+ language: language
72
+ price: price
73
+ quality: quality
74
+ amount: amount
75
+ quantity: quantity
76
+ place: place
77
+ translated_text: translated text
@@ -0,0 +1,119 @@
1
+ require 'tilt'
2
+ require 'erb'
3
+ require 'painful_translate'
4
+
5
+ class Generica::SeedGenerator
6
+ include Thor::Base
7
+ include Thor::Actions
8
+ def write_file
9
+ create_file _destination, _file_content
10
+ end
11
+ private
12
+ def _destination
13
+ Rails.root.join "db", "seeds", "translation_seeds.rb"
14
+ end
15
+ def _file_content
16
+ Generica::FileContentGenerator.new.contents
17
+ end
18
+ end
19
+
20
+ class Generica::FileContentGenerator
21
+ def contents
22
+ _file_contents.join "\n\n"
23
+ end
24
+ private
25
+ def _file_contents
26
+ _target_languages.map do |language|
27
+ Generica::TranslationContext.new language
28
+ end.map do |ctx|
29
+ Generica::FileMaker.new ctx
30
+ end.map do |maker|
31
+ maker.rendered_file_contents
32
+ end
33
+ end
34
+ def _target_languages
35
+ Generica::Languages.keys
36
+ end
37
+ end
38
+
39
+ class Generica::FileMaker
40
+ def initialize(context)
41
+ @context = context
42
+ end
43
+ def rendered_file_contents
44
+ _template.render @context
45
+ end
46
+ private
47
+ def _template
48
+ @template ||= Tilt::ERBTemplate.new _source
49
+ end
50
+ def _source
51
+ @source ||= File.join __dir__, "translation_seeds.rb.erb"
52
+ end
53
+ end
54
+
55
+ class Generica::TranslationContext
56
+ attr_accessor :language
57
+ def initialize(language)
58
+ @language = language
59
+ end
60
+
61
+ def translations
62
+ return _translations_for_just_english if language.to_s == "en"
63
+ _translations_for_everything_other_than_english
64
+ end
65
+ private
66
+ def _translations_for_just_english
67
+ @translations ||= _matching_keys.zip(_strings_to_translate).map do |key_and_text|
68
+ { locale: "en", key: key_and_text.first, translated_text: key_and_text.last }
69
+ end
70
+ end
71
+ def _translations_for_everything_other_than_english
72
+ @translations ||= _key_and_texts.map do |key_and_text|
73
+ { locale: language, key: key_and_text.first, translated_text: key_and_text.last }
74
+ end
75
+ end
76
+ def _key_and_texts
77
+ _matching_keys.zip _translated_texts
78
+ end
79
+ def _translated_texts
80
+ @translations = PainfulTranslate.translate _strings_to_translate, to: language, from: :en
81
+ end
82
+ def _matching_keys
83
+ Generica::StringLoader.keys
84
+ end
85
+ def _strings_to_translate
86
+ Generica::StringLoader.strings
87
+ end
88
+ end
89
+
90
+ class Generica::StringLoader
91
+ class << self
92
+ def strings
93
+ instance.strings
94
+ end
95
+ def keys
96
+ instance.keys
97
+ end
98
+ def instance
99
+ @instance ||= new
100
+ end
101
+ end
102
+ def strings
103
+ english.values
104
+ end
105
+ def keys
106
+ english.keys
107
+ end
108
+ def english
109
+ _hash["en"]
110
+ end
111
+ private
112
+ def _hash
113
+ @hash ||= YAML.load File.read Rails.root.join "lib", "generica", "seed.en.yml"
114
+ end
115
+ end
116
+
117
+ module Generica
118
+ Languages = YAML.load(File.read Rails.root.join "config", "desired_languages.yml")["languages"]
119
+ end
@@ -0,0 +1,4 @@
1
+ translations = [
2
+ <%= translations.map(&:inspect).join(",\n ") %>
3
+ ]
4
+ Apiv1::Translation.create! translations
@@ -0,0 +1,54 @@
1
+ require 'tilt'
2
+ require 'erb'
3
+ class Generica::YamlWriter
4
+ include Thor::Base
5
+ include Thor::Actions
6
+
7
+ def write_files
8
+ _known_locales.each do |locale|
9
+ create_file _destination(locale), _file_contents(locale)
10
+ end
11
+ end
12
+ private
13
+ def _known_locales
14
+ Apiv1::Translation.known_languages
15
+ end
16
+ def _destination(locale)
17
+ Rails.root.join "config", "locales", "#{locale}.yml"
18
+ end
19
+ def _file_contents(locale)
20
+ Generica::ContentWriter.new(locale).file_contents
21
+ end
22
+ end
23
+
24
+ class Generica::ContentWriter
25
+ attr_accessor :locale
26
+ def initialize(locale)
27
+ @locale = locale
28
+ end
29
+ def file_contents
30
+ _template.render _context
31
+ end
32
+ private
33
+ def _template
34
+ @template ||= Tilt::ERBTemplate.new _source
35
+ end
36
+ def _source
37
+ @source ||= File.join __dir__, "locale.yml.erb"
38
+ end
39
+ def _context
40
+ @context ||= Generica::LocaleYamlContext.new locale
41
+ end
42
+ end
43
+
44
+ class Generica::LocaleYamlContext
45
+ attr_accessor :locale
46
+ def initialize(locale)
47
+ @locale = locale
48
+ end
49
+
50
+ def translations
51
+ @translations ||= Apiv1::Translation.by_locale locale
52
+ end
53
+
54
+ end
File without changes
@@ -0,0 +1,7 @@
1
+ namespace :assets do
2
+ desc "Unretardifies all assets other than js and css files. But unretardify, I mean it removes the digest hash."
3
+ task unretardify: :environment do
4
+ require Rails.root.join "lib", "generica", "assets_unretardifier"
5
+ Generica::AssetsUnretardifier.new.unretardify!
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ require Rails.root.join "lib", "generica"
2
+ namespace :cloudrider do
3
+ desc "Creates a default seed file using the google translate api"
4
+ task make_translation_seed: :environment do
5
+ Generica::SeedGenerator.new.write_file
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ require 'elasticsearch/rails/tasks/import'
2
+
3
+ namespace :elasticsearch do
4
+
5
+ desc "Imports stuff from translations"
6
+ task simple_import: :environment do
7
+ Apiv1::Translation.import
8
+ Apiv1::Product.import
9
+ end
10
+ end
@@ -0,0 +1,14 @@
1
+ namespace :production do
2
+ desc "These tasks should be run once on a virgin fresh installation"
3
+ task virgin: :environment do
4
+
5
+ end
6
+
7
+ desc "These tasks should be run everytime you restart the server"
8
+ task on_restart: :environment do
9
+ Rake::Task["assets:clobber"].invoke
10
+ Rake::Task["assets:precompile"].invoke
11
+ Rake::Task["assets:unretardify"].invoke
12
+ Rake::Task["elasticsearch:simple_import"].invoke
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ namespace :seeds do
2
+ desc "loads the translations living in db/seeds/translation_seeds"
3
+ task translations: :environment do
4
+ require Rails.root.join "db", "seeds", "translation_seeds"
5
+ end
6
+
7
+ ["dimensions", "products", "users"].each do |seeds|
8
+ desc "seeds the database with the data living in db/seeds/#{seeds}.rb"
9
+ task seeds => :environment do
10
+ require Rails.root.join "db", "seeds", seeds
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ require Rails.root.join "lib", "generica"
2
+ namespace :translation do
3
+ desc "Dumps everything from Apiv1::Translation into writing the config/locales/*.yml files"
4
+ task write_yaml: :environment do
5
+ Generica::YamlWriter.new.write_files
6
+ end
7
+ end
File without changes
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/404.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ body {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body>
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>