trusty-cms 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (388) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +23 -0
  3. data/CHANGELOG.md +754 -0
  4. data/CONTRIBUTORS.md +263 -0
  5. data/Gemfile +40 -0
  6. data/Gemfile.lock +177 -0
  7. data/INSTALL.md +10 -0
  8. data/LICENSE.md +21 -0
  9. data/README.md +85 -0
  10. data/Rakefile +7 -0
  11. data/app/controllers/admin/configuration_controller.rb +50 -0
  12. data/app/controllers/admin/extensions_controller.rb +11 -0
  13. data/app/controllers/admin/layouts_controller.rb +8 -0
  14. data/app/controllers/admin/page_fields_controller.rb +9 -0
  15. data/app/controllers/admin/page_parts_controller.rb +9 -0
  16. data/app/controllers/admin/pages_controller.rb +89 -0
  17. data/app/controllers/admin/preferences_controller.rb +46 -0
  18. data/app/controllers/admin/references_controller.rb +7 -0
  19. data/app/controllers/admin/resource_controller.rb +245 -0
  20. data/app/controllers/admin/users_controller.rb +40 -0
  21. data/app/controllers/admin/welcome_controller.rb +48 -0
  22. data/app/controllers/application_controller.rb +114 -0
  23. data/app/controllers/site_controller.rb +97 -0
  24. data/app/helpers/admin/configuration_helper.rb +80 -0
  25. data/app/helpers/admin/export_helper.rb +2 -0
  26. data/app/helpers/admin/extensions_helper.rb +2 -0
  27. data/app/helpers/admin/layouts_helper.rb +21 -0
  28. data/app/helpers/admin/node_helper.rb +96 -0
  29. data/app/helpers/admin/pages_helper.rb +117 -0
  30. data/app/helpers/admin/preferences_helper.rb +3 -0
  31. data/app/helpers/admin/references_helper.rb +46 -0
  32. data/app/helpers/admin/regions_helper.rb +28 -0
  33. data/app/helpers/admin/resource_helper.rb +2 -0
  34. data/app/helpers/admin/users_helper.rb +8 -0
  35. data/app/helpers/admin/welcome_helper.rb +2 -0
  36. data/app/helpers/application_helper.rb +241 -0
  37. data/app/helpers/site_helper.rb +2 -0
  38. data/app/models/deprecated_tags.rb +42 -0
  39. data/app/models/file_not_found_page.rb +32 -0
  40. data/app/models/layout.rb +15 -0
  41. data/app/models/menu_renderer.rb +140 -0
  42. data/app/models/page.rb +377 -0
  43. data/app/models/page_context.rb +53 -0
  44. data/app/models/page_field.rb +3 -0
  45. data/app/models/page_part.rb +20 -0
  46. data/app/models/standard_tags.rb +1318 -0
  47. data/app/models/status.rb +41 -0
  48. data/app/models/text_filter.rb +36 -0
  49. data/app/models/trusty_cms/config.rb +313 -0
  50. data/app/models/trusty_cms/page_response_cache_director.rb +43 -0
  51. data/app/models/user.rb +96 -0
  52. data/app/models/user_action_observer.rb +25 -0
  53. data/app/views/admin/configuration/edit.html.haml +38 -0
  54. data/app/views/admin/configuration/show.html.haml +58 -0
  55. data/app/views/admin/extensions/index.html.haml +41 -0
  56. data/app/views/admin/layouts/_form.html.haml +39 -0
  57. data/app/views/admin/layouts/edit.html.haml +9 -0
  58. data/app/views/admin/layouts/index.html.haml +35 -0
  59. data/app/views/admin/layouts/new.html.haml +7 -0
  60. data/app/views/admin/layouts/remove.html.haml +16 -0
  61. data/app/views/admin/page_fields/_page_field.html.haml +12 -0
  62. data/app/views/admin/page_parts/_page_part.html.haml +18 -0
  63. data/app/views/admin/pages/_fields.html.haml +71 -0
  64. data/app/views/admin/pages/_meta_row.html.haml +8 -0
  65. data/app/views/admin/pages/_node.html.haml +26 -0
  66. data/app/views/admin/pages/_popups.html.haml +27 -0
  67. data/app/views/admin/pages/children.html.haml +2 -0
  68. data/app/views/admin/pages/edit.html.haml +12 -0
  69. data/app/views/admin/pages/index.html.haml +26 -0
  70. data/app/views/admin/pages/new.html.haml +10 -0
  71. data/app/views/admin/pages/remove.html.haml +18 -0
  72. data/app/views/admin/preferences/edit.html.haml +44 -0
  73. data/app/views/admin/references/_tag_reference.haml +3 -0
  74. data/app/views/admin/references/filters.haml +6 -0
  75. data/app/views/admin/references/tags.haml +30 -0
  76. data/app/views/admin/users/_avatar.html.haml +5 -0
  77. data/app/views/admin/users/_form.html.haml +53 -0
  78. data/app/views/admin/users/_password_fields.html.haml +18 -0
  79. data/app/views/admin/users/edit.html.haml +9 -0
  80. data/app/views/admin/users/index.html.haml +39 -0
  81. data/app/views/admin/users/new.html.haml +6 -0
  82. data/app/views/admin/users/remove.html.haml +16 -0
  83. data/app/views/admin/welcome/login.html.haml +23 -0
  84. data/app/views/layouts/application.html.haml +50 -0
  85. data/app/views/site/not_found.html.haml +3 -0
  86. data/bin/ci/before_script +15 -0
  87. data/bin/trusty_cms +53 -0
  88. data/config/application.rb +124 -0
  89. data/config/boot.rb +9 -0
  90. data/config/compass.config +15 -0
  91. data/config/database.db2.yml +20 -0
  92. data/config/database.mysql.yml +25 -0
  93. data/config/database.postgresql.yml +25 -0
  94. data/config/database.sqlite.yml +16 -0
  95. data/config/database.sqlserver.yml +20 -0
  96. data/config/environment.rb +5 -0
  97. data/config/environments/development.rb +19 -0
  98. data/config/environments/production.rb +27 -0
  99. data/config/environments/test.rb +35 -0
  100. data/config/initializers/active_record_extensions.rb +1 -0
  101. data/config/initializers/configuration_extensions.rb +0 -0
  102. data/config/initializers/haml.rb +2 -0
  103. data/config/initializers/object_extensions.rb +1 -0
  104. data/config/initializers/radiant_config.rb +16 -0
  105. data/config/initializers/rails_patch.rb +2 -0
  106. data/config/initializers/response_cache_timeout.rb +3 -0
  107. data/config/initializers/string_extensions.rb +1 -0
  108. data/config/initializers/symbol_extensions.rb +1 -0
  109. data/config/initializers/tmp.rb +2 -0
  110. data/config/locales/en.yml +230 -0
  111. data/config/locales/en_available_tags.yml +625 -0
  112. data/config/preinitializer.rb +18 -0
  113. data/config/routes.rb +30 -0
  114. data/db/migrate/001_create_radiant_tables.rb +75 -0
  115. data/db/migrate/002_insert_initial_data.rb +12 -0
  116. data/db/migrate/003_rename_behavior_column.rb +9 -0
  117. data/db/migrate/004_rename_filter_column.rb +11 -0
  118. data/db/migrate/005_add_virtual_column_to_page.rb +9 -0
  119. data/db/migrate/006_integer_columns_to_boolean.rb +36 -0
  120. data/db/migrate/007_remove_virtual_column_from_page.rb +9 -0
  121. data/db/migrate/008_add_virtual_column_to_page_again.rb +9 -0
  122. data/db/migrate/009_add_content_type_field_to_layout.rb +9 -0
  123. data/db/migrate/010_merge_behaviors_and_pages.rb +57 -0
  124. data/db/migrate/011_rename_type_column_on_page_to_class_name.rb +9 -0
  125. data/db/migrate/012_create_extension_meta.rb +13 -0
  126. data/db/migrate/013_add_notes_field_to_user.rb +9 -0
  127. data/db/migrate/014_rename_config_default_parts_key.rb +17 -0
  128. data/db/migrate/015_add_optimistic_locking.rb +15 -0
  129. data/db/migrate/016_add_sessions.rb +16 -0
  130. data/db/migrate/017_rename_created_by_updated_by_columns.rb +15 -0
  131. data/db/migrate/018_add_description_and_keywords_to_pages.rb +11 -0
  132. data/db/migrate/019_add_salt_to_users.rb +11 -0
  133. data/db/migrate/020_add_session_info_to_users.rb +11 -0
  134. data/db/migrate/021_remove_session_expire_from_users.rb +9 -0
  135. data/db/migrate/20081203140407_add_indexes.rb +19 -0
  136. data/db/migrate/20090226140109_add_user_language.rb +9 -0
  137. data/db/migrate/20090929164633_rename_developer_role_to_designer.rb +9 -0
  138. data/db/migrate/20091003095744_change_user_language_to_locale.rb +9 -0
  139. data/db/migrate/20100805154952_add_page_fields.rb +15 -0
  140. data/db/migrate/20100805155020_convert_page_metas.rb +24 -0
  141. data/db/migrate/20100810151922_add_field_name_index.rb +11 -0
  142. data/db/migrate/20110902203823_add_allowed_children_cache_to_pages.rb +13 -0
  143. data/db/migrate/20111016150725_extend_page_part_content_limit.rb +15 -0
  144. data/db/migrate/20120209231801_change_pages_allowed_children_cache_to_text.rb +11 -0
  145. data/db/schema.rb +128 -0
  146. data/lib/active_record_extensions/active_record_extensions.rb +27 -0
  147. data/lib/annotatable.rb +68 -0
  148. data/lib/configuration_extensions/configuration_extensions.rb +357 -0
  149. data/lib/generators/extension/USAGE +30 -0
  150. data/lib/generators/extension/extension_generator.rb +97 -0
  151. data/lib/generators/extension/templates/README.md +6 -0
  152. data/lib/generators/extension/templates/RSpecRakefile +109 -0
  153. data/lib/generators/extension/templates/Rakefile +25 -0
  154. data/lib/generators/extension/templates/cucumber.yml +1 -0
  155. data/lib/generators/extension/templates/cucumber_env.rb +11 -0
  156. data/lib/generators/extension/templates/cucumber_paths.rb +22 -0
  157. data/lib/generators/extension/templates/en.yml +3 -0
  158. data/lib/generators/extension/templates/extension.rb +21 -0
  159. data/lib/generators/extension/templates/functional_test.rb +15 -0
  160. data/lib/generators/extension/templates/gemspec.rb +29 -0
  161. data/lib/generators/extension/templates/lib.rb +8 -0
  162. data/lib/generators/extension/templates/migration.rb +9 -0
  163. data/lib/generators/extension/templates/radiant_config.rb +3 -0
  164. data/lib/generators/extension/templates/routes.rb +5 -0
  165. data/lib/generators/extension/templates/spec.opts +6 -0
  166. data/lib/generators/extension/templates/spec_helper.rb +42 -0
  167. data/lib/generators/extension/templates/tasks.rake +47 -0
  168. data/lib/generators/extension/templates/test_helper.rb +26 -0
  169. data/lib/generators/extension_controller/USAGE +36 -0
  170. data/lib/generators/extension_controller/extension_controller_generator.rb +84 -0
  171. data/lib/generators/extension_controller/templates/controller.rb +10 -0
  172. data/lib/generators/extension_controller/templates/controller_spec.rb +23 -0
  173. data/lib/generators/extension_controller/templates/functional_test.rb +11 -0
  174. data/lib/generators/extension_controller/templates/helper.rb +2 -0
  175. data/lib/generators/extension_controller/templates/helper_spec.rb +11 -0
  176. data/lib/generators/extension_controller/templates/helper_test.rb +4 -0
  177. data/lib/generators/extension_controller/templates/view.html.erb +2 -0
  178. data/lib/generators/extension_controller/templates/view_spec.rb +12 -0
  179. data/lib/generators/extension_mailer/USAGE +17 -0
  180. data/lib/generators/extension_mailer/extension_mailer_generator.rb +68 -0
  181. data/lib/generators/extension_mailer/templates/fixture.erb +3 -0
  182. data/lib/generators/extension_mailer/templates/mailer.rb +15 -0
  183. data/lib/generators/extension_mailer/templates/unit_test.rb +21 -0
  184. data/lib/generators/extension_mailer/templates/view.erb +3 -0
  185. data/lib/generators/extension_migration/USAGE +34 -0
  186. data/lib/generators/extension_migration/extension_migration_generator.rb +25 -0
  187. data/lib/generators/extension_migration/templates/migration.rb +11 -0
  188. data/lib/generators/extension_model/USAGE +35 -0
  189. data/lib/generators/extension_model/extension_model_generator.rb +68 -0
  190. data/lib/generators/extension_model/templates/fixtures.yml +19 -0
  191. data/lib/generators/extension_model/templates/migration.rb +16 -0
  192. data/lib/generators/extension_model/templates/model.rb +2 -0
  193. data/lib/generators/extension_model/templates/model_spec.rb +11 -0
  194. data/lib/generators/extension_model/templates/unit_test.rb +8 -0
  195. data/lib/generators/generator_base_extension.rb +16 -0
  196. data/lib/generators/instance/instance_generator.rb +148 -0
  197. data/lib/generators/instance/templates/databases/db2.yml +40 -0
  198. data/lib/generators/instance/templates/databases/mysql.yml +47 -0
  199. data/lib/generators/instance/templates/databases/postgresql.yml +44 -0
  200. data/lib/generators/instance/templates/databases/sqlite3.yml +16 -0
  201. data/lib/generators/instance/templates/databases/sqlserver.yml +21 -0
  202. data/lib/generators/instance/templates/instance_boot.rb +122 -0
  203. data/lib/generators/instance/templates/instance_config.ru +2 -0
  204. data/lib/generators/instance/templates/instance_environment.rb +83 -0
  205. data/lib/generators/instance/templates/instance_gemfile +81 -0
  206. data/lib/generators/instance/templates/instance_generate +6 -0
  207. data/lib/generators/instance/templates/instance_radiant_config.rb +16 -0
  208. data/lib/generators/instance/templates/instance_rakefile +3 -0
  209. data/lib/generators/instance/templates/instance_routes.rb +1 -0
  210. data/lib/generators/language_extension/USAGE +27 -0
  211. data/lib/generators/language_extension/language_extension_generator.rb +71 -0
  212. data/lib/generators/language_extension/templates/README +3 -0
  213. data/lib/generators/language_extension/templates/RSpecRakefile +123 -0
  214. data/lib/generators/language_extension/templates/Rakefile +25 -0
  215. data/lib/generators/language_extension/templates/available_tags.yml +553 -0
  216. data/lib/generators/language_extension/templates/cucumber.yml +1 -0
  217. data/lib/generators/language_extension/templates/cucumber_env.rb +16 -0
  218. data/lib/generators/language_extension/templates/cucumber_paths.rb +14 -0
  219. data/lib/generators/language_extension/templates/extension.rb +12 -0
  220. data/lib/generators/language_extension/templates/functional_test.rb +15 -0
  221. data/lib/generators/language_extension/templates/gemspec.rb +24 -0
  222. data/lib/generators/language_extension/templates/lang.yml +181 -0
  223. data/lib/generators/language_extension/templates/lib.rb +8 -0
  224. data/lib/generators/language_extension/templates/spec.opts +6 -0
  225. data/lib/generators/language_extension/templates/spec_helper.rb +36 -0
  226. data/lib/generators/language_extension/templates/tasks.rake +28 -0
  227. data/lib/generators/language_extension/templates/test_helper.rb +26 -0
  228. data/lib/inheritable_class_attributes.rb +65 -0
  229. data/lib/local_time.rb +6 -0
  230. data/lib/login_system.rb +132 -0
  231. data/lib/method_observer.rb +50 -0
  232. data/lib/object_extensions/object_extensions.rb +5 -0
  233. data/lib/simpleton.rb +21 -0
  234. data/lib/string_extensions/string_extensions.rb +25 -0
  235. data/lib/symbol_extensions/symbol_extensions.rb +5 -0
  236. data/lib/tasks/database.rake +85 -0
  237. data/lib/tasks/environments.rake +11 -0
  238. data/lib/tasks/extensions.rake +85 -0
  239. data/lib/tasks/framework.rake +255 -0
  240. data/lib/tasks/instance.rake +23 -0
  241. data/lib/tasks/prototype.rake +31 -0
  242. data/lib/tasks/radiant_config.rake +18 -0
  243. data/lib/tasks/release.rake +131 -0
  244. data/lib/tasks/translate.rake +59 -0
  245. data/lib/tasks/undefine.rake +28 -0
  246. data/lib/translation_support.rb +54 -0
  247. data/lib/trusty_cms/admin_ui/region_partials.rb +23 -0
  248. data/lib/trusty_cms/admin_ui/region_set.rb +35 -0
  249. data/lib/trusty_cms/admin_ui.rb +244 -0
  250. data/lib/trusty_cms/available_locales.rb +19 -0
  251. data/lib/trusty_cms/cache.rb +100 -0
  252. data/lib/trusty_cms/config/definition.rb +142 -0
  253. data/lib/trusty_cms/engine.rb +10 -0
  254. data/lib/trusty_cms/extension/script.rb +395 -0
  255. data/lib/trusty_cms/extension.rb +146 -0
  256. data/lib/trusty_cms/extension_loader.rb +130 -0
  257. data/lib/trusty_cms/extension_migrator.rb +98 -0
  258. data/lib/trusty_cms/extension_path.rb +200 -0
  259. data/lib/trusty_cms/initializer.rb +162 -0
  260. data/lib/trusty_cms/pagination/controller.rb +41 -0
  261. data/lib/trusty_cms/pagination/link_renderer.rb +34 -0
  262. data/lib/trusty_cms/resource_responses.rb +121 -0
  263. data/lib/trusty_cms/setup.rb +227 -0
  264. data/lib/trusty_cms/taggable.rb +138 -0
  265. data/lib/trusty_cms/task_support.rb +66 -0
  266. data/lib/trusty_cms.rb +19 -0
  267. data/log/.keep +0 -0
  268. data/public/.htaccess +40 -0
  269. data/public/404.html +8 -0
  270. data/public/500.html +8 -0
  271. data/public/dispatch.cgi +10 -0
  272. data/public/dispatch.fcgi +24 -0
  273. data/public/dispatch.rb +10 -0
  274. data/public/favicon.ico +0 -0
  275. data/public/images/admin/add_tab.png +0 -0
  276. data/public/images/admin/avatar_32x32.png +0 -0
  277. data/public/images/admin/avatar_64x64.png +0 -0
  278. data/public/images/admin/avatar_96x96.png +0 -0
  279. data/public/images/admin/brown_bottom_line.gif +0 -0
  280. data/public/images/admin/calendar_down.gif +0 -0
  281. data/public/images/admin/collapse.png +0 -0
  282. data/public/images/admin/draft_page.png +0 -0
  283. data/public/images/admin/expand.png +0 -0
  284. data/public/images/admin/image.png +0 -0
  285. data/public/images/admin/javascript.png +0 -0
  286. data/public/images/admin/layout.png +0 -0
  287. data/public/images/admin/metadata_toggle.png +0 -0
  288. data/public/images/admin/minus.png +0 -0
  289. data/public/images/admin/minus_disabled.png +0 -0
  290. data/public/images/admin/minus_grey.png +0 -0
  291. data/public/images/admin/navigation_secondary_separator.gif +0 -0
  292. data/public/images/admin/page.png +0 -0
  293. data/public/images/admin/plus.png +0 -0
  294. data/public/images/admin/plus_disabled.png +0 -0
  295. data/public/images/admin/plus_grey.png +0 -0
  296. data/public/images/admin/popup_border_background.png +0 -0
  297. data/public/images/admin/popup_border_bottom_left.png +0 -0
  298. data/public/images/admin/popup_border_bottom_right.png +0 -0
  299. data/public/images/admin/popup_border_top_left.png +0 -0
  300. data/public/images/admin/popup_border_top_right.png +0 -0
  301. data/public/images/admin/search.png +0 -0
  302. data/public/images/admin/single_form_shadow.png +0 -0
  303. data/public/images/admin/snippet.png +0 -0
  304. data/public/images/admin/spinner.gif +0 -0
  305. data/public/images/admin/status_background.png +0 -0
  306. data/public/images/admin/status_bottom_left.png +0 -0
  307. data/public/images/admin/status_bottom_right.png +0 -0
  308. data/public/images/admin/status_spinner.gif +0 -0
  309. data/public/images/admin/status_top_left.png +0 -0
  310. data/public/images/admin/status_top_right.png +0 -0
  311. data/public/images/admin/stylesheet.png +0 -0
  312. data/public/images/admin/tab_close.png +0 -0
  313. data/public/images/admin/upload.png +0 -0
  314. data/public/images/admin/virtual_page.png +0 -0
  315. data/public/images/radiant/radiant-badge-color.png +0 -0
  316. data/public/javascripts/admin/application.js +94 -0
  317. data/public/javascripts/admin/codearea.js +165 -0
  318. data/public/javascripts/admin/controls.js +965 -0
  319. data/public/javascripts/admin/cookie.js +80 -0
  320. data/public/javascripts/admin/dateinput.js +402 -0
  321. data/public/javascripts/admin/dragdrop.js +974 -0
  322. data/public/javascripts/admin/dropdown.js +216 -0
  323. data/public/javascripts/admin/effects.js +1122 -0
  324. data/public/javascripts/admin/lowpro.js +340 -0
  325. data/public/javascripts/admin/overrides.js +1 -0
  326. data/public/javascripts/admin/page_preview.js +41 -0
  327. data/public/javascripts/admin/pagefield.js +54 -0
  328. data/public/javascripts/admin/pagestatus.js +17 -0
  329. data/public/javascripts/admin/popup.js +339 -0
  330. data/public/javascripts/admin/prototype.js +4874 -0
  331. data/public/javascripts/admin/ruledtable.js +13 -0
  332. data/public/javascripts/admin/shortcuts.js +33 -0
  333. data/public/javascripts/admin/sitemap.js +149 -0
  334. data/public/javascripts/admin/status.js +233 -0
  335. data/public/javascripts/admin/tabcontrol.js +123 -0
  336. data/public/javascripts/admin/toggle.js +430 -0
  337. data/public/javascripts/admin/utility.js +53 -0
  338. data/public/javascripts/admin/validationerror.js +18 -0
  339. data/public/loading-iframe.html +11 -0
  340. data/public/robots.txt +1 -0
  341. data/public/stylesheets/sass/admin/_base.sass +18 -0
  342. data/public/stylesheets/sass/admin/main.sass +27 -0
  343. data/public/stylesheets/sass/admin/modules/_boxes.sass +6 -0
  344. data/public/stylesheets/sass/admin/modules/_gradients.sass +4 -0
  345. data/public/stylesheets/sass/admin/modules/_links.sass +18 -0
  346. data/public/stylesheets/sass/admin/overrides.sass +2 -0
  347. data/public/stylesheets/sass/admin/partials/_actions.sass +96 -0
  348. data/public/stylesheets/sass/admin/partials/_avatars.sass +10 -0
  349. data/public/stylesheets/sass/admin/partials/_content.sass +58 -0
  350. data/public/stylesheets/sass/admin/partials/_dateinput.sass +62 -0
  351. data/public/stylesheets/sass/admin/partials/_deprecated.sass +55 -0
  352. data/public/stylesheets/sass/admin/partials/_dropdown.sass +28 -0
  353. data/public/stylesheets/sass/admin/partials/_footer.sass +12 -0
  354. data/public/stylesheets/sass/admin/partials/_forms.sass +322 -0
  355. data/public/stylesheets/sass/admin/partials/_header.sass +114 -0
  356. data/public/stylesheets/sass/admin/partials/_index.sass +147 -0
  357. data/public/stylesheets/sass/admin/partials/_layout.sass +10 -0
  358. data/public/stylesheets/sass/admin/partials/_messages.sass +10 -0
  359. data/public/stylesheets/sass/admin/partials/_popup.sass +213 -0
  360. data/public/stylesheets/sass/admin/partials/_tabcontrol.sass +72 -0
  361. data/public/stylesheets/sass/admin/partials/_toolbar.sass +31 -0
  362. data/public/stylesheets/sass/admin/partials/_typography.sass +60 -0
  363. data/public/stylesheets/sass/admin/partials/_validations.sass +19 -0
  364. data/rails/init.rb +1 -0
  365. data/script/about +4 -0
  366. data/script/breakpointer +3 -0
  367. data/script/console +3 -0
  368. data/script/dbconsole +3 -0
  369. data/script/destroy +3 -0
  370. data/script/extension +5 -0
  371. data/script/generate +3 -0
  372. data/script/performance/benchmarker +3 -0
  373. data/script/performance/profiler +3 -0
  374. data/script/performance/request +3 -0
  375. data/script/plugin +3 -0
  376. data/script/process/inspector +3 -0
  377. data/script/process/reaper +3 -0
  378. data/script/process/spawner +3 -0
  379. data/script/process/spinner +3 -0
  380. data/script/rails +6 -0
  381. data/script/runner +3 -0
  382. data/script/server +3 -0
  383. data/script/version +5 -0
  384. data/spec/ci/database.mysql.yml +4 -0
  385. data/spec/ci/database.postgresql.yml +4 -0
  386. data/spec/ci/database.sqlite.yml +3 -0
  387. data/trusty_cms.gemspec +50 -0
  388. metadata +781 -0
data/CONTRIBUTORS.md ADDED
@@ -0,0 +1,263 @@
1
+ # Contributors
2
+
3
+ The following people have submitted changes which have been applied to the
4
+ core:
5
+
6
+ ## Edge
7
+
8
+ * Jim Gay
9
+ * Sam Whited
10
+ * Johannes Fahrenkrug
11
+
12
+ ## 1.0.0
13
+
14
+ * Jeff Casimir
15
+ * Mario Visic
16
+ * Mark Reginald James
17
+ * Andrew O'Brian
18
+ * Dirk Kelly
19
+ * Oriol Gual
20
+ * Petrik de Heus
21
+ * Gert Goet
22
+ * Jim Gay
23
+ * Josh French
24
+ * Andrew vonderLuft
25
+ * William Ross
26
+ * John Muhl
27
+ * Johannes Fahrenkrug
28
+ * Benny Degezelle
29
+ * Jason Taylor
30
+ * Wes Gamble
31
+ * Michael Stalker
32
+ * Chris Parrish
33
+ * John W. Long
34
+ * Edmund Haselwanter
35
+ * Michal Cichra
36
+ * Jason Garber
37
+ * Samuel Whited
38
+ * vanderhoorn
39
+ * Sean Cribbs
40
+
41
+ ## 0.9.1 Refraction
42
+
43
+ * Jim Gay
44
+
45
+ ## 0.9.0 Refraction
46
+
47
+ * Mario Visic
48
+ * Andrew Cates
49
+ * Janne Asmala
50
+ * Keith Bingman
51
+ * Dirk Kelly
52
+ * Anna billstrom
53
+ * William Ross
54
+ * M. Scott Ford
55
+ * Josh French
56
+ * Travis D. Warlick, Jr.
57
+ * Jason Garber
58
+ * Chris Ricca
59
+ * Jim Gay
60
+ * John Muhl
61
+ * Ben Morrow
62
+ * Sean Cribbs
63
+ * Brandon Mathis
64
+ * Daniel Beach
65
+ * Chris Parrish
66
+ * John Long
67
+
68
+ ## 0.8.2 Lustery
69
+
70
+ * Jim Gay
71
+
72
+ ## 0.8.1 Luster
73
+
74
+ * John Long
75
+ * Sean Cribbs
76
+ * Antonio Cangiano
77
+ * alexmek
78
+ * Jeremy Stephens
79
+ * John Muhl
80
+ * Alex Wallace
81
+ * Justin Blecher
82
+ * Kunal Shah
83
+ * Jim Gay
84
+ * Josh French
85
+
86
+ ## 0.8.0 Asterism
87
+
88
+ * Michael Kessler
89
+ * David Cato
90
+ * Kunal Shah
91
+ * Brett McHargue
92
+ * Jim Gay
93
+ * Kunal Shah
94
+ * Matt Henry
95
+ * Rick DeNatale
96
+ * Jason Garber
97
+ * Pat Allan
98
+ * Josh French
99
+ * Brent Kroeker
100
+ * Sean Cribbs
101
+
102
+ ## 0.7.2 Engravings
103
+
104
+ * Andrew vonderLuft
105
+
106
+ ## 0.7.1 Engraving
107
+
108
+ * John Muhl
109
+ * Sean Cribbs
110
+
111
+ ## 0.7.0 Intaglio
112
+
113
+ * Paul du Coudray
114
+ * Nikolay Karev
115
+ * August Lilleas
116
+ * Brandan Lennox
117
+ * Jeroen Janssen
118
+ * Erik Ostrom
119
+ * Nathaniel Talbott
120
+ * Yevgeny Smirnoff
121
+ * Sytse Sijbrandij
122
+ * Brian Landau
123
+ * Adam Williams
124
+ * Mark Imbriaco
125
+ * Rick DeNatale
126
+ * Clinton Nixon
127
+ * John Muhl
128
+ * Andrew O'Brien
129
+ * Joe Van Dyk
130
+ * Pat Allan
131
+ * Matt Henry
132
+ * Keith Bennett
133
+ * Thomas Ingram
134
+ * Josh French
135
+ * Jason Garber
136
+ * Mislav Marohnić
137
+ * Jim Gay
138
+ * Sean Cribbs
139
+
140
+ ## 0.6.9 Etch
141
+
142
+ * Mark A. Yoon
143
+ * Jim Gay
144
+ * Sean Cribbs
145
+
146
+ ## 0.6.8 Incise
147
+
148
+ * Andrew Neil
149
+ * Glenn Murray
150
+ * Tim Gossett
151
+ * John Muhl
152
+ * Josh French
153
+ * Jim Gay
154
+ * Alex Wayne
155
+ * Nick Plante
156
+ * Loren Johnson
157
+ * Sean Cribbs
158
+ * Thomas Watson Steen
159
+
160
+ ## 0.6.7 Mordant
161
+
162
+ * John Long
163
+ * Josh French
164
+ * Sean Cribbs
165
+
166
+ ## 0.6.6 Chiseled
167
+
168
+ * Josh French
169
+ * Sean Cribbs
170
+
171
+ ## 0.6.5 Chisel
172
+
173
+ * Adam Keyes
174
+ * Marty Haught
175
+ * xtoddx
176
+ * skrat
177
+ * Michael Klett
178
+ * Matthew Elder
179
+ * Nick Plante
180
+ * ben
181
+ * jonleighton
182
+ * Josh French
183
+ * abstractioneer
184
+ * andreas
185
+ * Keeran Hawoldar
186
+ * Loren Johnson
187
+ * Benny Degezelle
188
+ * John Long
189
+ * Andrew O'Brien
190
+ * Bjørn Arild Mæland
191
+ * Mislav Marohnić
192
+ * Daniel Sheppard
193
+ * Sean Cribbs
194
+
195
+ ## 0.6.4 Gem Shaper
196
+
197
+ * Andrew Neil
198
+ * zilkey
199
+ * Mark Gallop
200
+ * Bjørn Arild Mæland
201
+ * ana
202
+ * Bodhi Philpot
203
+ * jay@jay.fm
204
+ * Brian Skahan
205
+ * Mislav Marohnić
206
+ * Daniel Sheppard
207
+ * John Long
208
+ * Peter Berkenbosch
209
+ * Sean Cribbs
210
+
211
+ ## 0.6.3 Rock Grinder
212
+
213
+ * oli
214
+ * Daniel Sheppard
215
+ * vitali
216
+ * tolbrino
217
+ * Sean Cribbs
218
+ * Earl Chew
219
+ * John Long
220
+
221
+ ## 0.6.2 Jewel Carver
222
+
223
+ * Sean Cribbs
224
+ * Daniel Sheppard
225
+ * Keita
226
+
227
+ ## 0.6.1 Stone Cutter
228
+
229
+ * Sean Cribbs
230
+ * Daniel Sheppard
231
+
232
+ ## 0.6.0 Lapidary
233
+
234
+ * Alexander Horn
235
+ * Adam Williams
236
+ * Sean Santry
237
+ * Sean Cribbs
238
+ * Brian Gernhardt
239
+ * Bodhi Philpot
240
+ * Andrew Barnett
241
+ * Jesse Newland
242
+ * Josh Ferguson
243
+ * Daniel Sheppard
244
+ * Matte Edens
245
+ * Jacob Burkhart
246
+ * Chris Parrish
247
+
248
+ ## 0.5.1 Gemdust
249
+
250
+ * Daniel Sheppard
251
+ * Paul Smith
252
+ * Bodhi Philpot
253
+
254
+ ## 0.5.0 Grindstone
255
+
256
+ * Matt McCray
257
+ * Paul Smith
258
+ * Scott Walter
259
+ * Sven Lauer
260
+ * Tristan Boniver
261
+ * Chris Corriveau
262
+ * Ryan Platte
263
+ * Luis Lavena
data/Gemfile ADDED
@@ -0,0 +1,40 @@
1
+
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ # This is the minimum of dependency required to run
6
+ # the radiant instance generator, which is (normally)
7
+ # the only time the radiant gem functions as an
8
+ # application. The instance has its own Gemfile, which
9
+ # requires radiant and therefore pulls in every
10
+ # dependency mentioned in radiant.gemspec.
11
+
12
+ gem "rails", "3.2.18"
13
+ gem "mysql"
14
+ gemspec
15
+
16
+ # When radiant is installed as a gem you can run all of
17
+ # its tests and specs from an instance. If you're working
18
+ # on radiant itself and you want to run specs from the
19
+ # radiant root directory, uncomment the lines below and
20
+ # run `bundle install`.
21
+
22
+ # gemspec
23
+ # gem "compass-rails", "~> 1.0.3"
24
+
25
+ # gem "radiant-archive-extension", "~> 1.0.7"
26
+ # gem "radiant-clipped-extension", "~> 1.1.0"
27
+ # gem "radiant-debug-extension", "~> 1.0.2"
28
+ # gem "radiant-exporter-extension", "~> 1.1.0"
29
+ # gem "radiant-markdown_filter-extension", "~> 1.0.2"
30
+ # gem "radiant-sheets-extension", "~> 1.1.0.alpha"
31
+ # gem "radiant-snippets-extension", "~> 1.1.0.alpha"
32
+ # gem "radiant-site_templates-extension", "~> 1.0.4"
33
+ # gem "radiant-smarty_pants_filter-extension", "~> 1.0.2"
34
+ # gem "radiant-textile_filter-extension", "~> 1.0.4"
35
+
36
+ if ENV['TRAVIS']
37
+ gemspec :development_group => :test
38
+ gem "mysql"
39
+ gem "pg"
40
+ end
data/Gemfile.lock ADDED
@@ -0,0 +1,177 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ trusty-cms (1.1.4)
5
+ RedCloth (~> 4.2.0)
6
+ acts_as_tree (~> 0.1.1)
7
+ bundler (>= 1.0.0)
8
+ compass (~> 0.12.2)
9
+ compass-rails (~> 1.0.3)
10
+ delocalize (~> 0.2.3)
11
+ haml (~> 3.1.1)
12
+ highline (~> 1.6.10)
13
+ rack (~> 1.4.5)
14
+ rack-cache (~> 1.2)
15
+ radius (~> 0.7.3)
16
+ rails (~> 3.2.18)
17
+ rake (>= 0.8.7)
18
+ rdoc (~> 3.9)
19
+ stringex (~> 1.3.0)
20
+ tzinfo (~> 0.3.31)
21
+ will_paginate (~> 3.0)
22
+
23
+ GEM
24
+ remote: https://rubygems.org/
25
+ specs:
26
+ RedCloth (4.2.9)
27
+ RedCloth (4.2.9-java)
28
+ actionmailer (3.2.18)
29
+ actionpack (= 3.2.18)
30
+ mail (~> 2.5.4)
31
+ actionpack (3.2.18)
32
+ activemodel (= 3.2.18)
33
+ activesupport (= 3.2.18)
34
+ builder (~> 3.0.0)
35
+ erubis (~> 2.7.0)
36
+ journey (~> 1.0.4)
37
+ rack (~> 1.4.5)
38
+ rack-cache (~> 1.2)
39
+ rack-test (~> 0.6.1)
40
+ sprockets (~> 2.2.1)
41
+ activemodel (3.2.18)
42
+ activesupport (= 3.2.18)
43
+ builder (~> 3.0.0)
44
+ activerecord (3.2.18)
45
+ activemodel (= 3.2.18)
46
+ activesupport (= 3.2.18)
47
+ arel (~> 3.0.2)
48
+ tzinfo (~> 0.3.29)
49
+ activeresource (3.2.18)
50
+ activemodel (= 3.2.18)
51
+ activesupport (= 3.2.18)
52
+ activesupport (3.2.18)
53
+ i18n (~> 0.6, >= 0.6.4)
54
+ multi_json (~> 1.0)
55
+ acts_as_tree (0.1.1)
56
+ arel (3.0.3)
57
+ builder (3.0.4)
58
+ capybara (2.2.1)
59
+ mime-types (>= 1.16)
60
+ nokogiri (>= 1.3.3)
61
+ rack (>= 1.0.0)
62
+ rack-test (>= 0.5.4)
63
+ xpath (~> 2.0)
64
+ chunky_png (1.3.1)
65
+ compass (0.12.6)
66
+ chunky_png (~> 1.2)
67
+ fssm (>= 0.2.7)
68
+ sass (~> 3.2.19)
69
+ compass-rails (1.0.3)
70
+ compass (>= 0.12.2, < 0.14)
71
+ cucumber (1.3.15)
72
+ builder (>= 2.1.2)
73
+ diff-lcs (>= 1.1.3)
74
+ gherkin (~> 2.12)
75
+ multi_json (>= 1.7.5, < 2.0)
76
+ multi_test (>= 0.1.1)
77
+ cucumber-rails (1.4.1)
78
+ capybara (>= 1.1.2, < 3)
79
+ cucumber (>= 1.3.8, < 2)
80
+ mime-types (~> 1.16)
81
+ nokogiri (~> 1.5)
82
+ rails (>= 3, < 5)
83
+ database_cleaner (0.6.7)
84
+ delocalize (0.2.6)
85
+ diff-lcs (1.2.5)
86
+ erubis (2.7.0)
87
+ fssm (0.2.10)
88
+ gherkin (2.12.2)
89
+ multi_json (~> 1.3)
90
+ gherkin (2.12.2-java)
91
+ multi_json (~> 1.3)
92
+ haml (3.1.8)
93
+ highline (1.6.21)
94
+ hike (1.2.3)
95
+ i18n (0.6.9)
96
+ journey (1.0.4)
97
+ json (1.8.1)
98
+ json (1.8.1-java)
99
+ mail (2.5.4)
100
+ mime-types (~> 1.16)
101
+ treetop (~> 1.4.8)
102
+ mime-types (1.25.1)
103
+ multi_json (1.10.0)
104
+ multi_test (0.1.1)
105
+ mysql (2.9.1)
106
+ nokogiri (1.5.11)
107
+ nokogiri (1.5.11-java)
108
+ polyglot (0.3.4)
109
+ rack (1.4.5)
110
+ rack-cache (1.2)
111
+ rack (>= 0.4)
112
+ rack-ssl (1.3.4)
113
+ rack
114
+ rack-test (0.6.2)
115
+ rack (>= 1.0)
116
+ radius (0.7.4)
117
+ rails (3.2.18)
118
+ actionmailer (= 3.2.18)
119
+ actionpack (= 3.2.18)
120
+ activerecord (= 3.2.18)
121
+ activeresource (= 3.2.18)
122
+ activesupport (= 3.2.18)
123
+ bundler (~> 1.0)
124
+ railties (= 3.2.18)
125
+ railties (3.2.18)
126
+ actionpack (= 3.2.18)
127
+ activesupport (= 3.2.18)
128
+ rack-ssl (~> 1.3.2)
129
+ rake (>= 0.8.7)
130
+ rdoc (~> 3.4)
131
+ thor (>= 0.14.6, < 2.0)
132
+ rake (10.3.1)
133
+ rdoc (3.12.2)
134
+ json (~> 1.4)
135
+ rspec-core (2.14.8)
136
+ rspec-expectations (2.14.5)
137
+ diff-lcs (>= 1.1.3, < 2.0)
138
+ rspec-mocks (2.14.6)
139
+ rspec-rails (2.14.2)
140
+ actionpack (>= 3.0)
141
+ activemodel (>= 3.0)
142
+ activesupport (>= 3.0)
143
+ railties (>= 3.0)
144
+ rspec-core (~> 2.14.0)
145
+ rspec-expectations (~> 2.14.0)
146
+ rspec-mocks (~> 2.14.0)
147
+ sass (3.2.19)
148
+ sprockets (2.2.2)
149
+ hike (~> 1.2)
150
+ multi_json (~> 1.0)
151
+ rack (~> 1.0)
152
+ tilt (~> 1.1, != 1.3.0)
153
+ stringex (1.3.3)
154
+ test-unit (2.5.5)
155
+ thor (0.19.1)
156
+ tilt (1.4.1)
157
+ treetop (1.4.15)
158
+ polyglot
159
+ polyglot (>= 0.3.1)
160
+ tzinfo (0.3.39)
161
+ will_paginate (3.0.5)
162
+ xpath (2.0.0)
163
+ nokogiri (~> 1.3)
164
+
165
+ PLATFORMS
166
+ java
167
+ ruby
168
+
169
+ DEPENDENCIES
170
+ cucumber-rails (~> 1.4.1)
171
+ database_cleaner (~> 0.6.5)
172
+ mysql
173
+ nokogiri (~> 1.5.10)
174
+ rails (= 3.2.18)
175
+ rspec-rails (~> 2.14.2)
176
+ test-unit (~> 2.5.5)
177
+ trusty-cms!
data/INSTALL.md ADDED
@@ -0,0 +1,10 @@
1
+ # Installation and Setup
2
+
3
+ From within the directory containing your TrustyCms instance:
4
+
5
+ 1. Decide which database you want to use. SQLite is configured by default and
6
+ the easiest way to get started. If you want to use another database:
7
+ - Enable your preferred database adapter in the Gemfile
8
+ - Run `bundle update`
9
+
10
+ 2. Run `bundle exec rake production db:bootstrap` to initialize the database
data/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ # MIT License
2
+
3
+ Copyright (c) 2006-2009, John W. Long and Sean D. Cribbs.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,85 @@
1
+ ## Welcome to TrustyCMS
2
+
3
+ Trusty is a branch of the venerable TrustyCms CMS. Its goal is to pull the TrustyCms framework into Rails 3 with minimal changes to its infrastructure. Everything below this is from the TrustyCms readme.
4
+
5
+ TrustyCms is a no-fluff, open source content management system designed for
6
+ small teams. It is similar to Textpattern or MovableType, but is a general
7
+ purpose content management system (not just a blogging engine).
8
+
9
+ [![Build Status](https://secure.travis-ci.org/pgharts/trusty-cms.png?branch=master)](https://travis-ci.org/pgharts/trusty-cms/)
10
+
11
+ TrustyCms features:
12
+
13
+ * An elegant user interface
14
+ * The ability to arrange pages in a hierarchy
15
+ * Flexible templating with layouts, snippets, page parts, and a custom tagging
16
+ language (Radius: http://radius.rubyforge.org)
17
+ * A simple user management/permissions system
18
+ * Support for Markdown and Textile as well as traditional HTML (it's easy to
19
+ create other filters)
20
+ * An advanced plugin system
21
+ * Operates in two modes: dev and production depending on the URL
22
+ * A caching system which expires pages every 5 minutes
23
+ * Built using Ruby on Rails
24
+ * And much more...
25
+
26
+ ## License
27
+
28
+ TrustyCms is released under the MIT license. The Radiant portions of the
29
+ codebase are copyright (c) John W. Long and Sean Cribbs; anything after the
30
+ fork is copyright (c) Pittsburgh Cultural Trust. A copy of the MIT license can
31
+ be found in the LICENSE file.
32
+
33
+ ## Installation and Setup for Use
34
+
35
+ TrustyCms is a traditional Ruby on Rails application, meaning that you can
36
+ configure and run it the way you would a normal Rails application.
37
+
38
+ See the INSTALL file for more details.
39
+
40
+ ### Installation and Setup for Contributing to TrustyCms
41
+
42
+ Prerequisites:
43
+
44
+ * A github account and Git ([Github has some really good instructons](https://help.github.com/articles/set-up-git))
45
+ * Ruby 1.9.3
46
+ * The bundler gem
47
+ * Mysql
48
+
49
+ 1. Fork this repository to your github account.
50
+ 1. Clone your fork to your machine.
51
+ 1. Install the gems with bundler: `bundle`
52
+ 1. Create a database configuration: `cp config/database.mysql.yml config/database.yml`. You probably don't need to make any further changes.
53
+ 1. Set up your database:
54
+
55
+ bundle exec rake db:create
56
+ bundle exec rake db:migrate
57
+ bundle exec rake db:migrate:extensions
58
+ 1. Run the tests to make sure they pass (If they don't, file a bug!):
59
+
60
+
61
+ When you're ready to make a change:
62
+
63
+ 1. Add the pgharts fork as a git remote called "upstream": `git remote add upstream https://github.com/pgharts/trusty-cms.git` so that you can keep up with changes that other people make.
64
+ 1. Fetch the remote you just added: `git fetch upstream`
65
+ 1. Start a new branch for the change you're going to make. Name it something having to do with the changes, like "fix-queries" if you are going to try to fix some queries. Base this branch on `upstream/master` by running `git checkout -b fix-queries upstream/master`
66
+ 1. Make your changes and commit them.
67
+ 1. Push your changes to your github fork: `git push origin fix-queries`
68
+ 1. Send a pull request to the pgharts fork
69
+ 1. High five the nearest person!
70
+
71
+
72
+ ## Support
73
+
74
+ The best place to get support is on the Pittsburgh Ruby mailing list:
75
+
76
+ https://groups.google.com/forum/#!forum/rubypgh
77
+
78
+ Most of the development for TrustyCms happens on Github:
79
+
80
+ https://github.com/pgharts/trusty-cms
81
+
82
+ Enjoy!
83
+
84
+ --
85
+ The TrustyCms Dev Team
data/Rakefile ADDED
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env rake
2
+ # Add your own tasks in files placed in lib/tasks ending in .rake,
3
+ # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
4
+
5
+ require File.expand_path('../config/application', __FILE__)
6
+ STDOUT.sync = true
7
+ TrustyCms::Application.load_tasks
@@ -0,0 +1,50 @@
1
+ class Admin::ConfigurationController < ApplicationController
2
+
3
+ # Admin::ConfigurationController handles the batch-updating of TrustyCms::Config entries.
4
+ # It accepts any set of config name-value pairs but is accessible only to administrators.
5
+ # Note that configuration is routed as a singular resource so we only deal with show/edit/update
6
+ # and the show and edit views determine what set of config values is shown and made editable.
7
+
8
+ before_filter :initialize_config
9
+
10
+ only_allow_access_to :edit, :update,
11
+ :when => [:admin],
12
+ :denied_url => { :controller => 'admin/configuration', :action => 'show' },
13
+ :denied_message => 'You must have admin privileges to edit site configuration.'
14
+
15
+ def show
16
+ @user = current_user
17
+ render
18
+ end
19
+
20
+ def edit
21
+ render
22
+ end
23
+
24
+ def update
25
+ if params[:config]
26
+ begin
27
+ TrustyCms.config.transaction do
28
+ params["config"].each_pair do |key, value|
29
+ @trusty_config[key] = TrustyCms::Config.find_or_create_by_key(key)
30
+ @trusty_config[key].value = value # validation sets errors on @trusty_config['key'] that the helper methods will pick up
31
+ end
32
+ redirect_to :action => :show
33
+ end
34
+ rescue ActiveRecord::RecordInvalid => e
35
+ flash[:error] = "Configuration error: please check the form"
36
+ render :action => :edit
37
+ rescue TrustyCms::Config::ConfigError => e
38
+ flash[:error] = "Configuration error: #{e}"
39
+ render :action => :edit
40
+ end
41
+ end
42
+ end
43
+
44
+ protected
45
+
46
+ def initialize_config
47
+ @trusty_config = {}
48
+ end
49
+
50
+ end
@@ -0,0 +1,11 @@
1
+ class Admin::ExtensionsController < ApplicationController
2
+ only_allow_access_to :index,
3
+ :when => :admin,
4
+ :denied_url => { :controller => 'pages', :action => 'index' },
5
+ :denied_message => 'You must have administrative privileges to perform this action.'
6
+
7
+ def index
8
+ @template_name = 'index' # for Admin::RegionsHelper
9
+ @extensions = TrustyCms::Extension.descendants.sort_by { |e| e.extension_name }
10
+ end
11
+ end
@@ -0,0 +1,8 @@
1
+ class Admin::LayoutsController < Admin::ResourceController
2
+ paginate_models
3
+ only_allow_access_to :index, :show, :new, :create, :edit, :update, :remove, :destroy,
4
+ :when => [:designer, :admin],
5
+ :denied_url => { :controller => 'admin/pages', :action => 'index' },
6
+ :denied_message => 'You must have designer privileges to perform this action.'
7
+
8
+ end
@@ -0,0 +1,9 @@
1
+ class Admin::PageFieldsController < Admin::ResourceController
2
+ def create
3
+ self.model = PageField.new(params[model_symbol])
4
+ @controller_name = 'page'
5
+ @template_name = 'edit'
6
+ render :partial => "page_field", :object => model,
7
+ :locals => { :page_field_counter => params[:page_field_counter].to_i}
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ class Admin::PagePartsController < Admin::ResourceController
2
+ def create
3
+ self.model.attributes = params[model_symbol]
4
+ @controller_name = 'page'
5
+ @template_name = 'edit'
6
+ render :partial => "page_part", :object => model,
7
+ :locals => {:page_part_counter => params[:index].to_i}
8
+ end
9
+ end