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,6 +1,6 @@
1
1
  require File.expand_path('../../../../../helper', __FILE__)
2
2
 
3
- describe('Ramaze::Helper::Menu') do
3
+ describe 'Ramaze::Helper::Menu' do
4
4
  behaves_like :capybara
5
5
  extend Ramaze::Helper::Menu
6
6
 
@@ -26,7 +26,7 @@ describe('Ramaze::Helper::Menu') do
26
26
  :parent_id => child.id
27
27
  )
28
28
 
29
- it('Validate a valid menu') do
29
+ it 'Validate a valid menu' do
30
30
  url = Menus::Controller::Menus.r(:edit, menu.id).to_s
31
31
 
32
32
  visit(url)
@@ -34,7 +34,7 @@ describe('Ramaze::Helper::Menu') do
34
34
  current_path.should == url
35
35
  end
36
36
 
37
- it('Validate an invalid menu') do
37
+ it 'Validate an invalid menu' do
38
38
  url = Menus::Controller::Menus.r(:edit, menu.id + 100).to_s
39
39
  index = Menus::Controller::Menus.r(:index).to_s
40
40
 
@@ -43,7 +43,7 @@ describe('Ramaze::Helper::Menu') do
43
43
  current_path.should == index
44
44
  end
45
45
 
46
- it('Validate a valid menu item') do
46
+ it 'Validate a valid menu item' do
47
47
  url = Menus::Controller::MenuItems.r(:edit, menu.id, item.id).to_s
48
48
 
49
49
  visit(url)
@@ -51,7 +51,7 @@ describe('Ramaze::Helper::Menu') do
51
51
  current_path.should == url
52
52
  end
53
53
 
54
- it('Validate an invalid menu item') do
54
+ it 'Validate an invalid menu item' do
55
55
  url = Menus::Controller::MenuItems.r(:edit, menu.id, item.id + 100).to_s
56
56
  index = Menus::Controller::MenuItems.r(:index, menu.id).to_s
57
57
 
@@ -60,16 +60,8 @@ describe('Ramaze::Helper::Menu') do
60
60
  current_path.should == index
61
61
  end
62
62
 
63
- it('Generate a navigation tree') do
64
- tree = menu_item_tree(menu.id)
65
-
66
- tree[nil].should == '--'
67
- tree[child.id].should == "  #{child.name}"
68
- tree[sub_child.id].should == "    #{sub_child.name}"
69
- end
70
-
71
63
  sub_child.destroy
72
64
  child.destroy
73
65
  item.destroy
74
66
  menu.destroy
75
- end # describe
67
+ end
@@ -1,6 +1,6 @@
1
1
  require File.expand_path('../../../../../helper', __FILE__)
2
2
 
3
- describe('Menus::Plugin::Menus') do
3
+ describe 'Menus::Plugin::Menus' do
4
4
  extend Ramaze::Helper::MenuFrontend
5
5
 
6
6
  nav_menu = Menus::Model::Menu.create(
@@ -33,7 +33,7 @@ describe('Menus::Plugin::Menus') do
33
33
  :sort_order => 3
34
34
  )
35
35
 
36
- it("Retrieve a menu with all items") do
36
+ it "Retrieve a menu with all items" do
37
37
  menu = render_menu(nav_menu.slug).strip
38
38
 
39
39
  menu.include?('Spec').should == true
@@ -42,7 +42,7 @@ describe('Menus::Plugin::Menus') do
42
42
  menu.include?('<ul class="children">').should == true
43
43
  end
44
44
 
45
- it('Retrieve a menu with all items by the menu id') do
45
+ it 'Retrieve a menu with all items by the menu id' do
46
46
  menu = render_menu(nav_menu.id).strip
47
47
 
48
48
  menu.include?('Spec').should == true
@@ -51,7 +51,7 @@ describe('Menus::Plugin::Menus') do
51
51
  menu.include?('<ul class="children">').should == true
52
52
  end
53
53
 
54
- it("Retrieve a menu with only 1 item") do
54
+ it "Retrieve a menu with only 1 item" do
55
55
  menu = render_menu(nav_menu.slug, :limit => 1).strip
56
56
 
57
57
  menu.include?('Spec').should == true
@@ -60,7 +60,7 @@ describe('Menus::Plugin::Menus') do
60
60
  menu.include?('<ul class="children">').should == false
61
61
  end
62
62
 
63
- it("Retrieve a menu with only the root elemements") do
63
+ it "Retrieve a menu with only the root elemements" do
64
64
  menu = render_menu(nav_menu.slug, :sub => false).strip
65
65
 
66
66
  menu.include?('Spec').should == true
@@ -69,7 +69,7 @@ describe('Menus::Plugin::Menus') do
69
69
  menu.include?('<ul class="children">').should == false
70
70
  end
71
71
 
72
- it('Retrieve a set of items and sort them') do
72
+ it 'Retrieve a set of items and sort them' do
73
73
  menu = render_menu(nav_menu.slug, :order => :desc, :sub => false)
74
74
  menu_asc = render_menu(nav_menu.slug, :order => :asc, :sub => false)
75
75
  menu = Nokogiri::HTML.fragment(menu)
@@ -92,7 +92,7 @@ describe('Menus::Plugin::Menus') do
92
92
  .should == item_2.html_class
93
93
  end
94
94
 
95
- it('Not set empty attributes') do
95
+ it 'Do not set empty attributes' do
96
96
  menu = render_menu(nav_menu.slug)
97
97
 
98
98
  menu.include?('id=""').should == false
@@ -0,0 +1,121 @@
1
+ require File.expand_path('../../../../../helper', __FILE__)
2
+
3
+ describe 'Menus::Model::Menu' do
4
+ menu = Menus::Model::Menu.create(:name => 'Spec')
5
+
6
+ after do
7
+ Menus::Model::MenuItem.destroy
8
+ end
9
+
10
+ # The structure in this specification should look like the following:
11
+ #
12
+ # item 0
13
+ # |_ item 1
14
+ # |_ item 2
15
+ # |_ item 3
16
+ # |_ item 4
17
+ #
18
+ it 'Build the hierarchy for 5 nested menu items' do
19
+ parent_id = nil
20
+ items = []
21
+
22
+ 5.times do |i|
23
+ menu_item = Menus::Model::MenuItem.create(
24
+ :name => "Menu item #{i}",
25
+ :url => "/#{i}",
26
+ :menu_id => menu.id,
27
+ :sort_order => i,
28
+ :parent_id => parent_id
29
+ )
30
+
31
+ parent_id = menu_item.id
32
+ items << menu_item
33
+ end
34
+
35
+ tree = menu.menu_items_tree
36
+
37
+ tree.length.should == 1
38
+
39
+ tree[0][:node].name.should == 'Menu item 0'
40
+
41
+ children = tree[0][:children][0]
42
+
43
+ children[:node].name.should == 'Menu item 1'
44
+
45
+ children = children[:children][0]
46
+
47
+ children[:node].name.should == 'Menu item 2'
48
+
49
+ children = children[:children][0]
50
+
51
+ children[:node].name.should == 'Menu item 3'
52
+
53
+ children = children[:children][0]
54
+
55
+ children[:node].name.should == 'Menu item 4'
56
+ end
57
+
58
+ # The structure in this test should look like the following:
59
+ #
60
+ # item 0
61
+ # |_ item 1
62
+ # | |_ item 3
63
+ # |
64
+ # |_ item 4
65
+ # |_ item 2
66
+ #
67
+ it 'Build the tree with non sequential parent IDs' do
68
+ item = Menus::Model::MenuItem.create(
69
+ :name => 'Menu item 0',
70
+ :url => '/0',
71
+ :sort_order => 0,
72
+ :menu_id => menu.id
73
+ )
74
+
75
+ item1 = Menus::Model::MenuItem.create(
76
+ :name => 'Menu item 1',
77
+ :url => '/1',
78
+ :sort_order => 1,
79
+ :parent_id => item.id,
80
+ :menu_id => menu.id
81
+ )
82
+
83
+ # Parent ID will be set to the last item.
84
+ item2 = Menus::Model::MenuItem.create(
85
+ :name => 'Menu item 2',
86
+ :url => '/2',
87
+ :sort_order => 4,
88
+ :menu_id => menu.id
89
+ )
90
+
91
+ item3 = Menus::Model::MenuItem.create(
92
+ :name => 'Menu item 3',
93
+ :url => '/3',
94
+ :sort_order => 2,
95
+ :parent_id => item1.id,
96
+ :menu_id => menu.id
97
+ )
98
+
99
+ item4 = Menus::Model::MenuItem.create(
100
+ :name => 'Menu item 4',
101
+ :url => '/4',
102
+ :sort_order => 3,
103
+ :menu_id => menu.id
104
+ )
105
+
106
+ item2.update(:parent_id => item4.id)
107
+
108
+ tree = menu.menu_items_tree
109
+
110
+ tree.length.should == 2
111
+
112
+ tree[0][:node].name.should == 'Menu item 0'
113
+ tree[0][:children][0][:node].name.should == 'Menu item 1'
114
+ tree[0][:children][0][:children][0][:node].name.should == 'Menu item 3'
115
+
116
+ tree[1][:node].name.should == 'Menu item 4'
117
+ tree[1][:children][0][:node].name.should == 'Menu item 2'
118
+ end
119
+
120
+ menu.destroy
121
+ end
@@ -0,0 +1,34 @@
1
+ require File.expand_path('../../../../../helper', __FILE__)
2
+
3
+ describe 'Menus::Model::MenuItem' do
4
+ menu = Menus::Model::Menu.create(:name => 'Spec')
5
+
6
+ after do
7
+ Menus::Model::MenuItem.destroy
8
+ end
9
+
10
+ it 'Sort orders of menu items should auto increment by default' do
11
+ item = menu.add_menu_item(:name => 'Menu item', :url => '/')
12
+ item1 = menu.add_menu_item(:name => 'Menu item 1', :url => '/1')
13
+ item2 = menu.add_menu_item(
14
+ :name => 'Menu item 2',
15
+ :url => '/2',
16
+ :sort_order => 5
17
+ )
18
+
19
+ item3 = menu.add_menu_item(:name => 'Menu item 3', :url => '/3')
20
+ item4 = menu.add_menu_item(
21
+ :name => 'Menu item 4',
22
+ :url => '/4',
23
+ :sort_order => 10
24
+ )
25
+
26
+ item.sort_order.should == 0
27
+ item1.sort_order.should == 1
28
+ item2.sort_order.should == 5
29
+ item3.sort_order.should == 6
30
+ item4.sort_order.should == 10
31
+ end
32
+
33
+ menu.destroy
34
+ end
@@ -1,6 +1,6 @@
1
1
  require File.expand_path('../../../../../helper', __FILE__)
2
2
 
3
- describe("Sections::Controller::SectionEntries") do
3
+ describe "Sections::Controller::SectionEntries" do
4
4
  behaves_like :capybara
5
5
 
6
6
  textbox_id = CustomFields::Model::CustomFieldType[:name => 'textbox'].id
@@ -13,9 +13,7 @@ describe("Sections::Controller::SectionEntries") do
13
13
  :comment_format => 'plain'
14
14
  )
15
15
 
16
- group = CustomFields::Model::CustomFieldGroup.create(
17
- :name => 'Spec fields'
18
- )
16
+ group = CustomFields::Model::CustomFieldGroup.create(:name => 'Spec fields')
19
17
 
20
18
  field = CustomFields::Model::CustomField.create(
21
19
  :name => 'Spec field',
@@ -50,16 +48,7 @@ describe("Sections::Controller::SectionEntries") do
50
48
  title_field = lang('section_entries.labels.title')
51
49
  status_field = lang('section_entries.special.status_hash.published')
52
50
 
53
- it('Submit a form without a CSRF token') do
54
- response = page.driver.post(
55
- Sections::Controller::SectionEntries.r(:save).to_s
56
- )
57
-
58
- response.body.include?(lang('zen_general.errors.csrf')).should == true
59
- response.status.should == 403
60
- end
61
-
62
- it('Find no existing entries') do
51
+ it 'Find no existing entries' do
63
52
  message = lang('section_entries.messages.no_entries')
64
53
 
65
54
  visit(index_url)
@@ -68,14 +57,26 @@ describe("Sections::Controller::SectionEntries") do
68
57
  page.has_content?(message).should == true
69
58
  end
70
59
 
71
- it("Create a new section entry") do
60
+ it 'Try to create a new section entry with a missing CSRF token' do
61
+ visit(index_url)
62
+ click_link(new_button)
63
+
64
+ within '#section_entry_form' do
65
+ find('input[name="csrf_token"]').set('')
66
+ click_on(save_button)
67
+ end
68
+
69
+ page.has_content?(lang('zen_general.errors.csrf')).should == true
70
+ end
71
+
72
+ it "Create a new section entry" do
72
73
  visit(index_url)
73
74
  click_link(new_button)
74
75
 
75
76
  current_path.should == new_url
76
77
  page.has_field?('Spec field').should == true
77
78
 
78
- within('#section_entry_form') do
79
+ within '#section_entry_form' do
79
80
  fill_in(title_field , :with => 'Spec entry')
80
81
  select(status_field , :from => 'form_section_entry_status_id')
81
82
  fill_in('Spec field', :with => 'Spec field value')
@@ -94,13 +95,38 @@ describe("Sections::Controller::SectionEntries") do
94
95
  page.find_field('Spec field').value.should == 'Spec field value'
95
96
  end
96
97
 
97
- it('Search for a section entry') do
98
+ it 'Try to create a new entry with invalid data' do
99
+ visit(index_url)
100
+ click_link(new_button)
101
+
102
+ within '#section_entry_form' do
103
+ fill_in(title_field, :with => 'Title')
104
+ click_on(save_button)
105
+ end
106
+
107
+ page.find('input[name="title"]').value.should == 'Title'
108
+
109
+ page.has_selector?(
110
+ "label[for=\"form_custom_field_value_#{field.id}\"] span.error"
111
+ ).should == true
112
+
113
+ within '#section_entry_form' do
114
+ fill_in(title_field, :with => '')
115
+ fill_in(field.name, :with => 'Custom value')
116
+ click_on(save_button)
117
+ end
118
+
119
+ page.has_selector?('label[for="form_title"] span.error').should == true
120
+ page.find_field(field.name).value.should == 'Custom value'
121
+ end
122
+
123
+ it 'Search for a section entry' do
98
124
  search_button = lang('zen_general.buttons.search')
99
125
  error = lang('zen_general.errors.invalid_search')
100
126
 
101
127
  visit(index_url)
102
128
 
103
- within('#search_form') do
129
+ within '#search_form' do
104
130
  fill_in('query', :with => 'Spec entry')
105
131
  click_on(search_button)
106
132
  end
@@ -108,7 +134,7 @@ describe("Sections::Controller::SectionEntries") do
108
134
  page.has_content?(error).should == false
109
135
  page.has_content?('Spec entry').should == true
110
136
 
111
- within('#search_form') do
137
+ within '#search_form' do
112
138
  fill_in('query', :with => 'does not exist')
113
139
  click_on(search_button)
114
140
  end
@@ -117,14 +143,14 @@ describe("Sections::Controller::SectionEntries") do
117
143
  page.has_content?('Spec entry').should == false
118
144
  end
119
145
 
120
- it("Edit an existing section entry") do
146
+ it "Edit an existing section entry" do
121
147
  visit(index_url)
122
148
  click_link('Spec entry')
123
149
 
124
150
  current_path.should =~ /#{edit_url}\/[0-9]+/
125
151
 
126
152
  # Update the entry
127
- within('#section_entry_form') do
153
+ within '#section_entry_form' do
128
154
  fill_in(title_field , :with => 'Spec entry modified')
129
155
  fill_in('Spec field', :with => 'Spec field value modified')
130
156
  check("form_custom_field_value_#{field_1.id}_1")
@@ -138,14 +164,58 @@ describe("Sections::Controller::SectionEntries") do
138
164
  .value.should == 'chuck'
139
165
  end
140
166
 
141
- it("Edit an existing section entry with invalid data") do
167
+ enable_javascript
168
+
169
+ it 'Automatically save a section entry' do
170
+ visit(index_url)
171
+ click_link('Spec entry modified')
172
+
173
+ within '#section_entry_form' do
174
+ fill_in('title', :with => 'Spec entry autosave')
175
+ end
176
+
177
+ click_link('Spec fields')
178
+
179
+ within '#section_entry_form' do
180
+ fill_in('Spec field', :with => 'Spec field value autosave')
181
+ end
182
+
183
+ autosave_form('section_entry_form')
184
+
185
+ visit(index_url)
186
+
187
+ page.has_content?('Spec entry autosave').should == true
188
+
189
+ click_link('Spec entry autosave')
190
+
191
+ page.find_field('Spec field').value.should == 'Spec field value autosave'
192
+
193
+ within '#section_entry_form' do
194
+ fill_in('title', :with => 'Spec entry modified')
195
+ end
196
+
197
+ click_link('Spec fields')
198
+
199
+ within '#section_entry_form' do
200
+ fill_in('Spec field', :with => 'Spec field value modified')
201
+ click_on(save_button)
202
+ end
203
+
204
+ page.has_selector?('span.error').should == false
205
+ page.find('input[name="title"]').value.should == 'Spec entry modified'
206
+ page.find_field('Spec field').value.should == 'Spec field value modified'
207
+ end
208
+
209
+ disable_javascript
210
+
211
+ it "Edit an existing section entry with invalid data" do
142
212
  visit(index_url)
143
213
  click_link('Spec entry')
144
214
 
145
215
  current_path.should =~ /#{edit_url}\/[0-9]+/
146
216
 
147
217
  # Update the entry
148
- within('#section_entry_form') do
218
+ within '#section_entry_form' do
149
219
  fill_in(field.name , :with => '')
150
220
  click_on(save_button)
151
221
  end
@@ -155,24 +225,24 @@ describe("Sections::Controller::SectionEntries") do
155
225
  ).should == true
156
226
  end
157
227
 
158
- it('Fail to delete an entry without an ID') do
228
+ it 'Fail to delete an entry without an ID' do
159
229
  visit(index_url)
160
230
  click_on(delete_button)
161
231
 
162
232
  page.has_selector?('input[name="section_entry_ids[]"]').should == true
163
233
  end
164
234
 
165
- it("Delete an existing section entry") do
235
+ it "Delete an existing section entry" do
166
236
  visit(index_url)
167
237
 
168
238
  # Mark the entry
169
239
  check('section_entry_ids[]')
170
240
  click_on(delete_button)
171
241
 
172
- page.has_selector?('table tbody tr').should == false
242
+ page.has_content?('Spec entry modified').should == false
173
243
  end
174
244
 
175
- it('Call the event new_section_entry (before and after)') do
245
+ it 'Call the event new_section_entry (before and after)' do
176
246
  event_name = nil
177
247
 
178
248
  Zen::Event.listen(:before_new_section_entry) do |entry|
@@ -186,7 +256,7 @@ describe("Sections::Controller::SectionEntries") do
186
256
  visit(index_url)
187
257
  click_on(new_button)
188
258
 
189
- within('#section_entry_form') do
259
+ within '#section_entry_form' do
190
260
  fill_in(title_field , :with => 'Entry')
191
261
  select(status_field , :from => 'form_section_entry_status_id')
192
262
  fill_in('Spec field', :with => 'Spec field value')
@@ -201,7 +271,7 @@ describe("Sections::Controller::SectionEntries") do
201
271
  Zen::Event.delete(:before_new_section_entry, :after_new_section_entry)
202
272
  end
203
273
 
204
- it('Call the event edit_section_entry (before and after)') do
274
+ it 'Call the event edit_section_entry (before and after)' do
205
275
  event_name = nil
206
276
 
207
277
  Zen::Event.listen(:before_edit_section_entry) do |entry|
@@ -215,7 +285,7 @@ describe("Sections::Controller::SectionEntries") do
215
285
  visit(index_url)
216
286
  click_on('Entry with event')
217
287
 
218
- within('#section_entry_form') do
288
+ within '#section_entry_form' do
219
289
  click_on(save_button)
220
290
  end
221
291
 
@@ -226,10 +296,9 @@ describe("Sections::Controller::SectionEntries") do
226
296
  Zen::Event.delete(:before_edit_section_entry, :after_edit_section_entry)
227
297
  end
228
298
 
229
- it('Call the event delete_section_entry (before and after)') do
299
+ it 'Call the event delete_section_entry (before and after)' do
230
300
  event_name = nil
231
301
  event_name2 = nil
232
- message = lang('section_entries.messages.no_entries')
233
302
 
234
303
  Zen::Event.listen(:before_delete_section_entry) do |entry|
235
304
  event_name = entry.title
@@ -239,14 +308,10 @@ describe("Sections::Controller::SectionEntries") do
239
308
  event_name2 = entry.title
240
309
  end
241
310
 
242
- visit(index_url)
243
- check('section_entry_ids[]')
244
- click_on(delete_button)
311
+ Sections::Model::SectionEntry[:slug => 'entry'].destroy
245
312
 
246
- page.has_selector?('table tbody tr').should == false
247
- page.has_content?(message).should == true
248
- event_name.should == 'Entry modified'
249
- event_name2.should == event_name
313
+ event_name.should == 'Entry modified'
314
+ event_name2.should == event_name
250
315
 
251
316
  Zen::Event.delete(:before_delete_section_entry, :after_delete_section_entry)
252
317
  end