lc_alchemy_cms 3.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (744) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +23 -0
  3. data/.gitignore +21 -0
  4. data/.hound.yml +2 -0
  5. data/.rspec +1 -0
  6. data/.rubocop.yml +861 -0
  7. data/.teatro.yml +7 -0
  8. data/.travis.yml +27 -0
  9. data/.yardopts +5 -0
  10. data/CODE_OF_CONDUCT.md +13 -0
  11. data/CONTRIBUTING.md +73 -0
  12. data/Gemfile +34 -0
  13. data/LICENSE +27 -0
  14. data/README.md +297 -0
  15. data/Rakefile +48 -0
  16. data/alchemy_cms.gemspec +81 -0
  17. data/app/assets/fonts/alchemy/icons.eot +0 -0
  18. data/app/assets/fonts/alchemy/icons.svg +71 -0
  19. data/app/assets/fonts/alchemy/icons.ttf +0 -0
  20. data/app/assets/fonts/alchemy/icons.woff +0 -0
  21. data/app/assets/images/alchemy/alchemy-logo.svg +70 -0
  22. data/app/assets/images/alchemy/favicon.ico +0 -0
  23. data/app/assets/images/alchemy/icon.svg +14 -0
  24. data/app/assets/images/alchemy/icons.png +0 -0
  25. data/app/assets/images/alchemy/lupe.cur +0 -0
  26. data/app/assets/images/alchemy/ui-icons_666666_256x240.png +0 -0
  27. data/app/assets/images/sassy-ie-overlay.png +0 -0
  28. data/app/assets/javascripts/alchemy/alchemy.autocomplete.js.coffee +30 -0
  29. data/app/assets/javascripts/alchemy/alchemy.base.js.coffee +142 -0
  30. data/app/assets/javascripts/alchemy/alchemy.browser.js.coffee +22 -0
  31. data/app/assets/javascripts/alchemy/alchemy.buttons.js.coffee +32 -0
  32. data/app/assets/javascripts/alchemy/alchemy.char_counter.js.coffee +19 -0
  33. data/app/assets/javascripts/alchemy/alchemy.confirm_dialog.js.coffee +85 -0
  34. data/app/assets/javascripts/alchemy/alchemy.custom.js +1 -0
  35. data/app/assets/javascripts/alchemy/alchemy.datepicker.js.coffee +31 -0
  36. data/app/assets/javascripts/alchemy/alchemy.dialog.js.coffee +266 -0
  37. data/app/assets/javascripts/alchemy/alchemy.dirty.js.coffee +70 -0
  38. data/app/assets/javascripts/alchemy/alchemy.dragndrop.js.coffee +84 -0
  39. data/app/assets/javascripts/alchemy/alchemy.element_editors.js.coffee +138 -0
  40. data/app/assets/javascripts/alchemy/alchemy.elements_window.js.coffee +89 -0
  41. data/app/assets/javascripts/alchemy/alchemy.file_progress.js.coffee +63 -0
  42. data/app/assets/javascripts/alchemy/alchemy.growler.js.coffee +27 -0
  43. data/app/assets/javascripts/alchemy/alchemy.gui.js.coffee +22 -0
  44. data/app/assets/javascripts/alchemy/alchemy.hotkeys.js.coffee +49 -0
  45. data/app/assets/javascripts/alchemy/alchemy.html5.js +22 -0
  46. data/app/assets/javascripts/alchemy/alchemy.i18n.js.coffee +26 -0
  47. data/app/assets/javascripts/alchemy/alchemy.image_cropper.js.coffee +44 -0
  48. data/app/assets/javascripts/alchemy/alchemy.initializer.js.coffee +63 -0
  49. data/app/assets/javascripts/alchemy/alchemy.jquery_loader.js +42 -0
  50. data/app/assets/javascripts/alchemy/alchemy.js +52 -0
  51. data/app/assets/javascripts/alchemy/alchemy.link_dialog.js.coffee +250 -0
  52. data/app/assets/javascripts/alchemy/alchemy.list_filter.js.coffee +49 -0
  53. data/app/assets/javascripts/alchemy/alchemy.page_sorter.js +48 -0
  54. data/app/assets/javascripts/alchemy/alchemy.preview.js.coffee +106 -0
  55. data/app/assets/javascripts/alchemy/alchemy.preview_window.js.coffee +58 -0
  56. data/app/assets/javascripts/alchemy/alchemy.sitemap.js.coffee +50 -0
  57. data/app/assets/javascripts/alchemy/alchemy.spinner.js.coffee +49 -0
  58. data/app/assets/javascripts/alchemy/alchemy.string_extension.js.coffee +11 -0
  59. data/app/assets/javascripts/alchemy/alchemy.tinymce.js.coffee +66 -0
  60. data/app/assets/javascripts/alchemy/alchemy.translations.js.coffee +132 -0
  61. data/app/assets/javascripts/alchemy/alchemy.uploader.js.coffee +102 -0
  62. data/app/assets/javascripts/alchemy/alchemy.windows.js.coffee +42 -0
  63. data/app/assets/javascripts/alchemy/menubar.js.coffee +8 -0
  64. data/app/assets/javascripts/alchemy/preview.js +1 -0
  65. data/app/assets/javascripts/tinymce/plugins/alchemy_link/plugin.min.js +19 -0
  66. data/app/assets/stylesheets/alchemy/_defaults.scss +8 -0
  67. data/app/assets/stylesheets/alchemy/_extends.scss +93 -0
  68. data/app/assets/stylesheets/alchemy/_mixins.scss +112 -0
  69. data/app/assets/stylesheets/alchemy/_variables.scss +61 -0
  70. data/app/assets/stylesheets/alchemy/admin.scss +31 -0
  71. data/app/assets/stylesheets/alchemy/archive.scss +436 -0
  72. data/app/assets/stylesheets/alchemy/base.scss +609 -0
  73. data/app/assets/stylesheets/alchemy/buttons.scss +259 -0
  74. data/app/assets/stylesheets/alchemy/custom.scss +1 -0
  75. data/app/assets/stylesheets/alchemy/dashboard.scss +104 -0
  76. data/app/assets/stylesheets/alchemy/dialogs.scss +214 -0
  77. data/app/assets/stylesheets/alchemy/elements.scss +772 -0
  78. data/app/assets/stylesheets/alchemy/errors.scss +39 -0
  79. data/app/assets/stylesheets/alchemy/flash.scss +65 -0
  80. data/app/assets/stylesheets/alchemy/form_fields.scss +89 -0
  81. data/app/assets/stylesheets/alchemy/forms.scss +193 -0
  82. data/app/assets/stylesheets/alchemy/frame.scss +301 -0
  83. data/app/assets/stylesheets/alchemy/icon-font.scss +67 -0
  84. data/app/assets/stylesheets/alchemy/icons.scss +324 -0
  85. data/app/assets/stylesheets/alchemy/jquery-ui.scss +1511 -0
  86. data/app/assets/stylesheets/alchemy/menubar.scss +81 -0
  87. data/app/assets/stylesheets/alchemy/modules.scss +33 -0
  88. data/app/assets/stylesheets/alchemy/notices.scss +64 -0
  89. data/app/assets/stylesheets/alchemy/pagination.scss +65 -0
  90. data/app/assets/stylesheets/alchemy/print.scss +34 -0
  91. data/app/assets/stylesheets/alchemy/search.scss +73 -0
  92. data/app/assets/stylesheets/alchemy/selects.scss +235 -0
  93. data/app/assets/stylesheets/alchemy/sitemap.scss +385 -0
  94. data/app/assets/stylesheets/alchemy/tables.scss +218 -0
  95. data/app/assets/stylesheets/alchemy/toolbar.scss +146 -0
  96. data/app/assets/stylesheets/alchemy/upload.scss +121 -0
  97. data/app/assets/stylesheets/tinymce/skins/alchemy/content.min.css.scss +90 -0
  98. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/readme.md +1 -0
  99. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.eot +0 -0
  100. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.svg +175 -0
  101. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.ttf +0 -0
  102. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce-small.woff +0 -0
  103. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.eot +0 -0
  104. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.svg +153 -0
  105. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.ttf +0 -0
  106. data/app/assets/stylesheets/tinymce/skins/alchemy/fonts/tinymce.woff +0 -0
  107. data/app/assets/stylesheets/tinymce/skins/alchemy/img/anchor.gif +0 -0
  108. data/app/assets/stylesheets/tinymce/skins/alchemy/img/loader.gif +0 -0
  109. data/app/assets/stylesheets/tinymce/skins/alchemy/img/object.gif +0 -0
  110. data/app/assets/stylesheets/tinymce/skins/alchemy/img/trans.gif +0 -0
  111. data/app/assets/stylesheets/tinymce/skins/alchemy/img/wline.gif +0 -0
  112. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.ie7.min.css +1 -0
  113. data/app/assets/stylesheets/tinymce/skins/alchemy/skin.min.css.scss +1810 -0
  114. data/app/controllers/alchemy/admin/attachments_controller.rb +106 -0
  115. data/app/controllers/alchemy/admin/base_controller.rb +168 -0
  116. data/app/controllers/alchemy/admin/clipboard_controller.rb +51 -0
  117. data/app/controllers/alchemy/admin/contents_controller.rb +76 -0
  118. data/app/controllers/alchemy/admin/dashboard_controller.rb +89 -0
  119. data/app/controllers/alchemy/admin/elements_controller.rb +190 -0
  120. data/app/controllers/alchemy/admin/essence_files_controller.rb +47 -0
  121. data/app/controllers/alchemy/admin/essence_pictures_controller.rb +120 -0
  122. data/app/controllers/alchemy/admin/languages_controller.rb +17 -0
  123. data/app/controllers/alchemy/admin/layoutpages_controller.rb +19 -0
  124. data/app/controllers/alchemy/admin/legacy_page_urls_controller.rb +39 -0
  125. data/app/controllers/alchemy/admin/pages_controller.rb +359 -0
  126. data/app/controllers/alchemy/admin/pictures_controller.rb +168 -0
  127. data/app/controllers/alchemy/admin/resources_controller.rb +185 -0
  128. data/app/controllers/alchemy/admin/sites_controller.rb +6 -0
  129. data/app/controllers/alchemy/admin/tags_controller.rb +76 -0
  130. data/app/controllers/alchemy/admin/trash_controller.rb +27 -0
  131. data/app/controllers/alchemy/api/base_controller.rb +19 -0
  132. data/app/controllers/alchemy/api/contents_controller.rb +35 -0
  133. data/app/controllers/alchemy/api/elements_controller.rb +29 -0
  134. data/app/controllers/alchemy/api/pages_controller.rb +32 -0
  135. data/app/controllers/alchemy/attachments_controller.rb +35 -0
  136. data/app/controllers/alchemy/base_controller.rb +106 -0
  137. data/app/controllers/alchemy/elements_controller.rb +27 -0
  138. data/app/controllers/alchemy/messages_controller.rb +114 -0
  139. data/app/controllers/alchemy/pages_controller.rb +211 -0
  140. data/app/controllers/alchemy/pictures_controller.rb +82 -0
  141. data/app/helpers/alchemy/admin/attachments_helper.rb +12 -0
  142. data/app/helpers/alchemy/admin/base_helper.rb +471 -0
  143. data/app/helpers/alchemy/admin/contents_helper.rb +113 -0
  144. data/app/helpers/alchemy/admin/elements_helper.rb +134 -0
  145. data/app/helpers/alchemy/admin/essences_helper.rb +120 -0
  146. data/app/helpers/alchemy/admin/form_helper.rb +30 -0
  147. data/app/helpers/alchemy/admin/navigation_helper.rb +238 -0
  148. data/app/helpers/alchemy/admin/pages_helper.rb +70 -0
  149. data/app/helpers/alchemy/admin/pictures_helper.rb +30 -0
  150. data/app/helpers/alchemy/admin/tags_helper.rb +102 -0
  151. data/app/helpers/alchemy/base_helper.rb +81 -0
  152. data/app/helpers/alchemy/elements_block_helper.rb +162 -0
  153. data/app/helpers/alchemy/elements_helper.rb +291 -0
  154. data/app/helpers/alchemy/essences_helper.rb +138 -0
  155. data/app/helpers/alchemy/pages_helper.rb +417 -0
  156. data/app/helpers/alchemy/url_helper.rb +76 -0
  157. data/app/mailers/alchemy/messages.rb +15 -0
  158. data/app/models/alchemy.rb +7 -0
  159. data/app/models/alchemy/attachment.rb +129 -0
  160. data/app/models/alchemy/cell.rb +94 -0
  161. data/app/models/alchemy/content.rb +255 -0
  162. data/app/models/alchemy/content/factory.rb +190 -0
  163. data/app/models/alchemy/element.rb +513 -0
  164. data/app/models/alchemy/element/definitions.rb +52 -0
  165. data/app/models/alchemy/element/presenters.rb +87 -0
  166. data/app/models/alchemy/element_to_page.rb +7 -0
  167. data/app/models/alchemy/essence_boolean.rb +19 -0
  168. data/app/models/alchemy/essence_date.rb +24 -0
  169. data/app/models/alchemy/essence_file.rb +42 -0
  170. data/app/models/alchemy/essence_html.rb +23 -0
  171. data/app/models/alchemy/essence_link.rb +20 -0
  172. data/app/models/alchemy/essence_picture.rb +152 -0
  173. data/app/models/alchemy/essence_richtext.rb +47 -0
  174. data/app/models/alchemy/essence_select.rb +18 -0
  175. data/app/models/alchemy/essence_text.rb +22 -0
  176. data/app/models/alchemy/folded_page.rb +16 -0
  177. data/app/models/alchemy/language.rb +144 -0
  178. data/app/models/alchemy/language/code.rb +22 -0
  179. data/app/models/alchemy/legacy_page_url.rb +20 -0
  180. data/app/models/alchemy/message.rb +40 -0
  181. data/app/models/alchemy/page.rb +409 -0
  182. data/app/models/alchemy/page/page_cells.rb +71 -0
  183. data/app/models/alchemy/page/page_elements.rb +272 -0
  184. data/app/models/alchemy/page/page_naming.rb +122 -0
  185. data/app/models/alchemy/page/page_natures.rb +114 -0
  186. data/app/models/alchemy/page/page_scopes.rb +95 -0
  187. data/app/models/alchemy/page/page_users.rb +58 -0
  188. data/app/models/alchemy/picture.rb +220 -0
  189. data/app/models/alchemy/picture/sweeping.rb +17 -0
  190. data/app/models/alchemy/picture/transformations.rb +256 -0
  191. data/app/models/alchemy/site.rb +91 -0
  192. data/app/models/alchemy/site/layout.rb +38 -0
  193. data/app/models/alchemy/tag.rb +24 -0
  194. data/app/models/alchemy/translations.rb +7 -0
  195. data/app/models/alchemy/translations/essence_body_updater.rb +64 -0
  196. data/app/models/alchemy/translations/translation_pusher.rb +18 -0
  197. data/app/models/alchemy/tree_node.rb +4 -0
  198. data/app/serializers/alchemy/attachment_serializer.rb +15 -0
  199. data/app/serializers/alchemy/cell_serializer.rb +18 -0
  200. data/app/serializers/alchemy/content_serializer.rb +20 -0
  201. data/app/serializers/alchemy/element_serializer.rb +20 -0
  202. data/app/serializers/alchemy/essence_boolean_serializer.rb +11 -0
  203. data/app/serializers/alchemy/essence_date_serializer.rb +11 -0
  204. data/app/serializers/alchemy/essence_file_serializer.rb +12 -0
  205. data/app/serializers/alchemy/essence_html_serializer.rb +11 -0
  206. data/app/serializers/alchemy/essence_link_serializer.rb +14 -0
  207. data/app/serializers/alchemy/essence_picture_serializer.rb +28 -0
  208. data/app/serializers/alchemy/essence_richtext_serializer.rb +12 -0
  209. data/app/serializers/alchemy/essence_select_serializer.rb +11 -0
  210. data/app/serializers/alchemy/essence_text_serializer.rb +22 -0
  211. data/app/serializers/alchemy/legacy_element_serializer.rb +17 -0
  212. data/app/serializers/alchemy/page_serializer.rb +29 -0
  213. data/app/serializers/alchemy/picture_serializer.rb +16 -0
  214. data/app/views/alchemy/_menubar.html.erb +16 -0
  215. data/app/views/alchemy/admin/attachments/_archive_overlay.html.erb +32 -0
  216. data/app/views/alchemy/admin/attachments/_attachment.html.erb +63 -0
  217. data/app/views/alchemy/admin/attachments/_file_to_assign.html.erb +15 -0
  218. data/app/views/alchemy/admin/attachments/_files_list.html.erb +39 -0
  219. data/app/views/alchemy/admin/attachments/_overlay_file_list.html.erb +11 -0
  220. data/app/views/alchemy/admin/attachments/_tag_list.html.erb +14 -0
  221. data/app/views/alchemy/admin/attachments/archive_overlay.js.erb +7 -0
  222. data/app/views/alchemy/admin/attachments/create.js.erb +11 -0
  223. data/app/views/alchemy/admin/attachments/destroy.js.erb +1 -0
  224. data/app/views/alchemy/admin/attachments/edit.html.erb +10 -0
  225. data/app/views/alchemy/admin/attachments/index.html.erb +29 -0
  226. data/app/views/alchemy/admin/attachments/new.html.erb +14 -0
  227. data/app/views/alchemy/admin/attachments/show.html.erb +3 -0
  228. data/app/views/alchemy/admin/clipboard/clear.js.erb +3 -0
  229. data/app/views/alchemy/admin/clipboard/index.html.erb +22 -0
  230. data/app/views/alchemy/admin/clipboard/insert.js.erb +19 -0
  231. data/app/views/alchemy/admin/clipboard/remove.js.erb +10 -0
  232. data/app/views/alchemy/admin/contents/_missing.html.erb +19 -0
  233. data/app/views/alchemy/admin/contents/create.js.erb +56 -0
  234. data/app/views/alchemy/admin/contents/destroy.js.erb +4 -0
  235. data/app/views/alchemy/admin/contents/new.html.erb +11 -0
  236. data/app/views/alchemy/admin/contents/order.js.erb +3 -0
  237. data/app/views/alchemy/admin/dashboard/_locked_pages.html.erb +38 -0
  238. data/app/views/alchemy/admin/dashboard/_recent_pages.html.erb +22 -0
  239. data/app/views/alchemy/admin/dashboard/_sites.html.erb +23 -0
  240. data/app/views/alchemy/admin/dashboard/_users.html.erb +19 -0
  241. data/app/views/alchemy/admin/dashboard/help.html.erb +21 -0
  242. data/app/views/alchemy/admin/dashboard/index.html.erb +44 -0
  243. data/app/views/alchemy/admin/dashboard/info.html.erb +64 -0
  244. data/app/views/alchemy/admin/elements/_add_picture.html.erb +14 -0
  245. data/app/views/alchemy/admin/elements/_element.html.erb +23 -0
  246. data/app/views/alchemy/admin/elements/_element_foot.html.erb +36 -0
  247. data/app/views/alchemy/admin/elements/_element_head.html.erb +23 -0
  248. data/app/views/alchemy/admin/elements/_new_element_form.html.erb +26 -0
  249. data/app/views/alchemy/admin/elements/_picture_gallery_editor.html.erb +24 -0
  250. data/app/views/alchemy/admin/elements/_refresh_editor.js.erb +8 -0
  251. data/app/views/alchemy/admin/elements/create.js.erb +46 -0
  252. data/app/views/alchemy/admin/elements/fold.js.erb +28 -0
  253. data/app/views/alchemy/admin/elements/index.html.erb +26 -0
  254. data/app/views/alchemy/admin/elements/list.html.erb +16 -0
  255. data/app/views/alchemy/admin/elements/new.html.erb +25 -0
  256. data/app/views/alchemy/admin/elements/order.js.erb +14 -0
  257. data/app/views/alchemy/admin/elements/trash.js.erb +12 -0
  258. data/app/views/alchemy/admin/elements/update.js.erb +28 -0
  259. data/app/views/alchemy/admin/essence_files/assign.js.erb +9 -0
  260. data/app/views/alchemy/admin/essence_files/edit.html.erb +18 -0
  261. data/app/views/alchemy/admin/essence_pictures/assign.js.erb +18 -0
  262. data/app/views/alchemy/admin/essence_pictures/crop.html.erb +50 -0
  263. data/app/views/alchemy/admin/essence_pictures/destroy.js.erb +24 -0
  264. data/app/views/alchemy/admin/essence_pictures/edit.html.erb +28 -0
  265. data/app/views/alchemy/admin/essence_pictures/save_link.js.erb +3 -0
  266. data/app/views/alchemy/admin/essence_pictures/update.js.erb +9 -0
  267. data/app/views/alchemy/admin/languages/_form.html.erb +14 -0
  268. data/app/views/alchemy/admin/languages/_language.html.erb +42 -0
  269. data/app/views/alchemy/admin/languages/_table.html.erb +37 -0
  270. data/app/views/alchemy/admin/languages/index.html.erb +23 -0
  271. data/app/views/alchemy/admin/layoutpages/_layoutpage.html.erb +63 -0
  272. data/app/views/alchemy/admin/layoutpages/edit.html.erb +15 -0
  273. data/app/views/alchemy/admin/layoutpages/index.html.erb +41 -0
  274. data/app/views/alchemy/admin/leave.html.erb +11 -0
  275. data/app/views/alchemy/admin/legacy_page_urls/_form.html.erb +5 -0
  276. data/app/views/alchemy/admin/legacy_page_urls/_label.html.erb +1 -0
  277. data/app/views/alchemy/admin/legacy_page_urls/_legacy_page_url.html.erb +13 -0
  278. data/app/views/alchemy/admin/legacy_page_urls/_new.html.erb +20 -0
  279. data/app/views/alchemy/admin/legacy_page_urls/create.js.erb +10 -0
  280. data/app/views/alchemy/admin/legacy_page_urls/destroy.js.erb +6 -0
  281. data/app/views/alchemy/admin/legacy_page_urls/update.js.erb +2 -0
  282. data/app/views/alchemy/admin/pages/_create_language_form.html.erb +54 -0
  283. data/app/views/alchemy/admin/pages/_external_link.html.erb +31 -0
  284. data/app/views/alchemy/admin/pages/_file_link.html.erb +31 -0
  285. data/app/views/alchemy/admin/pages/_form.html.erb +62 -0
  286. data/app/views/alchemy/admin/pages/_internal_link.html.erb +41 -0
  287. data/app/views/alchemy/admin/pages/_legacy_urls.html.erb +23 -0
  288. data/app/views/alchemy/admin/pages/_locked_page.html.erb +24 -0
  289. data/app/views/alchemy/admin/pages/_new_page_form.html.erb +11 -0
  290. data/app/views/alchemy/admin/pages/_page.html.erb +112 -0
  291. data/app/views/alchemy/admin/pages/_page_for_links.html.erb +45 -0
  292. data/app/views/alchemy/admin/pages/_page_status.html.erb +14 -0
  293. data/app/views/alchemy/admin/pages/_sitemap.html.erb +8 -0
  294. data/app/views/alchemy/admin/pages/_tinymce_custom_config.html.erb +13 -0
  295. data/app/views/alchemy/admin/pages/configure.html.erb +16 -0
  296. data/app/views/alchemy/admin/pages/configure_external.html.erb +33 -0
  297. data/app/views/alchemy/admin/pages/destroy.js.erb +19 -0
  298. data/app/views/alchemy/admin/pages/edit.html.erb +206 -0
  299. data/app/views/alchemy/admin/pages/flush.js.erb +2 -0
  300. data/app/views/alchemy/admin/pages/fold.js.erb +3 -0
  301. data/app/views/alchemy/admin/pages/index.html.erb +101 -0
  302. data/app/views/alchemy/admin/pages/info.html.erb +43 -0
  303. data/app/views/alchemy/admin/pages/link.html.erb +16 -0
  304. data/app/views/alchemy/admin/pages/locked.html.erb +3 -0
  305. data/app/views/alchemy/admin/pages/new.html.erb +26 -0
  306. data/app/views/alchemy/admin/pages/show.html.erb +1 -0
  307. data/app/views/alchemy/admin/pages/sort.js.erb +5 -0
  308. data/app/views/alchemy/admin/pages/unlock.js.erb +8 -0
  309. data/app/views/alchemy/admin/pages/update.js.erb +37 -0
  310. data/app/views/alchemy/admin/partials/_autocomplete_tag_list.html.erb +1 -0
  311. data/app/views/alchemy/admin/partials/_flash.html.erb +4 -0
  312. data/app/views/alchemy/admin/partials/_flash_notices.html.erb +5 -0
  313. data/app/views/alchemy/admin/partials/_language_tree_select.html.erb +11 -0
  314. data/app/views/alchemy/admin/partials/_main_navigation_entry.html.erb +12 -0
  315. data/app/views/alchemy/admin/partials/_remote_search_form.html.erb +33 -0
  316. data/app/views/alchemy/admin/partials/_routes.html.erb +25 -0
  317. data/app/views/alchemy/admin/partials/_search_form.html.erb +20 -0
  318. data/app/views/alchemy/admin/partials/_sub_navigation.html.erb +8 -0
  319. data/app/views/alchemy/admin/partials/_toolbar_button.html.erb +25 -0
  320. data/app/views/alchemy/admin/partials/_upload_form.html.erb +67 -0
  321. data/app/views/alchemy/admin/pictures/_archive.html.erb +53 -0
  322. data/app/views/alchemy/admin/pictures/_archive_overlay.html.erb +14 -0
  323. data/app/views/alchemy/admin/pictures/_filter_and_size_bar.html.erb +78 -0
  324. data/app/views/alchemy/admin/pictures/_filter_bar.html.erb +33 -0
  325. data/app/views/alchemy/admin/pictures/_overlay_picture_list.html.erb +11 -0
  326. data/app/views/alchemy/admin/pictures/_picture.html.erb +87 -0
  327. data/app/views/alchemy/admin/pictures/_picture_to_assign.html.erb +28 -0
  328. data/app/views/alchemy/admin/pictures/_tag_list.html.erb +16 -0
  329. data/app/views/alchemy/admin/pictures/archive_overlay.js.erb +8 -0
  330. data/app/views/alchemy/admin/pictures/edit.html.erb +13 -0
  331. data/app/views/alchemy/admin/pictures/edit_multiple.html.erb +30 -0
  332. data/app/views/alchemy/admin/pictures/flush.js.erb +2 -0
  333. data/app/views/alchemy/admin/pictures/index.html.erb +109 -0
  334. data/app/views/alchemy/admin/pictures/index.js.erb +3 -0
  335. data/app/views/alchemy/admin/pictures/info.html.erb +38 -0
  336. data/app/views/alchemy/admin/pictures/new.html.erb +16 -0
  337. data/app/views/alchemy/admin/pictures/show.html.erb +11 -0
  338. data/app/views/alchemy/admin/resources/_form.html.erb +13 -0
  339. data/app/views/alchemy/admin/resources/_resource.html.erb +30 -0
  340. data/app/views/alchemy/admin/resources/_table.html.erb +25 -0
  341. data/app/views/alchemy/admin/resources/edit.html.erb +1 -0
  342. data/app/views/alchemy/admin/resources/index.csv.erb +13 -0
  343. data/app/views/alchemy/admin/resources/index.html.erb +32 -0
  344. data/app/views/alchemy/admin/resources/new.html.erb +1 -0
  345. data/app/views/alchemy/admin/sites/index.html.erb +23 -0
  346. data/app/views/alchemy/admin/tags/_radio_tag.html.erb +6 -0
  347. data/app/views/alchemy/admin/tags/_tag.html.erb +30 -0
  348. data/app/views/alchemy/admin/tags/edit.html.erb +24 -0
  349. data/app/views/alchemy/admin/tags/index.html.erb +52 -0
  350. data/app/views/alchemy/admin/tags/new.html.erb +7 -0
  351. data/app/views/alchemy/admin/trash/clear.js.erb +4 -0
  352. data/app/views/alchemy/admin/trash/index.html.erb +29 -0
  353. data/app/views/alchemy/attachments/show.html.erb +1 -0
  354. data/app/views/alchemy/base/500.html.erb +26 -0
  355. data/app/views/alchemy/base/error_notice.html.erb +1 -0
  356. data/app/views/alchemy/base/error_notice.js.erb +2 -0
  357. data/app/views/alchemy/base/permission_denied.js.erb +3 -0
  358. data/app/views/alchemy/base/redirect.js.erb +12 -0
  359. data/app/views/alchemy/base/update.js.erb +5 -0
  360. data/app/views/alchemy/breadcrumb/_page.html.erb +16 -0
  361. data/app/views/alchemy/breadcrumb/_separator.html.erb +1 -0
  362. data/app/views/alchemy/breadcrumb/_wrapper.html.erb +13 -0
  363. data/app/views/alchemy/elements/_editor_not_found.html.erb +5 -0
  364. data/app/views/alchemy/elements/_view_not_found.html.erb +1 -0
  365. data/app/views/alchemy/elements/show.html.erb +1 -0
  366. data/app/views/alchemy/elements/show.js.erb +1 -0
  367. data/app/views/alchemy/essences/_essence_boolean_editor.html.erb +16 -0
  368. data/app/views/alchemy/essences/_essence_boolean_view.html.erb +3 -0
  369. data/app/views/alchemy/essences/_essence_date_editor.html.erb +19 -0
  370. data/app/views/alchemy/essences/_essence_date_view.html.erb +11 -0
  371. data/app/views/alchemy/essences/_essence_file_editor.html.erb +57 -0
  372. data/app/views/alchemy/essences/_essence_file_view.html.erb +10 -0
  373. data/app/views/alchemy/essences/_essence_html_editor.html.erb +9 -0
  374. data/app/views/alchemy/essences/_essence_html_view.html.erb +3 -0
  375. data/app/views/alchemy/essences/_essence_link_editor.html.erb +25 -0
  376. data/app/views/alchemy/essences/_essence_link_view.html.erb +11 -0
  377. data/app/views/alchemy/essences/_essence_picture_editor.html.erb +59 -0
  378. data/app/views/alchemy/essences/_essence_picture_view.html.erb +5 -0
  379. data/app/views/alchemy/essences/_essence_richtext_editor.html.erb +13 -0
  380. data/app/views/alchemy/essences/_essence_richtext_view.html.erb +5 -0
  381. data/app/views/alchemy/essences/_essence_select_editor.html.erb +25 -0
  382. data/app/views/alchemy/essences/_essence_select_view.html.erb +3 -0
  383. data/app/views/alchemy/essences/_essence_text_editor.html.erb +18 -0
  384. data/app/views/alchemy/essences/_essence_text_view.html.erb +18 -0
  385. data/app/views/alchemy/essences/shared/_essence_picture_tools.html.erb +61 -0
  386. data/app/views/alchemy/essences/shared/_linkable_essence_tools.html.erb +19 -0
  387. data/app/views/alchemy/language_links/_language.html.erb +12 -0
  388. data/app/views/alchemy/language_links/_spacer.html.erb +1 -0
  389. data/app/views/alchemy/messages/contact_form_mail.de.text.erb +12 -0
  390. data/app/views/alchemy/messages/contact_form_mail.en.text.erb +12 -0
  391. data/app/views/alchemy/messages/contact_form_mail.es.text.erb +12 -0
  392. data/app/views/alchemy/messages/new.html.erb +1 -0
  393. data/app/views/alchemy/navigation/_image_link.html.erb +14 -0
  394. data/app/views/alchemy/navigation/_link.html.erb +20 -0
  395. data/app/views/alchemy/navigation/_renderer.html.erb +30 -0
  396. data/app/views/alchemy/pages/show.html.erb +1 -0
  397. data/app/views/alchemy/pages/show.rss.builder +20 -0
  398. data/app/views/alchemy/pages/sitemap.xml.erb +6 -0
  399. data/app/views/kaminari/alchemy/_first_page.html.erb +11 -0
  400. data/app/views/kaminari/alchemy/_gap.html.erb +8 -0
  401. data/app/views/kaminari/alchemy/_last_page.html.erb +11 -0
  402. data/app/views/kaminari/alchemy/_next_page.html.erb +13 -0
  403. data/app/views/kaminari/alchemy/_page.html.erb +14 -0
  404. data/app/views/kaminari/alchemy/_paginator.html.erb +23 -0
  405. data/app/views/kaminari/alchemy/_prev_page.html.erb +13 -0
  406. data/app/views/layouts/alchemy/admin.html.erb +109 -0
  407. data/app/views/layouts/alchemy/sitemap.xml.erb +4 -0
  408. data/bin/alchemy +267 -0
  409. data/bin/rails +8 -0
  410. data/config/alchemy/config.yml +189 -0
  411. data/config/alchemy/modules.yml +88 -0
  412. data/config/initializers/dragonfly.rb +25 -0
  413. data/config/initializers/simple_form.rb +144 -0
  414. data/config/locales/alchemy.de.yml +918 -0
  415. data/config/locales/alchemy.en.yml +920 -0
  416. data/config/locales/alchemy.es.yml +958 -0
  417. data/config/locales/alchemy.fr.yml +942 -0
  418. data/config/locales/alchemy.nl.yml +921 -0
  419. data/config/locales/alchemy.ru.yml +837 -0
  420. data/config/locales/simple_form.de.yml +26 -0
  421. data/config/locales/simple_form.en.yml +25 -0
  422. data/config/locales/simple_form.es.yml +6 -0
  423. data/config/locales/simple_form.fr.yml +26 -0
  424. data/config/locales/simple_form.nl.yml +25 -0
  425. data/config/locales/simple_form.ru.yml +25 -0
  426. data/config/routes.rb +164 -0
  427. data/db/migrate/20130827094554_alchemy_two_point_six.rb +380 -0
  428. data/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +5 -0
  429. data/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +5 -0
  430. data/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +5 -0
  431. data/lib/alchemy/auth_accessors.rb +104 -0
  432. data/lib/alchemy/cache_digests/template_tracker.rb +65 -0
  433. data/lib/alchemy/config.rb +65 -0
  434. data/lib/alchemy/configuration_methods.rb +29 -0
  435. data/lib/alchemy/controller_actions.rb +138 -0
  436. data/lib/alchemy/engine.rb +104 -0
  437. data/lib/alchemy/errors.rb +82 -0
  438. data/lib/alchemy/essence.rb +232 -0
  439. data/lib/alchemy/filetypes.rb +33 -0
  440. data/lib/alchemy/forms/builder.rb +23 -0
  441. data/lib/alchemy/hints.rb +57 -0
  442. data/lib/alchemy/i18n.rb +70 -0
  443. data/lib/alchemy/kaminari/scoped_pagination_url_helper.rb +13 -0
  444. data/lib/alchemy/locale.rb +65 -0
  445. data/lib/alchemy/logger.rb +15 -0
  446. data/lib/alchemy/middleware/rescue_old_cookies.rb +27 -0
  447. data/lib/alchemy/modules.rb +75 -0
  448. data/lib/alchemy/mount_point.rb +47 -0
  449. data/lib/alchemy/name_conversions.rb +28 -0
  450. data/lib/alchemy/on_page_layout.rb +58 -0
  451. data/lib/alchemy/page_layout.rb +183 -0
  452. data/lib/alchemy/permissions.rb +221 -0
  453. data/lib/alchemy/picture_attributes.rb +29 -0
  454. data/lib/alchemy/resource.rb +238 -0
  455. data/lib/alchemy/resources_helper.rb +135 -0
  456. data/lib/alchemy/routing_constraints.rb +49 -0
  457. data/lib/alchemy/seeder.rb +53 -0
  458. data/lib/alchemy/shell.rb +102 -0
  459. data/lib/alchemy/ssl_protection.rb +30 -0
  460. data/lib/alchemy/tasks/helpers.rb +83 -0
  461. data/lib/alchemy/test_support/controller_requests.rb +73 -0
  462. data/lib/alchemy/test_support/essence_shared_examples.rb +286 -0
  463. data/lib/alchemy/test_support/factories.rb +147 -0
  464. data/lib/alchemy/test_support/integration_helpers.rb +33 -0
  465. data/lib/alchemy/tinymce.rb +68 -0
  466. data/lib/alchemy/touching.rb +41 -0
  467. data/lib/alchemy/upgrader.rb +80 -0
  468. data/lib/alchemy/upgrader/three_point_one.rb +54 -0
  469. data/lib/alchemy/upgrader/three_point_two.rb +69 -0
  470. data/lib/alchemy/upgrader/three_point_zero.rb +93 -0
  471. data/lib/alchemy/userstamp.rb +10 -0
  472. data/lib/alchemy/version.rb +7 -0
  473. data/lib/alchemy_cms.rb +5 -0
  474. data/lib/rails/generators/alchemy/base.rb +41 -0
  475. data/lib/rails/generators/alchemy/elements/elements_generator.rb +37 -0
  476. data/lib/rails/generators/alchemy/elements/templates/editor.html.erb +14 -0
  477. data/lib/rails/generators/alchemy/elements/templates/editor.html.haml +13 -0
  478. data/lib/rails/generators/alchemy/elements/templates/editor.html.slim +12 -0
  479. data/lib/rails/generators/alchemy/elements/templates/view.html.erb +27 -0
  480. data/lib/rails/generators/alchemy/elements/templates/view.html.haml +20 -0
  481. data/lib/rails/generators/alchemy/elements/templates/view.html.slim +20 -0
  482. data/lib/rails/generators/alchemy/essence/essence_generator.rb +52 -0
  483. data/lib/rails/generators/alchemy/essence/templates/editor.html.erb +17 -0
  484. data/lib/rails/generators/alchemy/essence/templates/view.html.erb +2 -0
  485. data/lib/rails/generators/alchemy/install/files/_article_editor.html.erb +5 -0
  486. data/lib/rails/generators/alchemy/install/files/_article_view.html.erb +7 -0
  487. data/lib/rails/generators/alchemy/install/files/_standard.html.erb +1 -0
  488. data/lib/rails/generators/alchemy/install/files/alchemy.de.yml +31 -0
  489. data/lib/rails/generators/alchemy/install/files/alchemy.elements.css.scss +30 -0
  490. data/lib/rails/generators/alchemy/install/files/alchemy.en.yml +31 -0
  491. data/lib/rails/generators/alchemy/install/files/alchemy.es.yml +31 -0
  492. data/lib/rails/generators/alchemy/install/files/application.html.erb +14 -0
  493. data/lib/rails/generators/alchemy/install/install_generator.rb +69 -0
  494. data/lib/rails/generators/alchemy/install/templates/elements.yml.tt +21 -0
  495. data/lib/rails/generators/alchemy/install/templates/page_layouts.yml.tt +10 -0
  496. data/lib/rails/generators/alchemy/module/module_generator.rb +30 -0
  497. data/lib/rails/generators/alchemy/module/templates/ability.rb.tt +11 -0
  498. data/lib/rails/generators/alchemy/module/templates/controller.rb.tt +2 -0
  499. data/lib/rails/generators/alchemy/module/templates/module_config.rb.tt +17 -0
  500. data/lib/rails/generators/alchemy/page_layouts/page_layouts_generator.rb +24 -0
  501. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.erb +1 -0
  502. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.haml +1 -0
  503. data/lib/rails/generators/alchemy/page_layouts/templates/layout.html.slim +1 -0
  504. data/lib/rails/generators/alchemy/site_layouts/site_layouts_generator.rb +23 -0
  505. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.erb +1 -0
  506. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.haml +1 -0
  507. data/lib/rails/generators/alchemy/site_layouts/templates/layout.html.slim +1 -0
  508. data/lib/rails/generators/alchemy/views/views_generator.rb +41 -0
  509. data/lib/rails/templates/alchemy.rb +7 -0
  510. data/lib/tasks/alchemy/convert.rake +39 -0
  511. data/lib/tasks/alchemy/db.rake +22 -0
  512. data/lib/tasks/alchemy/install.rake +61 -0
  513. data/lib/tasks/alchemy/tidy.rake +102 -0
  514. data/lib/tasks/alchemy/upgrade.rake +28 -0
  515. data/spec/controllers/admin/attachments_controller_spec.rb +211 -0
  516. data/spec/controllers/admin/base_controller_spec.rb +74 -0
  517. data/spec/controllers/admin/clipboard_controller_spec.rb +60 -0
  518. data/spec/controllers/admin/contents_controller_spec.rb +72 -0
  519. data/spec/controllers/admin/dashboard_controller_spec.rb +139 -0
  520. data/spec/controllers/admin/elements_controller_spec.rb +473 -0
  521. data/spec/controllers/admin/essence_files_controller_spec.rb +71 -0
  522. data/spec/controllers/admin/essence_pictures_controller_spec.rb +202 -0
  523. data/spec/controllers/admin/languages_controller_spec.rb +61 -0
  524. data/spec/controllers/admin/layoutpages_controller_spec.rb +27 -0
  525. data/spec/controllers/admin/pages_controller_spec.rb +553 -0
  526. data/spec/controllers/admin/pictures_controller_spec.rb +358 -0
  527. data/spec/controllers/admin/resources_controller_spec.rb +53 -0
  528. data/spec/controllers/admin/trash_controller_spec.rb +68 -0
  529. data/spec/controllers/alchemy/admin/tags_controller_spec.rb +63 -0
  530. data/spec/controllers/alchemy/api/contents_controller_spec.rb +126 -0
  531. data/spec/controllers/alchemy/api/elements_controller_spec.rb +125 -0
  532. data/spec/controllers/alchemy/api/pages_controller_spec.rb +134 -0
  533. data/spec/controllers/attachments_controller_spec.rb +64 -0
  534. data/spec/controllers/base_controller_spec.rb +51 -0
  535. data/spec/controllers/elements_controller_spec.rb +48 -0
  536. data/spec/controllers/messages_controller_spec.rb +199 -0
  537. data/spec/controllers/pages_controller_spec.rb +265 -0
  538. data/spec/controllers/pictures_controller_spec.rb +393 -0
  539. data/spec/dummy/Rakefile +6 -0
  540. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  541. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  542. data/spec/dummy/app/controllers/admin/events_controller.rb +3 -0
  543. data/spec/dummy/app/controllers/application_controller.rb +15 -0
  544. data/spec/dummy/app/controllers/login_controller.rb +5 -0
  545. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  546. data/spec/dummy/app/mailers/.gitkeep +0 -0
  547. data/spec/dummy/app/models/ability.rb +9 -0
  548. data/spec/dummy/app/models/dummy_model.rb +3 -0
  549. data/spec/dummy/app/models/dummy_user.rb +11 -0
  550. data/spec/dummy/app/models/event.rb +10 -0
  551. data/spec/dummy/app/models/location.rb +3 -0
  552. data/spec/dummy/app/views/alchemy/elements/_all_you_can_eat_editor.html.erb +11 -0
  553. data/spec/dummy/app/views/alchemy/elements/_article_editor.html.erb +10 -0
  554. data/spec/dummy/app/views/alchemy/elements/_article_view.html.erb +25 -0
  555. data/spec/dummy/app/views/alchemy/elements/_headline_editor.html.erb +1 -0
  556. data/spec/dummy/app/views/alchemy/elements/_headline_view.html.erb +1 -0
  557. data/spec/dummy/app/views/alchemy/elements/_news_view.html.erb +11 -0
  558. data/spec/dummy/app/views/alchemy/page_layouts/_standard.html.erb +14 -0
  559. data/spec/dummy/app/views/layouts/application.html.erb +17 -0
  560. data/spec/dummy/bin/bundle +3 -0
  561. data/spec/dummy/bin/rails +4 -0
  562. data/spec/dummy/bin/rake +4 -0
  563. data/spec/dummy/config.ru +4 -0
  564. data/spec/dummy/config/alchemy/cells.yml +5 -0
  565. data/spec/dummy/config/alchemy/elements.yml +112 -0
  566. data/spec/dummy/config/alchemy/page_layouts.yml +32 -0
  567. data/spec/dummy/config/application.rb +32 -0
  568. data/spec/dummy/config/boot.rb +5 -0
  569. data/spec/dummy/config/database.yml +32 -0
  570. data/spec/dummy/config/environment.rb +5 -0
  571. data/spec/dummy/config/environments/development.rb +41 -0
  572. data/spec/dummy/config/environments/production.rb +77 -0
  573. data/spec/dummy/config/environments/test.rb +43 -0
  574. data/spec/dummy/config/initializers/alchemy.rb +2 -0
  575. data/spec/dummy/config/initializers/assets.rb +11 -0
  576. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  577. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  578. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  579. data/spec/dummy/config/initializers/inflections.rb +16 -0
  580. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  581. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  582. data/spec/dummy/config/initializers/session_store.rb +3 -0
  583. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  584. data/spec/dummy/config/routes.rb +12 -0
  585. data/spec/dummy/config/secrets.yml +22 -0
  586. data/spec/dummy/db/migrate/20121026104128_create_events.rb +20 -0
  587. data/spec/dummy/db/migrate/20130328101418_create_locations.rb +9 -0
  588. data/spec/dummy/db/migrate/20130827094554_alchemy_two_point_six.rb +380 -0
  589. data/spec/dummy/db/migrate/20130828121054_remove_do_not_index_from_alchemy_essence_texts.rb +5 -0
  590. data/spec/dummy/db/migrate/20130828121120_remove_do_not_index_from_alchemy_essence_richtexts.rb +5 -0
  591. data/spec/dummy/db/migrate/20130918201742_add_published_at_to_alchemy_pages.rb +5 -0
  592. data/spec/dummy/db/migrate/20131209225243_create_dummy_users.rb +9 -0
  593. data/spec/dummy/db/migrate/20150122213511_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +31 -0
  594. data/spec/dummy/db/migrate/20150122213512_add_missing_unique_indices.acts_as_taggable_on_engine.rb +20 -0
  595. data/spec/dummy/db/migrate/20150122213513_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +15 -0
  596. data/spec/dummy/db/migrate/20150122213514_add_missing_taggable_index.acts_as_taggable_on_engine.rb +10 -0
  597. data/spec/dummy/db/migrate/20150412103152_create_dummy_model.rb +7 -0
  598. data/spec/dummy/db/schema.rb +322 -0
  599. data/spec/dummy/db/seeds.rb +1 -0
  600. data/spec/dummy/lib/assets/.gitkeep +0 -0
  601. data/spec/dummy/public/404.html +67 -0
  602. data/spec/dummy/public/422.html +67 -0
  603. data/spec/dummy/public/500.html +66 -0
  604. data/spec/dummy/public/favicon.ico +0 -0
  605. data/spec/features/admin/dashboard_spec.rb +82 -0
  606. data/spec/features/admin/language_tree_feature_spec.rb +33 -0
  607. data/spec/features/admin/legacy_page_url_management_spec.rb +62 -0
  608. data/spec/features/admin/link_overlay_spec.rb +54 -0
  609. data/spec/features/admin/locale_select_feature_spec.rb +25 -0
  610. data/spec/features/admin/modules_integration_spec.rb +24 -0
  611. data/spec/features/admin/navigation_feature_spec.rb +13 -0
  612. data/spec/features/admin/page_creation_feature_spec.rb +51 -0
  613. data/spec/features/admin/page_editing_feature_spec.rb +135 -0
  614. data/spec/features/admin/picture_library_integration_spec.rb +62 -0
  615. data/spec/features/admin/resources_integration_spec.rb +133 -0
  616. data/spec/features/admin/site_select_feature_spec.rb +32 -0
  617. data/spec/features/admin/tinymce_feature_spec.rb +34 -0
  618. data/spec/features/navigation_spec.rb +9 -0
  619. data/spec/features/page_feature_spec.rb +287 -0
  620. data/spec/features/picture_security_spec.rb +35 -0
  621. data/spec/features/security_spec.rb +24 -0
  622. data/spec/features/translation_integration_spec.rb +51 -0
  623. data/spec/fixtures/500x500.png +0 -0
  624. data/spec/fixtures/80x60.png +0 -0
  625. data/spec/fixtures/image with spaces.png +0 -0
  626. data/spec/fixtures/image.png +0 -0
  627. data/spec/fixtures/image2.PNG +0 -0
  628. data/spec/fixtures/image3.jpeg +0 -0
  629. data/spec/helpers/admin/attachments_helper_spec.rb +15 -0
  630. data/spec/helpers/admin/base_helper_spec.rb +270 -0
  631. data/spec/helpers/admin/contents_helper_spec.rb +65 -0
  632. data/spec/helpers/admin/elements_helper_spec.rb +178 -0
  633. data/spec/helpers/admin/essences_helper_spec.rb +140 -0
  634. data/spec/helpers/admin/navigation_helper_spec.rb +288 -0
  635. data/spec/helpers/admin/pages_helper_spec.rb +95 -0
  636. data/spec/helpers/admin/pictures_helper_spec.rb +29 -0
  637. data/spec/helpers/admin/tags_helper_spec.rb +113 -0
  638. data/spec/helpers/base_helper_spec.rb +45 -0
  639. data/spec/helpers/elements_block_helper_spec.rb +135 -0
  640. data/spec/helpers/elements_helper_spec.rb +311 -0
  641. data/spec/helpers/essences_helper_spec.rb +156 -0
  642. data/spec/helpers/pages_helper_spec.rb +413 -0
  643. data/spec/helpers/picture_url_helpers_spec.rb +35 -0
  644. data/spec/helpers/url_helper_spec.rb +174 -0
  645. data/spec/javascripts/alchemy/dialog_spec.coffee +82 -0
  646. data/spec/javascripts/alchemy/link_overlay_spec.coffee +25 -0
  647. data/spec/javascripts/alchemy_integration_spec.coffee +3 -0
  648. data/spec/javascripts/fixtures/select.html +3 -0
  649. data/spec/javascripts/helpers/mock-ajax.js +199 -0
  650. data/spec/javascripts/helpers/test_responses/test_responses.js +1 -0
  651. data/spec/javascripts/support/jasmine.yml +29 -0
  652. data/spec/libraries/auth_accessors_spec.rb +40 -0
  653. data/spec/libraries/config_spec.rb +112 -0
  654. data/spec/libraries/controller_actions_spec.rb +133 -0
  655. data/spec/libraries/i18n_spec.rb +30 -0
  656. data/spec/libraries/kaminari/scoped_pagination_url_helper_spec.rb +30 -0
  657. data/spec/libraries/modules_spec.rb +67 -0
  658. data/spec/libraries/mount_point_spec.rb +77 -0
  659. data/spec/libraries/on_page_layout_spec.rb +112 -0
  660. data/spec/libraries/page_layout_spec.rb +144 -0
  661. data/spec/libraries/permissions_spec.rb +261 -0
  662. data/spec/libraries/resource_spec.rb +371 -0
  663. data/spec/libraries/resources_helper_spec.rb +144 -0
  664. data/spec/libraries/shell_spec.rb +125 -0
  665. data/spec/libraries/template_tracker_spec.rb +94 -0
  666. data/spec/libraries/tinymce_spec.rb +67 -0
  667. data/spec/libraries/userstamp_spec.rb +10 -0
  668. data/spec/mailers/messages_spec.rb +23 -0
  669. data/spec/models/attachment_spec.rb +227 -0
  670. data/spec/models/cell_spec.rb +102 -0
  671. data/spec/models/content_spec.rb +404 -0
  672. data/spec/models/dummy_model_spec.rb +11 -0
  673. data/spec/models/element_spec.rb +617 -0
  674. data/spec/models/element_to_page_spec.rb +14 -0
  675. data/spec/models/essence_boolean_spec.rb +10 -0
  676. data/spec/models/essence_date_spec.rb +29 -0
  677. data/spec/models/essence_file_spec.rb +43 -0
  678. data/spec/models/essence_html_spec.rb +18 -0
  679. data/spec/models/essence_link_spec.rb +10 -0
  680. data/spec/models/essence_picture_spec.rb +183 -0
  681. data/spec/models/essence_richtext_spec.rb +18 -0
  682. data/spec/models/essence_select_spec.rb +10 -0
  683. data/spec/models/essence_text_spec.rb +114 -0
  684. data/spec/models/language_spec.rb +123 -0
  685. data/spec/models/legacy_page_url_spec.rb +21 -0
  686. data/spec/models/message_spec.rb +55 -0
  687. data/spec/models/page_spec.rb +1896 -0
  688. data/spec/models/picture_spec.rb +330 -0
  689. data/spec/models/site_spec.rb +233 -0
  690. data/spec/models/tag_spec.rb +31 -0
  691. data/spec/routing/api_routing_spec.rb +150 -0
  692. data/spec/routing/routing_spec.rb +234 -0
  693. data/spec/spec_helper.rb +89 -0
  694. data/spec/support/ci/install_phantomjs +7 -0
  695. data/spec/support/hint_examples.rb +30 -0
  696. data/spec/support/rspec-activemodel-mocks_patch.rb +8 -0
  697. data/spec/support/test_tweaks.rb +31 -0
  698. data/spec/support/transformation_examples.rb +180 -0
  699. data/spec/tasks/helpers_spec.rb +219 -0
  700. data/spec/views/essences/essence_boolean_editor_spec.rb +33 -0
  701. data/spec/views/essences/essence_boolean_view_spec.rb +25 -0
  702. data/spec/views/essences/essence_date_view_spec.rb +39 -0
  703. data/spec/views/essences/essence_file_editor_spec.rb +61 -0
  704. data/spec/views/essences/essence_file_view_spec.rb +24 -0
  705. data/spec/views/essences/essence_html_view_spec.rb +22 -0
  706. data/spec/views/essences/essence_link_view_spec.rb +41 -0
  707. data/spec/views/essences/essence_picture_view_spec.rb +129 -0
  708. data/spec/views/essences/essence_richtext_view_spec.rb +32 -0
  709. data/spec/views/essences/essence_select_view_spec.rb +12 -0
  710. data/spec/views/essences/essence_text_view_spec.rb +52 -0
  711. data/vendor/assets/images/Jcrop.gif +0 -0
  712. data/vendor/assets/javascripts/fileupload/jquery.fileupload-process.js +175 -0
  713. data/vendor/assets/javascripts/fileupload/jquery.fileupload-validate.js +122 -0
  714. data/vendor/assets/javascripts/fileupload/jquery.fileupload.js +1467 -0
  715. data/vendor/assets/javascripts/fileupload/jquery.iframe-transport.js +217 -0
  716. data/vendor/assets/javascripts/jquery_plugins/jquery.Jcrop.min.js +22 -0
  717. data/vendor/assets/javascripts/jquery_plugins/jquery.floatThead.min.js +3 -0
  718. data/vendor/assets/javascripts/jquery_plugins/jquery.scrollTo.min.js +7 -0
  719. data/vendor/assets/javascripts/jquery_plugins/jquery.ui.nestedSortable.js +435 -0
  720. data/vendor/assets/javascripts/jquery_plugins/jquery.ui.tabspaging.js +296 -0
  721. data/vendor/assets/javascripts/keymaster.js +296 -0
  722. data/vendor/assets/javascripts/requestAnimationFrame.js +31 -0
  723. data/vendor/assets/javascripts/spin.min.js +1 -0
  724. data/vendor/assets/javascripts/tinymce/langs/de.js +200 -0
  725. data/vendor/assets/javascripts/tinymce/langs/es.js +200 -0
  726. data/vendor/assets/javascripts/tinymce/langs/fr.js +200 -0
  727. data/vendor/assets/javascripts/tinymce/langs/nl.js +200 -0
  728. data/vendor/assets/javascripts/tinymce/langs/ru.js +200 -0
  729. data/vendor/assets/javascripts/tinymce/license.txt +504 -0
  730. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.min.js +1 -0
  731. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.min.js +1 -0
  732. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.min.js +1 -0
  733. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.min.js +1 -0
  734. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.min.js +1 -0
  735. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.min.js +1 -0
  736. data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.min.js +1 -0
  737. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.min.js +1 -0
  738. data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.min.js +1 -0
  739. data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.min.js +1 -0
  740. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.min.js +1 -0
  741. data/vendor/assets/javascripts/tinymce/themes/modern/theme.min.js +1 -0
  742. data/vendor/assets/javascripts/tinymce/tinymce.min.js +13 -0
  743. data/vendor/assets/stylesheets/jquery.Jcrop.min.css +28 -0
  744. metadata +1453 -0
@@ -0,0 +1,67 @@
1
+ @font-face {
2
+ font-family: 'Alchemy Icons';
3
+ src: font-url('alchemy/icons.eot');
4
+ src: font-url('alchemy/icons.eot?#iefix') format('embedded-opentype'),
5
+ font-url('alchemy/icons.woff') format('woff'),
6
+ font-url('alchemy/icons.ttf') format('truetype'),
7
+ font-url('alchemy/icons.svg#Alchemy-Icons') format('svg');
8
+ font-weight: normal;
9
+ font-style: normal;
10
+ }
11
+
12
+ .icon-plus,
13
+ .icon-minus,
14
+ .icon-cross,
15
+ .icon-plus-2,
16
+ .icon-minus-2,
17
+ .icon-pencil,
18
+ .icon-tag,
19
+ .icon-info,
20
+ .icon-warning,
21
+ .icon-checkmark,
22
+ .icon-ccw,
23
+ .icon-trash,
24
+ .icon-cross-2,
25
+ .icon-pictures,
26
+ .icon-menu,
27
+ .icon-magnifying-glass,
28
+ .icon-fullscreen-exit,
29
+ .icon-help,
30
+ .icon-fullscreen,
31
+ .icon-cog {
32
+ font-family: 'Alchemy Icons';
33
+ speak: none;
34
+ font-size: 12px;
35
+ font-style: normal;
36
+ font-weight: normal;
37
+ font-variant: normal;
38
+ text-transform: none;
39
+ text-decoration: none;
40
+ -webkit-font-smoothing: antialiased;
41
+ width: 16px;
42
+ color: #666;
43
+ text-align: center;
44
+ line-height: 1em;
45
+ @include inline-block;
46
+ }
47
+
48
+ .icon-plus:before { content: "\e000" }
49
+ .icon-minus:before { content: "\e001" }
50
+ .icon-cross:before { content: "\e004" }
51
+ .icon-plus-2:before { content: "\e005" }
52
+ .icon-minus-2:before { content: "\e006" }
53
+ .icon-pencil:before { content: "\e007" }
54
+ .icon-tag:before { content: "\e034" }
55
+ .icon-info:before { content: "\e008" }
56
+ .icon-warning:before { content: "\e009" }
57
+ .icon-checkmark:before { content: "\e00a" }
58
+ .icon-ccw:before { content: "\e00b" }
59
+ .icon-trash:before { content: "\f014" }
60
+ .icon-cross-2:before { content: "\e00e" }
61
+ .icon-pictures:before { content: "\e00f" }
62
+ .icon-menu:before { content: "\e010" }
63
+ .icon-magnifying-glass:before { content: "\e011" }
64
+ .icon-fullscreen-exit:before { content: "\e01e" }
65
+ .icon-help:before { content: "\e00c" }
66
+ .icon-fullscreen:before { content: "\e01d" }
67
+ .icon-cog:before { content: "\f013" }
@@ -0,0 +1,324 @@
1
+ .icon {
2
+ @include inline-block;
3
+ background: image-url('alchemy/icons.png') no-repeat;
4
+ width: 16px;
5
+ height: 16px;
6
+
7
+ &.add {
8
+ background: none;
9
+ @extend .icon-plus-2;
10
+ line-height: 1em;
11
+ font-size: 19px;
12
+ }
13
+
14
+ &.add_page {
15
+ background-position: -96px -40px;
16
+ }
17
+
18
+ &.archive {
19
+ background-position: -416px -136px;
20
+ }
21
+
22
+ &.audio {
23
+ background-position: -192px -136px;
24
+ }
25
+
26
+ &.back {
27
+ background: none;
28
+ line-height: 14px;
29
+ font-size: 20px;
30
+ font-weight: bold;
31
+ color: #666;
32
+
33
+ &:before {
34
+ content: '\00ab';
35
+ }
36
+ }
37
+
38
+ &.blank {
39
+ background: transparent;
40
+ }
41
+
42
+ &.clipboard {
43
+ background-position: -288px -104px;
44
+
45
+ &.full {
46
+ background-position: -320px -104px;
47
+ }
48
+ }
49
+
50
+ &.close {
51
+ background-position: -416px -39px;
52
+
53
+ &.small {
54
+ background: none;
55
+ @extend .icon-cross;
56
+ line-height: 0;
57
+ }
58
+ }
59
+
60
+ &.collapse.small {
61
+ background-position: -512px -106px;
62
+ }
63
+
64
+ &.configure_page {
65
+ background-position: -320px -40px;
66
+ }
67
+
68
+ &.copy_page {
69
+ background-position: -544px -40px;
70
+ }
71
+
72
+ &.create {
73
+ background-position: -191px -168px;
74
+ }
75
+
76
+ &.crop {
77
+ background-position: -256px -72px;
78
+ }
79
+
80
+ &.delete_page {
81
+ background-position: -64px -40px;
82
+ }
83
+
84
+ &.delete-small {
85
+ background-position: -1px -72px;
86
+ }
87
+
88
+ &.destroy {
89
+ background-position: -224px -169px;
90
+ }
91
+
92
+ &.edit {
93
+ background-position: -160px -168px;
94
+ }
95
+
96
+ &.element, &.clipboard_elements {
97
+ background-position: -224px -72px;
98
+ }
99
+
100
+ &.element_draft {
101
+ background-position: 1px -70px;
102
+ }
103
+
104
+ &.element_public {
105
+ background-position: -94px -166px;
106
+ }
107
+
108
+ &.element_window {
109
+ background-position: -512px -72px;
110
+ }
111
+
112
+ &.error {
113
+ background-position: -32px -168px;
114
+ }
115
+
116
+ &.excel {
117
+ background-position: -353px -136px;
118
+ }
119
+
120
+ &.expand.small {
121
+ background-position: -498px -106px;
122
+ }
123
+
124
+ &.false {
125
+ background-image: none;
126
+ }
127
+
128
+ &.file {
129
+ background-position: 0 -40px;
130
+ }
131
+
132
+ &.file_delete {
133
+ background-position: -64px -40px;
134
+ }
135
+
136
+ &.file_download, &.download {
137
+ background-position: -480px -136px;
138
+ }
139
+
140
+ &.file_edit {
141
+ background-position: -32px -40px;
142
+ }
143
+
144
+ &.flash {
145
+ background-position: -256px -136px;
146
+ }
147
+
148
+ &.flush {
149
+ background-position: -352px -39px;
150
+ }
151
+
152
+ &.hint {
153
+ background-position: -446px -105px;
154
+ }
155
+
156
+ &.image {
157
+ background-position: -224px -136px;
158
+ }
159
+
160
+ &.info {
161
+ background-position: -64px -168px;
162
+ }
163
+
164
+ &.language {
165
+ background-position: 0 -120px;
166
+ }
167
+
168
+ &.language_add {
169
+ background-position: -47px -120px;
170
+ }
171
+
172
+ &.language_delete {
173
+ background-position: -16px -120px;
174
+ }
175
+
176
+ &.language_edit {
177
+ background-position: -32px -120px;
178
+ }
179
+
180
+ &.link {
181
+ background-position: -320px -72px;
182
+ }
183
+
184
+ &.new_element {
185
+ background-position: -384px -40px;
186
+ }
187
+
188
+ &.offline {
189
+ background-position: -255px -105px;
190
+ }
191
+
192
+ &.online {
193
+ background-position: -224px -105px;
194
+ }
195
+
196
+ &.page, &.clipboard_pages {
197
+ background-position: 0 -40px;
198
+ }
199
+
200
+ &.pdf {
201
+ background-position: -161px -136px;
202
+ }
203
+
204
+ &.preview_window {
205
+ background-position: -448px -40px;
206
+ }
207
+
208
+ &.psd {
209
+ background-position: -128px -136px;
210
+ }
211
+
212
+ &.publish {
213
+ background-position: -64px -136px;
214
+ }
215
+
216
+ &.rtf {
217
+ background-position: -320px -136px;
218
+ }
219
+
220
+ &.search {
221
+ background: none;
222
+ padding-top: 2px;
223
+ @extend .icon-magnifying-glass;
224
+ }
225
+
226
+ &.select_all {
227
+ background-position: -256px -168px;
228
+ }
229
+
230
+ &.settings {
231
+ background-position: -320px -40px;
232
+ }
233
+
234
+ &.sort {
235
+ background-position: -128px -168px;
236
+ }
237
+
238
+ &.swap_picture {
239
+ background-position: -288px -72px;
240
+ }
241
+
242
+ &.sync, &.reload {
243
+ background-position: -96px -136px;
244
+ }
245
+
246
+ &.tag_add {
247
+ background-position: -384px -168px;
248
+ }
249
+
250
+ &.tag {
251
+ background-position: -288px -168px;
252
+ }
253
+
254
+ &.tag_label {
255
+ background: none;
256
+ @extend .icon-tag;
257
+ }
258
+
259
+ &.tag_edit {
260
+ background-position: -352px -168px;
261
+ }
262
+
263
+ &.tag_delete {
264
+ background-position: -320px -168px;
265
+ }
266
+
267
+ &.text {
268
+ background-position: -448px -136px;
269
+ }
270
+
271
+ &.tick, &.true, &.notice, &.ok {
272
+ background-position: -32px -73px;
273
+ }
274
+
275
+ &.trash {
276
+ background-position: -352px -104px;
277
+
278
+ &.full {
279
+ background-position: -384px -104px;
280
+ }
281
+ }
282
+
283
+ &.unlink {
284
+ background-position: -352px -72px;
285
+ }
286
+
287
+ &.upload {
288
+ background-position: 0 -136px;
289
+ }
290
+
291
+ &.vcard {
292
+ background-position: -416px -104px;
293
+ }
294
+
295
+ &.video {
296
+ background-position: -288px -136px;
297
+ }
298
+
299
+ &.visit_page {
300
+ background-position: -31px -135px;
301
+ }
302
+
303
+ &.warning, &.warn, &.alert {
304
+ background-position: 0 -168px;
305
+
306
+ &.inline { vertical-align: baseline; }
307
+ }
308
+
309
+ &.word {
310
+ background-position: -385px -136px;
311
+ }
312
+
313
+ &.zoom-equal {
314
+ background-position: -448px -72px;
315
+ }
316
+
317
+ &.zoom-in {
318
+ background-position: -480px -72px;
319
+ }
320
+
321
+ &.zoom-out {
322
+ background-position: -416px -72px;
323
+ }
324
+ }
@@ -0,0 +1,1511 @@
1
+ /*
2
+ * jQuery UI CSS Framework 1.8.7
3
+ *
4
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
5
+ * Dual licensed under the MIT or GPL Version 2 licenses.
6
+ * http://jquery.org/license
7
+ *
8
+ * http://docs.jquery.com/UI/Theming/API
9
+ */
10
+
11
+ /* Layout helpers
12
+ ----------------------------------*/
13
+
14
+ .ui-helper-hidden {
15
+ display: none;
16
+ }
17
+
18
+ .ui-helper-hidden-accessible {
19
+ position: absolute !important;
20
+ clip: rect(1px 1px 1px 1px);
21
+ clip: rect(1px, 1px, 1px, 1px);
22
+ }
23
+
24
+ .ui-helper-reset {
25
+ margin: 0;
26
+ padding: 0;
27
+ border: 0;
28
+ outline: 0;
29
+ line-height: 1.3;
30
+ text-decoration: none;
31
+ font-size: 100%;
32
+ list-style: none;
33
+ }
34
+
35
+ .ui-helper-clearfix:after {
36
+ content: ".";
37
+ display: block;
38
+ height: 0;
39
+ clear: both;
40
+ visibility: hidden;
41
+ }
42
+
43
+ .ui-helper-clearfix {
44
+ @include inline-block;
45
+ }
46
+
47
+ /* required comment for clearfix to work in Opera \*/
48
+
49
+ * html .ui-helper-clearfix {
50
+ height: 1%;
51
+ }
52
+
53
+ .ui-helper-clearfix {
54
+ display: block;
55
+ }
56
+
57
+ /* end clearfix */
58
+
59
+ .ui-helper-zfix {
60
+ width: 100%;
61
+ height: 100%;
62
+ top: 0;
63
+ left: 0;
64
+ position: absolute;
65
+ opacity: 0;
66
+ filter: Alpha(Opacity = 0);
67
+ }
68
+
69
+ /* Interaction Cues
70
+ ----------------------------------*/
71
+
72
+ .ui-state-disabled {
73
+ cursor: default !important;
74
+ }
75
+
76
+ /* Icons
77
+ ----------------------------------*/
78
+
79
+ /* states and images */
80
+
81
+ .ui-icon {
82
+ display: block;
83
+ text-indent: -99999px;
84
+ overflow: hidden;
85
+ background-repeat: no-repeat;
86
+ }
87
+
88
+ /* Misc visuals
89
+ ----------------------------------*/
90
+
91
+ /* Overlays */
92
+
93
+ .ui-widget-overlay {
94
+ position: absolute;
95
+ top: 0;
96
+ left: 0;
97
+ width: 100%;
98
+ height: 100%;
99
+ z-index: 9;
100
+ }
101
+
102
+ /*
103
+ * jQuery UI CSS Framework 1.8.7
104
+ *
105
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
106
+ * Dual licensed under the MIT or GPL Version 2 licenses.
107
+ * http://jquery.org/license
108
+ *
109
+ * http://docs.jquery.com/UI/Theming/API
110
+ *
111
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande,%20Lucida%20Sans,%20Arial,%20sans-serif&fwDefault=normal&fsDefault=12px&cornerRadius=3px&bgColorHeader=b2ccdb&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=100&borderColorHeader=afafaf&fcHeader=333333&iconColorHeader=666666&bgColorContent=ededed&bgTextureContent=01_flat.png&bgImgOpacityContent=0&borderColorContent=afafaf&fcContent=333333&iconColorContent=333333&bgColorDefault=ededed&bgTextureDefault=04_highlight_hard.png&bgImgOpacityDefault=100&borderColorDefault=c0c0c0&fcDefault=333333&iconColorDefault=333333&bgColorHover=e6f0f5&bgTextureHover=04_highlight_hard.png&bgImgOpacityHover=100&borderColorHover=888888&fcHover=666666&iconColorHover=666666&bgColorActive=b2ccdb&bgTextureActive=04_highlight_hard.png&bgImgOpacityActive=80&borderColorActive=afafaf&fcActive=333333&iconColorActive=333333&bgColorHighlight=ffef8f&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=25&borderColorHighlight=f9dd34&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=cd0a0a&bgTextureError=01_flat.png&bgImgOpacityError=15&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffffff&bgColorOverlay=666666&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=100&opacityOverlay=60&bgColorShadow=000000&bgTextureShadow=01_flat.png&bgImgOpacityShadow=70&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=3px
112
+ */
113
+
114
+ /* Component containers
115
+ ----------------------------------*/
116
+
117
+ .ui-widget {
118
+ font-family: $default-font-face;
119
+ font-size: $default-font-size;
120
+ }
121
+
122
+ .ui-widget .ui-widget {
123
+ font-size: 1em;
124
+ }
125
+
126
+ .ui-widget-content {
127
+ border: $default-border;
128
+ background-color: $light-gray;
129
+ color: $text-color;
130
+ }
131
+
132
+ .ui-widget-content a {
133
+ color: $text-color;
134
+
135
+ &:hover { color: #000 }
136
+ }
137
+
138
+ .ui-widget-header {
139
+ border: 1px none #afafaf;
140
+ background: $light-blue;
141
+ color: $text-color;
142
+ font-weight: bold;
143
+ -moz-border-radius-bottomleft: 0 !important;
144
+ -webkit-border-bottom-left-radius: 0 !important;
145
+ -moz-border-radius-bottomright: 0 !important;
146
+ -webkit-border-bottom-right-radius: 0 !important;
147
+ border-bottom-left-radius: 0;
148
+ border-bottom-right-radius: 0;
149
+ }
150
+
151
+ .ui-widget-header a {
152
+ color: $text-color;
153
+ }
154
+
155
+ /* Interaction states
156
+ ----------------------------------*/
157
+
158
+ .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
159
+ border: 1px solid $button-border-color;
160
+ background-color: #ededed;
161
+ font-weight: normal;
162
+ color: $text-color;
163
+ text-shadow: $button-text-shadow;
164
+ }
165
+
166
+ .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited {
167
+ color: $text-color;
168
+ text-decoration: none;
169
+ }
170
+
171
+ .ui-state-hover a, .ui-state-hover a:hover {
172
+ color: $dark-gray;
173
+ text-decoration: none;
174
+ }
175
+
176
+ .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active {
177
+ color: $text-color;
178
+ text-decoration: none;
179
+ text-shadow: none;
180
+ background-color: $button-hover-bg-color;
181
+ }
182
+
183
+ .ui-state-active.stNav.stNext {
184
+ background-color: $light-gray;
185
+ margin: 0 -3px 0 0;
186
+ border: 0 solid #cacaca;
187
+ border-left-width: 1px;
188
+ border-top-width: 1px;
189
+ }
190
+
191
+ .ui-state-active.stNav.stPrev {
192
+ background-color: $light-gray;
193
+ margin: 0 0 0 -3px;
194
+ border: 0 solid #cacaca;
195
+ border-top-width: 1px;
196
+ border-left-width: 0;
197
+ border-right-width: 1px;
198
+ border-bottom-width: 0;
199
+ }
200
+
201
+ .stNav .ui-icon {
202
+ position: relative;
203
+ top: 7px;
204
+ }
205
+
206
+ .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
207
+ color: $text-color;
208
+ text-decoration: none;
209
+ }
210
+
211
+ .ui-widget :active {
212
+ outline: none;
213
+ }
214
+
215
+ /* Interaction Cues
216
+ ----------------------------------*/
217
+
218
+ .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
219
+ border: 1px solid $dark-gray;
220
+ background: $light-blue;
221
+ color: $text-color;
222
+ }
223
+
224
+ .ui-state-highlight a, .ui-widget-content .ui-state-highlight a, .ui-widget-header .ui-state-highlight a {
225
+ color: $text-color;
226
+ }
227
+
228
+ .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {
229
+ border: 1px solid #cd0a0a;
230
+ background: #cd0a0a;
231
+ color: #ffffff;
232
+ }
233
+
234
+ .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a {
235
+ color: #ffffff;
236
+ }
237
+
238
+ .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text {
239
+ color: #ffffff;
240
+ }
241
+
242
+ .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary {
243
+ font-weight: normal;
244
+ }
245
+
246
+ .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary {
247
+ font-weight: normal;
248
+ }
249
+
250
+ .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
251
+ @include opacity(.35);
252
+ background-image: none;
253
+ }
254
+
255
+ /* Icons
256
+ ----------------------------------*/
257
+
258
+ /* states and images */
259
+
260
+ .ui-icon {
261
+ width: 16px;
262
+ height: 16px;
263
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
264
+ }
265
+
266
+ .ui-widget-content .ui-icon {
267
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
268
+ }
269
+
270
+ .ui-widget-header .ui-icon {
271
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
272
+ }
273
+
274
+ .ui-state-default .ui-icon {
275
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
276
+ }
277
+
278
+ .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {
279
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
280
+ }
281
+
282
+ .ui-state-active .ui-icon {
283
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
284
+ }
285
+
286
+ .ui-state-highlight .ui-icon {
287
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
288
+ }
289
+
290
+ .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {
291
+ background-image: image-url('alchemy/ui-icons_666666_256x240.png');
292
+ }
293
+
294
+ /* positioning */
295
+
296
+ .ui-icon-carat-1-n {
297
+ background-position: 0 0;
298
+ }
299
+
300
+ .ui-icon-carat-1-ne {
301
+ background-position: -16px 0;
302
+ }
303
+
304
+ .ui-icon-carat-1-e {
305
+ background-position: -32px 0;
306
+ }
307
+
308
+ .ui-icon-carat-1-se {
309
+ background-position: -48px 0;
310
+ }
311
+
312
+ .ui-icon-carat-1-s {
313
+ background-position: -64px 0;
314
+ }
315
+
316
+ .ui-icon-carat-1-sw {
317
+ background-position: -80px 0;
318
+ }
319
+
320
+ .ui-icon-carat-1-w {
321
+ background-position: -96px 0;
322
+ }
323
+
324
+ .ui-icon-carat-1-nw {
325
+ background-position: -112px 0;
326
+ }
327
+
328
+ .ui-icon-carat-2-n-s {
329
+ background-position: -128px 0;
330
+ }
331
+
332
+ .ui-icon-carat-2-e-w {
333
+ background-position: -144px 0;
334
+ }
335
+
336
+ .ui-icon-triangle-1-n {
337
+ background-position: 0 -16px;
338
+ }
339
+
340
+ .ui-icon-triangle-1-ne {
341
+ background-position: -16px -16px;
342
+ }
343
+
344
+ .ui-icon-triangle-1-e {
345
+ background-position: -32px -16px;
346
+ }
347
+
348
+ .ui-icon-triangle-1-se {
349
+ background-position: -48px -16px;
350
+ }
351
+
352
+ .ui-icon-triangle-1-s {
353
+ background-position: -64px -16px;
354
+ }
355
+
356
+ .ui-icon-triangle-1-sw {
357
+ background-position: -80px -16px;
358
+ }
359
+
360
+ .ui-icon-triangle-1-w {
361
+ background-position: -96px -16px;
362
+ }
363
+
364
+ .ui-icon-triangle-1-nw {
365
+ background-position: -112px -16px;
366
+ }
367
+
368
+ .ui-icon-triangle-2-n-s {
369
+ background-position: -128px -16px;
370
+ }
371
+
372
+ .ui-icon-triangle-2-e-w {
373
+ background-position: -144px -16px;
374
+ }
375
+
376
+ .ui-icon-arrow-1-n {
377
+ background-position: 0 -32px;
378
+ }
379
+
380
+ .ui-icon-arrow-1-ne {
381
+ background-position: -16px -32px;
382
+ }
383
+
384
+ .ui-icon-arrow-1-e {
385
+ background-position: -32px -32px;
386
+ }
387
+
388
+ .ui-icon-arrow-1-se {
389
+ background-position: -48px -32px;
390
+ }
391
+
392
+ .ui-icon-arrow-1-s {
393
+ background-position: -64px -32px;
394
+ }
395
+
396
+ .ui-icon-arrow-1-sw {
397
+ background-position: -80px -32px;
398
+ }
399
+
400
+ .ui-icon-arrow-1-w {
401
+ background-position: -96px -32px;
402
+ }
403
+
404
+ .ui-icon-arrow-1-nw {
405
+ background-position: -112px -32px;
406
+ }
407
+
408
+ .ui-icon-arrow-2-n-s {
409
+ background-position: -128px -32px;
410
+ }
411
+
412
+ .ui-icon-arrow-2-ne-sw {
413
+ background-position: -144px -32px;
414
+ }
415
+
416
+ .ui-icon-arrow-2-e-w {
417
+ background-position: -160px -32px;
418
+ }
419
+
420
+ .ui-icon-arrow-2-se-nw {
421
+ background-position: -176px -32px;
422
+ }
423
+
424
+ .ui-icon-arrowstop-1-n {
425
+ background-position: -192px -32px;
426
+ }
427
+
428
+ .ui-icon-arrowstop-1-e {
429
+ background-position: -208px -32px;
430
+ }
431
+
432
+ .ui-icon-arrowstop-1-s {
433
+ background-position: -224px -32px;
434
+ }
435
+
436
+ .ui-icon-arrowstop-1-w {
437
+ background-position: -240px -32px;
438
+ }
439
+
440
+ .ui-icon-arrowthick-1-n {
441
+ background-position: 0 -48px;
442
+ }
443
+
444
+ .ui-icon-arrowthick-1-ne {
445
+ background-position: -16px -48px;
446
+ }
447
+
448
+ .ui-icon-arrowthick-1-e {
449
+ background-position: -32px -48px;
450
+ }
451
+
452
+ .ui-icon-arrowthick-1-se {
453
+ background-position: -48px -48px;
454
+ }
455
+
456
+ .ui-icon-arrowthick-1-s {
457
+ background-position: -64px -48px;
458
+ }
459
+
460
+ .ui-icon-arrowthick-1-sw {
461
+ background-position: -80px -48px;
462
+ }
463
+
464
+ .ui-icon-arrowthick-1-w {
465
+ background-position: -96px -48px;
466
+ }
467
+
468
+ .ui-icon-arrowthick-1-nw {
469
+ background-position: -112px -48px;
470
+ }
471
+
472
+ .ui-icon-arrowthick-2-n-s {
473
+ background-position: -128px -48px;
474
+ }
475
+
476
+ .ui-icon-arrowthick-2-ne-sw {
477
+ background-position: -144px -48px;
478
+ }
479
+
480
+ .ui-icon-arrowthick-2-e-w {
481
+ background-position: -160px -48px;
482
+ }
483
+
484
+ .ui-icon-arrowthick-2-se-nw {
485
+ background-position: -176px -48px;
486
+ }
487
+
488
+ .ui-icon-arrowthickstop-1-n {
489
+ background-position: -192px -48px;
490
+ }
491
+
492
+ .ui-icon-arrowthickstop-1-e {
493
+ background-position: -208px -48px;
494
+ }
495
+
496
+ .ui-icon-arrowthickstop-1-s {
497
+ background-position: -224px -48px;
498
+ }
499
+
500
+ .ui-icon-arrowthickstop-1-w {
501
+ background-position: -240px -48px;
502
+ }
503
+
504
+ .ui-icon-arrowreturnthick-1-w {
505
+ background-position: 0 -64px;
506
+ }
507
+
508
+ .ui-icon-arrowreturnthick-1-n {
509
+ background-position: -16px -64px;
510
+ }
511
+
512
+ .ui-icon-arrowreturnthick-1-e {
513
+ background-position: -32px -64px;
514
+ }
515
+
516
+ .ui-icon-arrowreturnthick-1-s {
517
+ background-position: -48px -64px;
518
+ }
519
+
520
+ .ui-icon-arrowreturn-1-w {
521
+ background-position: -64px -64px;
522
+ }
523
+
524
+ .ui-icon-arrowreturn-1-n {
525
+ background-position: -80px -64px;
526
+ }
527
+
528
+ .ui-icon-arrowreturn-1-e {
529
+ background-position: -96px -64px;
530
+ }
531
+
532
+ .ui-icon-arrowreturn-1-s {
533
+ background-position: -112px -64px;
534
+ }
535
+
536
+ .ui-icon-arrowrefresh-1-w {
537
+ background-position: -128px -64px;
538
+ }
539
+
540
+ .ui-icon-arrowrefresh-1-n {
541
+ background-position: -144px -64px;
542
+ }
543
+
544
+ .ui-icon-arrowrefresh-1-e {
545
+ background-position: -160px -64px;
546
+ }
547
+
548
+ .ui-icon-arrowrefresh-1-s {
549
+ background-position: -176px -64px;
550
+ }
551
+
552
+ .ui-icon-arrow-4 {
553
+ background-position: 0 -80px;
554
+ }
555
+
556
+ .ui-icon-arrow-4-diag {
557
+ background-position: -16px -80px;
558
+ }
559
+
560
+ .ui-icon-extlink {
561
+ background-position: -32px -80px;
562
+ }
563
+
564
+ .ui-icon-newwin {
565
+ background-position: -48px -80px;
566
+ }
567
+
568
+ .ui-icon-refresh {
569
+ background: none !important;
570
+ @extend .icon-ccw;
571
+
572
+ &:before {
573
+ text-indent: 0;
574
+ position: absolute;
575
+ right: 4px;
576
+ top: 3px;
577
+ }
578
+ }
579
+
580
+ .ui-icon-fullscreen {
581
+ background: none !important;
582
+ position: relative;
583
+ @extend .icon-fullscreen;
584
+
585
+ &:before {
586
+ text-indent: 0;
587
+ position: absolute;
588
+ right: 2px;
589
+ top: 2px;
590
+ font-size: 10px;
591
+ }
592
+ }
593
+
594
+ .ui-icon-exit-fullscreen {
595
+ background: none !important;
596
+ position: relative;
597
+ @extend .icon-fullscreen-exit;
598
+
599
+ &:before {
600
+ text-indent: 0;
601
+ position: absolute;
602
+ right: 1px;
603
+ top: 2px;
604
+ }
605
+ }
606
+
607
+ .ui-icon-shuffle {
608
+ background-position: -80px -80px;
609
+ }
610
+
611
+ .ui-icon-transfer-e-w {
612
+ background-position: -96px -80px;
613
+ }
614
+
615
+ .ui-icon-transferthick-e-w {
616
+ background-position: -112px -80px;
617
+ }
618
+
619
+ .ui-icon-folder-collapsed {
620
+ background-position: 0 -96px;
621
+ }
622
+
623
+ .ui-icon-folder-open {
624
+ background-position: -16px -96px;
625
+ }
626
+
627
+ .ui-icon-document {
628
+ background-position: -32px -96px;
629
+ }
630
+
631
+ .ui-icon-document-b {
632
+ background-position: -48px -96px;
633
+ }
634
+
635
+ .ui-icon-note {
636
+ background-position: -64px -96px;
637
+ }
638
+
639
+ .ui-icon-mail-closed {
640
+ background-position: -80px -96px;
641
+ }
642
+
643
+ .ui-icon-mail-open {
644
+ background-position: -96px -96px;
645
+ }
646
+
647
+ .ui-icon-suitcase {
648
+ background-position: -112px -96px;
649
+ }
650
+
651
+ .ui-icon-comment {
652
+ background-position: -128px -96px;
653
+ }
654
+
655
+ .ui-icon-person {
656
+ background-position: -144px -96px;
657
+ }
658
+
659
+ .ui-icon-print {
660
+ background-position: -160px -96px;
661
+ }
662
+
663
+ .ui-icon-trash {
664
+ background-position: -176px -96px;
665
+ }
666
+
667
+ .ui-icon-locked {
668
+ background-position: -192px -96px;
669
+ }
670
+
671
+ .ui-icon-unlocked {
672
+ background-position: -208px -96px;
673
+ }
674
+
675
+ .ui-icon-bookmark {
676
+ background-position: -224px -96px;
677
+ }
678
+
679
+ .ui-icon-tag {
680
+ background-position: -240px -96px;
681
+ }
682
+
683
+ .ui-icon-home {
684
+ background-position: 0 -112px;
685
+ }
686
+
687
+ .ui-icon-flag {
688
+ background-position: -16px -112px;
689
+ }
690
+
691
+ .ui-icon-calendar {
692
+ background-position: -32px -112px;
693
+ }
694
+
695
+ .ui-icon-cart {
696
+ background-position: -48px -112px;
697
+ }
698
+
699
+ .ui-icon-pencil {
700
+ background-position: -64px -112px;
701
+ }
702
+
703
+ .ui-icon-clock {
704
+ background-position: -80px -112px;
705
+ }
706
+
707
+ .ui-icon-disk {
708
+ background-position: -96px -112px;
709
+ }
710
+
711
+ .ui-icon-calculator {
712
+ background-position: -112px -112px;
713
+ }
714
+
715
+ .ui-icon-zoomin {
716
+ background-position: -128px -112px;
717
+ }
718
+
719
+ .ui-icon-zoomout {
720
+ background-position: -144px -112px;
721
+ }
722
+
723
+ .ui-icon-search {
724
+ background-position: -160px -112px;
725
+ }
726
+
727
+ .ui-icon-wrench {
728
+ background-position: -176px -112px;
729
+ }
730
+
731
+ .ui-icon-gear {
732
+ background-position: -192px -112px;
733
+ }
734
+
735
+ .ui-icon-heart {
736
+ background-position: -208px -112px;
737
+ }
738
+
739
+ .ui-icon-star {
740
+ background-position: -224px -112px;
741
+ }
742
+
743
+ .ui-icon-link {
744
+ background-position: -240px -112px;
745
+ }
746
+
747
+ .ui-icon-cancel {
748
+ background-position: 0 -128px;
749
+ }
750
+
751
+ .ui-icon-plus {
752
+ background-position: -16px -128px;
753
+ }
754
+
755
+ .ui-icon-plusthick {
756
+ background-position: -32px -128px;
757
+ }
758
+
759
+ .ui-icon-minus {
760
+ background-position: -48px -128px;
761
+ }
762
+
763
+ .ui-icon-minusthick {
764
+ background-position: -64px -128px;
765
+ }
766
+
767
+ .ui-icon-close {
768
+ background-position: -80px -128px;
769
+ }
770
+
771
+ .ui-icon-closethick {
772
+ background: none !important;
773
+ position: relative;
774
+ @extend .icon-cross;
775
+
776
+ &:before {
777
+ text-indent: 0;
778
+ position: absolute;
779
+ left: 1px;
780
+ top: 3px;
781
+ font-size: 16px;
782
+ }
783
+ }
784
+
785
+ .ui-icon-key {
786
+ background-position: -112px -128px;
787
+ }
788
+
789
+ .ui-icon-lightbulb {
790
+ background-position: -128px -128px;
791
+ }
792
+
793
+ .ui-icon-scissors {
794
+ background-position: -144px -128px;
795
+ }
796
+
797
+ .ui-icon-clipboard {
798
+ background-position: -160px -128px;
799
+ }
800
+
801
+ .ui-icon-copy {
802
+ background-position: -176px -128px;
803
+ }
804
+
805
+ .ui-icon-contact {
806
+ background-position: -192px -128px;
807
+ }
808
+
809
+ .ui-icon-image {
810
+ background-position: -208px -128px;
811
+ }
812
+
813
+ .ui-icon-video {
814
+ background-position: -224px -128px;
815
+ }
816
+
817
+ .ui-icon-script {
818
+ background-position: -240px -128px;
819
+ }
820
+
821
+ .ui-icon-alert {
822
+ background-position: 0 -144px;
823
+ }
824
+
825
+ .ui-icon-info {
826
+ background-position: -16px -144px;
827
+ }
828
+
829
+ .ui-icon-notice {
830
+ background-position: -32px -144px;
831
+ }
832
+
833
+ .ui-icon-help {
834
+ background-position: -48px -144px;
835
+ }
836
+
837
+ .ui-icon-check {
838
+ background-position: -64px -144px;
839
+ }
840
+
841
+ .ui-icon-bullet {
842
+ background-position: -80px -144px;
843
+ }
844
+
845
+ .ui-icon-radio-off {
846
+ background-position: -96px -144px;
847
+ }
848
+
849
+ .ui-icon-radio-on {
850
+ background-position: -112px -144px;
851
+ }
852
+
853
+ .ui-icon-pin-w {
854
+ background-position: -128px -144px;
855
+ }
856
+
857
+ .ui-icon-pin-s {
858
+ background-position: -144px -144px;
859
+ }
860
+
861
+ .ui-icon-play {
862
+ background-position: 0 -160px;
863
+ }
864
+
865
+ .ui-icon-pause {
866
+ background-position: -16px -160px;
867
+ }
868
+
869
+ .ui-icon-seek-next {
870
+ background-position: -32px -160px;
871
+ }
872
+
873
+ .ui-icon-seek-prev {
874
+ background-position: -48px -160px;
875
+ }
876
+
877
+ .ui-icon-seek-end {
878
+ background-position: -64px -160px;
879
+ }
880
+
881
+ .ui-icon-seek-start {
882
+ background-position: -80px -160px;
883
+ }
884
+
885
+ /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
886
+
887
+ .ui-icon-seek-first {
888
+ background-position: -80px -160px;
889
+ }
890
+
891
+ .ui-icon-stop {
892
+ background-position: -96px -160px;
893
+ }
894
+
895
+ .ui-icon-eject {
896
+ background-position: -112px -160px;
897
+ }
898
+
899
+ .ui-icon-volume-off {
900
+ background-position: -128px -160px;
901
+ }
902
+
903
+ .ui-icon-volume-on {
904
+ background-position: -144px -160px;
905
+ }
906
+
907
+ .ui-icon-power {
908
+ background-position: 0 -176px;
909
+ }
910
+
911
+ .ui-icon-signal-diag {
912
+ background-position: -16px -176px;
913
+ }
914
+
915
+ .ui-icon-signal {
916
+ background-position: -32px -176px;
917
+ }
918
+
919
+ .ui-icon-battery-0 {
920
+ background-position: -48px -176px;
921
+ }
922
+
923
+ .ui-icon-battery-1 {
924
+ background-position: -64px -176px;
925
+ }
926
+
927
+ .ui-icon-battery-2 {
928
+ background-position: -80px -176px;
929
+ }
930
+
931
+ .ui-icon-battery-3 {
932
+ background-position: -96px -176px;
933
+ }
934
+
935
+ .ui-icon-circle-plus {
936
+ background-position: 0 -192px;
937
+ }
938
+
939
+ .ui-icon-circle-minus {
940
+ background-position: -16px -192px;
941
+ }
942
+
943
+ .ui-icon-circle-close {
944
+ background-position: -32px -192px;
945
+ }
946
+
947
+ .ui-icon-circle-triangle-e {
948
+ background-position: -48px -192px;
949
+ }
950
+
951
+ .ui-icon-circle-triangle-s {
952
+ background-position: -64px -192px;
953
+ }
954
+
955
+ .ui-icon-circle-triangle-w {
956
+ background-position: -80px -192px;
957
+ }
958
+
959
+ .ui-icon-circle-triangle-n {
960
+ background-position: -96px -192px;
961
+ }
962
+
963
+ .ui-icon-circle-arrow-e {
964
+ background-position: -112px -192px;
965
+ }
966
+
967
+ .ui-icon-circle-arrow-s {
968
+ background-position: -128px -192px;
969
+ }
970
+
971
+ .ui-icon-circle-arrow-w {
972
+ background-position: -144px -192px;
973
+ }
974
+
975
+ .ui-icon-circle-arrow-n {
976
+ background-position: -160px -192px;
977
+ }
978
+
979
+ .ui-icon-circle-zoomin {
980
+ background-position: -176px -192px;
981
+ }
982
+
983
+ .ui-icon-circle-zoomout {
984
+ background-position: -192px -192px;
985
+ }
986
+
987
+ .ui-icon-circle-check {
988
+ background-position: -208px -192px;
989
+ }
990
+
991
+ .ui-icon-circlesmall-plus {
992
+ background-position: 0 -208px;
993
+ }
994
+
995
+ .ui-icon-circlesmall-minus {
996
+ background-position: -16px -208px;
997
+ }
998
+
999
+ .ui-icon-circlesmall-close {
1000
+ background-position: -32px -208px;
1001
+ }
1002
+
1003
+ .ui-icon-squaresmall-plus {
1004
+ background-position: -48px -208px;
1005
+ }
1006
+
1007
+ .ui-icon-squaresmall-minus {
1008
+ background-position: -64px -208px;
1009
+ }
1010
+
1011
+ .ui-icon-squaresmall-close {
1012
+ background-position: -80px -208px;
1013
+ }
1014
+
1015
+ .ui-icon-grip-dotted-vertical {
1016
+ background-position: 0 -224px;
1017
+ }
1018
+
1019
+ .ui-icon-grip-dotted-horizontal {
1020
+ background-position: -16px -224px;
1021
+ }
1022
+
1023
+ .ui-icon-grip-solid-vertical {
1024
+ background-position: -32px -224px;
1025
+ }
1026
+
1027
+ .ui-icon-grip-solid-horizontal {
1028
+ background-position: -48px -224px;
1029
+ }
1030
+
1031
+ .ui-icon-gripsmall-diagonal-se {
1032
+ background-position: -64px -224px;
1033
+ }
1034
+
1035
+ .ui-icon-grip-diagonal-se {
1036
+ background-position: -80px -224px;
1037
+ }
1038
+
1039
+ /* Misc visuals
1040
+ ----------------------------------*/
1041
+
1042
+ /* Corner radius */
1043
+
1044
+ .ui-corner-tl {
1045
+ -moz-border-radius-topleft: 3px;
1046
+ -webkit-border-top-left-radius: 3px;
1047
+ border-top-left-radius: 3px;
1048
+ }
1049
+
1050
+ .ui-corner-tr {
1051
+ -moz-border-radius-topright: 3px;
1052
+ -webkit-border-top-right-radius: 3px;
1053
+ border-top-right-radius: 3px;
1054
+ }
1055
+
1056
+ .ui-corner-bl {
1057
+ -moz-border-radius-bottomleft: 3px;
1058
+ -webkit-border-bottom-left-radius: 3px;
1059
+ border-bottom-left-radius: 3px;
1060
+ }
1061
+
1062
+ .ui-corner-br {
1063
+ -moz-border-radius-bottomright: 3px;
1064
+ -webkit-border-bottom-right-radius: 3px;
1065
+ border-bottom-right-radius: 3px;
1066
+ }
1067
+
1068
+ .ui-corner-top {
1069
+ -moz-border-radius-topleft: 3px;
1070
+ -webkit-border-top-left-radius: 3px;
1071
+ border-top-left-radius: 3px;
1072
+ -moz-border-radius-topright: 3px;
1073
+ -webkit-border-top-right-radius: 3px;
1074
+ border-top-right-radius: 3px;
1075
+ }
1076
+
1077
+ .ui-corner-bottom {
1078
+ -moz-border-radius-bottomleft: 3px;
1079
+ -webkit-border-bottom-left-radius: 3px;
1080
+ border-bottom-left-radius: 3px;
1081
+ -moz-border-radius-bottomright: 3px;
1082
+ -webkit-border-bottom-right-radius: 3px;
1083
+ border-bottom-right-radius: 3px;
1084
+ }
1085
+
1086
+ .ui-corner-right {
1087
+ -moz-border-radius-topright: 3px;
1088
+ -webkit-border-top-right-radius: 3px;
1089
+ border-top-right-radius: 3px;
1090
+ -moz-border-radius-bottomright: 3px;
1091
+ -webkit-border-bottom-right-radius: 3px;
1092
+ border-bottom-right-radius: 3px;
1093
+ }
1094
+
1095
+ .ui-corner-left {
1096
+ -moz-border-radius-topleft: 3px;
1097
+ -webkit-border-top-left-radius: 3px;
1098
+ border-top-left-radius: 3px;
1099
+ -moz-border-radius-bottomleft: 3px;
1100
+ -webkit-border-bottom-left-radius: 3px;
1101
+ border-bottom-left-radius: 3px;
1102
+ }
1103
+
1104
+ .ui-corner-all {
1105
+ -moz-border-radius: 3px;
1106
+ -webkit-border-radius: 3px;
1107
+ border-radius: 3px;
1108
+ }
1109
+
1110
+ /*
1111
+ * jQuery UI Tabs 1.8.7
1112
+ *
1113
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
1114
+ * Dual licensed under the MIT or GPL Version 2 licenses.
1115
+ * http://jquery.org/license
1116
+ *
1117
+ * http://docs.jquery.com/UI/Tabs#theming
1118
+ */
1119
+
1120
+ .ui-tabs {
1121
+ position: relative;
1122
+ padding: 0;
1123
+ zoom: 1;
1124
+ margin: 0;
1125
+ border-style: none;
1126
+ border-width: 0;
1127
+ }
1128
+
1129
+ /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed') */
1130
+
1131
+ .ui-tabs .ui-tabs-nav {
1132
+ padding: 4px 8px 0;
1133
+ background: transparent;
1134
+ @include border-radius(0);
1135
+ border-bottom: $default-border;
1136
+ margin: 0;
1137
+ }
1138
+
1139
+ .ui-tabs .ui-tabs-nav li {
1140
+ list-style: none;
1141
+ float: left;
1142
+ position: relative;
1143
+ top: 1px;
1144
+ margin: 0 .2em 1px 0;
1145
+ border-color: $default-border-color;
1146
+ border-bottom: 0 !important;
1147
+ @include border-bottom-radius(0);
1148
+ padding: 0;
1149
+ white-space: nowrap;
1150
+ background-color: $medium-gray;
1151
+ font-weight: normal;
1152
+
1153
+ &.ui-tabs-active {
1154
+ background-color: $light-gray;
1155
+ margin-bottom: 0px;
1156
+ height: 28px;
1157
+
1158
+ a { cursor: default }
1159
+ }
1160
+ }
1161
+
1162
+ .ui-tabs .ui-tabs-nav li a {
1163
+ float: left;
1164
+ text-decoration: none;
1165
+ padding: 6px 12px 5px;
1166
+ }
1167
+
1168
+ .ui-tabs .ui-tabs-nav li.ui-tabs-selected {
1169
+ margin-bottom: 0;
1170
+ padding-bottom: 1px;
1171
+ background: $light-gray;
1172
+ }
1173
+
1174
+ .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a {
1175
+ cursor: default;
1176
+ }
1177
+
1178
+ .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a {
1179
+ cursor: pointer;
1180
+ }
1181
+
1182
+ /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
1183
+
1184
+ .ui-tabs .ui-tabs-panel {
1185
+ display: block;
1186
+ border-width: 0;
1187
+ background: none;
1188
+ }
1189
+
1190
+ .ui-tabs .ui-tabs-hide {
1191
+ display: none !important;
1192
+ }
1193
+
1194
+ /* UI Tabs Paging */
1195
+
1196
+ .ui-tabs li.ui-tabs-paging-next {
1197
+ float: right !important;
1198
+ padding: 0 !important;
1199
+ }
1200
+
1201
+ .ui-tabs .ui-tabs-nav .ui-tabs-paging-prev,
1202
+ .ui-tabs .ui-tabs-nav .ui-tabs-paging-next {
1203
+ height: 26px;
1204
+ }
1205
+
1206
+ .ui-tabs .ui-tabs-nav .ui-tabs-paging-prev a,
1207
+ .ui-tabs .ui-tabs-nav .ui-tabs-paging-next a {
1208
+ display: block;
1209
+ position: relative;
1210
+ top: 1px;
1211
+ border: 0;
1212
+ z-index: 2;
1213
+ padding: 5px;
1214
+ color: #444;
1215
+ text-decoration: none;
1216
+ background: #eee;
1217
+ cursor: pointer;
1218
+ }
1219
+
1220
+ .ui-tabs .ui-tabs-paging-next a:hover,
1221
+ .ui-tabs .ui-tabs-paging-next a:focus,
1222
+ .ui-tabs .ui-tabs-paging-next a:active,
1223
+ .ui-tabs .ui-tabs-paging-prev a:hover,
1224
+ .ui-tabs .ui-tabs-paging-prev a:focus,
1225
+ .ui-tabs .ui-tabs-paging-prev a:active {
1226
+ background: #eee;
1227
+ }
1228
+
1229
+ .ui-tabs .ui-tabs-nav .ui-tabs-paging-disabled {
1230
+ visibility: hidden;
1231
+ }
1232
+
1233
+ /*
1234
+ * jQuery UI Datepicker 1.8.7
1235
+ *
1236
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
1237
+ * Dual licensed under the MIT or GPL Version 2 licenses.
1238
+ * http://jquery.org/license
1239
+ *
1240
+ * http://docs.jquery.com/UI/Datepicker#theming
1241
+ */
1242
+
1243
+ .ui-datepicker {
1244
+ width: 17em;
1245
+ padding: $default-padding;
1246
+ display: none;
1247
+
1248
+ select {
1249
+ height: 20px;
1250
+ padding: 1px;
1251
+ }
1252
+ }
1253
+
1254
+ .ui-datepicker .ui-datepicker-header {
1255
+ position: relative;
1256
+ padding: $default-padding;
1257
+ margin: -$default-padding;
1258
+ }
1259
+
1260
+ .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
1261
+ position: absolute;
1262
+ top: $default-padding;
1263
+ width: 1.8em;
1264
+ height: 1.8em;
1265
+ }
1266
+
1267
+ .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
1268
+ top: $default-padding;
1269
+ }
1270
+
1271
+ .ui-datepicker .ui-datepicker-prev {
1272
+ left: $default-padding;
1273
+ }
1274
+
1275
+ .ui-datepicker .ui-datepicker-next {
1276
+ right: $default-padding;
1277
+ }
1278
+
1279
+ .ui-datepicker .ui-datepicker-prev-hover {
1280
+ top: $default-padding - 1;
1281
+ left: $default-padding - 1;
1282
+ }
1283
+
1284
+ .ui-datepicker .ui-datepicker-next-hover {
1285
+ top: $default-padding - 1;
1286
+ right: $default-padding - 1;
1287
+ }
1288
+
1289
+ .ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
1290
+ display: block;
1291
+ position: absolute;
1292
+ left: 50%;
1293
+ margin-left: -8px;
1294
+ top: 50%;
1295
+ margin-top: -8px;
1296
+ }
1297
+
1298
+ .ui-datepicker .ui-datepicker-title {
1299
+ margin: 0 2.3em;
1300
+ line-height: 1.8em;
1301
+ text-align: center;
1302
+ }
1303
+
1304
+ .ui-datepicker .ui-datepicker-title select {
1305
+ font-size: 1em;
1306
+ margin: 1px 0;
1307
+ }
1308
+
1309
+ .ui-datepicker select.ui-datepicker-month-year {
1310
+ width: 100%;
1311
+ }
1312
+
1313
+ .ui-datepicker select.ui-datepicker-month,
1314
+ .ui-datepicker select.ui-datepicker-year {
1315
+ width: 49%;
1316
+ }
1317
+
1318
+ .ui-datepicker table {
1319
+ width: 100%;
1320
+ font-size: 1em;
1321
+ border-collapse: collapse;
1322
+ margin: 0 0 .4em;
1323
+ }
1324
+
1325
+ .ui-datepicker th {
1326
+ padding: .7em .3em;
1327
+ text-align: center;
1328
+ font-weight: bold;
1329
+ border: 0;
1330
+ }
1331
+
1332
+ .ui-datepicker td {
1333
+ border: 0;
1334
+ padding: 1px;
1335
+ }
1336
+
1337
+ .ui-datepicker td.ui-datepicker-week-col {
1338
+ padding-left: $default-padding;
1339
+ }
1340
+
1341
+ .ui-datepicker td.ui-datepicker-current-day {
1342
+ background-color: $dark-gray;
1343
+ }
1344
+
1345
+ .ui-datepicker td span, .ui-datepicker td a {
1346
+ display: block;
1347
+ padding: .2em;
1348
+ text-align: right;
1349
+ text-decoration: none;
1350
+ }
1351
+
1352
+ .ui-datepicker .ui-datepicker-buttonpane {
1353
+ background-image: none;
1354
+ margin: .7em 0 0 0;
1355
+ padding: 0 .2em;
1356
+ border-left: 0;
1357
+ border-right: 0;
1358
+ border-bottom: 0;
1359
+ }
1360
+
1361
+ .ui-datepicker .ui-datepicker-buttonpane button {
1362
+ float: right;
1363
+ margin: .5em .2em .4em;
1364
+ cursor: pointer;
1365
+ padding: .2em .6em .3em .6em;
1366
+ width: auto;
1367
+ overflow: visible;
1368
+ }
1369
+
1370
+ .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
1371
+ float: left;
1372
+ }
1373
+
1374
+ /* with multiple calendars */
1375
+
1376
+ .ui-datepicker.ui-datepicker-multi {
1377
+ width: auto;
1378
+ }
1379
+
1380
+ .ui-datepicker-multi .ui-datepicker-group {
1381
+ float: left;
1382
+ }
1383
+
1384
+ .ui-datepicker-multi .ui-datepicker-group table {
1385
+ width: 95%;
1386
+ margin: 0 auto .4em;
1387
+ }
1388
+
1389
+ .ui-datepicker-multi-2 .ui-datepicker-group {
1390
+ width: 50%;
1391
+ }
1392
+
1393
+ .ui-datepicker-multi-3 .ui-datepicker-group {
1394
+ width: 33.3%;
1395
+ }
1396
+
1397
+ .ui-datepicker-multi-4 .ui-datepicker-group {
1398
+ width: 25%;
1399
+ }
1400
+
1401
+ .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header {
1402
+ border-left-width: 0;
1403
+ }
1404
+
1405
+ .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
1406
+ border-left-width: 0;
1407
+ }
1408
+
1409
+ .ui-datepicker-multi .ui-datepicker-buttonpane {
1410
+ clear: left;
1411
+ }
1412
+
1413
+ .ui-datepicker-row-break {
1414
+ clear: both;
1415
+ width: 100%;
1416
+ }
1417
+
1418
+ /* RTL support */
1419
+
1420
+ .ui-datepicker-rtl {
1421
+ direction: rtl;
1422
+ }
1423
+
1424
+ .ui-datepicker-rtl .ui-datepicker-prev {
1425
+ right: 2px;
1426
+ left: auto;
1427
+ }
1428
+
1429
+ .ui-datepicker-rtl .ui-datepicker-next {
1430
+ left: 2px;
1431
+ right: auto;
1432
+ }
1433
+
1434
+ .ui-datepicker-rtl .ui-datepicker-prev:hover {
1435
+ right: 1px;
1436
+ left: auto;
1437
+ }
1438
+
1439
+ .ui-datepicker-rtl .ui-datepicker-next:hover {
1440
+ left: 1px;
1441
+ right: auto;
1442
+ }
1443
+
1444
+ .ui-datepicker-rtl .ui-datepicker-buttonpane {
1445
+ clear: right;
1446
+ }
1447
+
1448
+ .ui-datepicker-rtl .ui-datepicker-buttonpane button {
1449
+ float: left;
1450
+ }
1451
+
1452
+ .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {
1453
+ float: right;
1454
+ }
1455
+
1456
+ .ui-datepicker-rtl .ui-datepicker-group {
1457
+ float: right;
1458
+ }
1459
+
1460
+ .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header {
1461
+ border-right-width: 0;
1462
+ border-left-width: 1px;
1463
+ }
1464
+
1465
+ .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
1466
+ border-right-width: 0;
1467
+ border-left-width: 1px;
1468
+ }
1469
+
1470
+ /* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
1471
+
1472
+ .ui-datepicker-cover {
1473
+ display: none;
1474
+ /*sorry for IE5*/
1475
+ display /**/: block;
1476
+ /*sorry for IE5*/
1477
+ position: absolute;
1478
+ /*must have*/
1479
+ z-index: -1;
1480
+ /*must have*/
1481
+ filter: mask();
1482
+ /*must have*/
1483
+ top: -4px;
1484
+ /*must have*/
1485
+ left: -4px;
1486
+ /*must have*/
1487
+ width: 200px;
1488
+ /*must have*/
1489
+ height: 200px;
1490
+ /*must have*/
1491
+ }
1492
+
1493
+ /*
1494
+ * jQuery UI Progressbar 1.8.7
1495
+ *
1496
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
1497
+ * Dual licensed under the MIT or GPL Version 2 licenses.
1498
+ * http://jquery.org/license
1499
+ *
1500
+ * http://docs.jquery.com/UI/Progressbar#theming
1501
+ */
1502
+
1503
+ .ui-progressbar {
1504
+ height: 2em;
1505
+ text-align: left;
1506
+ }
1507
+
1508
+ .ui-progressbar .ui-progressbar-value {
1509
+ margin: -1px;
1510
+ height: 100%;
1511
+ }