zen 0.3 → 0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (373) hide show
  1. data/.gems +3 -2
  2. data/.rvmrc +1 -1
  3. data/.travis.yml +5 -0
  4. data/.yardopts +2 -1
  5. data/LICENSE +1 -1
  6. data/README.md +28 -24
  7. data/Rakefile +5 -2
  8. data/guide/asset_management.md +6 -6
  9. data/guide/autosaving_forms.md +42 -0
  10. data/guide/changelog.md +41 -0
  11. data/guide/faq.md +49 -0
  12. data/guide/getting_started.md +24 -13
  13. data/guide/hacking.md +40 -9
  14. data/guide/images/categories/categories.png +0 -0
  15. data/guide/images/categories/category_groups.png +0 -0
  16. data/guide/images/categories/new_category.png +0 -0
  17. data/guide/images/categories/new_category_group.png +0 -0
  18. data/guide/images/comments/comments.png +0 -0
  19. data/guide/images/comments/edit_comment.png +0 -0
  20. data/guide/images/custom_fields/custom_field_groups.png +0 -0
  21. data/guide/images/custom_fields/custom_field_types.png +0 -0
  22. data/guide/images/custom_fields/custom_fields.png +0 -0
  23. data/guide/images/custom_fields/edit_custom_field_general.png +0 -0
  24. data/guide/images/custom_fields/edit_custom_field_group.png +0 -0
  25. data/guide/images/custom_fields/edit_custom_field_settings.png +0 -0
  26. data/guide/images/custom_fields/edit_custom_field_type.png +0 -0
  27. data/guide/images/dashboard/added.png +0 -0
  28. data/guide/images/dashboard/columns.png +0 -0
  29. data/guide/images/dashboard/dashboard.png +0 -0
  30. data/guide/images/dashboard/options.png +0 -0
  31. data/guide/images/menus/edit_menu.png +0 -0
  32. data/guide/images/menus/edit_menu_item.png +0 -0
  33. data/guide/images/menus/menu_item_hierarchy.png +0 -0
  34. data/guide/images/menus/menu_items.png +0 -0
  35. data/guide/images/menus/menus.png +0 -0
  36. data/guide/images/sections/edit_entry.png +0 -0
  37. data/guide/images/sections/edit_entry_categories.png +0 -0
  38. data/guide/images/sections/edit_entry_general.png +0 -0
  39. data/guide/images/sections/edit_entry_meta.png +0 -0
  40. data/guide/images/sections/edit_section_comments.png +0 -0
  41. data/guide/images/sections/edit_section_general.png +0 -0
  42. data/guide/images/sections/edit_section_groups.png +0 -0
  43. data/guide/images/sections/entries.png +0 -0
  44. data/guide/images/sections/sections.png +0 -0
  45. data/guide/images/settings/overview_general.png +0 -0
  46. data/guide/images/settings/overview_security.png +0 -0
  47. data/guide/images/settings/overview_user.png +0 -0
  48. data/guide/images/users/edit_user.png +0 -0
  49. data/guide/images/users/edit_user_group.png +0 -0
  50. data/guide/images/users/edit_user_group_permissions.png +0 -0
  51. data/guide/images/users/edit_user_permissions.png +0 -0
  52. data/guide/images/users/overview.png +0 -0
  53. data/guide/images/users/user_groups_overview.png +0 -0
  54. data/guide/installation.md +7 -1
  55. data/guide/javascript.md +36 -273
  56. data/guide/javascript/zen_autosave.md +26 -0
  57. data/guide/javascript/zen_editor.md +83 -0
  58. data/guide/javascript/zen_hash.md +34 -0
  59. data/guide/javascript/zen_htmltable.md +78 -0
  60. data/guide/javascript/zen_tabs.md +44 -0
  61. data/guide/javascript/zen_window.md +49 -0
  62. data/guide/zen_compared.md +201 -0
  63. data/lib/vendor/sequel_sluggable.rb +1 -1
  64. data/lib/zen.rb +64 -44
  65. data/lib/zen/asset_groups.rb +10 -10
  66. data/lib/zen/bin/create.rb +8 -1
  67. data/lib/zen/helper/breadcrumb.rb +4 -12
  68. data/lib/zen/helper/controller.rb +209 -6
  69. data/lib/zen/helper/locale.rb +19 -0
  70. data/lib/zen/helper/search.rb +1 -1
  71. data/lib/zen/helper/stacked_aspect.rb +7 -43
  72. data/lib/zen/helper/theme.rb +3 -3
  73. data/lib/zen/language.rb +5 -10
  74. data/lib/zen/language/translation.rb +1 -1
  75. data/lib/zen/layout/admin.xhtml +41 -25
  76. data/lib/zen/layout/login.xhtml +8 -3
  77. data/lib/zen/migrator.rb +54 -0
  78. data/lib/zen/model/helper.rb +20 -1
  79. data/lib/zen/model/init.rb +2 -0
  80. data/lib/zen/model/plugin/events.rb +158 -0
  81. data/lib/zen/package.rb +32 -6
  82. data/lib/zen/package/all.rb +1 -0
  83. data/lib/zen/package/categories/lib/categories.rb +6 -6
  84. data/lib/zen/package/categories/lib/categories/controller/categories.rb +20 -83
  85. data/lib/zen/package/categories/lib/categories/controller/category_groups.rb +23 -74
  86. data/lib/zen/package/categories/lib/categories/model/category.rb +58 -1
  87. data/lib/zen/package/categories/lib/categories/model/category_group.rb +62 -2
  88. data/lib/zen/package/categories/lib/categories/view/admin/categories/form.xhtml +46 -40
  89. data/lib/zen/package/categories/lib/categories/view/admin/categories/index.xhtml +74 -75
  90. data/lib/zen/package/categories/lib/categories/view/admin/category-groups/form.xhtml +27 -24
  91. data/lib/zen/package/categories/lib/categories/view/admin/category-groups/index.xhtml +83 -86
  92. data/lib/zen/package/comments/lib/comments.rb +5 -5
  93. data/lib/zen/package/comments/lib/comments/controller/comments.rb +12 -64
  94. data/lib/zen/package/comments/lib/comments/controller/comments_form.rb +4 -22
  95. data/lib/zen/package/comments/lib/comments/model/comment.rb +65 -16
  96. data/lib/zen/package/comments/lib/comments/view/admin/comments/form.xhtml +52 -49
  97. data/lib/zen/package/comments/lib/comments/view/admin/comments/index.xhtml +52 -60
  98. data/lib/zen/package/comments/migrations/1308774099_comment_status.rb +1 -1
  99. data/lib/zen/package/custom_fields/lib/custom_fields.rb +11 -13
  100. data/lib/zen/package/custom_fields/lib/custom_fields/blue_form_parameters.rb +29 -13
  101. data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_field_groups.rb +21 -50
  102. data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_field_types.rb +27 -71
  103. data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_fields.rb +25 -78
  104. data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field.rb +48 -1
  105. data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_group.rb +35 -1
  106. data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_method.rb +3 -0
  107. data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_type.rb +40 -1
  108. data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_value.rb +1 -0
  109. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-groups/form.xhtml +29 -26
  110. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-groups/index.xhtml +96 -100
  111. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-types/form.xhtml +56 -53
  112. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-types/index.xhtml +82 -82
  113. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-fields/form.xhtml +88 -85
  114. data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-fields/index.xhtml +83 -80
  115. data/lib/zen/package/dashboard/lib/dashboard.rb +28 -0
  116. data/lib/zen/package/dashboard/lib/dashboard/controller/dashboard.rb +154 -0
  117. data/lib/zen/package/dashboard/lib/dashboard/language/en/dashboard.rb +35 -0
  118. data/lib/zen/package/dashboard/lib/dashboard/language/nl/dashboard.rb +36 -0
  119. data/lib/zen/package/dashboard/lib/dashboard/model/widget.rb +45 -0
  120. data/lib/zen/package/dashboard/lib/dashboard/public/admin/dashboard/css/dashboard.css +74 -0
  121. data/lib/zen/package/dashboard/lib/dashboard/public/admin/dashboard/js/dashboard.js +102 -0
  122. data/lib/zen/package/dashboard/lib/dashboard/view/admin/index.xhtml +29 -0
  123. data/lib/zen/package/dashboard/lib/dashboard/view/admin/widget/welcome.xhtml +28 -0
  124. data/lib/zen/package/dashboard/lib/dashboard/widget.rb +292 -0
  125. data/lib/zen/package/dashboard/lib/dashboard/widget/welcome.rb +9 -0
  126. data/lib/zen/package/dashboard/migrations/1326411254_create_schema.rb +28 -0
  127. data/lib/zen/package/extensions/lib/extensions.rb +5 -5
  128. data/lib/zen/package/extensions/lib/extensions/view/admin/extensions/index.xhtml +72 -67
  129. data/lib/zen/package/menu.rb +6 -1
  130. data/lib/zen/package/menus/lib/menus.rb +6 -4
  131. data/lib/zen/package/menus/lib/menus/controller/menu_items.rb +69 -104
  132. data/lib/zen/package/menus/lib/menus/controller/menus.rb +19 -76
  133. data/lib/zen/package/menus/lib/menus/helper/menu.rb +54 -38
  134. data/lib/zen/package/menus/lib/menus/helper/menu_frontend.rb +7 -13
  135. data/lib/zen/package/menus/lib/menus/model/menu.rb +158 -2
  136. data/lib/zen/package/menus/lib/menus/model/menu_item.rb +73 -10
  137. data/lib/zen/package/menus/lib/menus/public/admin/menus/css/menus.css +47 -0
  138. data/lib/zen/package/menus/lib/menus/public/admin/menus/js/lib/nested_sortables.js +549 -0
  139. data/lib/zen/package/menus/lib/menus/public/admin/menus/js/menu_items.js +38 -0
  140. data/lib/zen/package/menus/lib/menus/view/admin/menu-items/form.xhtml +51 -61
  141. data/lib/zen/package/menus/lib/menus/view/admin/menu-items/index.xhtml +18 -81
  142. data/lib/zen/package/menus/lib/menus/view/admin/menus/form.xhtml +49 -44
  143. data/lib/zen/package/menus/lib/menus/view/admin/menus/index.xhtml +81 -83
  144. data/lib/zen/package/sections/lib/sections.rb +9 -4
  145. data/lib/zen/package/sections/lib/sections/controller/section_entries.rb +80 -132
  146. data/lib/zen/package/sections/lib/sections/controller/sections.rb +27 -73
  147. data/lib/zen/package/sections/lib/sections/helper/section.rb +44 -1
  148. data/lib/zen/package/sections/lib/sections/language/en/section_entries.rb +2 -0
  149. data/lib/zen/package/sections/lib/sections/language/nl/section_entries.rb +2 -0
  150. data/lib/zen/package/sections/lib/sections/model/section.rb +48 -1
  151. data/lib/zen/package/sections/lib/sections/model/section_entry.rb +55 -5
  152. data/lib/zen/package/sections/lib/sections/model/section_entry_status.rb +2 -0
  153. data/lib/zen/package/sections/lib/sections/view/admin/section-entries/form.xhtml +76 -67
  154. data/lib/zen/package/sections/lib/sections/view/admin/section-entries/index.xhtml +74 -79
  155. data/lib/zen/package/sections/lib/sections/view/admin/section-entries/recent_entries.xhtml +45 -0
  156. data/lib/zen/package/sections/lib/sections/view/admin/sections/form.xhtml +119 -0
  157. data/lib/zen/package/sections/lib/sections/view/admin/sections/index.xhtml +96 -0
  158. data/lib/zen/package/sections/lib/sections/widget/recent_entries.rb +14 -0
  159. data/lib/zen/package/sections/migrations/1308813320_section_entry_statuses.rb +1 -1
  160. data/lib/zen/package/settings/lib/settings.rb +14 -5
  161. data/lib/zen/package/settings/lib/settings/controller/settings.rb +4 -4
  162. data/lib/zen/package/settings/lib/settings/language/nl/settings.rb +1 -1
  163. data/lib/zen/package/settings/lib/settings/setting.rb +1 -1
  164. data/lib/zen/package/settings/lib/settings/view/admin/settings/index.xhtml +21 -17
  165. data/lib/zen/package/users/lib/users.rb +18 -19
  166. data/lib/zen/package/users/lib/users/controller/user_groups.rb +23 -50
  167. data/lib/zen/package/users/lib/users/controller/users.rb +57 -89
  168. data/lib/zen/package/users/lib/users/helper/acl.rb +1 -0
  169. data/lib/zen/package/users/lib/users/language/en/user_groups.rb +1 -0
  170. data/lib/zen/package/users/lib/users/language/en/users.rb +2 -1
  171. data/lib/zen/package/users/lib/users/language/nl/user_groups.rb +1 -0
  172. data/lib/zen/package/users/lib/users/language/nl/users.rb +2 -1
  173. data/lib/zen/package/users/lib/users/model/permission.rb +13 -0
  174. data/lib/zen/package/users/lib/users/model/user.rb +57 -4
  175. data/lib/zen/package/users/lib/users/model/user_group.rb +37 -3
  176. data/lib/zen/package/users/lib/users/model/user_status.rb +4 -0
  177. data/lib/zen/package/users/lib/users/public/admin/{css/users/permissions.css → users/css/users.css} +0 -0
  178. data/lib/zen/package/users/lib/users/public/admin/{js/users/permissions.js → users/js/users.js} +4 -2
  179. data/lib/zen/package/users/lib/users/view/admin/user-groups/form.xhtml +51 -47
  180. data/lib/zen/package/users/lib/users/view/admin/user-groups/index.xhtml +62 -69
  181. data/lib/zen/package/users/lib/users/view/admin/users/form.xhtml +92 -82
  182. data/lib/zen/package/users/lib/users/view/admin/users/index.xhtml +68 -66
  183. data/lib/zen/package/users/lib/users/view/admin/users/login.xhtml +36 -28
  184. data/lib/zen/package/users/lib/users/view/admin/users/permissions.xhtml +5 -7
  185. data/lib/zen/package/users/lib/users/view/admin/users/register.xhtml +47 -41
  186. data/lib/zen/package/users/migrations/1320272365_status_ids.rb +1 -1
  187. data/lib/zen/public/admin/{js/vendor/mootools → mootools/js}/core.js +113 -108
  188. data/lib/zen/public/admin/{js/vendor/mootools → mootools/js}/more.js +99 -6
  189. data/lib/zen/public/admin/zen/css/buttons.css +106 -0
  190. data/lib/zen/public/admin/{css/zen → zen/css}/datepicker.css +45 -30
  191. data/lib/zen/public/admin/zen/css/editor.css +69 -0
  192. data/lib/zen/public/admin/{css/zen → zen/css}/forms.css +28 -30
  193. data/lib/zen/public/admin/zen/css/general.css +183 -0
  194. data/lib/zen/public/admin/zen/css/layout.css +224 -0
  195. data/lib/zen/public/admin/zen/css/messages.css +34 -0
  196. data/lib/zen/public/admin/{css/zen → zen/css}/reset.css +4 -9
  197. data/lib/zen/public/admin/zen/css/tables.css +57 -0
  198. data/lib/zen/public/admin/zen/css/tabs.css +84 -0
  199. data/lib/zen/public/admin/zen/css/window.css +74 -0
  200. data/lib/zen/public/admin/{images/zen → zen/images}/icons/asc.png +0 -0
  201. data/lib/zen/public/admin/{images/zen → zen/images}/icons/bold.png +0 -0
  202. data/lib/zen/public/admin/zen/images/icons/box.png +0 -0
  203. data/lib/zen/public/admin/zen/images/icons/categories.png +0 -0
  204. data/lib/zen/public/admin/{images/zen → zen/images}/icons/close.png +0 -0
  205. data/lib/zen/public/admin/zen/images/icons/comment.png +0 -0
  206. data/lib/zen/public/admin/{images/zen → zen/images}/icons/desc.png +0 -0
  207. data/lib/zen/public/admin/{images/zen → zen/images}/icons/edit.png +0 -0
  208. data/lib/zen/public/admin/{images/zen → zen/images}/icons/error.png +0 -0
  209. data/lib/zen/public/admin/zen/images/icons/external.png +0 -0
  210. data/lib/zen/public/admin/zen/images/icons/globe.png +0 -0
  211. data/lib/zen/public/admin/{images/zen → zen/images}/icons/italic.png +0 -0
  212. data/lib/zen/public/admin/{images/zen → zen/images}/icons/link.png +0 -0
  213. data/lib/zen/public/admin/zen/images/icons/lock.png +0 -0
  214. data/lib/zen/public/admin/{images/zen → zen/images}/icons/ol.png +0 -0
  215. data/lib/zen/public/admin/zen/images/icons/pages.png +0 -0
  216. data/lib/zen/public/admin/{images/zen → zen/images}/icons/preview.png +0 -0
  217. data/lib/zen/public/admin/zen/images/icons/relation.png +0 -0
  218. data/lib/zen/public/admin/zen/images/icons/settings.png +0 -0
  219. data/lib/zen/public/admin/zen/images/icons/template.png +0 -0
  220. data/lib/zen/public/admin/{images/zen → zen/images}/icons/ul.png +0 -0
  221. data/lib/zen/public/admin/{images/zen → zen/images}/icons/user.png +0 -0
  222. data/lib/zen/public/admin/zen/images/icons/user_group.png +0 -0
  223. data/lib/zen/public/admin/{js/zen → zen/js}/index.js +21 -9
  224. data/lib/zen/public/admin/zen/js/lib/autosave.js +185 -0
  225. data/lib/zen/public/admin/zen/js/lib/base.js +60 -0
  226. data/lib/zen/public/admin/{js/vendor → zen/js/lib}/datepicker.js +52 -28
  227. data/lib/zen/public/admin/{js/zen → zen/js}/lib/editor.js +23 -34
  228. data/lib/zen/public/admin/{js/zen → zen/js}/lib/editor/markdown.js +5 -1
  229. data/lib/zen/public/admin/{js/zen → zen/js}/lib/editor/textile.js +4 -0
  230. data/lib/zen/public/admin/zen/js/lib/hash.js +218 -0
  231. data/lib/zen/public/admin/{js/zen → zen/js}/lib/html_table.js +5 -0
  232. data/lib/zen/public/admin/zen/js/lib/tabs.js +194 -0
  233. data/lib/zen/public/admin/{js/zen → zen/js}/lib/window.js +54 -29
  234. data/lib/zen/security.rb +50 -0
  235. data/lib/zen/spec/helper.rb +5 -120
  236. data/lib/zen/spec/helper/capybara.rb +75 -0
  237. data/lib/zen/spec/helper/general.rb +75 -0
  238. data/lib/zen/spec/simplecov.rb +1 -0
  239. data/lib/zen/task/build.rake +2 -21
  240. data/lib/zen/task/clean.rake +1 -10
  241. data/lib/zen/task/db.rake +4 -10
  242. data/lib/zen/task/package.rake +2 -5
  243. data/lib/zen/task/setup.rake +1 -1
  244. data/lib/zen/task/test.rake +6 -6
  245. data/lib/zen/task/theme.rake +2 -5
  246. data/lib/zen/theme.rb +26 -22
  247. data/lib/zen/version.rb +1 -1
  248. data/lib/zen/view/bottom.xhtml +2 -3
  249. data/lib/zen/view/search.xhtml +3 -5
  250. data/proto/app/config/config.rb.erb +1 -1
  251. data/proto/app/theme/default/index.xhtml +116 -20
  252. data/proto/app/theme/partials/head.xhtml +9 -0
  253. data/proto/app/theme/partials/sidebar.xhtml +40 -0
  254. data/proto/app/theme/theme.rb +3 -0
  255. data/spec/Rakefile +1 -2
  256. data/spec/fixtures/zen/helper/stacked_aspect.rb +54 -0
  257. data/spec/fixtures/zen/package/dashboard/controller/widget.rb +15 -0
  258. data/spec/fixtures/zen/package/dashboard/widget.rb +5 -0
  259. data/spec/fixtures/zen/theme/theme.rb +2 -2
  260. data/spec/helper.rb +19 -10
  261. data/spec/zen/controller/admin_controller.rb +3 -3
  262. data/spec/zen/controller/main_controller.rb +7 -7
  263. data/spec/zen/controller/preview.rb +3 -3
  264. data/spec/zen/event.rb +4 -4
  265. data/spec/zen/helper/breadcrumb.rb +4 -8
  266. data/spec/zen/helper/controller.rb +47 -4
  267. data/spec/zen/helper/locale.rb +3 -3
  268. data/spec/zen/helper/message.rb +4 -4
  269. data/spec/zen/helper/stacked_aspect.rb +40 -0
  270. data/spec/zen/helper/theme.rb +9 -9
  271. data/spec/zen/language.rb +8 -8
  272. data/spec/zen/markup.rb +6 -6
  273. data/spec/zen/package.rb +11 -9
  274. data/spec/zen/package/categories/controller/categories.rb +56 -24
  275. data/spec/zen/package/categories/controller/category_groups.rb +55 -23
  276. data/spec/zen/package/categories/helper/category.rb +5 -5
  277. data/spec/zen/package/categories/helper/category_frontend.rb +5 -5
  278. data/spec/zen/package/comments/anti_spam.rb +4 -4
  279. data/spec/zen/package/comments/controller/comments.rb +95 -24
  280. data/spec/zen/package/comments/controller/comments_form.rb +31 -26
  281. data/spec/zen/package/comments/helper/comment.rb +3 -3
  282. data/spec/zen/package/comments/helper/comment_frontend.rb +6 -6
  283. data/spec/zen/package/custom_fields/blue_form_parameters.rb +8 -8
  284. data/spec/zen/package/custom_fields/controller/custom_field_groups.rb +58 -27
  285. data/spec/zen/package/custom_fields/controller/custom_field_types.rb +57 -27
  286. data/spec/zen/package/custom_fields/controller/custom_fields.rb +58 -27
  287. data/spec/zen/package/custom_fields/helper/custom_field.rb +7 -7
  288. data/spec/zen/package/dashboard/controller/dashboard.rb +147 -0
  289. data/spec/zen/package/dashboard/widget.rb +56 -0
  290. data/spec/zen/package/extensions/controller/extensions.rb +4 -4
  291. data/spec/zen/package/menus/controller/menu_items.rb +48 -39
  292. data/spec/zen/package/menus/controller/menus.rb +55 -24
  293. data/spec/zen/package/menus/helper/menu.rb +6 -14
  294. data/spec/zen/package/menus/helper/menu_frontend.rb +7 -7
  295. data/spec/zen/package/menus/model/menu.rb +121 -0
  296. data/spec/zen/package/menus/model/menu_item.rb +34 -0
  297. data/spec/zen/package/sections/controller/section_entries.rb +104 -39
  298. data/spec/zen/package/sections/controller/sections.rb +60 -27
  299. data/spec/zen/package/sections/helper/section.rb +5 -5
  300. data/spec/zen/package/sections/helper/section_frontend.rb +9 -9
  301. data/spec/zen/package/sections/widget.rb +44 -0
  302. data/spec/zen/package/settings/controller/settings.rb +18 -16
  303. data/spec/zen/package/settings/settings.rb +12 -12
  304. data/spec/zen/package/users/controller/user_groups.rb +61 -29
  305. data/spec/zen/package/users/controller/users.rb +118 -39
  306. data/spec/zen/package/users/helper/access.rb +3 -3
  307. data/spec/zen/package/users/helper/acl.rb +4 -4
  308. data/spec/zen/package/users/helper/users.rb +5 -5
  309. data/spec/zen/security.rb +25 -0
  310. data/spec/zen/theme.rb +20 -18
  311. data/spec/zen/validation.rb +5 -5
  312. data/spec/zen/vendor/sequel_sluggable.rb +12 -0
  313. data/zen.gemspec +27 -4
  314. metadata +182 -124
  315. data/AUTHORS +0 -4
  316. data/guide/_static/categories/categories.png +0 -0
  317. data/guide/_static/categories/category_groups.png +0 -0
  318. data/guide/_static/categories/new_category.png +0 -0
  319. data/guide/_static/categories/new_category_group.png +0 -0
  320. data/guide/_static/comments/comments.png +0 -0
  321. data/guide/_static/comments/edit_comment.png +0 -0
  322. data/guide/_static/custom_fields/custom_field_groups.png +0 -0
  323. data/guide/_static/custom_fields/custom_field_types.png +0 -0
  324. data/guide/_static/custom_fields/custom_fields.png +0 -0
  325. data/guide/_static/custom_fields/edit_custom_field_general.png +0 -0
  326. data/guide/_static/custom_fields/edit_custom_field_group.png +0 -0
  327. data/guide/_static/custom_fields/edit_custom_field_settings.png +0 -0
  328. data/guide/_static/custom_fields/edit_custom_field_type.png +0 -0
  329. data/guide/_static/menus/edit_menu.png +0 -0
  330. data/guide/_static/menus/edit_menu_item.png +0 -0
  331. data/guide/_static/menus/menu_items.png +0 -0
  332. data/guide/_static/menus/menus.png +0 -0
  333. data/guide/_static/sections/edit_entry.png +0 -0
  334. data/guide/_static/sections/edit_entry_categories.png +0 -0
  335. data/guide/_static/sections/edit_entry_general.png +0 -0
  336. data/guide/_static/sections/edit_entry_meta.png +0 -0
  337. data/guide/_static/sections/edit_section_comments.png +0 -0
  338. data/guide/_static/sections/edit_section_general.png +0 -0
  339. data/guide/_static/sections/edit_section_groups.png +0 -0
  340. data/guide/_static/sections/entries.png +0 -0
  341. data/guide/_static/sections/sections.png +0 -0
  342. data/guide/_static/settings/overview_general.png +0 -0
  343. data/guide/_static/settings/overview_security.png +0 -0
  344. data/guide/_static/settings/overview_user.png +0 -0
  345. data/guide/_static/users/edit_user.png +0 -0
  346. data/guide/_static/users/edit_user_group.png +0 -0
  347. data/guide/_static/users/edit_user_group_permissions.png +0 -0
  348. data/guide/_static/users/edit_user_permissions.png +0 -0
  349. data/guide/_static/users/overview.png +0 -0
  350. data/guide/_static/users/user_groups_overview.png +0 -0
  351. data/lib/zen/controller/translations.rb +0 -49
  352. data/lib/zen/package/sections/lib/sections/view/admin/form.xhtml +0 -113
  353. data/lib/zen/package/sections/lib/sections/view/admin/index.xhtml +0 -97
  354. data/lib/zen/public/admin/css/zen/buttons.css +0 -46
  355. data/lib/zen/public/admin/css/zen/editor.css +0 -88
  356. data/lib/zen/public/admin/css/zen/general.css +0 -109
  357. data/lib/zen/public/admin/css/zen/grid.css +0 -100
  358. data/lib/zen/public/admin/css/zen/layout.css +0 -184
  359. data/lib/zen/public/admin/css/zen/messages.css +0 -54
  360. data/lib/zen/public/admin/css/zen/tables.css +0 -97
  361. data/lib/zen/public/admin/css/zen/tabs.css +0 -47
  362. data/lib/zen/public/admin/css/zen/window.css +0 -73
  363. data/lib/zen/public/admin/images/zen/icons/accept.png +0 -0
  364. data/lib/zen/public/admin/images/zen/icons/add.png +0 -0
  365. data/lib/zen/public/admin/images/zen/icons/back.png +0 -0
  366. data/lib/zen/public/admin/images/zen/icons/delete.png +0 -0
  367. data/lib/zen/public/admin/images/zen/icons/help.png +0 -0
  368. data/lib/zen/public/admin/images/zen/icons/info.png +0 -0
  369. data/lib/zen/public/admin/images/zen/icons/logout.png +0 -0
  370. data/lib/zen/public/admin/images/zen/icons/pdf.png +0 -0
  371. data/lib/zen/public/admin/images/zen/icons/view.png +0 -0
  372. data/lib/zen/public/admin/js/zen/lib/tabs.js +0 -207
  373. data/lib/zen/view/main.xhtml +0 -19
@@ -1,97 +0,0 @@
1
- table
2
- {
3
- border: 1px solid #aaa;
4
- border-collapse: separate;
5
- width: 100%;
6
- text-align: left;
7
- }
8
-
9
- table thead
10
- {
11
- background: #ddd;
12
- }
13
-
14
- table thead tr th
15
- {
16
- background: #ddd -webkit-gradient(
17
- linear, left bottom, left top,from(#ddd), to(#eee)
18
- );
19
-
20
- background: #ddd -moz-linear-gradient(bottom, top, #ddd, #eee);
21
- border-top: 1px solid #fff;
22
- border-right: 1px solid #aaa;
23
- border-bottom: 1px solid #aaa;
24
- text-shadow: 1px 1px #fff;
25
- }
26
-
27
- table thead tr th:last-child, table tbody tr td:last-child
28
- {
29
- border-right: none;
30
- }
31
-
32
- /* Styles used to indicate the sort order of a column */
33
- table thead tr th div
34
- {
35
- background: url('/admin/images/zen/icons/asc.png')
36
- no-repeat center right;
37
-
38
- cursor: pointer;
39
- margin-right: -5px;
40
- padding-right: 30px;
41
-
42
- /* VENDOR PREFIXES, AWESOME! */
43
- user-select: none;
44
- -webkit-user-select: none;
45
- -khtml-user-select: none;
46
- -moz-user-select: none;
47
- -o-user-select: none;
48
- }
49
-
50
- table thead tr th.desc
51
- {
52
- background: #ddd;
53
- }
54
-
55
- table thead tr th.desc div
56
- {
57
- background: url('/admin/images/zen/icons/desc.png')
58
- no-repeat center right!important;
59
- }
60
-
61
- table thead tr th, table tbody tr td
62
- {
63
- padding: 2px 10px;
64
- vertical-align: middle;
65
- }
66
-
67
- table thead tr th:first-child input[type="checkbox"],
68
- table tbody tr td:first-child input[type="checkbox"]
69
- {
70
- margin-top: 3px;
71
- }
72
-
73
- table tr:nth-child(even)
74
- {
75
- background: #f2f2f2;
76
- }
77
-
78
- .datepicker tr:nth-child(even)
79
- {
80
- background: #fff;
81
- }
82
-
83
- table tbody tr:hover
84
- {
85
- background: #f2f2f2;
86
- }
87
-
88
- table tbody tr td
89
- {
90
- border-right: 1px solid #ccc;
91
- border-bottom: 1px solid #ccc;
92
- }
93
-
94
- table tbody tr:last-child td
95
- {
96
- border-bottom: none;
97
- }
@@ -1,47 +0,0 @@
1
- .tabs
2
- {
3
- border: 1px solid #aaa;
4
- height: 30px;
5
- margin-bottom: 20px;
6
- }
7
- .tabs ul
8
- {
9
- background: #ddd -webkit-gradient(linear, left bottom, left top,
10
- from(#ddd), to(#eee));
11
- background: #ddd -moz-linear-gradient(bottom, top, #ddd, #eee);
12
- border-top: 1px solid #fff;
13
- height: 29px;
14
- list-style-type: none;
15
- margin: 0px;
16
- }
17
- .tabs ul:after
18
- {
19
- clear: both;
20
- content: '.';
21
- display: block;
22
- height: 0;
23
- visibility: hidden;
24
- }
25
- .tabs ul li
26
- {
27
- border-right: 1px solid #aaa;
28
- float: left;
29
- margin: 0px;
30
- }
31
- .tabs ul li.active a
32
- {
33
- background: #eee -webkit-gradient(linear, left bottom,
34
- left top, from(#eee), to(#ddd));
35
- background: #eee -moz-linear-gradient(bottom, top, #eee, #ddd);
36
- border-bottom: 1px solid #aaa;
37
- height: 20px;
38
- }
39
- .tabs ul li a
40
- {
41
- color: #000;
42
- display: block;
43
- height: 20px;
44
- padding: 4px 15px 5px 15px;
45
- text-decoration: none;
46
- text-shadow: 0px 1px #fff;
47
- }
@@ -1,73 +0,0 @@
1
- .window
2
- {
3
- background: #fff;
4
- border: 1px solid #aaa;
5
- left: 50%;
6
- min-width: 350px;
7
- min-height: 100px;
8
- position: absolute;
9
- top: 80px;
10
- }
11
-
12
- .window.move
13
- {
14
- cursor: move;
15
- }
16
-
17
- .window.resize
18
- {
19
- cursor: nwse-resize;
20
- }
21
-
22
- .window, .window header
23
- {
24
- border-radius: 5px 5px 0px 0px;
25
- -webkit-border-radius: 5px 5px 0px 0px;
26
- -moz-border-radius: 5px 5px 0px 0px;
27
- }
28
-
29
- .window header
30
- {
31
- background: #ddd -webkit-gradient(linear, left bottom, left top,
32
- from(#ddd), to(#eee));
33
- background: #ddd -moz-linear-gradient(bottom, top, #ddd, #eee);
34
- border-top: 1px solid #fff;
35
- border-bottom: 1px solid #aaa;
36
- padding: 3px;
37
- }
38
-
39
- .window header h1
40
- {
41
- font-size: 13px;
42
- font-weight: normal;
43
- float: right;
44
- margin: 0px;
45
- padding: 0px;
46
- text-shadow: 0px 1px #fff;
47
- text-align: center;
48
- width: 97%;
49
- }
50
-
51
- .window header .close
52
- {
53
- background: url('/admin/images/zen/icons/close.png') no-repeat center left;
54
- cursor: pointer;
55
- float: left;
56
- height: 16px;
57
- width: 16px;
58
- }
59
-
60
- .window .body, .window .buttons
61
- {
62
- padding: 20px;
63
- }
64
-
65
- .window .buttons
66
- {
67
- float: right;
68
- }
69
-
70
- .window .buttons .button:last-child
71
- {
72
- margin-right: 0px;
73
- }
@@ -1,207 +0,0 @@
1
- /**
2
- * Widget that allows developers to create a tab based navigation menu.
3
- * The Tabs class supports both normal tabs (fields hidden based on their IDs)
4
- * as well as tabs loaded using Ajax.
5
- *
6
- * In order to use the Tab class you only need some very basic markup. You'll
7
- * need a list element (either ordered or unordered) that will contain all links
8
- * and a few divs in case you're using regular tabs that don't load their content
9
- * using Ajax. The most basic example looks like the following:
10
- *
11
- * <ul class="tabs">
12
- * <li>
13
- * <a href="#tab1">Tab #1</a>
14
- * </li>
15
- * </ul>
16
- *
17
- * <div id="tab1">
18
- * <p>This is the content of tab #1.</p>
19
- * </div>
20
- *
21
- * When using regular tabs it doesn't matter where you put the divs for the
22
- * tabs. However, when using the Ajax tabs it's important to remember that the
23
- * content will be inserted just after the closing tags of the unordered/ordered
24
- * list in a div with a class of "tab_content". Example:
25
- *
26
- * <ul class="tabs">
27
- * <li>
28
- * <a href="#tab1">Tab #1</a>
29
- * </li>
30
- * </ul>
31
- *
32
- * <div class="tab_content">
33
- * <p>This is the content of tab #1 loaded using Ajax.</p>
34
- * </div>
35
- *
36
- * ## Creating and Configuration
37
- *
38
- * Now that we know how the markup works, let's create some tabs. Doing this is
39
- * fairly easy and at a basic level only requires the following code:
40
- *
41
- * Zen.Objects.MyTabs = new Zen.Tabs('css_selector_for_element');
42
- *
43
- * In this case we're creating a new instance of the Tabs class for an element
44
- * named "css_selector_for_element". The first argument is a simple CSS selector
45
- * that defines what element to choose. This means that you can either use a
46
- * class or ID name but also a more complicated selector like
47
- * "div > ul ul:first-child".
48
- *
49
- * Let's create another Tab instance but use some custom configuration options
50
- * this time.
51
- *
52
- * Zen.Objects.MyTabs = new Zen.Tabs('ul.some_class_name',
53
- * {
54
- * default: 'li:last-child',
55
- * ajax: false
56
- * });
57
- *
58
- * As you can see there are configuration items available.
59
- *
60
- * * default: The default tab/tab field to show. Again this is just a CSS
61
- * selector so you can easily customize it.
62
- * * ajax: Boolean that indicates that the tabs should be loaded from an
63
- * external page using Ajax.
64
- *
65
- * Special thanks to the guys from #mootools for helping me out :)
66
- *
67
- * @since 0.1
68
- */
69
- Zen.Tabs = new Class(
70
- {
71
- Implements: Options,
72
-
73
- /**
74
- * Object containing all options for each tab instance.
75
- *
76
- * @since 0.1
77
- * @var {object}
78
- */
79
- options:
80
- {
81
- // The default tab/field to display
82
- 'default': 'li:first-child',
83
-
84
- // Specifies if the content of each tab should be loaded using Ajax.
85
- ajax: false
86
- },
87
-
88
- /**
89
- * String that contains the CSS selector that specifies which element
90
- * should be used for creating the tabs.
91
- *
92
- * @since 0.1
93
- * @var {object}
94
- */
95
- element: null,
96
-
97
- /**
98
- * Array that will contain a list of objects for each tab/field for the
99
- * current element. This array will be used when binding events to each
100
- * tab so that we don't have to search for these tabs/fields over and over
101
- * again.
102
- *
103
- * @since 0.1
104
- * @var {array}
105
- */
106
- fields: [],
107
-
108
- /**
109
- * Constructor method called upon initialization. Options can be
110
- * set as a JSON object in the first argument.
111
- *
112
- * @since 0.1
113
- * @param {string} element The element to use for creating the tabs.
114
- * @param {object} options Custom options used when creating the tabs
115
- */
116
- initialize: function(element, options)
117
- {
118
- this.setOptions(options);
119
-
120
- // Ignore the tab system if the element couldn't be found
121
- if ( $$(element).length <= 0 )
122
- {
123
- return;
124
- }
125
-
126
- this.element = $$(element)[0];
127
-
128
- // We're good to go
129
- if ( this.options.ajax === false )
130
- {
131
- this.generalTabs();
132
- }
133
- else
134
- {
135
- this.ajaxTabs();
136
- }
137
- },
138
-
139
- /**
140
- * Generate a set of normal tabs that will load content that's already on the
141
- * page. In order for these tabs to work your URLs will need to point to an
142
- * element with an ID. These elements will be hidden and shown upon clicking
143
- * the corresponding tab.
144
- *
145
- * @since 0.1
146
- */
147
- generalTabs: function()
148
- {
149
- // Create a reference to the current instance so we can
150
- // use data in this instance in our events and loops.
151
- var self = this;
152
-
153
- // Select our default tab element
154
- var default_field = this.element.getElement(self.options['default']);
155
- default_field = default_field.getElement('a');
156
- var links = this.element.getElements('li a');
157
-
158
- this.element.getElement(self.options['default']).addClass('active');
159
-
160
- links.each(function(link)
161
- {
162
- // Hide the corresponding element
163
- var url = link.get('href');
164
- var field = $(url.replace('#', ''));
165
-
166
- // Check if the field actually exists and hide it if it's a non
167
- // default field.
168
- if ( field !== null && default_field !== link )
169
- {
170
- field.setStyle('display', 'none');
171
- }
172
-
173
- self.fields.push({url: url, field: field});
174
-
175
- // Add an event that will show the corresponding field for each link
176
- link.addEvent('click', function(event)
177
- {
178
- // Prevent normal behavior
179
- event.stop();
180
-
181
- self.element.getElement('li.active').removeClass('active');
182
-
183
- // Now we can add the class to the current tab
184
- this.getParent('li').addClass('active');
185
-
186
- // Toggle the state of each tab and ignore any non-existing
187
- // fields.
188
- self.fields.each(function(item)
189
- {
190
- if ( item === null || item.field === null )
191
- {
192
- return;
193
- }
194
-
195
- if ( item.url === link.get('href') )
196
- {
197
- item.field.setStyle('display', 'block');
198
- }
199
- else
200
- {
201
- item.field.setStyle('display', 'none');
202
- }
203
- });
204
- });
205
- });
206
- }
207
- });
@@ -1,19 +0,0 @@
1
- #{display_messages}
2
-
3
- <div id="container" class="container">
4
- <div id="content" class="grid_12">
5
- #{@content}
6
- </div>
7
- </div>
8
-
9
- <footer id="main_footer" class="container">
10
- <div class="grid_12">
11
- <p>
12
- #{lang('zen_general.labels.powered_by')}
13
-
14
- <a href="http://zen-cms.com/">
15
- Zen #{Zen::VERSION}
16
- </a>
17
- </p>
18
- </div>
19
- </footer>