kilt-cms 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (198) hide show
  1. checksums.yaml +7 -0
  2. data/README.rdoc +28 -0
  3. data/Rakefile +7 -0
  4. data/app/assets/images/kilt/animated-overlay.gif +0 -0
  5. data/app/assets/images/kilt/ui-bg_flat_0_000_40x100.png +0 -0
  6. data/app/assets/images/kilt/ui-bg_flat_0_fff_40x100.png +0 -0
  7. data/app/assets/images/kilt/ui-bg_flat_100_fff_40x100.png +0 -0
  8. data/app/assets/images/kilt/ui-bg_flat_100_ffffff_40x100.png +0 -0
  9. data/app/assets/images/kilt/ui-bg_glass_100_fff_1x400.png +0 -0
  10. data/app/assets/images/kilt/ui-bg_glass_100_ffffff_1x400.png +0 -0
  11. data/app/assets/images/kilt/ui-bg_highlight-soft_100_fff_1x100.png +0 -0
  12. data/app/assets/images/kilt/ui-icons_404040_256x240.png +0 -0
  13. data/app/assets/images/kilt/ui-icons_e74c3c_256x240.png +0 -0
  14. data/app/assets/javascripts/kilt/application.js +17 -0
  15. data/app/assets/javascripts/kilt/kilt.js +39 -0
  16. data/app/assets/stylesheets/kilt/application.scss +1 -0
  17. data/app/assets/stylesheets/kilt/config.rb +10 -0
  18. data/app/assets/stylesheets/kilt/sass/_base.scss +25 -0
  19. data/app/assets/stylesheets/kilt/sass/_buttons.scss +58 -0
  20. data/app/assets/stylesheets/kilt/sass/_form.scss +73 -0
  21. data/app/assets/stylesheets/kilt/sass/_layout.scss +85 -0
  22. data/app/assets/stylesheets/kilt/sass/_mixins.scss +6 -0
  23. data/app/assets/stylesheets/kilt/sass/_tables.scss +65 -0
  24. data/app/assets/stylesheets/kilt/sass/_typography.scss +79 -0
  25. data/app/assets/stylesheets/kilt/sass/modules/_codemirror.scss +262 -0
  26. data/app/assets/stylesheets/kilt/sass/modules/_jquery_ui.scss +659 -0
  27. data/app/assets/stylesheets/kilt/sass/screen.scss +1 -0
  28. data/app/assets/stylesheets/kilt/stylesheets/modules/codemirror.css +1 -0
  29. data/app/assets/stylesheets/kilt/stylesheets/modules/jquery-ui.css +5 -0
  30. data/app/assets/stylesheets/kilt/stylesheets/print.css +0 -0
  31. data/app/assets/stylesheets/kilt/stylesheets/screen.css +5 -0
  32. data/app/controllers/kilt/kilt_controller.rb +122 -0
  33. data/app/views/kilt/form/_default.html.erb +4 -0
  34. data/app/views/kilt/form/boolean.html.erb +4 -0
  35. data/app/views/kilt/form/datetime.html.erb +4 -0
  36. data/app/views/kilt/form/file.html.erb +59 -0
  37. data/app/views/kilt/form/html.html.erb +4 -0
  38. data/app/views/kilt/form/image.html.erb +72 -0
  39. data/app/views/kilt/form/longtext.html.erb +4 -0
  40. data/app/views/kilt/form/number.html.erb +23 -0
  41. data/app/views/kilt/form/text.html.erb +4 -0
  42. data/app/views/kilt/form/vimeo.html.erb +100 -0
  43. data/app/views/kilt/form/youtube.html.erb +98 -0
  44. data/app/views/kilt/kilt/_form.html.erb +30 -0
  45. data/app/views/kilt/kilt/edit.html.erb +2 -0
  46. data/app/views/kilt/kilt/index.html.erb +9 -0
  47. data/app/views/kilt/kilt/list.html.erb +67 -0
  48. data/app/views/kilt/kilt/new.html.erb +2 -0
  49. data/app/views/layouts/kilt/cms.html.erb +41 -0
  50. data/config/routes.rb +13 -0
  51. data/lib/generators/kilt/backend_generator.rb +19 -0
  52. data/lib/generators/kilt/frontend_generator.rb +33 -0
  53. data/lib/generators/kilt/install_generator.rb +13 -0
  54. data/lib/generators/kilt/object_generator.rb +23 -0
  55. data/lib/generators/kilt/templates/backend/config.yml.erb +16 -0
  56. data/lib/generators/kilt/templates/backend/creds.yml.example +8 -0
  57. data/lib/generators/kilt/templates/backend/kilt.rb +11 -0
  58. data/lib/generators/kilt/templates/frontend/application.html.erb +24 -0
  59. data/lib/generators/kilt/templates/frontend/assets/images/sprite/empty +0 -0
  60. data/lib/generators/kilt/templates/frontend/assets/images/sprite/retina/empty +0 -0
  61. data/lib/generators/kilt/templates/frontend/assets/javascripts/application.js +14 -0
  62. data/lib/generators/kilt/templates/frontend/assets/javascripts/html5shiv.js +2 -0
  63. data/lib/generators/kilt/templates/frontend/assets/javascripts/mediaqueries.js +1 -0
  64. data/lib/generators/kilt/templates/frontend/assets/stylesheets/config.rb +24 -0
  65. data/lib/generators/kilt/templates/frontend/assets/stylesheets/sass/modules/_mixins.scss +81 -0
  66. data/lib/generators/kilt/templates/frontend/assets/stylesheets/sass/modules/_reset_custom.scss +31 -0
  67. data/lib/generators/kilt/templates/frontend/assets/stylesheets/sass/modules/_typography.scss +35 -0
  68. data/lib/generators/kilt/templates/frontend/assets/stylesheets/sass/screen.scss +13 -0
  69. data/lib/generators/kilt/templates/frontend/assets/stylesheets/sass/views/_layout.scss +7 -0
  70. data/lib/generators/kilt/templates/frontend/assets/stylesheets/stylesheets/screen.css +160 -0
  71. data/lib/generators/kilt/templates/frontend/dummy.js.erb +11 -0
  72. data/lib/generators/kilt/templates/frontend/home_controller.rb.erb +4 -0
  73. data/lib/generators/kilt/templates/frontend/index.html.erb +5 -0
  74. data/lib/kilt/base.rb +12 -0
  75. data/lib/kilt/engine.rb +17 -0
  76. data/lib/kilt/exceptions.rb +10 -0
  77. data/lib/kilt/form.rb +28 -0
  78. data/lib/kilt/object.rb +66 -0
  79. data/lib/kilt/object_collection.rb +52 -0
  80. data/lib/kilt/upload.rb +54 -0
  81. data/lib/kilt/utils.rb +166 -0
  82. data/lib/kilt.rb +125 -0
  83. data/lib/tasks/kilt_tasks.rake +6 -0
  84. data/test/dummy/Rakefile +6 -0
  85. data/test/dummy/app/assets/images/sprite/empty +0 -0
  86. data/test/dummy/app/assets/images/sprite/retina/empty +0 -0
  87. data/test/dummy/app/assets/javascripts/application.js +14 -0
  88. data/test/dummy/app/assets/javascripts/dummy.js +11 -0
  89. data/test/dummy/app/assets/javascripts/html5shiv.js +2 -0
  90. data/test/dummy/app/assets/javascripts/mediaqueries.js +1 -0
  91. data/test/dummy/app/assets/stylesheets/config.rb +24 -0
  92. data/test/dummy/app/assets/stylesheets/sass/modules/_mixins.scss +81 -0
  93. data/test/dummy/app/assets/stylesheets/sass/modules/_reset_custom.scss +31 -0
  94. data/test/dummy/app/assets/stylesheets/sass/modules/_typography.scss +35 -0
  95. data/test/dummy/app/assets/stylesheets/sass/screen.scss +13 -0
  96. data/test/dummy/app/assets/stylesheets/sass/views/_layout.scss +7 -0
  97. data/test/dummy/app/assets/stylesheets/stylesheets/screen.css +160 -0
  98. data/test/dummy/app/controllers/application_controller.rb +5 -0
  99. data/test/dummy/app/controllers/dummy_controller.rb +4 -0
  100. data/test/dummy/app/views/dummy/index.html.erb +5 -0
  101. data/test/dummy/app/views/layouts/application.html.erb +24 -0
  102. data/test/dummy/bin/bundle +3 -0
  103. data/test/dummy/bin/rails +4 -0
  104. data/test/dummy/bin/rake +4 -0
  105. data/test/dummy/config/application.rb +27 -0
  106. data/test/dummy/config/boot.rb +5 -0
  107. data/test/dummy/config/environment.rb +5 -0
  108. data/test/dummy/config/environments/development.rb +23 -0
  109. data/test/dummy/config/environments/test.rb +23 -0
  110. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  111. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  112. data/test/dummy/config/initializers/inflections.rb +16 -0
  113. data/test/dummy/config/initializers/kilt.rb +14 -0
  114. data/test/dummy/config/initializers/mime_types.rb +5 -0
  115. data/test/dummy/config/initializers/secret_token.rb +12 -0
  116. data/test/dummy/config/initializers/session_store.rb +3 -0
  117. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  118. data/test/dummy/config/kilt/config.yml +40 -0
  119. data/test/dummy/config/kilt/creds.yml +8 -0
  120. data/test/dummy/config/routes.rb +7 -0
  121. data/test/dummy/config.ru +4 -0
  122. data/test/dummy/log/development.log +68163 -0
  123. data/test/dummy/log/test.log +36 -0
  124. data/test/dummy/public/favicon.ico +0 -0
  125. data/test/dummy/public/uploads/file/Gemfile +3 -0
  126. data/test/dummy/public/uploads/file/Gemfile.lock +139 -0
  127. data/test/dummy/public/uploads/file/README.rdoc +28 -0
  128. data/test/dummy/public/uploads/file/Rakefile +6 -0
  129. data/test/dummy/public/uploads/file/barcelona.jpg +0 -0
  130. data/test/dummy/public/uploads/file/dodgerstadiumpix.jpg +0 -0
  131. data/test/dummy/public/uploads/file/field.jpg +0 -0
  132. data/test/dummy/public/uploads/file/fob-elton-john-08.jpg +0 -0
  133. data/test/dummy/public/uploads/file/kilt.gemspec +32 -0
  134. data/test/dummy/public/uploads/file/kilt.rb +100 -0
  135. data/test/dummy/public/uploads/image/2960116125_1158ba3c59_o.jpg +0 -0
  136. data/test/dummy/public/uploads/image/JT.jpg +0 -0
  137. data/test/dummy/public/uploads/image/barcelona.jpg +0 -0
  138. data/test/dummy/public/uploads/image/dodgerstadiumpix.jpg +0 -0
  139. data/test/dummy/public/uploads/image/field.jpg +0 -0
  140. data/test/dummy/spec/kilt_spec.rb +31 -0
  141. data/test/dummy/spec/spec_helper.rb +12 -0
  142. data/test/dummy/tmp/cache/assets/development/sprockets/03cdc43618f8bef3dfc725a1886c40ed +0 -0
  143. data/test/dummy/tmp/cache/assets/development/sprockets/0d8e5c7178ebdb79e5b9cc4ef439eae8 +0 -0
  144. data/test/dummy/tmp/cache/assets/development/sprockets/13a3d23d13c1459a86283c4fe577a775 +0 -0
  145. data/test/dummy/tmp/cache/assets/development/sprockets/18837248cb3274df9b7c6b0a5dcd56a5 +0 -0
  146. data/test/dummy/tmp/cache/assets/development/sprockets/1c198a7e1d4ae808a6adf4c4809061eb +0 -0
  147. data/test/dummy/tmp/cache/assets/development/sprockets/2e57def2c82ce30227eefea2360d5f50 +0 -0
  148. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  149. data/test/dummy/tmp/cache/assets/development/sprockets/36f9a7f6f43adb582ac6eec43b58eb30 +0 -0
  150. data/test/dummy/tmp/cache/assets/development/sprockets/36fff19076c588427464432f563a8d2d +0 -0
  151. data/test/dummy/tmp/cache/assets/development/sprockets/3878e0f19bbd21176b1bcc46160a3df3 +0 -0
  152. data/test/dummy/tmp/cache/assets/development/sprockets/3cee919b5b764629fbb01de361ad1b99 +0 -0
  153. data/test/dummy/tmp/cache/assets/development/sprockets/3d69f4783ceef2f5455635de03e6c62a +0 -0
  154. data/test/dummy/tmp/cache/assets/development/sprockets/3d8ca1585ee95c5efb388645d66cf377 +0 -0
  155. data/test/dummy/tmp/cache/assets/development/sprockets/3e0acde4cdc501f590a21ede6fac0b97 +0 -0
  156. data/test/dummy/tmp/cache/assets/development/sprockets/413be9c73d25c7febe933f4619da7cf8 +0 -0
  157. data/test/dummy/tmp/cache/assets/development/sprockets/4b5c4a1edd3823a6a6c39e06b6eb230a +0 -0
  158. data/test/dummy/tmp/cache/assets/development/sprockets/4c5736bf0bd429296d1a32930364897e +0 -0
  159. data/test/dummy/tmp/cache/assets/development/sprockets/542fc810f9cd36e7bed9a3e5e9670995 +0 -0
  160. data/test/dummy/tmp/cache/assets/development/sprockets/56f1e7d57d31bf3315e1e33732d57faa +0 -0
  161. data/test/dummy/tmp/cache/assets/development/sprockets/5bea4c2d87ec725262213ed51575b485 +0 -0
  162. data/test/dummy/tmp/cache/assets/development/sprockets/5eb5178b706a9b8bd0362b7ed487339a +0 -0
  163. data/test/dummy/tmp/cache/assets/development/sprockets/5fa6492da1cba5232b9e9799b5e2bf8f +0 -0
  164. data/test/dummy/tmp/cache/assets/development/sprockets/5fe3d26a30497da82978c9f7ee53068b +0 -0
  165. data/test/dummy/tmp/cache/assets/development/sprockets/66f697b8e4167ad9ebefbd8b5fc65b23 +0 -0
  166. data/test/dummy/tmp/cache/assets/development/sprockets/6b6e86e81f5e8f80bb2b3d1e8f7ed7f3 +0 -0
  167. data/test/dummy/tmp/cache/assets/development/sprockets/6caab0d3b759107ab41492546763aaf0 +0 -0
  168. data/test/dummy/tmp/cache/assets/development/sprockets/6d83c6efd2bf1080ba1dead9fcfdd0db +0 -0
  169. data/test/dummy/tmp/cache/assets/development/sprockets/70d4b3b9e59d0e01e90eebf94dbc2c47 +0 -0
  170. data/test/dummy/tmp/cache/assets/development/sprockets/8127282074e6ffd457b72c228a69f0c0 +0 -0
  171. data/test/dummy/tmp/cache/assets/development/sprockets/8ffacb4ba6e6ca3da12ac1100f664b30 +0 -0
  172. data/test/dummy/tmp/cache/assets/development/sprockets/9dd98bca318fb820a8451cafce020588 +0 -0
  173. data/test/dummy/tmp/cache/assets/development/sprockets/b259805c84c81064f20700498328f109 +0 -0
  174. data/test/dummy/tmp/cache/assets/development/sprockets/b7e1f059a53a1e79df01a336fb1f50f0 +0 -0
  175. data/test/dummy/tmp/cache/assets/development/sprockets/c0671678b70011547b80da0669d031cc +0 -0
  176. data/test/dummy/tmp/cache/assets/development/sprockets/c1006115f345f87cc152b851154e9e34 +0 -0
  177. data/test/dummy/tmp/cache/assets/development/sprockets/cf0d5ad037fbf541c6b982abf73b9938 +0 -0
  178. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  179. data/test/dummy/tmp/cache/assets/development/sprockets/da31523b2e8cf32dd8db9f304d5b7395 +0 -0
  180. data/test/dummy/tmp/cache/assets/development/sprockets/dc676330961fd22be77c48cb77ec065f +0 -0
  181. data/test/dummy/tmp/cache/assets/development/sprockets/ddc29f2c13cd99d017fd526b61dcb951 +0 -0
  182. data/test/dummy/tmp/cache/assets/development/sprockets/de45247cb814cafe20e9e46c79e470fe +0 -0
  183. data/test/dummy/tmp/cache/assets/development/sprockets/e22d705d0c889ec4837f183a9beec0f3 +0 -0
  184. data/test/dummy/tmp/cache/assets/development/sprockets/e7ba95a61b1b9381906a88610dceb6dd +0 -0
  185. data/test/dummy/tmp/cache/assets/development/sprockets/ef7c8ce46dfc9e9087ce84dbdfdd0011 +0 -0
  186. data/test/dummy/tmp/cache/assets/development/sprockets/f3e1a8ba304f70dccefd77356c900ebc +0 -0
  187. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  188. data/test/dummy/tmp/data/meta_request/2ff92b3b-2e2c-438e-a687-d2900c8722e3.json +1 -0
  189. data/test/dummy/tmp/data/meta_request/4a2f197b-3f28-4ade-962e-0337d56878b1.json +1 -0
  190. data/test/dummy/tmp/data/meta_request/7eb04de5-6edf-4ea2-a4cf-994e6173b529.json +1 -0
  191. data/test/dummy/tmp/data/meta_request/96ec6abc-1da4-45e1-a397-79e849741501.json +1 -0
  192. data/test/dummy/tmp/data/meta_request/a9566f73-bde1-4346-b254-011381243ddc.json +1 -0
  193. data/test/dummy/tmp/data/meta_request/a9eb2875-930e-49ed-ab2f-40aba11bb132.json +1 -0
  194. data/test/dummy/tmp/data/meta_request/bcd27bed-9cac-4c32-8030-2699415e91a1.json +1 -0
  195. data/test/dummy/tmp/data/meta_request/e6152727-3e54-4858-ad8f-6e57e247a8a5.json +1 -0
  196. data/test/dummy/tmp/data/meta_request/e7db6149-e316-4ad1-a3a8-c014d0e7092b.json +1 -0
  197. data/test/dummy/tmp/data/meta_request/fc793f84-b287-4459-b902-705b1d2b1141.json +1 -0
  198. metadata +536 -0
@@ -0,0 +1 @@
1
+ @import "_base";
@@ -0,0 +1 @@
1
+ .CodeMirror{font-family:monospace;height:300px;border:1px solid #ccc}.CodeMirror-scroll{overflow:auto}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:white}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999}.CodeMirror div.CodeMirror-cursor{border-left:1px solid black;z-index:3}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;z-index:1}.cm-tab{display:inline-block}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable{color:black}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-property{color:black}.cm-s-default .cm-operator{color:black}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-s-default .cm-error{color:#f00}.cm-invalidchar{color:#f00}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{line-height:1;position:relative;overflow:hidden;background:white;color:black}.CodeMirror-scroll{margin-bottom:-30px;margin-right:-30px;padding-bottom:30px;padding-right:30px;height:100%;outline:none;position:relative;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-sizer{position:relative}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;padding-bottom:30px;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;-moz-box-sizing:content-box;box-sizing:content-box;padding-bottom:30px;margin-bottom:-32px;display:inline-block;*zoom:1;*display:inline}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-lines{cursor:text}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-code pre{border-right:30px solid transparent;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.CodeMirror-wrap .CodeMirror-code pre{border-right:none;width:auto}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-wrap .CodeMirror-scroll{overflow-x:hidden}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-measure pre{position:static}.CodeMirror div.CodeMirror-cursor{position:absolute;visibility:hidden;border-right:none;width:0}.CodeMirror-focused div.CodeMirror-cursor{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.cm-searching{background:#ffa;background:rgba(255,255,0,0.4)}.CodeMirror span{*vertical-align:text-bottom}@media print{.CodeMirror div.CodeMirror-cursor{visibility:hidden}}
@@ -0,0 +1,5 @@
1
+ /*! jQuery UI - v1.10.3 - 2013-12-17
2
+ * http://jqueryui.com
3
+ * Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault='Open%20Sans'%2CArial%2Csans-serif&fwDefault=normal&fsDefault=18px&cornerRadius=0&bgColorHeader=%23fff&bgTextureHeader=highlight_soft&bgImgOpacityHeader=100&borderColorHeader=%23fff&fcHeader=%23404040&iconColorHeader=%23404040&bgColorContent=%23ffffff&bgTextureContent=flat&bgImgOpacityContent=100&borderColorContent=%23ddd&fcContent=%23404040&iconColorContent=%23404040&bgColorDefault=%23fff&bgTextureDefault=flat&bgImgOpacityDefault=100&borderColorDefault=%23fff&fcDefault=%23404040&iconColorDefault=%23404040&bgColorHover=%23fff&bgTextureHover=flat&bgImgOpacityHover=100&borderColorHover=%23b344f3&fcHover=%23404040&iconColorHover=%23404040&bgColorActive=%23ffffff&bgTextureActive=glass&bgImgOpacityActive=100&borderColorActive=%23b344f3&fcActive=%23404040&iconColorActive=%23404040&bgColorHighlight=%23fff&bgTextureHighlight=flat&bgImgOpacityHighlight=100&borderColorHighlight=%23b344f3&fcHighlight=%23404040&iconColorHighlight=%23404040&bgColorError=%23fff&bgTextureError=glass&bgImgOpacityError=100&borderColorError=%23e74c3c&fcError=%23e74c3c&iconColorError=%23e74c3c&bgColorOverlay=%23fff&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23000&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=0&thicknessShadow=0&offsetTopShadow=0&offsetLeftShadow=0&cornerRadiusShadow=0
5
+ * Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default !important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-widget{font-family:'Open Sans',Arial,sans-serif;font-size:18px}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:'Open Sans',Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#fff url(images/ui-bg_flat_100_ffffff_40x100.png) 50% 50% repeat-x;color:#404040}.ui-widget-content a{color:#404040}.ui-widget-header{border:1px solid #fff;background:#fff url(images/ui-bg_highlight-soft_100_fff_1x100.png) 50% 50% repeat-x;color:#404040;font-weight:bold}.ui-widget-header a{color:#404040}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #fff;background:#fff url(images/ui-bg_flat_100_fff_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#404040;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #b344f3;background:#fff url(images/ui-bg_flat_100_fff_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#404040;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #b344f3;background:#fff url(images/ui-bg_glass_100_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#404040;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #b344f3;background:#fff url(images/ui-bg_flat_100_fff_40x100.png) 50% 50% repeat-x;color:#404040}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#404040}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #e74c3c;background:#fff url(images/ui-bg_glass_100_fff_1x400.png) 50% 50% repeat-x;color:#e74c3c}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#e74c3c}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#e74c3c}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_404040_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_e74c3c_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:0}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:0}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:0}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:0}.ui-widget-overlay{background:#fff url(images/ui-bg_flat_0_fff_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:0 0 0 0;padding:0;background:#000 url(images/ui-bg_flat_0_000_40x100.png) 50% 50% repeat-x;opacity:0;filter:Alpha(Opacity=0);border-radius:0}
File without changes
@@ -0,0 +1,5 @@
1
+ html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block}*,*:before,*:after{outline:none;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-webkit-font-smoothing:antialiased;font-smoothing:antialiased}body{background:#ecf0f1;color:#404040;font-family:'Open Sans', sans-serif;font-weight:300;font-size:18px;line-height:1.5}h1,h2,h3,h4,h5,h6,p,table{margin:0 0 30px}h1{font-size:48px;font-weight:300}h2{font-size:36px;margin:30px 0}h3,h4,h5,h6{font-size:24px}h4,label,h2 small{font-size:13px;letter-spacing:1px;text-transform:uppercase}h4.flag,label.flag,h2 small.flag{background:#dbe0e2;display:inline-block;color:#404040;font-weight:normal;padding:10px}h2 small{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;background:#dbe0e2;display:inline-block;padding:3px 6px;position:relative;top:-3px;font-weight:normal;color:#404040}small{font-size:13px}a{color:#b344f3;cursor:pointer;text-decoration:none}a:hover{color:#000}body{padding-top:36px}.wr{padding:0 30px;position:relative;margin:0 auto;width:100%}.hd .wr,.nav .wr{max-width:100%}.hd{background:#b344f3;color:#fff;font-weight:normal;position:fixed;top:0;left:0;width:100%;z-index:999}.hd h6{display:inline-block;font-weight:800;margin:0 10px 0 0}.hd h6 a{color:#fff}.hd .button.dashboard{position:relative;top:-3px}.hd .user{right:30px;position:absolute;top:4px}.hd .user .greeting{display:inline-block;font-size:14px;line-height:30px;margin:0 10px 0 0}.nav{background:#404040;font-size:14px;font-weight:normal;padding:3px 0}.page-actions{margin:0 0 30px}.object-list{font-size:60px;font-weight:400}p.notice,p.error{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;border:1px solid #b344f3;color:#fff;font-weight:normal;color:#b344f3;padding:10px 30px;text-align:center}p.error{border-color:#e74c3c;color:#e74c3c}.button{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;-webkit-transition:background 0.1s ease-out,color 0.1s ease-out;-moz-transition:background 0.1s ease-out,color 0.1s ease-out;-o-transition:background 0.1s ease-out,color 0.1s ease-out;transition:background 0.1s ease-out,color 0.1s ease-out;background:#b344f3;color:#fff;display:inline-block;font-weight:normal;text-decoration:none;margin:0 7px 0 0;padding:0 10px}.button:hover{background:#fff;color:#b344f3}.button.small{font-size:14px}.button.edit{background:#b344f3}.button.edit:hover{background:#fff;color:#b344f3}.button.back{background:#dbe0e2;color:#404040}.button.back:hover{background:#fff;color:#b344f3}.button.delete{background:#fff;color:#e74c3c}.button.delete:hover{background:#e74c3c;color:#fff}.nav .button{background:rgba(255,255,255,0.15)}.nav .button:hover{background:rgba(255,255,255,0.33);color:#fff}table{background:#fff;width:100%}tr:hover{-webkit-transition:background 0.1s ease-out;-moz-transition:background 0.1s ease-out;-o-transition:background 0.1s ease-out;transition:background 0.1s ease-out;background:rgba(179,68,243,0.03)}th,td{padding:15px 30px}th{background:#dbe0e2}th h4{margin:0}td{border-bottom:2px solid #ecf0f1}td.actions{text-align:right}td.actions .button{margin:0 5px 0 0}td.actions .button:last-child{margin:0}td.title .edit{color:#404040}td.title .edit:hover{color:#b344f3}th.hidden{text-indent:-9999em}@media (max-width: 1120px){table{font-size:14px}}@media (max-width: 920px){th.updated,td.updated,th.created,td.created{display:none}}label{display:block;font-size:13px;margin:0 0 10px}.form-input{background:#fff;border:1px solid #dddddd;display:block;margin:-1px 0 0;padding:20px}.form-input.boolean label{display:inline-block;margin:0 20px 0 0}.form-input.text input,.form-input.number input,.form-input.longtext textarea,.form-input.datetime input,.form-input.actions input{-webkit-transition:border 0.1s ease-out;-moz-transition:border 0.1s ease-out;-o-transition:border 0.1s ease-out;transition:border 0.1s ease-out;border:0;display:block;padding:0;font-size:18px;line-height:1.5;width:100%}.form-input.longtext textarea{height:170px;resize:vertical;max-width:100%;min-width:100%;width:100%}.form-input.actions input{-webkit-transition:background 0.1s ease-out;-moz-transition:background 0.1s ease-out;-o-transition:background 0.1s ease-out;transition:background 0.1s ease-out;background:#b344f3;color:#fff;cursor:pointer;display:inline-block;margin:0 20px 0 0;padding:10px 80px;width:auto}.form-input.actions input:hover{background:#404040}.form-input.actions input.delete{background:#fff;color:#e74c3c}.form-input.actions input.delete:hover{background:#e74c3c;color:#fff}.form-input .tip{font-size:11px;line-height:20px;font-style:italic}/*! jQuery UI - v1.10.3 - 2013-12-17
2
+ * http://jqueryui.com
3
+ * Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault='Open%20Sans'%2CArial%2Csans-serif&fwDefault=normal&fsDefault=18px&cornerRadius=0&bgColorHeader=%23fff&bgTextureHeader=highlight_soft&bgImgOpacityHeader=100&borderColorHeader=%23fff&fcHeader=%23404040&iconColorHeader=%23404040&bgColorContent=%23ffffff&bgTextureContent=flat&bgImgOpacityContent=100&borderColorContent=%23ddd&fcContent=%23404040&iconColorContent=%23404040&bgColorDefault=%23fff&bgTextureDefault=flat&bgImgOpacityDefault=100&borderColorDefault=%23fff&fcDefault=%23404040&iconColorDefault=%23404040&bgColorHover=%23fff&bgTextureHover=flat&bgImgOpacityHover=100&borderColorHover=%23b344f3&fcHover=%23404040&iconColorHover=%23404040&bgColorActive=%23ffffff&bgTextureActive=glass&bgImgOpacityActive=100&borderColorActive=%23b344f3&fcActive=%23404040&iconColorActive=%23404040&bgColorHighlight=%23fff&bgTextureHighlight=flat&bgImgOpacityHighlight=100&borderColorHighlight=%23b344f3&fcHighlight=%23404040&iconColorHighlight=%23404040&bgColorError=%23fff&bgTextureError=glass&bgImgOpacityError=100&borderColorError=%23e74c3c&fcError=%23e74c3c&iconColorError=%23e74c3c&bgColorOverlay=%23fff&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=%23000&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=0&thicknessShadow=0&offsetTopShadow=0&offsetLeftShadow=0&cornerRadiusShadow=0
5
+ * Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default !important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{font-weight:normal;margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker tr,.ui-datepicker tr:hover{background:#fff}.ui-datepicker th{background:none;padding:.7em .3em;text-align:center;font-size:13px;font-weight:normal;border:0;text-align:right;text-transform:uppercase;letter-spacing:1px}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-widget{font-family:'Open Sans',Arial,sans-serif;font-size:18px}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:'Open Sans',Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#fff url(/assets/kilt/ui-bg_flat_100_ffffff_40x100.png) 50% 50% repeat-x;color:#404040}.ui-widget-content a{color:#404040}.ui-widget-header{border:1px solid #fff;background:#fff url(/assets/kilt/ui-bg_highlight-soft_100_fff_1x100.png) 50% 50% repeat-x;color:#404040;font-weight:bold}.ui-widget-header a{color:#404040}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #fff;background:#fff url(/assets/kilt/ui-bg_flat_100_fff_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#404040;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #b344f3;background:#fff url(/assets/kilt/ui-bg_flat_100_fff_40x100.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#404040;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #b344f3;background:#fff url(/assets/kilt/ui-bg_glass_100_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#404040}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#404040;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fff;background:#ddd;color:#404040}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#404040}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #e74c3c;background:#fff url(/assets/kilt/ui-bg_glass_100_fff_1x400.png) 50% 50% repeat-x;color:#e74c3c}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#e74c3c}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#e74c3c}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-widget-header .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-state-default .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-state-active .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(/assets/kilt/ui-icons_404040_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(/assets/kilt/ui-icons_e74c3c_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:0}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:0}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:0}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:0}.ui-widget-overlay{background:#fff url(/assets/kilt/ui-bg_flat_0_fff_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:0 0 0 0;padding:0;background:#000 url(/assets/kilt/ui-bg_flat_0_000_40x100.png) 50% 50% repeat-x;opacity:0;filter:Alpha(Opacity=0);border-radius:0}.CodeMirror{font-family:monospace;height:300px;border:1px solid #ccc}.CodeMirror-scroll{overflow:auto}.CodeMirror-lines{padding:4px 0}.CodeMirror pre{padding:0 4px}.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{background-color:white}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999}.CodeMirror div.CodeMirror-cursor{border-left:1px solid black;z-index:3}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor{width:auto;border:0;background:#7e7;z-index:1}.cm-tab{display:inline-block}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable{color:black}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-property{color:black}.cm-s-default .cm-operator{color:black}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-header{color:blue}.cm-s-default .cm-quote{color:#090}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:bold}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-s-default .cm-error{color:#f00}.cm-invalidchar{color:#f00}div.CodeMirror span.CodeMirror-matchingbracket{color:#0f0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#f22}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{line-height:1;position:relative;overflow:hidden;background:white;color:black}.CodeMirror-scroll{margin-bottom:-30px;padding-bottom:30px;height:100%;outline:none;position:relative;-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-sizer{position:relative}.CodeMirror-vscrollbar,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-gutter-filler{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;padding-bottom:30px;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;-moz-box-sizing:content-box;box-sizing:content-box;padding-bottom:30px;margin-bottom:-32px;display:inline-block;*zoom:1;*display:inline}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-lines{cursor:text}.CodeMirror pre{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible}.CodeMirror-wrap pre{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-code pre{border-right:30px solid transparent;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.CodeMirror-wrap .CodeMirror-code pre{border-right:none;width:auto}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;overflow:auto}.CodeMirror-wrap .CodeMirror-scroll{overflow-x:hidden}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-measure pre{position:static}.CodeMirror div.CodeMirror-cursor{position:absolute;visibility:hidden;border-right:none;width:0}.CodeMirror-focused div.CodeMirror-cursor{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.cm-searching{background:#ffa;background:rgba(255,255,0,0.4)}.CodeMirror span{*vertical-align:text-bottom}@media print{.CodeMirror div.CodeMirror-cursor{visibility:hidden}}
@@ -0,0 +1,122 @@
1
+ module Kilt
2
+ class KiltController < ActionController::Base
3
+ layout 'kilt/cms'
4
+ protect_from_forgery
5
+ before_filter :ensure_config
6
+
7
+ # Show all the object types
8
+ def index
9
+ @types = Kilt.types
10
+ end
11
+
12
+ # Show the list of items for a specific object type
13
+ def list
14
+ @type = params[:types].singularize
15
+ @objects = Kilt.send(@type.pluralize).order('name')
16
+ end
17
+
18
+ # Create a new object
19
+ def new
20
+ @type = params[:types].singularize
21
+ @object = Kilt::Object.new(@type)
22
+ end
23
+
24
+ # Post back a new object
25
+ def create
26
+ type = params[:types].singularize
27
+
28
+ # Get the params
29
+ p = params[type]
30
+
31
+ # Ensure we have a name
32
+ if p['name'] == ''
33
+ flash[:error] = "Name is required"
34
+ redirect_to new_object_path(type.pluralize)
35
+ else
36
+ # Create an object and fill it with the values passed in by the form
37
+ object = Kilt::Object.new(type)
38
+ object.fill(p)
39
+
40
+ # Call Kilt's update method
41
+ if Kilt.create(object)
42
+ flash[:notice] = "#{type.capitalize} successfully updated"
43
+ redirect_to edit_object_path(type.pluralize, object.slug)
44
+ else
45
+ flash[:error] = "Couldn't save #{type.capitalize}"
46
+ redirect_to new_object_path(type.pluralize)
47
+ end
48
+ end
49
+
50
+ end
51
+
52
+ # View/Edit a specific object
53
+ def edit
54
+ @type = params[:types].singularize
55
+ @slug = params[:slug]
56
+ @object = Kilt.get(@slug)
57
+ end
58
+
59
+ # Update an object
60
+ def update
61
+ type = params[:types].singularize
62
+ slug = params[:slug]
63
+
64
+ # Get the params
65
+ p = params[type]
66
+
67
+ # Ensure we have a name
68
+ if p['name'] == ''
69
+ flash[:error] = "Name is required"
70
+ redirect_to edit_object_path(type.pluralize, slug)
71
+ else
72
+ # Create an object and fill it with the values passed in by the form
73
+ object = Kilt.get(slug)
74
+ object.fill(p)
75
+
76
+ # Call Kilt's update method
77
+ if Kilt.update(slug, object)
78
+ flash[:notice] = "#{type.capitalize} successfully updated"
79
+ else
80
+ flash[:error] = "Couldn't save #{type.capitalize}"
81
+ end
82
+
83
+ # redirect to the edit screen
84
+ redirect_to edit_object_path(type.pluralize, object.slug)
85
+ end
86
+ end
87
+
88
+ # Delete an object
89
+ def delete
90
+ type = params[:types].singularize
91
+ slug = params[:slug]
92
+ object = Kilt.get(slug)
93
+
94
+ # Call Kilt's update method
95
+ if Kilt.delete(slug)
96
+ flash[:notice] = "#{type.capitalize} successfully deleted"
97
+ else
98
+ flash[:error] = "Couldn't delete #{type.capitalize}"
99
+ end
100
+
101
+ # redirect to the list screen
102
+ redirect_to list_path(type.pluralize)
103
+ end
104
+
105
+ private
106
+
107
+ def ensure_config
108
+ if Kilt.config.empty? || !Kilt.config.db
109
+ lines = []
110
+ lines << '<pre>'
111
+ lines << 'The Kilt gem has been installed, but you haven\'t configured it yet.'
112
+ lines << 'Start configuring Kilt by running the following command:'
113
+ lines << ''
114
+ lines << ' rails g kilt:backend'
115
+ lines << ''
116
+ lines << 'Then open config/kilt/config.yml and config/kilt/creds.yml, add your database information, define your data model, start Rails, and visit http://&lt;your_app&gt;/admin'
117
+ lines << '</pre>'
118
+ render :text => lines.join("\n")
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,4 @@
1
+ <div class="form-input text">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <input name="<%= "#{object.type}[#{field_name}]" %>" type="text" value="<%= object["#{field_name}"] %>">
4
+ </div>
@@ -0,0 +1,4 @@
1
+ <div class="form-input boolean">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <input name="<%= "#{object.type}[#{field_name}]" %>" type="checkbox" class="checkbox" <% if object["#{field_name}"] %> checked<% end %> />
4
+ </div>
@@ -0,0 +1,4 @@
1
+ <div class="form-input text datetime">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <input name="<%= "#{object.type}[#{field_name}]" %>" type="text" value="<%= object["#{field_name}"] %>" class="datepicker">
4
+ </div>
@@ -0,0 +1,59 @@
1
+ <div id="file-<%= index %>" class="form-input text">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+
4
+ <% if object["#{field_name}"] && object["#{field_name}"] != '' %>
5
+ <div class="filename">
6
+ <span><%= link_to object["#{field_name}"], Kilt::Utils.download_location(field_name, object["#{field_name}"]), :target => '_blank' %>
7
+ <a class="button delete <% if !object["#{field_name}"] || object["#{field_name}"] == "" %>hidden<% end %>">Reset/remove file</a></span>
8
+ </div>
9
+ <% end %>
10
+
11
+ <div class="uploader <% if object["#{field_name}"] && object["#{field_name}"] != "" %>hidden<% end %>">
12
+ <input id="file-input-<%= index%>" name="<%= "#{object.type}[#{field_name}]" %>" type="file" />
13
+ </div>
14
+
15
+ <input id="file-hidden-<%= index%>" name="<%= "#{object.type}[#{field_name}-hidden]" %>" type="hidden" />
16
+
17
+ </div>
18
+
19
+ <script type="text/javascript">
20
+ var $file = $('#file-<%= index %>'),
21
+ $filename = $file.find('.filename'),
22
+ $reset = $file.find('a.delete'),
23
+ $uploader = $file.find('.uploader');
24
+
25
+ // Remove the video
26
+ $reset.on("click", function(e) {
27
+ $uploader.removeClass('hidden');
28
+ $('#file-hidden-<%= index %>').val('clear');
29
+ $reset.addClass('hidden');
30
+ $filename.hide();
31
+ });
32
+
33
+ </script>
34
+
35
+ <style>
36
+ #file-<%= index %> .filename {
37
+ }
38
+
39
+ #file-<%= index %> .filename span {
40
+ background: #efefef;
41
+ display: inline-block;
42
+ min-width: 50%;
43
+ padding: 8px 4px 8px 8px;
44
+ }
45
+
46
+ #file-<%= index %> a.delete {
47
+ color: #ddd;
48
+ display: auto;
49
+ float: right;
50
+ }
51
+
52
+ #file-<%= index %> .hidden {
53
+ display: none;
54
+ }
55
+
56
+ #file-<%= index %> .uploader {
57
+ display: auto;
58
+ }
59
+ </style>
@@ -0,0 +1,4 @@
1
+ <div class="form-input">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <textarea class="html" name="<%= "#{object.type}[#{field_name}]" %>"><%= object["#{field_name}"] %></textarea>
4
+ </div>
@@ -0,0 +1,72 @@
1
+ <div class="form-input text">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+
4
+ <% if object["#{field_name}"] && object["#{field_name}"] != '' %>
5
+ <div id="image-container-<%= index %>">
6
+ <div id="image-<%= index %>">
7
+ <%= image_tag Kilt::Utils.download_location(field_name, object["#{field_name}"]), :width => '100%' %>
8
+ </div>
9
+ <div>
10
+ <a id="image-reset-<%= index%>" class="button delete <% if !object["#{field_name}"] || object["#{field_name}"] == "" %>hidden<% end %>">Reset/remove image</a>
11
+ </div>
12
+ </div>
13
+ <% end %>
14
+
15
+ <div id="image-placeholder-<%= index %>" class="<% if object["#{field_name}"] && object["#{field_name}"] != "" %>hidden<% end %>">
16
+ <input id="image-input-<%= index%>" name="<%= "#{object.type}[#{field_name}]" %>" type="file" accept="image/*" />
17
+ <div id="image-tip-<%= index %>" class="tip">
18
+ Only images of type PNG, JPEG, and GIF can be uploaded.
19
+ </div>
20
+ </div>
21
+
22
+ <input id="image-hidden-<%= index%>" name="<%= "#{object.type}[#{field_name}-hidden]" %>" type="hidden" />
23
+
24
+ </div>
25
+
26
+ <script type="text/javascript">
27
+
28
+ // Remove the video
29
+ $('#image-reset-<%= index %>').on("click", function(e) {
30
+ $('#image-placeholder-<%= index %>').removeClass('hidden');
31
+ $('#image-hidden-<%= index %>').val('clear');
32
+ $('#image-reset-<%= index %>').addClass('hidden');
33
+ $('#image-<%= index %>').hide();
34
+ $('#image-container-<%= index %>').addClass('hidden');
35
+ });
36
+
37
+ </script>
38
+
39
+ <style>
40
+ #image-container-<%= index %> {
41
+ background: #efefef;
42
+ display: inline-block;
43
+ min-width: 50%;
44
+ padding: 10px 10px;
45
+ }
46
+
47
+ #image-container-<%= index %>.hidden {
48
+ display: none;
49
+ }
50
+
51
+ #image-reset-<%= index %>,
52
+ #image-placeholder-<%= index %>,
53
+ #image-tip-<%= index %>{
54
+ display: auto;
55
+ }
56
+
57
+ #image-reset-<%= index %> {
58
+ background: #fff;
59
+ color: #ddd;
60
+ margin-top: 4px;
61
+ }
62
+
63
+ #image-reset-<%= index %>:hover {
64
+ background: #e74c3c;
65
+ }
66
+
67
+ #image-reset-<%= index %>.hidden,
68
+ #image-placeholder-<%= index %>.hidden,
69
+ #image-tip-<%= index %>.hidden {
70
+ display: none;
71
+ }
72
+ </style>
@@ -0,0 +1,4 @@
1
+ <div class="form-input longtext">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <textarea name="<%= "#{object.type}[#{field_name}]" %>"><%= object["#{field_name}"] %></textarea>
4
+ </div>
@@ -0,0 +1,23 @@
1
+ <div class="form-input text number">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <input id="number-<%= index %>" name="<%= "#{object.type}[#{field_name}]" %>" type="text" value="<%= object["#{field_name}"] %>" />
4
+ </div>
5
+
6
+ <script type="text/javascript">
7
+ $('#number-<%= index %>').keypress(function(e) {
8
+ var charCode = e.which;
9
+
10
+ // Only allow numbers and decimals
11
+ if (charCode != 46 && charCode > 31 && (charCode < 48 || charCode > 57)) {
12
+ return false;
13
+ }
14
+
15
+ // Don't allow a second decimal
16
+ if (charCode == 46 && $(this).val().replace(/[^.]/g, "").length > 0) {
17
+ return false;
18
+ }
19
+
20
+ // Otherwise return true
21
+ return true;
22
+ });
23
+ </script>
@@ -0,0 +1,4 @@
1
+ <div class="form-input text">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+ <input name="<%= "#{object.type}[#{field_name}]" %>" type="text" value="<%= object["#{field_name}"] %>">
4
+ </div>
@@ -0,0 +1,100 @@
1
+ <div class="form-input text vimeo">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+
4
+ <%# Keep the actual value in a hidden field %>
5
+ <input id="<%= "vimeo-#{index}" %>" name="<%= "#{object.type}[#{field_name}]" %>" type="hidden" value="<%= object["#{field_name}"] %>">
6
+
7
+ <div id="vimeo-container-<%= index %>" class="<% if !(object["#{field_name}"] && object["#{field_name}"] != "") %>hidden<% end %>">
8
+ <div id="vimeo-placeholder-<%= index %>">
9
+ <%# Show the video if we have it %>
10
+ <div id="vimeo-placeholder-<%= index%>">
11
+ <% if object["#{field_name}"] && object["#{field_name}"] != "" %>
12
+ <iframe src="//player.vimeo.com/video/<%= object["#{field_name}"] %>?title=0&amp;byline=0&amp;portrait=0&amp;color=dedede" width="100%" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
13
+ <% end %>
14
+ </div>
15
+ <div>
16
+ <a id="vimeo-reset-<%= index%>" class="button delete <% if !object["#{field_name}"] || object["#{field_name}"] == "" %>hidden<% end %>">Reset/remove video</a>
17
+ </div>
18
+ </div>
19
+ </div>
20
+ <div>
21
+ <input id="<%= "vimeo-input-#{index}" %>" type="text" <% if object["#{field_name}"] && object["#{field_name}"] != "" %>class="hidden"<% end %> placeholder="Paste or enter a Vimeo video URL here">
22
+ </div>
23
+ </div>
24
+
25
+ <script type="text/javascript">
26
+
27
+ // Utility function
28
+ function vimeo_parser_<%= index%>(url){
29
+ var match = url.match(/http:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/);
30
+ if (match){
31
+ return match[2];
32
+ } else {
33
+ return false;
34
+ }
35
+ }
36
+
37
+ // Act accordingly when we can successfully get a vimeo id
38
+ $('#vimeo-input-<%= index %>').bind("change keyup", function(e) {
39
+ val = vimeo_parser_<%= index%>($(this).val());
40
+ if(val != false) {
41
+ // Inject an iFrame with the vimeo video
42
+ var $iframe = $('<iframe width="100%" height="315" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>');
43
+ $iframe.attr('src', '//player.vimeo.com/video/' + val + '?title=0&byline=0&portrait=0&color=dedede');
44
+ $('#vimeo-placeholder-<%= index %>').html($iframe);
45
+
46
+ // Show the reset button
47
+ $('#vimeo-reset-<%= index %>').removeClass('hidden');
48
+
49
+ // Set the hidden field value
50
+ $('#vimeo-<%= index %>').val(val);
51
+
52
+ // Hide the text input
53
+ $(this).addClass('hidden');
54
+ $('#vimeo-container-<%= index %>').removeClass('hidden');
55
+ }
56
+ });
57
+
58
+ // Remove the video
59
+ $('#vimeo-reset-<%= index %>').on("click", function(e) {
60
+ $('#vimeo-placeholder-<%= index %>').html('');
61
+ $('#vimeo-reset-<%= index %>').addClass('hidden');
62
+ $('#vimeo-<%= index %>').val('');
63
+ $('#vimeo-input-<%= index %>').val('').removeClass('hidden');
64
+ $('#vimeo-container-<%= index %>').addClass('hidden');
65
+ });
66
+
67
+ </script>
68
+
69
+ <style>
70
+ #vimeo-container-<%= index %> {
71
+ background: #efefef;
72
+ display: inline-block;
73
+ min-width: 50%;
74
+ padding: 10px 10px;
75
+ }
76
+
77
+ #vimeo-container-<%= index %>.hidden {
78
+ display: none;
79
+ }
80
+
81
+ #vimeo-reset-<%= index %> {
82
+ background: #fff;
83
+ color: #ddd;
84
+ margin-top: 4px;
85
+ }
86
+
87
+ #vimeo-reset-<%= index %>:hover {
88
+ background: #e74c3c;
89
+ }
90
+
91
+ #vimeo-reset-<%= index %>,
92
+ #vimeo-input-<%= index %> {
93
+ display: auto;
94
+ }
95
+
96
+ #vimeo-reset-<%= index %>.hidden,
97
+ #vimeo-input-<%= index %>.hidden {
98
+ display: none;
99
+ }
100
+ </style>
@@ -0,0 +1,98 @@
1
+ <div class="form-input text youtube">
2
+ <label><%= Kilt::Utils.deslugify field_name %></label>
3
+
4
+ <%# Keep the actual value in a hidden field %>
5
+ <input id="<%= "youtube-#{index}" %>" name="<%= "#{object.type}[#{field_name}]" %>" type="hidden" value="<%= object["#{field_name}"] %>">
6
+
7
+ <div id="youtube-container-<%= index %>" class="<% if !(object["#{field_name}"] && object["#{field_name}"] != "") %>hidden<% end %>">
8
+ <%# Show the video if we have it %>
9
+ <div id="youtube-placeholder-<%= index%>">
10
+ <% if object["#{field_name}"] && object["#{field_name}"] != "" %>
11
+ <iframe width="100%" height="315" src="//www.youtube.com/embed/<%= object["#{field_name}"] %>" frameborder="0" allowfullscreen></iframe>
12
+ <% end %>
13
+ </div>
14
+ <div>
15
+ <a id="youtube-reset-<%= index%>" class="button delete <% if !object["#{field_name}"] || object["#{field_name}"] == "" %>hidden<% end %>">Reset/remove video</a>
16
+ </div>
17
+ </div>
18
+ <div>
19
+ <input id="<%= "youtube-input-#{index}" %>" type="text" <% if object["#{field_name}"] && object["#{field_name}"] != "" %>class="hidden"<% end %> placeholder="Paste or enter a YouTube video URL here">
20
+ </div>
21
+ </div>
22
+
23
+ <script type="text/javascript">
24
+
25
+ // Utility function
26
+ function youtube_parser_<%= index%>(url){
27
+ var match = url.match(/^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=|\&v=)([^#\&\?]*).*/);
28
+ if (match && match[2].length == 11){
29
+ return match[2];
30
+ } else {
31
+ return false;
32
+ }
33
+ }
34
+
35
+ // Act accordingly when we can successfully get a youtube id
36
+ $('#youtube-input-<%= index %>').bind("change keyup", function(e) {
37
+ val = youtube_parser_<%= index%>($(this).val());
38
+ if(val != false) {
39
+ // Inject an iFrame with the YouTube video
40
+ var $iframe = $('<iframe width="100%" height="315" frameborder="0" allowfullscreen />');
41
+ $iframe.attr('src', '//www.youtube.com/embed/' + val);
42
+ $('#youtube-placeholder-<%= index %>').html($iframe);
43
+
44
+ // Show the reset button
45
+ $('#youtube-reset-<%= index %>').removeClass('hidden');
46
+
47
+ // Set the hidden field value
48
+ $('#youtube-<%= index %>').val(val);
49
+
50
+ // Hide the text input
51
+ $(this).addClass('hidden');
52
+ $('#youtube-container-<%= index %>').removeClass('hidden');
53
+ }
54
+ });
55
+
56
+ // Remove the video
57
+ $('#youtube-reset-<%= index %>').on("click", function(e) {
58
+ $('#youtube-placeholder-<%= index %>').html('');
59
+ $('#youtube-reset-<%= index %>').addClass('hidden');
60
+ $('#youtube-<%= index %>').val('');
61
+ $('#youtube-input-<%= index %>').val('').removeClass('hidden');
62
+ $('#youtube-container-<%= index %>').addClass('hidden');
63
+ });
64
+
65
+ </script>
66
+
67
+ <style>
68
+ #youtube-container-<%= index %> {
69
+ background: #efefef;
70
+ display: inline-block;
71
+ min-width: 50%;
72
+ padding: 10px 10px;
73
+ }
74
+
75
+ #youtube-container-<%= index %>.hidden {
76
+ display: none;
77
+ }
78
+
79
+ #youtube-reset-<%= index %> {
80
+ background: #fff;
81
+ color: #ddd;
82
+ margin-top: 4px;
83
+ }
84
+
85
+ #youtube-reset-<%= index %>:hover {
86
+ background: #e74c3c;
87
+ }
88
+
89
+ #youtube-reset-<%= index %>,
90
+ #youtube-input-<%= index %> {
91
+ display: auto;
92
+ }
93
+
94
+ #youtube-reset-<%= index %>.hidden,
95
+ #youtube-input-<%= index %>.hidden {
96
+ display: none;
97
+ }
98
+ </style>