zen 0.2.8 → 0.3b
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.
- data/.gems +20 -0
- data/.mailmap +3 -2
- data/.rvmrc +1 -1
- data/.travis.yml +13 -2
- data/.yardopts +13 -0
- data/AUTHORS +1 -1
- data/README.md +115 -77
- data/Rakefile +6 -7
- data/bin/zen +12 -5
- data/guide/_static/categories/categories.png +0 -0
- data/guide/_static/categories/category_groups.png +0 -0
- data/guide/_static/categories/new_category.png +0 -0
- data/guide/_static/categories/new_category_group.png +0 -0
- data/guide/_static/comments/comments.png +0 -0
- data/guide/_static/comments/edit_comment.png +0 -0
- data/guide/_static/custom_fields/custom_field_groups.png +0 -0
- data/guide/_static/custom_fields/custom_field_types.png +0 -0
- data/guide/_static/custom_fields/custom_fields.png +0 -0
- data/guide/_static/custom_fields/edit_custom_field_general.png +0 -0
- data/guide/_static/custom_fields/edit_custom_field_group.png +0 -0
- data/guide/_static/custom_fields/edit_custom_field_settings.png +0 -0
- data/guide/_static/custom_fields/edit_custom_field_type.png +0 -0
- data/guide/_static/menus/edit_menu.png +0 -0
- data/guide/_static/menus/edit_menu_item.png +0 -0
- data/guide/_static/menus/menu_items.png +0 -0
- data/guide/_static/menus/menus.png +0 -0
- data/guide/_static/sections/edit_entry.png +0 -0
- data/guide/_static/sections/edit_entry_categories.png +0 -0
- data/guide/_static/sections/edit_entry_general.png +0 -0
- data/guide/_static/sections/edit_entry_meta.png +0 -0
- data/guide/_static/sections/edit_section_comments.png +0 -0
- data/guide/_static/sections/edit_section_general.png +0 -0
- data/guide/_static/sections/edit_section_groups.png +0 -0
- data/guide/_static/sections/entries.png +0 -0
- data/guide/_static/sections/sections.png +0 -0
- data/guide/_static/settings/overview_general.png +0 -0
- data/guide/_static/settings/overview_security.png +0 -0
- data/guide/_static/settings/overview_user.png +0 -0
- data/guide/_static/users/edit_user.png +0 -0
- data/guide/_static/users/edit_user_group.png +0 -0
- data/guide/_static/users/edit_user_group_permissions.png +0 -0
- data/guide/_static/users/edit_user_permissions.png +0 -0
- data/guide/_static/users/overview.png +0 -0
- data/guide/_static/users/user_groups_overview.png +0 -0
- data/guide/asset_management.md +117 -0
- data/{CHANGELOG.md → guide/changelog.md} +42 -0
- data/guide/css/common.css +20 -0
- data/guide/getting_started.md +61 -0
- data/guide/hacking.md +52 -0
- data/guide/installation.md +44 -0
- data/guide/javascript.md +352 -0
- data/lib/vendor/sequel_sluggable.rb +137 -0
- data/lib/yard/tags.rb +13 -0
- data/lib/zen.rb +148 -78
- data/lib/zen/asset_groups.rb +85 -0
- data/lib/zen/bin/create.rb +267 -56
- data/lib/zen/bin/default.rb +84 -0
- data/lib/zen/controller/admin_controller.rb +1 -82
- data/lib/zen/controller/base_controller.rb +9 -5
- data/lib/zen/controller/frontend_controller.rb +0 -1
- data/lib/zen/controller/main_controller.rb +30 -42
- data/lib/zen/controller/preview.rb +9 -8
- data/lib/zen/controller/translations.rb +49 -0
- data/lib/zen/error.rb +17 -0
- data/lib/zen/event.rb +118 -0
- data/lib/zen/helper/asset.rb +63 -0
- data/lib/zen/helper/breadcrumb.rb +1 -4
- data/lib/zen/helper/controller.rb +73 -0
- data/lib/zen/helper/locale.rb +42 -0
- data/lib/zen/helper/message.rb +0 -3
- data/lib/zen/helper/search.rb +54 -0
- data/lib/zen/helper/stacked_aspect.rb +249 -0
- data/lib/zen/helper/theme.rb +3 -10
- data/lib/zen/language.rb +356 -181
- data/lib/zen/language/en/zen_general.rb +52 -0
- data/lib/zen/language/en/zen_models.rb +19 -0
- data/lib/zen/language/nl/zen_general.rb +57 -0
- data/lib/zen/language/nl/zen_models.rb +22 -0
- data/lib/zen/language/translation.rb +132 -0
- data/lib/zen/languages.rb +9 -0
- data/lib/zen/layout/admin.xhtml +3 -3
- data/lib/zen/layout/login.xhtml +1 -1
- data/lib/zen/markup.rb +189 -0
- data/lib/zen/model/helper.rb +65 -0
- data/lib/zen/model/init.rb +62 -0
- data/lib/zen/model/methods.rb +6 -7
- data/lib/zen/package.rb +312 -201
- data/lib/zen/package/all.rb +4 -3
- data/lib/zen/package/categories/lib/categories.rb +29 -41
- data/lib/zen/package/categories/lib/categories/controller/categories.rb +185 -130
- data/lib/zen/package/categories/lib/categories/controller/category_groups.rb +172 -102
- data/lib/zen/package/categories/lib/categories/helper/category.rb +4 -9
- data/lib/zen/package/categories/lib/categories/helper/category_frontend.rb +86 -0
- data/lib/zen/package/categories/lib/categories/language/en/categories.rb +40 -0
- data/lib/zen/package/categories/lib/categories/language/en/category_groups.rb +39 -0
- data/lib/zen/package/categories/lib/categories/language/nl/categories.rb +42 -0
- data/lib/zen/package/categories/lib/categories/language/nl/category_groups.rb +42 -0
- data/lib/zen/package/categories/lib/categories/model/category.rb +21 -25
- data/lib/zen/package/categories/lib/categories/model/category_group.rb +21 -15
- data/lib/zen/package/categories/lib/categories/view/admin/categories/form.xhtml +25 -26
- data/lib/zen/package/categories/lib/categories/view/admin/categories/index.xhtml +24 -24
- data/lib/zen/package/categories/lib/categories/view/admin/category-groups/form.xhtml +18 -20
- data/lib/zen/package/categories/lib/categories/view/admin/category-groups/index.xhtml +21 -18
- data/lib/zen/package/comments/lib/comments.rb +30 -50
- data/lib/zen/package/comments/lib/comments/anti_spam.rb +138 -0
- data/lib/zen/package/comments/lib/comments/controller/comments.rb +159 -92
- data/lib/zen/package/comments/lib/comments/controller/comments_form.rb +122 -34
- data/lib/zen/package/comments/lib/comments/helper/comment.rb +0 -3
- data/lib/zen/package/comments/lib/comments/helper/comment_frontend.rb +90 -0
- data/lib/zen/package/comments/lib/comments/language/en/comments.rb +57 -0
- data/lib/zen/package/comments/lib/comments/language/nl/comments.rb +61 -0
- data/lib/zen/package/comments/lib/comments/model/comment.rb +147 -49
- data/lib/zen/package/comments/lib/comments/model/comment_status.rb +0 -2
- data/lib/zen/package/comments/lib/comments/view/admin/comments/form.xhtml +37 -40
- data/lib/zen/package/comments/lib/comments/view/admin/comments/index.xhtml +23 -42
- data/lib/zen/package/comments/migrations/1308774099_comment_status.rb +12 -4
- data/lib/zen/package/comments/migrations/1313851786_remove_defensio_signature.rb +11 -0
- data/lib/zen/package/custom_fields/lib/custom_fields.rb +40 -43
- data/lib/zen/package/custom_fields/lib/custom_fields/blue_form_parameters.rb +72 -17
- data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_field_groups.rb +154 -118
- data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_field_types.rb +147 -90
- data/lib/zen/package/custom_fields/lib/custom_fields/controller/custom_fields.rb +161 -131
- data/lib/zen/package/custom_fields/lib/custom_fields/helper/custom_field.rb +4 -9
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_field_groups.rb +42 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_field_types.rb +51 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_fields.rb +60 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_field_groups.rb +41 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_field_types.rb +49 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_fields.rb +61 -0
- data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field.rb +18 -23
- data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_group.rb +20 -19
- data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_method.rb +1 -3
- data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_type.rb +19 -9
- data/lib/zen/package/custom_fields/lib/custom_fields/model/custom_field_value.rb +18 -15
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-groups/form.xhtml +18 -18
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-groups/index.xhtml +30 -24
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-types/form.xhtml +15 -10
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-field-types/index.xhtml +24 -19
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-fields/form.xhtml +18 -13
- data/lib/zen/package/custom_fields/lib/custom_fields/view/admin/custom-fields/index.xhtml +30 -20
- data/lib/zen/package/extensions/lib/extensions.rb +20 -0
- data/lib/zen/package/extensions/lib/extensions/controller/extensions.rb +41 -0
- data/lib/zen/package/extensions/lib/extensions/language/en/extensions.rb +23 -0
- data/lib/zen/package/extensions/lib/extensions/language/nl/extensions.rb +25 -0
- data/lib/zen/package/extensions/lib/extensions/view/admin/extensions/index.xhtml +86 -0
- data/lib/zen/package/menu.rb +109 -0
- data/lib/zen/package/menus/lib/menus.rb +25 -34
- data/lib/zen/package/menus/lib/menus/controller/menu_items.rb +143 -107
- data/lib/zen/package/menus/lib/menus/controller/menus.rb +166 -115
- data/lib/zen/package/menus/lib/menus/helper/menu.rb +2 -8
- data/lib/zen/package/menus/lib/menus/helper/menu_frontend.rb +114 -0
- data/lib/zen/package/menus/lib/menus/language/en/menu_items.rb +48 -0
- data/lib/zen/package/menus/lib/menus/language/en/menus.rb +48 -0
- data/lib/zen/package/menus/lib/menus/language/nl/menu_items.rb +48 -0
- data/lib/zen/package/menus/lib/menus/language/nl/menus.rb +50 -0
- data/lib/zen/package/menus/lib/menus/model/menu.rb +24 -17
- data/lib/zen/package/menus/lib/menus/model/menu_item.rb +37 -13
- data/lib/zen/package/menus/lib/menus/view/admin/menu-items/form.xhtml +32 -25
- data/lib/zen/package/menus/lib/menus/view/admin/menu-items/index.xhtml +23 -17
- data/lib/zen/package/menus/lib/menus/view/admin/menus/form.xhtml +31 -26
- data/lib/zen/package/menus/lib/menus/view/admin/menus/index.xhtml +20 -22
- data/lib/zen/package/sections/lib/sections.rb +25 -68
- data/lib/zen/package/sections/lib/sections/controller/section_entries.rb +178 -138
- data/lib/zen/package/sections/lib/sections/controller/sections.rb +173 -140
- data/lib/zen/package/sections/lib/sections/helper/section.rb +3 -6
- data/lib/zen/package/sections/lib/sections/helper/section_frontend.rb +146 -0
- data/lib/zen/package/sections/lib/sections/language/en/section_entries.rb +50 -0
- data/lib/zen/package/sections/lib/sections/language/en/sections.rb +55 -0
- data/lib/zen/package/sections/lib/sections/language/nl/section_entries.rb +50 -0
- data/lib/zen/package/sections/lib/sections/language/nl/sections.rb +55 -0
- data/lib/zen/package/sections/lib/sections/model/section.rb +36 -36
- data/lib/zen/package/sections/lib/sections/model/section_entry.rb +52 -59
- data/lib/zen/package/sections/lib/sections/model/section_entry_status.rb +2 -2
- data/lib/zen/package/sections/lib/sections/view/admin/form.xhtml +24 -21
- data/lib/zen/package/sections/lib/sections/view/admin/index.xhtml +24 -26
- data/lib/zen/package/sections/lib/sections/view/admin/section-entries/form.xhtml +33 -31
- data/lib/zen/package/sections/lib/sections/view/admin/section-entries/index.xhtml +24 -25
- data/lib/zen/package/sections/migrations/1308672298_use_id_for_default_section.rb +14 -10
- data/lib/zen/package/sections/migrations/1308813320_section_entry_statuses.rb +12 -6
- data/lib/zen/package/settings/lib/settings.rb +25 -120
- data/lib/zen/package/settings/lib/settings/blue_form_parameters.rb +157 -0
- data/lib/zen/package/settings/lib/settings/controller/settings.rb +94 -69
- data/lib/zen/package/settings/lib/settings/language/en/settings.rb +41 -0
- data/lib/zen/package/settings/lib/settings/language/nl/settings.rb +41 -0
- data/lib/zen/package/settings/lib/settings/model/setting.rb +0 -2
- data/lib/zen/package/settings/lib/settings/setting.rb +379 -0
- data/lib/zen/package/settings/lib/settings/setting_groups.rb +11 -0
- data/lib/zen/package/settings/lib/settings/settings.rb +83 -0
- data/lib/zen/package/settings/lib/settings/settings_group.rb +84 -0
- data/lib/zen/package/settings/lib/settings/singleton_methods.rb +35 -0
- data/lib/zen/package/settings/lib/settings/view/admin/settings/index.xhtml +15 -57
- data/lib/zen/package/settings/migrations/1321197919_remove_unused_columns.rb +17 -0
- data/lib/zen/package/users/lib/users.rb +51 -36
- data/lib/zen/package/users/lib/users/controller/user_groups.rb +133 -98
- data/lib/zen/package/users/lib/users/controller/users.rb +253 -136
- data/lib/zen/package/users/lib/users/helper/access.rb +102 -0
- data/lib/zen/package/users/lib/users/helper/acl.rb +113 -0
- data/lib/zen/package/users/lib/users/helper/users.rb +41 -24
- data/lib/zen/package/users/lib/users/language/en/permissions.rb +16 -0
- data/lib/zen/package/users/lib/users/language/en/user_groups.rb +39 -0
- data/lib/zen/package/users/lib/users/language/en/users.rb +73 -0
- data/lib/zen/package/users/lib/users/language/nl/permissions.rb +16 -0
- data/lib/zen/package/users/lib/users/language/nl/user_groups.rb +41 -0
- data/lib/zen/package/users/lib/users/language/nl/users.rb +74 -0
- data/lib/zen/package/users/lib/users/model/permission.rb +28 -0
- data/lib/zen/package/users/lib/users/model/user.rb +104 -65
- data/lib/zen/package/users/lib/users/model/user_group.rb +28 -24
- data/lib/zen/package/users/lib/users/model/user_status.rb +27 -0
- data/lib/zen/package/users/lib/users/public/admin/css/users/permissions.css +22 -0
- data/lib/zen/package/users/lib/users/public/admin/js/users/permissions.js +33 -0
- data/lib/zen/package/users/lib/users/settings.rb +19 -0
- data/lib/zen/package/users/lib/users/view/admin/user-groups/form.xhtml +58 -28
- data/lib/zen/package/users/lib/users/view/admin/user-groups/index.xhtml +19 -15
- data/lib/zen/package/users/lib/users/view/admin/users/form.xhtml +93 -62
- data/lib/zen/package/users/lib/users/view/admin/users/index.xhtml +23 -36
- data/lib/zen/package/users/lib/users/view/admin/users/login.xhtml +13 -6
- data/lib/zen/package/users/lib/users/view/admin/users/permissions.xhtml +33 -0
- data/lib/zen/package/users/lib/users/view/admin/users/register.xhtml +52 -0
- data/lib/zen/package/users/migrations/1313786058_update_default_date.rb +41 -0
- data/lib/zen/package/users/migrations/1316432327_permissions.rb +36 -0
- data/lib/zen/package/users/migrations/1320272365_status_ids.rb +67 -0
- data/lib/zen/public/admin/css/zen/buttons.css +3 -11
- data/lib/zen/public/admin/css/zen/datepicker.css +23 -13
- data/lib/zen/public/admin/css/zen/editor.css +6 -14
- data/lib/zen/public/admin/css/zen/forms.css +19 -12
- data/lib/zen/public/admin/css/zen/general.css +22 -18
- data/lib/zen/public/admin/css/zen/grid.css +1 -20
- data/lib/zen/public/admin/css/zen/layout.css +26 -11
- data/lib/zen/public/admin/css/zen/messages.css +3 -10
- data/lib/zen/public/admin/css/zen/reset.css +13 -15
- data/lib/zen/public/admin/css/zen/tables.css +8 -10
- data/lib/zen/public/admin/css/zen/tabs.css +2 -10
- data/lib/zen/public/admin/css/zen/window.css +2 -8
- data/lib/zen/public/admin/js/vendor/datepicker.js +540 -240
- data/lib/zen/public/admin/js/vendor/mootools/core.js +273 -283
- data/lib/zen/public/admin/js/vendor/mootools/more.js +131 -136
- data/lib/zen/public/admin/js/zen/index.js +8 -14
- data/lib/zen/public/admin/js/zen/lib/editor.js +36 -33
- data/lib/zen/public/admin/js/zen/lib/editor/markdown.js +0 -6
- data/lib/zen/public/admin/js/zen/lib/editor/textile.js +0 -6
- data/lib/zen/public/admin/js/zen/lib/html_table.js +0 -5
- data/lib/zen/public/admin/js/zen/lib/tabs.js +22 -79
- data/lib/zen/public/admin/js/zen/lib/window.js +12 -22
- data/lib/zen/spec/bacon/color_output.rb +1 -1
- data/lib/zen/spec/helper.rb +6 -11
- data/lib/zen/spec/simplecov.rb +3 -3
- data/lib/zen/task.rb +0 -1
- data/lib/zen/task/build.rake +46 -26
- data/lib/zen/task/clean.rake +14 -7
- data/lib/zen/task/db.rake +31 -29
- data/lib/zen/task/package.rake +19 -23
- data/lib/zen/task/proto.rake +3 -5
- data/lib/zen/task/setup.rake +4 -0
- data/lib/zen/task/test.rake +31 -6
- data/lib/zen/task/theme.rake +13 -19
- data/lib/zen/theme.rb +377 -52
- data/lib/zen/validation.rb +22 -30
- data/lib/zen/version.rb +1 -2
- data/lib/zen/view/bottom.xhtml +9 -1
- data/lib/zen/view/head.xhtml +1 -1
- data/lib/zen/view/main.xhtml +1 -1
- data/lib/zen/view/search.xhtml +9 -0
- data/proto/app/Rakefile +0 -1
- data/proto/app/app.rb +21 -16
- data/proto/app/config/config.rb.erb +41 -0
- data/proto/app/config/{database.rb → database.rb.erb} +17 -14
- data/proto/app/config/middlewares.rb +1 -1
- data/proto/app/theme/default/index.xhtml +25 -0
- data/proto/app/theme/theme.rb +19 -0
- data/proto/app/{log/database/dev → tmp}/.gitkeep +0 -0
- data/proto/migration.rb +3 -5
- data/proto/rack/thin.yml +41 -0
- data/proto/rack/unicorn.rb +38 -0
- data/spec/Rakefile +15 -11
- data/spec/fixtures/zen/helper/controller.rb +13 -0
- data/spec/fixtures/zen/helper/locale.rb +7 -0
- data/spec/fixtures/zen/helper/message.rb +0 -4
- data/spec/fixtures/zen/language.rb +31 -0
- data/spec/fixtures/zen/language/en/spec.rb +11 -0
- data/spec/fixtures/zen/language/nl/spec.rb +11 -0
- data/spec/fixtures/zen/package.rb +0 -10
- data/spec/fixtures/zen/package/categories/helper/category_frontend.rb +16 -0
- data/spec/fixtures/zen/package/comments/helper/comment_frontend.rb +16 -0
- data/spec/fixtures/zen/package/sections/helper/section_frontend.rb +16 -0
- data/spec/fixtures/zen/package/settings/controller/settings.rb +17 -0
- data/spec/fixtures/zen/package/users/helper/access.rb +18 -0
- data/spec/fixtures/zen/package/users/helper/acl.rb +23 -0
- data/spec/fixtures/zen/theme/{default-section → default}/index.xhtml +0 -0
- data/spec/helper.rb +12 -27
- data/{proto/app/log/database/live → spec/public}/.gitkeep +0 -0
- data/spec/zen/controller/admin_controller.rb +5 -6
- data/spec/zen/controller/main_controller.rb +29 -35
- data/spec/zen/controller/preview.rb +9 -10
- data/spec/zen/event.rb +44 -0
- data/spec/zen/helper/breadcrumb.rb +4 -5
- data/spec/zen/helper/controller.rb +21 -0
- data/spec/zen/helper/locale.rb +25 -0
- data/spec/zen/helper/message.rb +4 -11
- data/spec/zen/helper/theme.rb +11 -14
- data/spec/zen/language.rb +48 -22
- data/spec/zen/markup.rb +39 -0
- data/spec/zen/package.rb +48 -11
- data/spec/zen/package/categories/controller/categories.rb +99 -45
- data/spec/zen/package/categories/controller/category_groups.rb +109 -33
- data/spec/zen/package/categories/helper/category.rb +19 -32
- data/spec/zen/package/categories/helper/category_frontend.rb +61 -0
- data/spec/zen/package/comments/anti_spam.rb +50 -0
- data/spec/zen/package/comments/controller/comments.rb +121 -61
- data/spec/zen/package/comments/controller/comments_form.rb +120 -94
- data/spec/zen/package/comments/helper/comment.rb +13 -13
- data/spec/zen/package/comments/helper/comment_frontend.rb +92 -0
- data/spec/zen/package/custom_fields/blue_form_parameters.rb +50 -50
- data/spec/zen/package/custom_fields/controller/custom_field_groups.rb +135 -43
- data/spec/zen/package/custom_fields/controller/custom_field_types.rb +153 -48
- data/spec/zen/package/custom_fields/controller/custom_fields.rb +130 -51
- data/spec/zen/package/custom_fields/helper/custom_field.rb +8 -8
- data/spec/zen/package/extensions/controller/extensions.rb +38 -0
- data/spec/zen/package/menus/controller/menu_items.rb +121 -42
- data/spec/zen/package/menus/controller/menus.rb +125 -38
- data/spec/zen/package/menus/helper/menu.rb +26 -26
- data/spec/zen/package/menus/helper/menu_frontend.rb +104 -0
- data/spec/zen/package/sections/controller/section_entries.rb +145 -89
- data/spec/zen/package/sections/controller/sections.rb +130 -35
- data/spec/zen/package/sections/helper/section.rb +27 -38
- data/spec/zen/package/sections/helper/section_frontend.rb +160 -0
- data/spec/zen/package/settings/controller/settings.rb +73 -8
- data/spec/zen/package/settings/settings.rb +119 -0
- data/spec/zen/package/users/controller/user_groups.rb +134 -34
- data/spec/zen/package/users/controller/users.rb +189 -44
- data/spec/zen/package/users/helper/access.rb +29 -0
- data/spec/zen/package/users/helper/acl.rb +46 -0
- data/spec/zen/package/users/helper/users.rb +20 -64
- data/spec/zen/theme.rb +7 -9
- data/spec/zen/validation.rb +1 -2
- data/zen.gemspec +25 -22
- metadata +303 -222
- data/lib/zen/asset.rb +0 -292
- data/lib/zen/bin/runner.rb +0 -118
- data/lib/zen/error/language_error.rb +0 -10
- data/lib/zen/error/package_error.rb +0 -10
- data/lib/zen/error/plugin_error.rb +0 -10
- data/lib/zen/error/theme_error.rb +0 -10
- data/lib/zen/error/validation_error.rb +0 -10
- data/lib/zen/helper/acl.rb +0 -182
- data/lib/zen/helper/blue_form_vendor.rb +0 -689
- data/lib/zen/language/en/zen_general.yml +0 -25
- data/lib/zen/language/en/zen_models.yml +0 -13
- data/lib/zen/language/nl/zen_general.yml +0 -25
- data/lib/zen/language/nl/zen_models.yml +0 -13
- data/lib/zen/model/settings.rb +0 -78
- data/lib/zen/package/base.rb +0 -62
- data/lib/zen/package/categories/lib/categories/language/en/categories.yml +0 -36
- data/lib/zen/package/categories/lib/categories/language/en/category_groups.yml +0 -34
- data/lib/zen/package/categories/lib/categories/language/nl/categories.yml +0 -40
- data/lib/zen/package/categories/lib/categories/language/nl/category_groups.yml +0 -34
- data/lib/zen/package/categories/lib/categories/plugin/categories.rb +0 -141
- data/lib/zen/package/comments/lib/comments/language/en/comments.yml +0 -48
- data/lib/zen/package/comments/lib/comments/language/nl/comments.yml +0 -50
- data/lib/zen/package/comments/lib/comments/plugin/anti_spam.rb +0 -156
- data/lib/zen/package/comments/lib/comments/plugin/comments.rb +0 -115
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_field_groups.yml +0 -33
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_field_types.yml +0 -40
- data/lib/zen/package/custom_fields/lib/custom_fields/language/en/custom_fields.yml +0 -54
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_field_groups.yml +0 -33
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_field_types.yml +0 -40
- data/lib/zen/package/custom_fields/lib/custom_fields/language/nl/custom_fields.yml +0 -54
- data/lib/zen/package/menus/lib/menus/language/en/menu_items.yml +0 -41
- data/lib/zen/package/menus/lib/menus/language/en/menus.yml +0 -40
- data/lib/zen/package/menus/lib/menus/language/nl/menu_items.yml +0 -41
- data/lib/zen/package/menus/lib/menus/language/nl/menus.yml +0 -40
- data/lib/zen/package/menus/lib/menus/plugin/menus.rb +0 -152
- data/lib/zen/package/sections/lib/sections/language/en/section_entries.yml +0 -44
- data/lib/zen/package/sections/lib/sections/language/en/sections.yml +0 -48
- data/lib/zen/package/sections/lib/sections/language/nl/section_entries.yml +0 -44
- data/lib/zen/package/sections/lib/sections/language/nl/sections.yml +0 -48
- data/lib/zen/package/sections/lib/sections/plugin/section_entries.rb +0 -244
- data/lib/zen/package/sections/lib/sections/plugin/sections.rb +0 -87
- data/lib/zen/package/settings/lib/settings/language/en/settings.yml +0 -36
- data/lib/zen/package/settings/lib/settings/language/nl/settings.yml +0 -37
- data/lib/zen/package/settings/lib/settings/plugin/group_base.rb +0 -39
- data/lib/zen/package/settings/lib/settings/plugin/setting_base.rb +0 -133
- data/lib/zen/package/settings/lib/settings/plugin/settings.rb +0 -251
- data/lib/zen/package/users/lib/users/controller/access_rules.rb +0 -284
- data/lib/zen/package/users/lib/users/language/en/access_rules.yml +0 -38
- data/lib/zen/package/users/lib/users/language/en/user_groups.yml +0 -32
- data/lib/zen/package/users/lib/users/language/en/users.yml +0 -57
- data/lib/zen/package/users/lib/users/language/nl/access_rules.yml +0 -38
- data/lib/zen/package/users/lib/users/language/nl/user_groups.yml +0 -32
- data/lib/zen/package/users/lib/users/language/nl/users.yml +0 -57
- data/lib/zen/package/users/lib/users/model/access_rule.rb +0 -42
- data/lib/zen/package/users/lib/users/public/admin/js/users/access_rules.js +0 -65
- data/lib/zen/package/users/lib/users/public/admin/js/users/lib/access_rules.js +0 -49
- data/lib/zen/package/users/lib/users/view/admin/access-rules/form.xhtml +0 -120
- data/lib/zen/package/users/lib/users/view/admin/access-rules/index.xhtml +0 -102
- data/lib/zen/plugin.rb +0 -182
- data/lib/zen/plugin/base.rb +0 -46
- data/lib/zen/plugin/helper.rb +0 -47
- data/lib/zen/plugin/markup/lib/markup.rb +0 -14
- data/lib/zen/plugin/markup/lib/markup/language/en/markup.yml +0 -6
- data/lib/zen/plugin/markup/lib/markup/markup.rb +0 -165
- data/lib/zen/public/admin/js/zen/lib/asset.js +0 -111
- data/lib/zen/task/plugin.rake +0 -18
- data/lib/zen/theme/base.rb +0 -65
- data/proto/app/config/config.rb +0 -18
- data/spec/fixtures/zen/language/en/spec.yml +0 -10
- data/spec/fixtures/zen/language/nl/spec.yml +0 -7
- data/spec/fixtures/zen/package/settings/plugin/settings.rb +0 -20
- data/spec/zen/asset.rb +0 -97
- data/spec/zen/bin/create.rb +0 -89
- data/spec/zen/bin/runner.rb +0 -47
- data/spec/zen/helper/acl.rb +0 -149
- data/spec/zen/package/categories/plugin/categories.rb +0 -92
- data/spec/zen/package/comments/plugin/anti_spam.rb +0 -59
- data/spec/zen/package/comments/plugin/comments.rb +0 -107
- data/spec/zen/package/menus/plugin/menus.rb +0 -120
- data/spec/zen/package/sections/plugin/section_entries.rb +0 -161
- data/spec/zen/package/sections/plugin/sections.rb +0 -75
- data/spec/zen/package/settings/plugin/settings.rb +0 -33
- data/spec/zen/package/users/controller/access_rules.rb +0 -90
- data/spec/zen/plugin.rb +0 -64
- data/spec/zen/plugin/helper.rb +0 -11
- data/spec/zen/plugin/markup.rb +0 -44
|
@@ -1,121 +1,162 @@
|
|
|
1
|
-
|
|
1
|
+
##
|
|
2
|
+
# Package for managing sections and section entries.
|
|
3
|
+
#
|
|
4
|
+
# ## Controllers
|
|
5
|
+
#
|
|
6
|
+
# * {Sections::Controller::Sections}
|
|
7
|
+
# * {Sections::Controller::SectionEntries}
|
|
8
|
+
#
|
|
9
|
+
# ## Helpers
|
|
10
|
+
#
|
|
11
|
+
# * {Ramaze::Helper::Section}
|
|
12
|
+
# * {Ramaze::Helper::SectionFrontend}
|
|
13
|
+
#
|
|
14
|
+
# ## Models
|
|
15
|
+
#
|
|
16
|
+
# * {Sections::Model::Section}
|
|
17
|
+
# * {Sections::Model::SectionEntry}
|
|
18
|
+
# * {Sections::Model::SectionEntryStatus}
|
|
19
|
+
#
|
|
2
20
|
module Sections
|
|
3
21
|
#:nodoc:
|
|
4
22
|
module Controller
|
|
5
23
|
##
|
|
6
|
-
# Sections
|
|
7
|
-
#
|
|
8
|
-
#
|
|
9
|
-
# to
|
|
24
|
+
# Sections are data containers with a specific purpose. For example, you
|
|
25
|
+
# might have a "Blog" or "Pages" section each with it's own entries,
|
|
26
|
+
# categories, custom fields and so on. A section and it's entries glue all
|
|
27
|
+
# the other data types (such as those mentioned earlier) together to form
|
|
28
|
+
# the content displayed on your website.
|
|
10
29
|
#
|
|
11
|
-
#
|
|
12
|
-
#
|
|
30
|
+
# Sections can be managed by going to ``/admin``. This page will show an
|
|
31
|
+
# overview of all existing sections as well as a few buttons and links that
|
|
32
|
+
# allow you to edit, create or delete sections as well as managing the
|
|
33
|
+
# entries for each existing section.
|
|
13
34
|
#
|
|
14
|
-
#
|
|
15
|
-
#
|
|
35
|
+
# 
|
|
36
|
+
#
|
|
37
|
+
# ## Creating/Editing Sections
|
|
38
|
+
#
|
|
39
|
+
# Creating a new section can be done by clicking the button "Add section"
|
|
40
|
+
# while editing a section can be done by clicking the name of a section. In
|
|
41
|
+
# both cases you'll end up with a form that looks like the one in the images
|
|
42
|
+
# below.
|
|
43
|
+
#
|
|
44
|
+
# 
|
|
45
|
+
# 
|
|
46
|
+
# 
|
|
47
|
+
#
|
|
48
|
+
# In this form you can specify the following fields:
|
|
49
|
+
#
|
|
50
|
+
# * **Name** (required): the name of the section.
|
|
51
|
+
# * **Slug**: a URL friendly version of the section name. If no slug is
|
|
52
|
+
# specified one will be generated automatically.
|
|
53
|
+
# * **Description**: a description of the section to help clarify it's
|
|
54
|
+
# purpose.
|
|
55
|
+
# * **Allow comments** (required): whether or not users can submit comments
|
|
56
|
+
# for entries assigned to the section.
|
|
57
|
+
# * **Comments require an account** (required): when set to "Yes" a user has
|
|
58
|
+
# to be logged in in order to post a comment.
|
|
59
|
+
# * **Moderate comments** (required): when enabled a comment first has to be
|
|
60
|
+
# approved before it's displayed. This option is disabled by default.
|
|
61
|
+
# * **Comment format** (required): the format comments are posted in such as
|
|
62
|
+
# Markdown or plain text.
|
|
63
|
+
# * **Custom field groups**: all the custom field groups to assign to the
|
|
64
|
+
# section. These groups can then be used by all the entries in the
|
|
65
|
+
# section.
|
|
66
|
+
# * **Category groups**: all the category groups that should be available to
|
|
67
|
+
# the section entries of this section.
|
|
68
|
+
#
|
|
69
|
+
# Note that the name and the slug of a section can not be longer than 255
|
|
70
|
+
# characters.
|
|
71
|
+
#
|
|
72
|
+
# ## Used Permissions
|
|
73
|
+
#
|
|
74
|
+
# * show_section
|
|
75
|
+
# * new_section
|
|
76
|
+
# * edit_section
|
|
77
|
+
# * delete_section
|
|
78
|
+
#
|
|
79
|
+
# ## Events
|
|
80
|
+
#
|
|
81
|
+
# All events in this controller receive an instance of
|
|
82
|
+
# {Sections::Model::Section}. The event ``after_delete_section`` receives an
|
|
83
|
+
# instance that has already been removed, thus you can't make any changes to
|
|
84
|
+
# it and save those in the database.
|
|
85
|
+
#
|
|
86
|
+
# Example of creating a dummy section entry:
|
|
87
|
+
#
|
|
88
|
+
# Zen::Event.listen(:new_section) do |section|
|
|
89
|
+
# section.add_section_entry(:title => 'My Entry', :user_id => user.id)
|
|
90
|
+
# end
|
|
91
|
+
#
|
|
92
|
+
# @since 0.1
|
|
93
|
+
# @map /admin
|
|
94
|
+
# @event before_new_section
|
|
95
|
+
# @event after_new_section
|
|
96
|
+
# @event before_edit_section
|
|
97
|
+
# @event after_edit_section
|
|
98
|
+
# @event before_delete_section
|
|
99
|
+
# @event after_delete_section
|
|
16
100
|
#
|
|
17
101
|
class Sections < Zen::Controller::AdminController
|
|
18
|
-
include ::Sections::Model
|
|
19
|
-
|
|
20
102
|
map '/admin'
|
|
21
103
|
helper :section
|
|
104
|
+
title 'sections.titles.%s'
|
|
22
105
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
before_all do
|
|
27
|
-
csrf_protection(:save, :delete) do
|
|
28
|
-
respond(lang('zen_general.errors.csrf'), 403)
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
##
|
|
33
|
-
# Constructor method, called upon initialization. It's used to set the URL
|
|
34
|
-
# to which forms send their data and load the language pack.
|
|
35
|
-
#
|
|
36
|
-
# This method loads the following language files:
|
|
37
|
-
#
|
|
38
|
-
# * sections
|
|
39
|
-
#
|
|
40
|
-
# @author Yorick Peterse
|
|
41
|
-
# @since 0.1
|
|
42
|
-
#
|
|
43
|
-
def initialize
|
|
44
|
-
super
|
|
45
|
-
|
|
46
|
-
Zen::Language.load('sections')
|
|
47
|
-
|
|
48
|
-
# Set the page title
|
|
49
|
-
if !action.method.nil?
|
|
50
|
-
method = action.method.to_sym
|
|
51
|
-
@page_title = lang("sections.titles.#{method}") rescue nil
|
|
52
|
-
end
|
|
106
|
+
csrf_protection :save, :delete
|
|
107
|
+
load_asset_group :tabs, [:edit, :new]
|
|
53
108
|
|
|
109
|
+
# Hook that is executed before Sections#index(), Sections#new() and
|
|
110
|
+
# Sections#edit().
|
|
111
|
+
before(:index, :new, :edit) do
|
|
54
112
|
@boolean_hash = {
|
|
55
113
|
true => lang('zen_general.special.boolean_hash.true'),
|
|
56
114
|
false => lang('zen_general.special.boolean_hash.false')
|
|
57
115
|
}
|
|
116
|
+
|
|
117
|
+
@custom_field_group_pk_hash = ::CustomFields::Model::CustomFieldGroup \
|
|
118
|
+
.pk_hash(:name).invert
|
|
119
|
+
|
|
120
|
+
@category_group_pk_hash = ::Categories::Model::CategoryGroup \
|
|
121
|
+
.pk_hash(:name).invert
|
|
58
122
|
end
|
|
59
123
|
|
|
60
124
|
##
|
|
61
125
|
# Show an overview of all existing sections. Using this overview a user
|
|
62
126
|
# can manage an existing section, delete it or create a new one.
|
|
63
127
|
#
|
|
64
|
-
#
|
|
65
|
-
#
|
|
66
|
-
# * read
|
|
67
|
-
#
|
|
68
|
-
# @author Yorick Peterse
|
|
69
|
-
# @since 0.1
|
|
128
|
+
# @since 0.1
|
|
129
|
+
# @permission show_section
|
|
70
130
|
#
|
|
71
131
|
def index
|
|
72
|
-
|
|
132
|
+
authorize_user!(:show_section)
|
|
73
133
|
|
|
74
134
|
set_breadcrumbs(lang('sections.titles.index'))
|
|
75
135
|
|
|
76
|
-
@sections =
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
##
|
|
80
|
-
# Hook that is executed before the edit() and new() methods.
|
|
81
|
-
#
|
|
82
|
-
# @author Yorick Peterse
|
|
83
|
-
# @since 0.2.8
|
|
84
|
-
#
|
|
85
|
-
before(:edit, :new) do
|
|
86
|
-
@custom_field_group_pk_hash = CustomFields::Model::CustomFieldGroup \
|
|
87
|
-
.pk_hash(:name)
|
|
136
|
+
@sections = search do |query|
|
|
137
|
+
::Sections::Model::Section.search(query).order(:id.asc)
|
|
138
|
+
end
|
|
88
139
|
|
|
89
|
-
@
|
|
90
|
-
|
|
140
|
+
@sections ||= ::Sections::Model::Section.order(:id.asc)
|
|
141
|
+
@sections = paginate(@sections)
|
|
91
142
|
end
|
|
92
143
|
|
|
93
144
|
##
|
|
94
145
|
# Show a form that lets the user edit an existing section.
|
|
95
146
|
#
|
|
96
|
-
#
|
|
97
|
-
#
|
|
98
|
-
#
|
|
99
|
-
# * update
|
|
100
|
-
#
|
|
101
|
-
# @author Yorick Peterse
|
|
102
|
-
# @param [Integer] id The ID of the section to retrieve so that we can
|
|
103
|
-
# edit it.
|
|
104
|
-
# @since 0.1
|
|
147
|
+
# @param [Fixnum] id The ID of the section to edit.
|
|
148
|
+
# @since 0.1
|
|
149
|
+
# @permission edit_section
|
|
105
150
|
#
|
|
106
151
|
def edit(id)
|
|
107
|
-
|
|
152
|
+
authorize_user!(:edit_section)
|
|
108
153
|
|
|
109
154
|
set_breadcrumbs(
|
|
110
155
|
Sections.a(lang('sections.titles.index'), :index),
|
|
111
156
|
@page_title
|
|
112
157
|
)
|
|
113
158
|
|
|
114
|
-
|
|
115
|
-
@section = flash[:form_data]
|
|
116
|
-
else
|
|
117
|
-
@section = validate_section(id)
|
|
118
|
-
end
|
|
159
|
+
@section = flash[:form_data] || validate_section(id)
|
|
119
160
|
|
|
120
161
|
render_view(:form)
|
|
121
162
|
end
|
|
@@ -123,40 +164,32 @@ module Sections
|
|
|
123
164
|
##
|
|
124
165
|
# Show a form that lets the user create a new section.
|
|
125
166
|
#
|
|
126
|
-
#
|
|
127
|
-
#
|
|
128
|
-
# * create
|
|
129
|
-
# * read
|
|
130
|
-
#
|
|
131
|
-
# @author Yorick Peterse
|
|
132
|
-
# @since 0.1
|
|
167
|
+
# @since 0.1
|
|
168
|
+
# @permission new_section
|
|
133
169
|
#
|
|
134
170
|
def new
|
|
135
|
-
|
|
171
|
+
authorize_user!(:new_section)
|
|
136
172
|
|
|
137
173
|
set_breadcrumbs(
|
|
138
174
|
Sections.a(lang('sections.titles.index'), :index),
|
|
139
175
|
@page_title
|
|
140
176
|
)
|
|
141
177
|
|
|
142
|
-
@section = Section.new
|
|
178
|
+
@section = flash[:form_data] || ::Sections::Model::Section.new
|
|
143
179
|
|
|
144
180
|
render_view(:form)
|
|
145
181
|
end
|
|
146
182
|
|
|
147
183
|
##
|
|
148
|
-
#
|
|
149
|
-
# to the proper URL. Based on the value of a hidden field named "id" we'll
|
|
150
|
-
# determine if the data will be used to create a new section or to update
|
|
151
|
-
# an existing one.
|
|
152
|
-
#
|
|
153
|
-
# This method requires the following permissions:
|
|
184
|
+
# Saves any changes made to an existing section or creates a new one.
|
|
154
185
|
#
|
|
155
|
-
#
|
|
156
|
-
#
|
|
157
|
-
#
|
|
158
|
-
# @
|
|
159
|
-
# @
|
|
186
|
+
# @since 0.1
|
|
187
|
+
# @event before_new_section
|
|
188
|
+
# @event after_new_section
|
|
189
|
+
# @event before_edit_section
|
|
190
|
+
# @event ater_edit_section
|
|
191
|
+
# @permission new_section (when creating a section)
|
|
192
|
+
# @permission edit_section (when editing a section)
|
|
160
193
|
#
|
|
161
194
|
def save
|
|
162
195
|
post = request.subset(
|
|
@@ -173,92 +206,92 @@ module Sections
|
|
|
173
206
|
)
|
|
174
207
|
|
|
175
208
|
if post['id'] and !post['id'].empty?
|
|
176
|
-
|
|
209
|
+
authorize_user!(:edit_section)
|
|
177
210
|
|
|
178
|
-
|
|
179
|
-
save_action
|
|
211
|
+
section = validate_section(post['id'])
|
|
212
|
+
save_action = :save
|
|
213
|
+
before_event = :before_edit_section
|
|
214
|
+
after_event = :after_edit_section
|
|
180
215
|
else
|
|
181
|
-
|
|
216
|
+
authorize_user!(:new_section)
|
|
182
217
|
|
|
183
|
-
|
|
184
|
-
save_action
|
|
218
|
+
section = ::Sections::Model::Section.new
|
|
219
|
+
save_action = :new
|
|
220
|
+
before_event = :before_new_section
|
|
221
|
+
after_event = :after_new_section
|
|
185
222
|
end
|
|
186
223
|
|
|
187
|
-
|
|
188
|
-
|
|
224
|
+
success = lang("sections.success.#{save_action}")
|
|
225
|
+
error = lang("sections.errors.#{save_action}")
|
|
189
226
|
|
|
190
227
|
post['custom_field_group_pks'] ||= []
|
|
191
228
|
post['category_group_pks'] ||= []
|
|
192
229
|
|
|
193
|
-
# The primary keys have to be integers otherwise Sequel will soil it's
|
|
194
|
-
# pants
|
|
195
|
-
['custom_field_group_pks', 'category_group_pks'].each do |k|
|
|
196
|
-
post[k].map! { |value| value.to_i }
|
|
197
|
-
end
|
|
198
|
-
|
|
199
|
-
# Auto generate the slug if it's empty
|
|
200
|
-
post.delete('slug') if post['slug'].empty?
|
|
201
230
|
post.delete('id')
|
|
202
231
|
|
|
203
232
|
begin
|
|
204
|
-
|
|
233
|
+
post.each { |k, v| section.send("#{k}=", v) }
|
|
234
|
+
Zen::Event.call(before_event, section)
|
|
235
|
+
|
|
236
|
+
section.save
|
|
205
237
|
|
|
206
238
|
if save_action == :new
|
|
207
|
-
|
|
208
|
-
|
|
239
|
+
section.custom_field_group_pks = post['custom_field_group_pks']
|
|
240
|
+
section.category_group_pks = post['category_group_pks']
|
|
209
241
|
end
|
|
210
|
-
|
|
211
|
-
message(:success, flash_success)
|
|
212
242
|
rescue => e
|
|
213
243
|
Ramaze::Log.error(e.inspect)
|
|
214
|
-
message(:error,
|
|
244
|
+
message(:error, error)
|
|
215
245
|
|
|
216
|
-
flash[:form_data] =
|
|
217
|
-
flash[:form_errors] =
|
|
246
|
+
flash[:form_data] = section
|
|
247
|
+
flash[:form_errors] = section.errors
|
|
218
248
|
|
|
219
249
|
redirect_referrer
|
|
220
250
|
end
|
|
221
251
|
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
end
|
|
252
|
+
Zen::Event.call(after_event, section)
|
|
253
|
+
|
|
254
|
+
message(:success, success)
|
|
255
|
+
redirect(Sections.r(:edit, section.id))
|
|
227
256
|
end
|
|
228
257
|
|
|
229
258
|
##
|
|
230
|
-
#
|
|
231
|
-
#
|
|
232
|
-
# field named "section_ids[]". This field should contain the primary
|
|
233
|
-
# values of each section that has to be deleted.
|
|
234
|
-
#
|
|
235
|
-
# This method requires the following permissions:
|
|
236
|
-
#
|
|
237
|
-
# * delete
|
|
259
|
+
# Deletes a number of sections and all the related data. These sections
|
|
260
|
+
# should be specified in the POST array "section_ids[]".
|
|
238
261
|
#
|
|
239
|
-
# @
|
|
240
|
-
# @
|
|
262
|
+
# @since 0.1
|
|
263
|
+
# @event before_delete_section
|
|
264
|
+
# @event after_delete_section
|
|
265
|
+
# @permission delete_section
|
|
241
266
|
#
|
|
242
267
|
def delete
|
|
243
|
-
|
|
268
|
+
authorize_user!(:delete_section)
|
|
244
269
|
|
|
245
|
-
if !request.params['section_ids']
|
|
270
|
+
if !request.params['section_ids'] \
|
|
271
|
+
or request.params['section_ids'].empty?
|
|
246
272
|
message(:error, lang('sections.errors.no_delete'))
|
|
247
273
|
redirect_referrer
|
|
248
274
|
end
|
|
249
275
|
|
|
250
276
|
request.params['section_ids'].each do |id|
|
|
277
|
+
section = ::Sections::Model::Section[id]
|
|
278
|
+
|
|
279
|
+
next if section.nil?
|
|
280
|
+
Zen::Event.call(:before_delete_section, section)
|
|
281
|
+
|
|
251
282
|
begin
|
|
252
|
-
|
|
253
|
-
message(:success, lang('sections.success.delete'))
|
|
283
|
+
section.destroy
|
|
254
284
|
rescue => e
|
|
255
285
|
Ramaze::Log.error(e.inspect)
|
|
256
286
|
message(:error, lang('sections.errors.delete') % id)
|
|
257
287
|
|
|
258
288
|
redirect_referrer
|
|
259
289
|
end
|
|
290
|
+
|
|
291
|
+
Zen::Event.call(:after_delete_section, section)
|
|
260
292
|
end
|
|
261
293
|
|
|
294
|
+
message(:success, lang('sections.success.delete'))
|
|
262
295
|
redirect_referrer
|
|
263
296
|
end
|
|
264
297
|
end # Sections
|
|
@@ -3,14 +3,12 @@ module Ramaze
|
|
|
3
3
|
##
|
|
4
4
|
# Helper for the sections package.
|
|
5
5
|
#
|
|
6
|
-
# @author Yorick Peterse
|
|
7
6
|
# @since 0.2.8
|
|
8
7
|
#
|
|
9
8
|
module Section
|
|
10
9
|
##
|
|
11
10
|
# Validates the section ID and returns the section if it's valid.
|
|
12
11
|
#
|
|
13
|
-
# @author Yorick Peterse
|
|
14
12
|
# @since 0.2.8
|
|
15
13
|
# @param [Fixnum] section_id The ID of the section to validate.
|
|
16
14
|
# @return [Sections::Model::Section]
|
|
@@ -29,13 +27,12 @@ module Ramaze
|
|
|
29
27
|
##
|
|
30
28
|
# Validates a section entry and returns it if it's valid.
|
|
31
29
|
#
|
|
32
|
-
#
|
|
33
|
-
# @author Yorick Peterse
|
|
30
|
+
#
|
|
34
31
|
# @since 0.2.8
|
|
35
32
|
# @param [Fixnum] section_entry_id The ID of the section entry to
|
|
36
|
-
#
|
|
33
|
+
# validate.
|
|
37
34
|
# @param [Fixnum] section_id The ID of the section to use when
|
|
38
|
-
#
|
|
35
|
+
# redirecting the user to the overview of all entries.
|
|
39
36
|
# @return [Sections::Model::SectionEntry]
|
|
40
37
|
#
|
|
41
38
|
def validate_section_entry(section_entry_id, section_id)
|