aura 0.0.1.pre10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (249) hide show
  1. data/.gitignore +6 -0
  2. data/.travis.yml +3 -0
  3. data/Gemfile +2 -0
  4. data/HISTORY.md +95 -0
  5. data/README.md +53 -0
  6. data/Rakefile +27 -0
  7. data/Scribefile +8 -0
  8. data/app/css/_utilities.scss +88 -0
  9. data/app/css/admin.scss +21 -0
  10. data/app/css/admin/_settings.scss +136 -0
  11. data/app/css/admin/chrome.scss +208 -0
  12. data/app/css/admin/common.scss +78 -0
  13. data/app/css/admin/forms.scss +342 -0
  14. data/app/css/admin/jquery_wysiwyg.scss +96 -0
  15. data/app/css/admin/loading.scss +18 -0
  16. data/app/css/admin/meta.scss +42 -0
  17. data/app/css/admin/reset.scss +46 -0
  18. data/app/css/admin/sections.scss +79 -0
  19. data/app/css/admin/setup.scss +22 -0
  20. data/app/css/admin/sidebar.scss +136 -0
  21. data/app/css/admin/slug.scss +78 -0
  22. data/app/css/admin/uiscreen.scss +22 -0
  23. data/app/css/admin/wysiwyg_field.scss +11 -0
  24. data/app/css/admin_watermark.scss +23 -0
  25. data/app/css/default_home_page.scss +13 -0
  26. data/app/css/login.scss +47 -0
  27. data/app/helpers/admin_helpers.rb +59 -0
  28. data/app/helpers/flash_helpers.rb +86 -0
  29. data/app/helpers/form_builder_helpers.rb +9 -0
  30. data/app/helpers/html_helpers.rb +27 -0
  31. data/app/helpers/jquery_helpers.rb +26 -0
  32. data/app/helpers/main_helpers.rb +67 -0
  33. data/app/helpers/page_helpers.rb +92 -0
  34. data/app/helpers/template_helpers.rb +94 -0
  35. data/app/helpers/user_helpers.rb +45 -0
  36. data/app/init/admin.rb +34 -0
  37. data/app/init/extensions.rb +18 -0
  38. data/app/init/pistol.rb +11 -0
  39. data/app/init/sequel.rb +11 -0
  40. data/app/main.rb +106 -0
  41. data/app/migrations/page.rb +29 -0
  42. data/app/migrations/settings.rb +11 -0
  43. data/app/migrations/user.rb +13 -0
  44. data/app/models/page.rb +116 -0
  45. data/app/models/page_seed.rb +47 -0
  46. data/app/models/settings.rb +59 -0
  47. data/app/models/user.rb +60 -0
  48. data/app/routes/admin.rb +44 -0
  49. data/app/routes/css_js.rb +53 -0
  50. data/app/routes/design_tests.rb +15 -0
  51. data/app/routes/editor.rb +152 -0
  52. data/app/routes/site.rb +33 -0
  53. data/app/routes/user.rb +48 -0
  54. data/app/views/admin/_back_to_dashboard.haml +3 -0
  55. data/app/views/admin/dashboard.haml +46 -0
  56. data/app/views/admin/layout.haml +73 -0
  57. data/app/views/admin/settings.haml +40 -0
  58. data/app/views/admin/settings/database.haml +42 -0
  59. data/app/views/base/crumbs.haml +50 -0
  60. data/app/views/base/delete.haml +19 -0
  61. data/app/views/base/edit.haml +61 -0
  62. data/app/views/base/errors.haml +10 -0
  63. data/app/views/base/form.haml +11 -0
  64. data/app/views/base/list.haml +14 -0
  65. data/app/views/base/list_actions.haml +4 -0
  66. data/app/views/base/list_item.haml +7 -0
  67. data/app/views/base/nav.haml +36 -0
  68. data/app/views/base/new.haml +36 -0
  69. data/app/views/base/preview.haml +28 -0
  70. data/app/views/base/tabs.haml +12 -0
  71. data/app/views/default_home_page.haml +15 -0
  72. data/app/views/design_tests/admin_styles.haml +58 -0
  73. data/app/views/form_builder/builder.haml +29 -0
  74. data/app/views/page/edit.haml +29 -0
  75. data/app/views/page/form.haml +22 -0
  76. data/app/views/page/meta_form.haml +22 -0
  77. data/app/views/page/new.haml +26 -0
  78. data/app/views/user/edit.haml +52 -0
  79. data/app/views/user/form.haml +43 -0
  80. data/app/views/user/list.haml +11 -0
  81. data/app/views/user/login.haml +33 -0
  82. data/app/views/user/new.haml +25 -0
  83. data/app/views/user/welcome.haml +29 -0
  84. data/app/views/watermark/watermark.haml +16 -0
  85. data/aura.gemspec +36 -0
  86. data/bin/aura +8 -0
  87. data/config/database.rb +12 -0
  88. data/config/extensions.rb +5 -0
  89. data/config/scss.rb +14 -0
  90. data/config/user.rb +10 -0
  91. data/default/.gitignore +6 -0
  92. data/default/Gemfile +11 -0
  93. data/default/README.md +24 -0
  94. data/default/Rakefile +8 -0
  95. data/default/app/README +3 -0
  96. data/default/app/css/.gitignore +0 -0
  97. data/default/app/helpers/helpers.rb.example +9 -0
  98. data/default/app/js/.gitignore +0 -0
  99. data/default/app/migrations/model.rb.example +20 -0
  100. data/default/app/models/model.rb.example +11 -0
  101. data/default/app/models/page-ext.rb.example +17 -0
  102. data/default/app/routes/site.rb.example +5 -0
  103. data/default/app/views/hello.haml.example +1 -0
  104. data/default/config.ru +3 -0
  105. data/default/config/.gitignore +0 -0
  106. data/default/config/database.rb.example +30 -0
  107. data/default/config/extensions.rb +5 -0
  108. data/default/config/user.rb.example +10 -0
  109. data/default/db/.gitignore +0 -0
  110. data/default/init.rb +15 -0
  111. data/default/public/.gitignore +0 -0
  112. data/extensions/contact_form/migrations/contact_form.rb +13 -0
  113. data/extensions/contact_form/models/contact_form.rb +13 -0
  114. data/extensions/contact_form/routes/contact_form.rb +11 -0
  115. data/extensions/contact_form/views/contact_form/edit.haml +8 -0
  116. data/extensions/contact_form/views/contact_form/form.haml +3 -0
  117. data/extensions/contact_form/views/contact_form/nav.haml +42 -0
  118. data/extensions/contact_form/views/contact_form/responses.haml +20 -0
  119. data/extensions/contact_form/views/contact_form/tabs.haml +8 -0
  120. data/extensions/default_theme/css/theme/_settings.scss +3 -0
  121. data/extensions/default_theme/css/theme/chrome.scss +66 -0
  122. data/extensions/default_theme/css/theme/reset.scss +34 -0
  123. data/extensions/default_theme/css/theme/style.scss +3 -0
  124. data/extensions/default_theme/info.yml +2 -0
  125. data/extensions/default_theme/public/browse.png +0 -0
  126. data/extensions/default_theme/views/base/id_portfolio.haml +32 -0
  127. data/extensions/default_theme/views/base/show.haml +31 -0
  128. data/extensions/default_theme/views/errors/error.haml +9 -0
  129. data/extensions/default_theme/views/errors/not_found.haml +11 -0
  130. data/extensions/default_theme/views/layout.haml +33 -0
  131. data/lib/aura.rb +315 -0
  132. data/lib/aura/admin.rb +41 -0
  133. data/lib/aura/app.rb +4 -0
  134. data/lib/aura/cli.rb +19 -0
  135. data/lib/aura/cli/base.rb +89 -0
  136. data/lib/aura/cli/helpers.rb +32 -0
  137. data/lib/aura/editor.rb +30 -0
  138. data/lib/aura/extension.rb +189 -0
  139. data/lib/aura/files.rb +38 -0
  140. data/lib/aura/menu.rb +142 -0
  141. data/lib/aura/models.rb +80 -0
  142. data/lib/aura/public.rb +68 -0
  143. data/lib/aura/rendering.rb +134 -0
  144. data/lib/aura/seeder.rb +38 -0
  145. data/lib/aura/slugs.rb +87 -0
  146. data/lib/aura/subtype.rb +48 -0
  147. data/lib/aura/tasks.rb +24 -0
  148. data/lib/aura/tasks/common.rb +17 -0
  149. data/lib/aura/tasks/db.rake +54 -0
  150. data/lib/aura/utils.rb +81 -0
  151. data/lib/aura/version.rb +25 -0
  152. data/lib/core/hasharray.rb +65 -0
  153. data/lib/core/object_ext.rb +9 -0
  154. data/lib/sequel/plugins/aura_custom.rb +16 -0
  155. data/lib/sequel/plugins/aura_editable.rb +39 -0
  156. data/lib/sequel/plugins/aura_hierarchy.rb +82 -0
  157. data/lib/sequel/plugins/aura_model.rb +271 -0
  158. data/lib/sequel/plugins/aura_renderable.rb +42 -0
  159. data/lib/sequel/plugins/aura_sluggable.rb +103 -0
  160. data/lib/sequel/plugins/aura_subtyped.rb +83 -0
  161. data/lib/terra.rb +185 -0
  162. data/lib/terra/ext.rb +16 -0
  163. data/lib/terra/field.rb +98 -0
  164. data/lib/terra/fields.rb +122 -0
  165. data/lib/terra/fieldset.rb +93 -0
  166. data/lib/terra/form.rb +111 -0
  167. data/manual/configuration.md +42 -0
  168. data/manual/extensions.md +45 -0
  169. data/manual/files.md +70 -0
  170. data/manual/helpers.md +39 -0
  171. data/manual/index.md +65 -0
  172. data/manual/models.md +58 -0
  173. data/manual/recipes.md +38 -0
  174. data/manual/recipes/bundling_sample_data.md +30 -0
  175. data/manual/recipes/creating_themes.md +10 -0
  176. data/manual/recipes/using_markdown_or_textile.md +24 -0
  177. data/manual/routes.md +39 -0
  178. data/manual/theming.md +55 -0
  179. data/manual/views.md +128 -0
  180. data/public/hi.html +0 -0
  181. data/public/images/admin/back.png +0 -0
  182. data/public/images/admin/browse.png +0 -0
  183. data/public/images/admin/mock-bg.png +0 -0
  184. data/public/images/admin/top-loader.gif +0 -0
  185. data/public/images/admin/uiscreen-loader.gif +0 -0
  186. data/public/images/admin_icons/add.png +0 -0
  187. data/public/images/admin_icons/contact.png +0 -0
  188. data/public/images/admin_icons/dashboard.png +0 -0
  189. data/public/images/admin_icons/generic.png +0 -0
  190. data/public/images/admin_icons/home-12.png +0 -0
  191. data/public/images/admin_icons/page.png +0 -0
  192. data/public/images/admin_icons/settings.png +0 -0
  193. data/public/images/jquery.wysiwyg.gif +0 -0
  194. data/public/js/admin.form_builder.js +15 -0
  195. data/public/js/admin.js +62 -0
  196. data/public/js/admin.layout.js +53 -0
  197. data/public/js/admin.nav.js +241 -0
  198. data/public/js/admin.slug.js +46 -0
  199. data/public/js/admin.subpage.js +15 -0
  200. data/public/js/jquery.hashlisten.js +85 -0
  201. data/public/js/jquery.js +166 -0
  202. data/public/js/jquery.livenavigate.js +58 -0
  203. data/public/js/jquery.livequery.js +226 -0
  204. data/public/js/jquery.quickvalidate.js +164 -0
  205. data/public/js/jquery.tmpl.js +486 -0
  206. data/public/js/jquery.uiscreen.js +150 -0
  207. data/public/js/jquery.wysiwyg.js +2339 -0
  208. data/public/js/jqueryui.js +766 -0
  209. data/public/js/lib.dirty.js +11 -0
  210. data/public/js/lib.loading.js +23 -0
  211. data/public/js/lib.wysiwyg.js +155 -0
  212. data/public/js/underscore-1.1.7.js +27 -0
  213. data/test/app/app/css/test_raw.css +1 -0
  214. data/test/app/app/css/test_sass.sass +3 -0
  215. data/test/app/app/damogram.txt +1 -0
  216. data/test/app/app/js/test_coffee.coffee +4 -0
  217. data/test/app/app/js/test_javascript.js +4 -0
  218. data/test/app/init.rb +5 -0
  219. data/test/stories/admin_css_story.rb +18 -0
  220. data/test/stories/css_js_story.rb +29 -0
  221. data/test/stories/first_login_story.rb +29 -0
  222. data/test/stories/visit_story.rb +39 -0
  223. data/test/stories_helper.rb +58 -0
  224. data/test/test_cli_helper.rb +31 -0
  225. data/test/test_helper.rb +111 -0
  226. data/test/test_temp_helper.rb +9 -0
  227. data/test/unit/cli_test.rb +38 -0
  228. data/test/unit/dump_test.rb +14 -0
  229. data/test/unit/extensions_test.rb +18 -0
  230. data/test/unit/files_test.rb +14 -0
  231. data/test/unit/flash_helper_test.rb +36 -0
  232. data/test/unit/html_helper_test.rb +29 -0
  233. data/test/unit/jquery_helper_test.rb +18 -0
  234. data/test/unit/model_test.rb +34 -0
  235. data/test/unit/page_helpers_test.rb +36 -0
  236. data/test/unit/seeder_test.rb +15 -0
  237. data/test/unit/settings_test.rb +29 -0
  238. data/test/unit/slug_test.rb +39 -0
  239. data/test/unit/ss_migration_test.rb +14 -0
  240. data/test/unit/terra_test.rb +125 -0
  241. data/test/unit/utils_test.rb +11 -0
  242. data/vendor/sinatra-sequel/.gitignore +3 -0
  243. data/vendor/sinatra-sequel/COPYING +18 -0
  244. data/vendor/sinatra-sequel/README.md +84 -0
  245. data/vendor/sinatra-sequel/Rakefile +67 -0
  246. data/vendor/sinatra-sequel/lib/sinatra/sequel.rb +73 -0
  247. data/vendor/sinatra-sequel/sinatra-sequel.gemspec +39 -0
  248. data/vendor/sinatra-sequel/spec/spec_sinatra_sequel.rb +70 -0
  249. metadata +536 -0
@@ -0,0 +1,96 @@
1
+
2
+ div.wysiwyg { border: 1px solid #999; padding: 5px; background: #fff url("/images/jquery.wysiwyg.bg.png") repeat-x top; }
3
+ div.wysiwyg * { margin: 0; padding: 0; }
4
+
5
+ div.wysiwyg ul.toolbar li.jwysiwyg-custom-command { overflow: hidden; }
6
+
7
+ div.wysiwyg ul.toolbar { border-bottom: 1px solid #ccc; float: left; width: 100%; padding: 0; }
8
+ div.wysiwyg ul.toolbar li { list-style: none; float: left; margin: 1px 2px 3px 0; background: rgb(240, 240, 240); -moz-user-select: none; -webkit-user-select: none; user-select: none; clear: none; padding: 0 }
9
+ div.wysiwyg ul.toolbar li.separator { width: 1px; height: 16px; margin: 0 4px; border-left: 1px solid #ccc; }
10
+ div.wysiwyg ul.toolbar li { text-indent: -5000px; opacity: 0.85; filter: alpha(opacity=85); display: block; width: 16px; height: 16px; background: url('/images/jquery.wysiwyg.gif') no-repeat -64px -80px; border: 1px dotted rgb(240, 240, 240); cursor: pointer; margin: 0px; }
11
+ div.wysiwyg ul.toolbar li.wysiwyg-button-hover, div.wysiwyg ul.toolbar li.active { opacity: 1.00; filter:alpha(opacity=100); border: 1px outset rgb(224, 224, 224); }
12
+ div.wysiwyg ul.toolbar li.active { background-color: rgb(255, 255, 64); border: 1px solid rgb(208, 208, 208); border-left-color: #aaa; border-top-color: #aaa; margin: 0; }
13
+
14
+ div.wysiwyg ul.toolbar li.disabled, div.wysiwyg ul.toolbar li.wysiwyg-button-hover.disabled, div.wysiwyg ul.toolbar li.active.disabled { opacity: 0.5; filter:alpha(opacity=50); border: 0px none transparent; padding: 1px; cursor: auto; }
15
+
16
+
17
+ div.wysiwyg ul.toolbar li.bold { background-position: 0 -16px; }
18
+ div.wysiwyg ul.toolbar li.italic { background-position: -16px -16px; }
19
+ div.wysiwyg ul.toolbar li.strikeThrough { background-position: -32px -16px; }
20
+ div.wysiwyg ul.toolbar li.underline { background-position: -48px -16px; }
21
+ div.wysiwyg ul.toolbar li.highlight { background-position: -48px -96px; }
22
+
23
+ div.wysiwyg ul.toolbar li.justifyLeft { background-position: 0 0; }
24
+ div.wysiwyg ul.toolbar li.justifyCenter { background-position: -16px 0; }
25
+ div.wysiwyg ul.toolbar li.justifyRight { background-position: -32px 0; }
26
+ div.wysiwyg ul.toolbar li.justifyFull { background-position: -48px 0; }
27
+
28
+ div.wysiwyg ul.toolbar li.indent { background-position: -64px 0; }
29
+ div.wysiwyg ul.toolbar li.outdent { background-position: -80px 0; }
30
+
31
+ div.wysiwyg ul.toolbar li.subscript { background-position: -64px -16px; }
32
+ div.wysiwyg ul.toolbar li.superscript { background-position: -80px -16px; }
33
+
34
+ div.wysiwyg ul.toolbar li.undo { background-position: 0 -64px; }
35
+ div.wysiwyg ul.toolbar li.redo { background-position: -16px -64px; }
36
+
37
+ div.wysiwyg ul.toolbar li.insertOrderedList { background-position: -32px -48px; }
38
+ div.wysiwyg ul.toolbar li.insertUnorderedList { background-position: -16px -48px; }
39
+ div.wysiwyg ul.toolbar li.insertHorizontalRule { background-position: 0 -48px; }
40
+
41
+ div.wysiwyg ul.toolbar li.h1 { background-position: 0 -32px; }
42
+ div.wysiwyg ul.toolbar li.h2 { background-position: -16px -32px; }
43
+ div.wysiwyg ul.toolbar li.h3 { background-position: -32px -32px; }
44
+ div.wysiwyg ul.toolbar li.h4 { background-position: -48px -32px; }
45
+ div.wysiwyg ul.toolbar li.h5 { background-position: -64px -32px; }
46
+ div.wysiwyg ul.toolbar li.h6 { background-position: -80px -32px; }
47
+
48
+ div.wysiwyg ul.toolbar li.paragraph { background-position: 0px -96px; }
49
+ div.wysiwyg ul.toolbar li.colorpicker { background-position: -16px -96px; }
50
+ div.wysiwyg ul.toolbar li.fullscreen { background-position: -32px -96px; }
51
+
52
+ div.wysiwyg ul.toolbar li.cut { background-position: -32px -64px; }
53
+ div.wysiwyg ul.toolbar li.copy { background-position: -48px -64px; }
54
+ div.wysiwyg ul.toolbar li.paste { background-position: -64px -64px; }
55
+ div.wysiwyg ul.toolbar li.insertTable { background-position: -64px -48px; }
56
+
57
+ div.wysiwyg ul.toolbar li.increaseFontSize { background-position: -16px -80px; }
58
+ div.wysiwyg ul.toolbar li.decreaseFontSize { background-position: -32px -80px; }
59
+
60
+ div.wysiwyg ul.toolbar li.createLink { background-position: -80px -48px; }
61
+ div.wysiwyg ul.toolbar li.insertImage { background-position: -80px -80px; }
62
+
63
+ div.wysiwyg ul.toolbar li.html { background-position: -48px -48px; }
64
+ div.wysiwyg ul.toolbar li.removeFormat { background-position: -80px -64px; }
65
+
66
+ div.wysiwyg ul.toolbar li.empty { background-position: -64px -80px; }
67
+
68
+ div.wysiwyg ul.toolbar li.code { background-position: -64px -96px; }
69
+ div.wysiwyg ul.toolbar li.cssWrap { background-position: -80px -96px; }
70
+
71
+ div.wysiwyg-dialogRow { float:left; width:100%; font-size: 16px; }
72
+
73
+ div.wysiwyg iframe { border: 1px solid #999; clear: left;
74
+ -moz-box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4);
75
+ -webkit-box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4);
76
+ box-shadow :inset 0 0 10px rgba(0, 0, 0, 0.4);
77
+ background-color:white; padding:0px; margin:0; display:block; width: 100%; }
78
+
79
+ /* dialog */
80
+ .wysiwyg-dialog { position:fixed; top:50px; left:50px; width:450px; height:300px; background:transparent; font:14px "Helvetic Neue", Helvetica,Arial,sans-serif; }
81
+ .wysiwyg-dialog .wysiwyg-dialog-topbar { background:#333; border:1px #111 solid; color:white; padding:10px; position:relative; }
82
+ .wysiwyg-dialog .wysiwyg-dialog-topbar .wysiwyg-dialog-close-wrapper .wysiwyg-dialog-close-button { color:white; text-decoration:none; display:block; padding:6px 10px; position:absolute; right:12px; top:50%; height:14px; margin-top:-12px; }
83
+ .wysiwyg-dialog .wysiwyg-dialog-topbar .wysiwyg-dialog-close-wrapper a.wysiwyg-dialog-close-button:hover { background:#666; }
84
+ .wysiwyg-dialog .wysiwyg-dialog-topbar .wysiwyg-dialog-title { font-size:20px; font-weight:bold; padding:5px; }
85
+ .wysiwyg-dialog .wysiwyg-dialog-content { border:1px #ccc solid; border-top:0; padding:15px; background:white; }
86
+ .wysiwyg-dialog-modal-div { position:absolute; top:0px; left:0px; width:100%; height:100%; background-color:rgb(255,255,255); background-color:rgba(0,0,0,0.5); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000); -ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";}
87
+ .wysiwyg-dialog-content form.wysiwyg fieldset { border:1px #ccc solid; }
88
+ .wysiwyg-dialog-content form.wysiwyg legend { padding:7px; }
89
+ .wysiwyg-dialog-content form.wysiwyg .form-row { clear:both; padding:4px 0; }
90
+ .wysiwyg-dialog-content form.wysiwyg .form-row label, .wysiwyg-dialog form.wysiwyg .form-row .form-row-key { display:block; float:left; width:35%; text-align:right; padding:4px 5px; }
91
+ .wysiwyg-dialog-content form.wysiwyg .form-row .form-row-value { display:block; float:left; width:55%; }
92
+ .wysiwyg-dialog-content form.wysiwyg .form-row input.width-auto { width:auto; }
93
+ .wysiwyg-dialog-content form.wysiwyg input.width-small { width:50px; min-width:50px; max-width:50px; }
94
+ .wysiwyg-dialog-content form.wysiwyg input, .wysiwyg-dialog form.wysiwyg select { padding:2px; width:100%; margin:2px; }
95
+ .wysiwyg-dialog-content form.wysiwyg input[type=submit], .wysiwyg-dialog form.wysiwyg input[type=reset] { padding:2px 7px; width:auto; }
96
+
@@ -0,0 +1,18 @@
1
+ // The "loading..." message.
2
+ #top #loader {
3
+ @include border-left-radius(2px);
4
+ @include shadow(-5px 0 20px #333, 0 0 2px $blue, inset -3px 0 3px $hilite20);
5
+ position: absolute; right: 0px; top: 7px;
6
+ background: $blue url(/images/admin/top-loader.gif) 85px center no-repeat;
7
+ opacity: 0.98;
8
+ padding: 7px 30px 7px 10px;
9
+ width: 70px; text-align: left;
10
+ color: white; text-shadow: 1px 1px 0 $shadow20;
11
+ line-height: $small; font-size: $small;
12
+
13
+ :hover { display: none; }
14
+ }
15
+
16
+ body.loading {
17
+ &, * { cursor: wait !important; cursor: wait; }
18
+ }
@@ -0,0 +1,42 @@
1
+ div.split.meta {
2
+ > .right {
3
+ @include gradient($sidebar-hicolor * 1.04, $sidebar-hicolor * 1.00);
4
+ @include border-radius(4px);
5
+ @include shadow(
6
+ 1px 1px 0 $sidebar-hicolor * 0.95,
7
+ inset -1px 1px 0 $hilite10);
8
+ padding: 0 2px; height: 100%;
9
+ }
10
+ }
11
+
12
+ div.split.meta>.right {
13
+ dl {
14
+ @include clearfix;
15
+ border-bottom: solid 1px $sidebar-hicolor * 0.98;
16
+ padding: 10px 0px;
17
+ line-height: 16pt;
18
+ font-size: $small;
19
+ text-shadow: 1px 1px 0 $hilite20;
20
+
21
+ &:last-child { border-bottom: 0; @include shadow(none); }
22
+
23
+ .line { display: inline-block; @include ellipsis; height: 16pt; width: 100%; }
24
+ dt, dd {
25
+ @include box-sizing(border-box);
26
+ padding: 0 10px; float: left;
27
+ }
28
+ dt {
29
+ width: 32%;
30
+ padding-right: 15px;
31
+ text-align: right;
32
+ font-size: $small; font-weight: bold;
33
+ color: $slate;
34
+ }
35
+
36
+ dd { padding-left: 0; width: (100% - 32%); }
37
+
38
+ dd {
39
+ input, textarea, select { @include box-sizing(border-box); width: 100%; }
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,46 @@
1
+ @mixin ae-reset {
2
+ $reset-font: arial, helvetica, sans-serif !default;
3
+ $reset-font-size: 0.75em !default;
4
+ $reset-background: #fff !default;
5
+ $reset-font-color: #333 !default;
6
+ $reset-a-link-color: #379 !default;
7
+ $reset-a-visited-color: $reset-a-link-color * 1.1 !default;
8
+ $reset-a-hover-color: $reset-a-link-color * 0.9 !default;
9
+ $reset-heading-font: $reset-font !default;
10
+
11
+ // Reset margins
12
+ div, dl, dt, dd, ul, ol, li, form, fieldset, input, blockquote, th, td, legend { margin: 0; padding: 0; }
13
+ pre, p, blockquote, h1, h2, h3, h4, h5, h6 { margin: 1em 0 1em 0; }
14
+
15
+ h1 { font-size: 1.4em; }
16
+ h2 { font-size: 1.3em; }
17
+ h3 { font-size: 1.2em; }
18
+ h4 { font-size: 1.1em; }
19
+ h5 { font-size: 0.9em; }
20
+ h6 { font-size: 0.9em; }
21
+ ol, ul { margin-left: 2em; }
22
+
23
+ blockquote { border-left: solid 2px #ccc; padding: 0 1em; margin-left: 0.2em; color: #888; }
24
+
25
+ // Body & wrapper
26
+ html, body { margin: 0; padding: 0; }
27
+ button, body, td,
28
+ input, textarea { font-family: $reset-font; font-size: 1em; }
29
+ body { font-size: $reset-font-size; line-height: 1.5; background: $reset-background; color: $reset-font-color; }
30
+ #all { margin: 0 auto; width: auto; position: relative; }
31
+
32
+ h1, h2, h3, h4, h5, h6 { font-family: $reset-heading-font; }
33
+ input, textarea { line-height: 1.4; }
34
+ textarea { resize: vertical; }
35
+
36
+ // Links
37
+ a { color: $reset-a-link-color; text-decoration: none; font-weight: bold; }
38
+ a:visited { color: $reset-a-visited-color; }
39
+ a:hover { color: $reset-a-hover-color; text-decoration: underline; }
40
+ a img { border: 0; }
41
+
42
+ button { cursor: pointer; }
43
+
44
+ // HTML5
45
+ article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary { display: block; }
46
+ }
@@ -0,0 +1,79 @@
1
+ h3.bar {
2
+ margin: 0; padding: 2px 10px;
3
+ font-size: 9pt;
4
+ line-height: 16pt;
5
+ @include gradient(#eee, #ddd);
6
+ text-shadow: 1px 1px 0 $hilite20;
7
+ border: solid 1px #ccc;
8
+ @include border-radius(4px);
9
+ @include shadow(0 2px 0 $shadow10, inset 0 1px 0 $hilite50);
10
+ }
11
+
12
+ section {
13
+ margin: 20px 0;
14
+ &:first-child { &, :first-child { margin-top: 0; } }
15
+ h2, h3 { @extend h3.bar; }
16
+ }
17
+
18
+ .message {
19
+ @include border-radius(2px); @include shadow(0 0 2px #aaa);
20
+ margin: 10px 0; background: $slate-blue; padding: 5px 10px;
21
+ text-align: center;
22
+ text-shadow: 1px 1px 0 $hilite40;
23
+ color: #505863;
24
+ }
25
+
26
+ @mixin reset { background: transparent; @include shadow(none); border: 0; margin: 0; padding: 0; }
27
+
28
+ section.dialog {
29
+ @extend .message;
30
+ padding: 30px;
31
+ h3, p { margin: 0; }
32
+ h3 { @include reset; font-size: 16pt; line-height: 1.5; }
33
+ p { font-size: 11pt; }
34
+ p.action { margin: 10px 0; }
35
+ form { display: inline; }
36
+ ul.actions {
37
+ @include non-list;
38
+ & { display: block; margin-top: 30px; }
39
+ li { display: block; margin: 10px 0 0 0; }
40
+ .button, button { margin: 0 10px; }
41
+ }
42
+ }
43
+
44
+ section.crumbs {
45
+ $height: 26px;
46
+
47
+ #content & { margin: -10px 0px 10px 0px; }
48
+
49
+ @include gradient($sidebar-hicolor * 1.05, $sidebar-color * 1.05);
50
+ @include shadow(inset 0 1px 0 $hilite10);
51
+ @include border-bottom-radius(4px);
52
+
53
+ border: solid 1px #ccc; position: relative;
54
+ border-top: 0;
55
+ height: $height; @include clearfix;
56
+ line-height: $height;
57
+
58
+ // The actual crumbs
59
+ >ul {
60
+ @include horiz-list; float: left;
61
+
62
+ & {
63
+ padding-left: 35px;
64
+ background: url(/images/admin_icons/home-12.png) 10px center no-repeat;
65
+ }
66
+
67
+ li { overflow: hidden; }
68
+ a, strong {
69
+ padding: 0 10px;
70
+ color: $charcoal; text-shadow: 1px 1px 0 #eee;
71
+ font-size: $x-small;
72
+ float: left;
73
+ }
74
+ span { color: $charcoal * 1.4; font-size: 20px; float: left; line-height: $height; }
75
+ a:hover { text-decoration: none; color: $blue * 0.7; }
76
+
77
+ .new strong { font-weight: normal; }
78
+ }
79
+ }
@@ -0,0 +1,22 @@
1
+ html { background: white; }
2
+ body { background: transparent; }
3
+ html, body { height: 100%; }
4
+
5
+ ::selection, ::-moz-selection, ::-webkit-selection { background: $blue; color: white; }
6
+
7
+ // .js-on is set when there's JavaScript support.
8
+ // Hide the unneeded things when there's JS.
9
+ //
10
+ body:not(.js-on) #area .js { display: none; }
11
+ body.js-on #area .no-js { display: none; }
12
+
13
+ // Cursor
14
+ * { cursor: default; }
15
+ a, button { cursor: pointer; font-weight: bold; }
16
+
17
+ // Firefox
18
+ #nav, #tabs, #toolbar {
19
+ a:active, a:focus { outline: 0; }
20
+ }
21
+
22
+ .hide { display: none; }
@@ -0,0 +1,136 @@
1
+ /*
2
+ * Sidebar
3
+ */
4
+
5
+ #nav {
6
+ background: #ddd; padding: 0 0;
7
+ @include gradient($sidebar-hicolor, $sidebar-color);
8
+ @include shadow(inset -1px 0 0 $shadow10, inset -3px 0 2px $shadow05);
9
+ border-top: solid 15px $top-color;
10
+ overflow-y: auto; overflow-x: hidden;
11
+ }
12
+
13
+ #nav header {
14
+ background: #333; margin-bottom: 10px;
15
+ padding: 10px;
16
+ }
17
+
18
+ @mixin active {
19
+ @include shadow(0 0 4px $blue-glow-40, 0 0 4px white);
20
+ background-color: #eee; color: #333;
21
+ }
22
+
23
+ #nav {
24
+ a {
25
+ .icon { position: relative; top: -2px; }
26
+ }
27
+ }
28
+
29
+ #nav nav {
30
+ font-size: 8.5pt;
31
+ a:hover { text-decoration: none; }
32
+ .icon { opacity: 0.5; }
33
+ a:hover .icon { opacity: 0.7; }
34
+ a.active .icon { opacity: 1; }
35
+
36
+ h3 {
37
+ margin: 0; padding: 5px 10px;
38
+ font-size: 8pt;
39
+ text-transform: uppercase;
40
+ color: #888; text-shadow: 1px 1px 0 $hilite30;
41
+ margin-top: 10px; padding-top: 10px; border-top: solid 1px $shadow05;
42
+ @include shadow(inset 0 1px 0 $hilite10);
43
+ }
44
+
45
+ ul { @include non-list; }
46
+ ul li.active a, ul li a.active, ul li a:active { @include active; }
47
+ a.active { cursor: default; }
48
+
49
+ ul li.browse {
50
+ a.active, a:active { font-weight: bold;
51
+ .icon { top: -1px; }
52
+ }
53
+ }
54
+
55
+ a:hover { background: $hilite10; }
56
+ ul a {
57
+ @include ellipsis;
58
+ padding: 0 10px 0 20px;
59
+ height: 24px; line-height: 24px; overflow: hidden;
60
+ color: #555; display: block; font-weight: normal;
61
+
62
+ &:hover { color: #333; text-decoration: none; }
63
+ }
64
+
65
+ ul li.add a {
66
+ color: #9a9aa4;
67
+ }
68
+
69
+ ul li.blank {
70
+ color: #9a9aa4;
71
+ padding: 0 30px;
72
+ }
73
+
74
+ ul ul a {
75
+ padding-left: 40px;
76
+ }
77
+
78
+ li.browse a {
79
+ background-image: url(/images/admin/browse.png);
80
+ background-position: 97% center;
81
+ background-repeat: no-repeat;
82
+ }
83
+ }
84
+
85
+ #nav.transitioning ul li a.active { font-weight: bold; }
86
+
87
+ #nav nav.back {
88
+ background: $top-color; margin: 0 0 10px 0;
89
+ position: relative;
90
+ a .icon { top: -1px; }
91
+ a {
92
+ height: 16px; line-height: 16px;
93
+ background: $top-color;
94
+ display: block; padding: 10px 10px 10px 25px; color: #ddd;
95
+ background-image: url(/images/admin/back.png);
96
+ background-position: 5px center;
97
+ background-repeat: no-repeat;
98
+ &:hover {
99
+ background-color: $top-color * 1.1;
100
+ @include shadow(inset 0 2px 0 fade-out(white, 0.97),
101
+ inset 0 1px 0 $top-color*0.8);
102
+ }
103
+ }
104
+ a:active, a.active {
105
+ @include active; z-index: 2;
106
+ }
107
+ a:not(.active) { }
108
+ }
109
+
110
+ #nav nav.crumbs {
111
+ margin-bottom: 5px;
112
+ a .icon { top: -1px; }
113
+ }
114
+
115
+ /* Blue strip */
116
+ #nav:not(.transitioning) {
117
+ nav.back {
118
+ position: relative;
119
+ &:after {
120
+ @include shadow(0 2px 3px $blue-glow-70);
121
+ @include gradient($blue-glow-00, $blue-glow-40);
122
+ display: block; width: 100%; height: 5px; content: ' ';
123
+ margin-top: -5px;
124
+ }
125
+ }
126
+ nav.back.mousedown:after {
127
+ background-image: none;
128
+ @include shadow(0 2px 3px $blue-glow-20);
129
+ }
130
+ }
131
+
132
+ #nav nav.crumbs {
133
+ a { padding: 0 10px; height: 24px; line-height: 24px; display: block; color: #333; }
134
+ a.active { @include active; }
135
+ }
136
+
@@ -0,0 +1,78 @@
1
+ section.crumbs {
2
+ .url .components {
3
+ padding: 0 10px;
4
+ strong { margin-right: 10px; display: inline-block; }
5
+ span { display: inline-block; color: #999; }
6
+ span.protocol { padding: 0 3px 0 0; }
7
+ span.slash { padding: 0 3px; color: #bbb; }
8
+ .this { color: $grey; font-weight: bold; }
9
+ }
10
+
11
+ // Black!
12
+ .url:hover .components,
13
+ .url.edit .components {
14
+ * { color: #ddd; text-shadow: 1px 1px 0 #333; }
15
+ .this { color: white; font-weight: bold; }
16
+ }
17
+
18
+ // URL thing
19
+ .url {
20
+ @include ellipsis;
21
+ position: absolute; top: 0; right: -10px; z-index: 2;
22
+ font-size: 8pt;
23
+ color: $grey; text-shadow: 1px 1px 0 $hilite20;
24
+ margin-right: 10px;
25
+
26
+ input { display: none; }
27
+
28
+ cursor: pointer !important;
29
+ }
30
+
31
+ .url .actions {
32
+ @include non-list;
33
+ @include clearfix;
34
+ & { display: none; }
35
+ & { padding-bottom: 0px; padding-top: 0px; margin-top: 1px; }
36
+ li { display: inline; }
37
+ border-top: solid 1px $shadow20;
38
+ @include shadow(inset 0 1px 0 $hilite10);
39
+ a {
40
+ padding: 2px 15px 0 15px; text-shadow: 0 0 4px $shadow20;
41
+ line-height: 20px;
42
+ color: $blue;
43
+ border-left: solid 1px $hilite10; display: block; float: right;
44
+ &:hover {
45
+ @include gradient($blue, $blue * 0.8);
46
+ @include shadow(0 0 8px $blue-glow-70);
47
+ text-decoration: none; color: #eee; text-shadow: 1px 1px 0 $shadow20;
48
+ }
49
+ }
50
+ li:last-child a { border-left: 0; }
51
+ }
52
+
53
+ .url:hover, .url.edit {
54
+ @include border-radius(4px);
55
+ @include gradient(#444, #333);
56
+ @include shadow(0 0 4px $blue-glow-70);
57
+ @include border-top-radius(0);
58
+ border: solid 2px #333;
59
+ right: -12px; top: -2px;
60
+ text-align: right;
61
+ height: auto;
62
+ .actions { display: block; }
63
+ }
64
+
65
+ .url.edit {
66
+ .components { font-size: 9pt; }
67
+ .components span { color: #aaa; }
68
+ .actions, .this { display: none; }
69
+ input {
70
+ font-weight: bold; color: white;
71
+ display: inline-block;
72
+ border: 0; padding: 0; line-height: $height - 6px;
73
+ width: 150px; margin: 0;
74
+ &:focus { outline: 0; }
75
+ background: transparent;
76
+ }
77
+ }
78
+ }