typus 0.9.39 → 1.0.0.pre

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 (424) hide show
  1. data/CHANGELOG +104 -0
  2. data/Gemfile +17 -0
  3. data/Gemfile.lock +96 -0
  4. data/MIT-LICENSE +1 -1
  5. data/README.rdoc +45 -0
  6. data/Rakefile +19 -48
  7. data/app/controllers/admin/account_controller.rb +54 -0
  8. data/app/controllers/admin/dashboard_controller.rb +7 -0
  9. data/app/controllers/admin/resource_controller.rb +8 -0
  10. data/app/controllers/admin/resources_controller.rb +307 -0
  11. data/app/controllers/admin/session_controller.rb +38 -0
  12. data/app/controllers/admin_controller.rb +26 -0
  13. data/app/helpers/admin/dashboard_helper.rb +38 -0
  14. data/app/helpers/admin/filters_helper.rb +81 -0
  15. data/app/helpers/admin/form_helper.rb +68 -261
  16. data/app/helpers/admin/preview_helper.rb +48 -0
  17. data/app/helpers/admin/relationships_helper.rb +192 -0
  18. data/app/helpers/admin/resources_helper.rb +80 -0
  19. data/app/helpers/admin/search_helper.rb +19 -0
  20. data/app/helpers/admin/sidebar_helper.rb +32 -210
  21. data/app/helpers/admin/table_helper.rb +207 -200
  22. data/app/helpers/admin_helper.rb +56 -0
  23. data/app/mailers/admin/mailer.rb +13 -0
  24. data/app/models/admin/fake_user.rb +38 -0
  25. data/app/views/admin/account/forgot_password.html.erb +21 -0
  26. data/app/views/admin/account/new.html.erb +21 -0
  27. data/app/views/admin/dashboard/_sidebar.html.erb +3 -3
  28. data/app/views/admin/dashboard/show.html.erb +16 -0
  29. data/app/views/admin/dashboard/styles.html.erb +154 -0
  30. data/app/views/admin/helpers/_apps.html.erb +6 -0
  31. data/app/views/admin/helpers/_flash_message.html.erb +3 -0
  32. data/app/views/admin/helpers/_header.html.erb +7 -0
  33. data/app/views/admin/helpers/_login_info.html.erb +4 -0
  34. data/app/views/admin/helpers/_preview.html.erb +13 -0
  35. data/app/views/admin/helpers/dashboard/_applications.html.erb +32 -0
  36. data/app/views/admin/helpers/dashboard/_resources.html.erb +16 -0
  37. data/app/views/admin/helpers/filters/_filters.html.erb +31 -0
  38. data/app/views/admin/helpers/resources/_display_link_to_previous.html.erb +3 -0
  39. data/app/views/admin/helpers/resources/_pagination.html.erb +28 -0
  40. data/app/views/admin/helpers/search/_search.html.erb +12 -0
  41. data/app/views/admin/helpers/sidebar/_sidebar.html.erb +17 -0
  42. data/app/views/admin/helpers/table/_table.html.erb +22 -0
  43. data/app/views/{typus_mailer/reset_password_link.erb → admin/mailer/reset_password_link.text.erb} +2 -2
  44. data/{test/config/broken/empty.yml → app/views/admin/resources/_edit.html.erb} +0 -0
  45. data/app/views/admin/resources/_form.html.erb +26 -0
  46. data/{test/config/broken/empty_roles.yml → app/views/admin/resources/_index.html.erb} +0 -0
  47. data/{test/config/empty/empty_01.yml → app/views/admin/resources/_new.html.erb} +0 -0
  48. data/{test/config/empty/empty_01_roles.yml → app/views/admin/resources/_show.html.erb} +0 -0
  49. data/app/views/admin/resources/edit.html.erb +23 -21
  50. data/app/views/admin/resources/index.html.erb +31 -18
  51. data/app/views/admin/resources/new.html.erb +20 -18
  52. data/app/views/admin/resources/show.html.erb +29 -20
  53. data/app/views/admin/session/new.html.erb +26 -0
  54. data/app/views/admin/templates/_belongs_to.html.erb +4 -0
  55. data/app/views/admin/templates/_boolean.html.erb +4 -8
  56. data/app/views/admin/templates/_date.html.erb +9 -2
  57. data/app/views/admin/templates/_datetime.html.erb +9 -2
  58. data/app/views/admin/templates/_file.html.erb +20 -5
  59. data/app/views/admin/templates/_has_many.html.erb +24 -0
  60. data/app/views/admin/templates/_has_n.html.erb +17 -0
  61. data/{test/config/empty/empty_02.yml → app/views/admin/templates/_has_one.html.erb} +0 -0
  62. data/app/views/admin/templates/_password.html.erb +4 -2
  63. data/app/views/admin/templates/_relate_form.html.erb +4 -0
  64. data/app/views/admin/templates/_selector.html.erb +6 -18
  65. data/app/views/admin/templates/_string.html.erb +11 -10
  66. data/app/views/admin/templates/_text.html.erb +9 -2
  67. data/app/views/admin/templates/_time.html.erb +9 -2
  68. data/app/views/admin/templates/_tree.html.erb +4 -0
  69. data/app/views/layouts/admin/session.html.erb +44 -0
  70. data/app/views/layouts/admin.html.erb +45 -39
  71. data/config/available_locales/ca.yml +124 -0
  72. data/config/available_locales/ca_models.yml +16 -0
  73. data/config/{locales → available_locales}/de.yml +108 -89
  74. data/config/available_locales/de_models.yml +13 -0
  75. data/config/available_locales/es.yml +124 -0
  76. data/config/available_locales/es_models.yml +13 -0
  77. data/config/available_locales/fr.yml +124 -0
  78. data/config/available_locales/fr_models.yml +13 -0
  79. data/config/available_locales/hu.yml +124 -0
  80. data/config/available_locales/hu_models.yml +13 -0
  81. data/config/available_locales/it.yml +136 -0
  82. data/config/available_locales/it_models.yml +15 -0
  83. data/config/available_locales/language.yml.template +122 -0
  84. data/config/available_locales/language_models.yml.template +13 -0
  85. data/config/{locales → available_locales}/pt-BR.yml +97 -74
  86. data/config/available_locales/pt-BR_models.yml +13 -0
  87. data/config/{locales → available_locales}/ru.yml +107 -85
  88. data/config/available_locales/ru_models.yml +13 -0
  89. data/config/routes.rb +18 -11
  90. data/lib/generators/templates/config/initializers/typus.rb +26 -0
  91. data/lib/generators/templates/config/initializers/typus_authentication.rb +18 -0
  92. data/lib/generators/templates/config/initializers/typus_resources.rb +30 -0
  93. data/{generators/typus → lib/generators}/templates/config/typus/README +34 -16
  94. data/lib/generators/templates/config/typus/application.yml +5 -0
  95. data/lib/generators/templates/config/typus/application_roles.yml +6 -0
  96. data/lib/generators/templates/config/typus/typus.yml +17 -0
  97. data/lib/generators/templates/config/typus/typus_roles.yml +6 -0
  98. data/lib/generators/templates/controller.rb +4 -0
  99. data/lib/generators/templates/functional_test.rb +21 -0
  100. data/{generators/typus/templates/db/create_typus_users.rb → lib/generators/templates/migration.rb} +4 -4
  101. data/lib/generators/templates/model.rb +8 -0
  102. data/lib/generators/templates/model.yml +10 -0
  103. data/{generators/typus/templates/public/images/admin → lib/generators/templates/public/admin/images}/ui-icons.png +0 -0
  104. data/lib/generators/templates/public/admin/javascripts/application.js +6 -0
  105. data/lib/generators/templates/public/admin/javascripts/jquery-1.4.2.min.js +154 -0
  106. data/lib/generators/templates/public/admin/javascripts/jquery.rails.js +126 -0
  107. data/lib/generators/templates/public/admin/javascripts/jquery.searchField.js +91 -0
  108. data/lib/generators/templates/public/admin/stylesheets/application.css +11 -0
  109. data/lib/generators/templates/public/admin/stylesheets/screen.css +356 -0
  110. data/lib/generators/templates/public/admin/vendor/fancybox/blank.gif +0 -0
  111. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_close.png +0 -0
  112. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_loading.png +0 -0
  113. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_nav_left.png +0 -0
  114. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_nav_right.png +0 -0
  115. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_e.png +0 -0
  116. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_n.png +0 -0
  117. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_ne.png +0 -0
  118. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_nw.png +0 -0
  119. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_s.png +0 -0
  120. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_se.png +0 -0
  121. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_sw.png +0 -0
  122. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_shadow_w.png +0 -0
  123. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_title_left.png +0 -0
  124. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_title_main.png +0 -0
  125. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_title_over.png +0 -0
  126. data/{generators/typus/templates/public/images/admin → lib/generators/templates/public/admin/vendor}/fancybox/fancy_title_right.png +0 -0
  127. data/lib/generators/templates/public/admin/vendor/fancybox/fancybox-x.png +0 -0
  128. data/lib/generators/templates/public/admin/vendor/fancybox/fancybox-y.png +0 -0
  129. data/lib/generators/templates/public/admin/vendor/fancybox/fancybox.png +0 -0
  130. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.easing-1.3.pack.js +72 -0
  131. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.1.css +363 -0
  132. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.1.js +1077 -0
  133. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.1.pack.js +44 -0
  134. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.mousewheel-3.0.2.pack.js +13 -0
  135. data/lib/generators/templates/view.html.erb +9 -0
  136. data/lib/generators/typus/migration_generator.rb +85 -0
  137. data/lib/generators/typus/typus_generator.rb +190 -0
  138. data/lib/generators/typus/views_generator.rb +27 -0
  139. data/lib/support/active_record.rb +60 -0
  140. data/lib/support/array.rb +13 -0
  141. data/lib/{typus → support}/hash.rb +2 -2
  142. data/lib/{typus → support}/object.rb +2 -2
  143. data/lib/support/string.rb +47 -0
  144. data/lib/tasks/typus.rake +19 -0
  145. data/lib/typus/authentication.rb +146 -40
  146. data/lib/typus/configuration.rb +14 -49
  147. data/lib/typus/engine.rb +6 -0
  148. data/lib/typus/format.rb +41 -18
  149. data/lib/typus/orm/active_record.rb +378 -0
  150. data/lib/typus/resources.rb +57 -0
  151. data/lib/typus/user.rb +54 -37
  152. data/lib/typus/version.rb +3 -0
  153. data/lib/typus.rb +118 -80
  154. data/lib/vendor/paginator.rb +2 -2
  155. data/test/factories/assets.rb +5 -0
  156. data/test/factories/categories.rb +3 -0
  157. data/test/factories/comments.rb +6 -0
  158. data/test/factories/pages.rb +5 -0
  159. data/test/factories/pictures.rb +7 -0
  160. data/test/factories/posts.rb +6 -0
  161. data/test/factories/typus_users.rb +8 -0
  162. data/test/{config → fixtures/config}/broken/application.yml +0 -0
  163. data/test/{config → fixtures/config}/broken/application_roles.yml +0 -0
  164. data/test/{config/empty/empty_02_roles.yml → fixtures/config/broken/empty.yml} +0 -0
  165. data/test/fixtures/config/broken/empty_roles.yml +0 -0
  166. data/test/{config → fixtures/config}/broken/undefined.yml +0 -0
  167. data/test/{config → fixtures/config}/broken/undefined_roles.yml +0 -0
  168. data/test/{config → fixtures/config}/default/typus.yml +2 -1
  169. data/{generators/typus/templates/config/typus → test/fixtures/config/default}/typus_roles.yml +0 -0
  170. data/test/fixtures/config/empty/empty_01.yml +0 -0
  171. data/test/fixtures/config/empty/empty_01_roles.yml +0 -0
  172. data/test/fixtures/config/empty/empty_02.yml +0 -0
  173. data/test/fixtures/config/empty/empty_02_roles.yml +0 -0
  174. data/test/{config → fixtures/config}/locales/es.yml +0 -0
  175. data/test/fixtures/config/namespaced/application.yml +5 -0
  176. data/test/fixtures/config/namespaced/application_roles.yml +2 -0
  177. data/test/{config → fixtures/config}/ordered/001_roles.yml +0 -0
  178. data/test/{config → fixtures/config}/ordered/002_roles.yml +0 -0
  179. data/test/{config → fixtures/config}/unordered/app_one_roles.yml +0 -0
  180. data/test/{config → fixtures/config}/unordered/app_two_roles.yml +0 -0
  181. data/test/fixtures/config/working/application.yml +73 -0
  182. data/test/fixtures/config/working/application_roles.yml +24 -0
  183. data/{generators/typus/templates/config/typus → test/fixtures/config/working}/typus.yml +2 -1
  184. data/test/{config/default → fixtures/config/working}/typus_roles.yml +0 -0
  185. data/test/fixtures/rails_app/README +244 -0
  186. data/test/fixtures/rails_app/Rakefile +7 -0
  187. data/test/fixtures/rails_app/app/controllers/admin/assets_controller.rb +2 -0
  188. data/test/fixtures/rails_app/app/controllers/admin/categories_controller.rb +2 -0
  189. data/test/fixtures/rails_app/app/controllers/admin/comments_controller.rb +2 -0
  190. data/test/fixtures/rails_app/app/controllers/admin/pages_controller.rb +2 -0
  191. data/test/fixtures/rails_app/app/controllers/admin/pictures_controller.rb +2 -0
  192. data/test/fixtures/rails_app/app/controllers/admin/posts_controller.rb +2 -0
  193. data/test/fixtures/rails_app/app/controllers/admin/status_controller.rb +2 -0
  194. data/test/fixtures/rails_app/app/controllers/admin/typus_users_controller.rb +2 -0
  195. data/test/fixtures/rails_app/app/controllers/admin/watch_dog_controller.rb +2 -0
  196. data/test/fixtures/rails_app/app/controllers/application_controller.rb +4 -0
  197. data/test/fixtures/rails_app/app/helpers/application_helper.rb +2 -0
  198. data/test/fixtures/{app → rails_app/app}/models/asset.rb +1 -1
  199. data/test/fixtures/{app → rails_app/app}/models/category.rb +2 -2
  200. data/test/fixtures/{app → rails_app/app}/models/comment.rb +1 -1
  201. data/test/fixtures/{app → rails_app/app}/models/custom_user.rb +1 -1
  202. data/test/fixtures/{app → rails_app/app}/models/delayed/task.rb +2 -2
  203. data/test/fixtures/rails_app/app/models/page.rb +9 -0
  204. data/test/fixtures/rails_app/app/models/picture.rb +6 -0
  205. data/test/fixtures/{app → rails_app/app}/models/post.rb +6 -6
  206. data/test/fixtures/rails_app/app/models/typus_user.rb +8 -0
  207. data/test/fixtures/{app → rails_app/app}/models/view.rb +1 -1
  208. data/test/fixtures/rails_app/app/views/admin/categories/_form.html.erb +1 -0
  209. data/test/fixtures/rails_app/app/views/admin/dashboard/_sidebar.html.erb +1 -0
  210. data/test/fixtures/rails_app/app/views/admin/mailer/reset_password_link.text.erb +6 -0
  211. data/test/fixtures/rails_app/app/views/admin/posts/_edit.html.erb +1 -0
  212. data/test/fixtures/rails_app/app/views/admin/posts/_index.html.erb +1 -0
  213. data/test/fixtures/rails_app/app/views/admin/posts/_new.html.erb +1 -0
  214. data/test/fixtures/rails_app/app/views/admin/posts/_show.html.erb +1 -0
  215. data/test/fixtures/rails_app/app/views/admin/posts/_sidebar.html.erb +1 -0
  216. data/test/fixtures/rails_app/app/views/admin/resources/_sidebar.html.erb +1 -0
  217. data/test/fixtures/rails_app/app/views/admin/status/index.html.erb +1 -0
  218. data/test/fixtures/rails_app/app/views/admin/templates/_datepicker.html.erb +1 -0
  219. data/test/fixtures/rails_app/app/views/layouts/application.html.erb +14 -0
  220. data/test/fixtures/rails_app/config/application.rb +50 -0
  221. data/test/fixtures/rails_app/config/boot.rb +13 -0
  222. data/test/fixtures/rails_app/config/database.yml +22 -0
  223. data/test/fixtures/rails_app/config/environment.rb +5 -0
  224. data/test/fixtures/rails_app/config/environments/development.rb +19 -0
  225. data/test/fixtures/rails_app/config/environments/production.rb +42 -0
  226. data/test/fixtures/rails_app/config/environments/test.rb +34 -0
  227. data/test/fixtures/rails_app/config/initializers/acts_as_list.rb +258 -0
  228. data/test/fixtures/rails_app/config/initializers/acts_as_tree.rb +98 -0
  229. data/test/fixtures/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  230. data/test/fixtures/rails_app/config/initializers/inflections.rb +10 -0
  231. data/test/fixtures/rails_app/config/initializers/mime_types.rb +5 -0
  232. data/test/fixtures/rails_app/config/initializers/secret_token.rb +7 -0
  233. data/test/fixtures/rails_app/config/initializers/session_store.rb +8 -0
  234. data/test/fixtures/rails_app/config/initializers/typus.rb +6 -0
  235. data/test/fixtures/rails_app/config/locales/en.yml +5 -0
  236. data/test/fixtures/rails_app/config/routes.rb +8 -0
  237. data/test/{config/working → fixtures/rails_app/config/typus}/application.yml +11 -9
  238. data/test/{config/working → fixtures/rails_app/config/typus}/application_roles.yml +0 -0
  239. data/{generators/typus_update_schema_to_01/templates/config → test/fixtures/rails_app/config/typus}/typus.yml +0 -0
  240. data/test/{config/working → fixtures/rails_app/config/typus}/typus_roles.yml +0 -0
  241. data/test/fixtures/rails_app/config.ru +4 -0
  242. data/test/fixtures/rails_app/db/seeds.rb +7 -0
  243. data/test/fixtures/rails_app/db/test.sqlite3 +0 -0
  244. data/test/fixtures/rails_app/log/test.log +4268 -0
  245. data/test/fixtures/rails_app/public/404.html +26 -0
  246. data/test/fixtures/rails_app/public/422.html +26 -0
  247. data/test/fixtures/rails_app/public/500.html +26 -0
  248. data/test/fixtures/rails_app/public/favicon.ico +0 -0
  249. data/test/fixtures/rails_app/public/images/rails.png +0 -0
  250. data/test/fixtures/rails_app/public/index.html +279 -0
  251. data/test/fixtures/rails_app/public/javascripts/application.js +2 -0
  252. data/test/fixtures/rails_app/public/javascripts/controls.js +965 -0
  253. data/test/fixtures/rails_app/public/javascripts/dragdrop.js +974 -0
  254. data/test/fixtures/rails_app/public/javascripts/effects.js +1123 -0
  255. data/test/fixtures/rails_app/public/javascripts/prototype.js +4874 -0
  256. data/test/fixtures/rails_app/public/javascripts/rails.js +118 -0
  257. data/test/fixtures/rails_app/public/robots.txt +5 -0
  258. data/test/fixtures/rails_app/script/rails +9 -0
  259. data/test/fixtures/rails_app/tmp/export-posts-20100902120447.csv +2 -0
  260. data/test/fixtures/rails_app/tmp/export-posts-20100902120700.csv +2 -0
  261. data/test/functional/admin/account_controller_test.rb +90 -0
  262. data/test/functional/admin/dashboard_controller_http_basic_test.rb +24 -0
  263. data/test/functional/admin/dashboard_controller_none_test.rb +18 -0
  264. data/test/functional/admin/dashboard_controller_test.rb +106 -0
  265. data/test/functional/admin/resources_controller_assets_relationships.rb +59 -0
  266. data/test/functional/admin/resources_controller_categories_before_test.rb +10 -0
  267. data/test/functional/admin/resources_controller_categories_lists_test.rb +44 -0
  268. data/test/functional/admin/resources_controller_categories_views_test.rb +10 -0
  269. data/test/functional/admin/resources_controller_comments_toggle_test.rb +21 -0
  270. data/test/functional/admin/{master_controller_posts_before_test.rb → resources_controller_posts_before_test.rb} +3 -3
  271. data/test/functional/admin/resources_controller_posts_crud_custom_test.rb +27 -0
  272. data/test/functional/admin/resources_controller_posts_crud_test.rb +44 -0
  273. data/test/functional/admin/resources_controller_posts_formats_test.rb +39 -0
  274. data/test/functional/admin/resources_controller_posts_forms_test.rb +58 -0
  275. data/test/functional/admin/resources_controller_posts_permissions_test.rb +100 -0
  276. data/test/functional/admin/{master_controller_posts_relationships_test.rb → resources_controller_posts_relationships_test.rb} +25 -20
  277. data/test/functional/admin/resources_controller_posts_roles.rb +52 -0
  278. data/test/functional/admin/resources_controller_posts_views_test.rb +143 -0
  279. data/test/functional/admin/resources_controller_tableless_resource_test.rb +51 -0
  280. data/test/functional/admin/resources_controller_typus_users_test.rb +159 -0
  281. data/test/functional/admin/session_controller_test.rb +85 -0
  282. data/test/helpers/admin/dashboard_helper_test.rb +42 -0
  283. data/test/helpers/admin/form_helper_test.rb +52 -276
  284. data/test/helpers/admin/resources_helper_test.rb +52 -0
  285. data/test/helpers/admin/sidebar_helper_test.rb +133 -224
  286. data/test/helpers/admin/table_helper_test.rb +136 -144
  287. data/test/helpers/admin_helper_test.rb +69 -0
  288. data/test/lib/support/active_record_test.rb +35 -0
  289. data/test/lib/support/array_test.rb +15 -0
  290. data/test/lib/support/hash_test.rb +11 -0
  291. data/test/lib/support/string_test.rb +48 -0
  292. data/test/lib/typus/active_record_test.rb +385 -0
  293. data/test/lib/typus/configuration_test.rb +52 -0
  294. data/test/lib/typus/resource_test.rb +17 -0
  295. data/test/lib/typus/routes_test.rb +29 -0
  296. data/test/lib/typus_test.rb +72 -40
  297. data/test/{vendor → lib/vendor}/paginator_test.rb +7 -4
  298. data/test/schema.rb +28 -3
  299. data/test/test_helper.rb +29 -0
  300. data/test/unit/admin/mailer_test.rb +32 -0
  301. data/test/unit/typus_user_roles_test.rb +69 -61
  302. data/test/unit/typus_user_test.rb +56 -143
  303. data/typus.gemspec +18 -276
  304. metadata +305 -231
  305. data/.gitignore +0 -1
  306. data/AUTHORS.md +0 -34
  307. data/CHANGES +0 -3
  308. data/README.md +0 -75
  309. data/VERSION +0 -1
  310. data/app/controllers/admin/master_controller.rb +0 -394
  311. data/app/controllers/typus_controller.rb +0 -152
  312. data/app/helpers/admin/master_helper.rb +0 -104
  313. data/app/helpers/admin/public_helper.rb +0 -27
  314. data/app/helpers/typus_helper.rb +0 -181
  315. data/app/models/typus_mailer.rb +0 -14
  316. data/app/models/typus_user.rb +0 -5
  317. data/app/views/admin/shared/_feedback.html.erb +0 -6
  318. data/app/views/admin/shared/_footer.html.erb +0 -2
  319. data/app/views/admin/shared/_pagination.html.erb +0 -28
  320. data/app/views/admin/templates/_tiny_mce.html.erb +0 -2
  321. data/app/views/layouts/typus.html.erb +0 -29
  322. data/app/views/typus/dashboard.html.erb +0 -9
  323. data/app/views/typus/recover_password.html.erb +0 -7
  324. data/app/views/typus/reset_password.html.erb +0 -15
  325. data/app/views/typus/sign_in.html.erb +0 -9
  326. data/app/views/typus/sign_up.html.erb +0 -7
  327. data/config/locales/es.yml +0 -105
  328. data/config/locales/fr.yml +0 -98
  329. data/config/locales/language.yml.template +0 -106
  330. data/generators/typus/templates/auto/index.html.erb +0 -11
  331. data/generators/typus/templates/auto/resource_controller.rb.erb +0 -15
  332. data/generators/typus/templates/auto/resource_controller_test.rb.erb +0 -11
  333. data/generators/typus/templates/auto/resources_controller.rb.erb +0 -37
  334. data/generators/typus/templates/config/initializers/typus.rb +0 -34
  335. data/generators/typus/templates/config/typus/application.yml +0 -6
  336. data/generators/typus/templates/config/typus/application_roles.yml +0 -23
  337. data/generators/typus/templates/lib/tasks/typus_tasks.rake +0 -32
  338. data/generators/typus/templates/public/images/admin/fancybox/fancy_closebox.png +0 -0
  339. data/generators/typus/templates/public/images/admin/fancybox/fancy_left.png +0 -0
  340. data/generators/typus/templates/public/images/admin/fancybox/fancy_progress.png +0 -0
  341. data/generators/typus/templates/public/images/admin/fancybox/fancy_right.png +0 -0
  342. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_e.png +0 -0
  343. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_n.png +0 -0
  344. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_ne.png +0 -0
  345. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_nw.png +0 -0
  346. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_s.png +0 -0
  347. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_se.png +0 -0
  348. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_sw.png +0 -0
  349. data/generators/typus/templates/public/images/admin/fancybox/fancy_shadow_w.png +0 -0
  350. data/generators/typus/templates/public/images/admin/fancybox/fancy_title_left.png +0 -0
  351. data/generators/typus/templates/public/images/admin/fancybox/fancy_title_main.png +0 -0
  352. data/generators/typus/templates/public/javascripts/admin/application.js +0 -14
  353. data/generators/typus/templates/public/javascripts/admin/jquery-1.3.2.min.js +0 -19
  354. data/generators/typus/templates/public/javascripts/admin/jquery.fancybox-1.2.1.min.js +0 -9
  355. data/generators/typus/templates/public/stylesheets/admin/jquery.fancybox.css +0 -315
  356. data/generators/typus/templates/public/stylesheets/admin/reset.css +0 -68
  357. data/generators/typus/templates/public/stylesheets/admin/screen.css +0 -361
  358. data/generators/typus/typus_generator.rb +0 -191
  359. data/generators/typus_update_schema_to_01/templates/migration.rb +0 -11
  360. data/generators/typus_update_schema_to_01/typus_update_schema_to_01_generator.rb +0 -19
  361. data/generators/typus_update_schema_to_02/templates/migration.rb +0 -11
  362. data/generators/typus_update_schema_to_02/typus_update_schema_to_02_generator.rb +0 -11
  363. data/lib/typus/active_record.rb +0 -323
  364. data/lib/typus/extensions/routes.rb +0 -15
  365. data/lib/typus/extensions/routes_hack.rb +0 -15
  366. data/lib/typus/preferences.rb +0 -11
  367. data/lib/typus/preview.rb +0 -76
  368. data/lib/typus/quick_edit.rb +0 -40
  369. data/lib/typus/reloader.rb +0 -14
  370. data/lib/typus/string.rb +0 -27
  371. data/lib/vendor/active_record.rb +0 -15
  372. data/lib/vendor/rss_parser.rb +0 -20
  373. data/rails/init.rb +0 -3
  374. data/tasks/typus_tasks.rake +0 -32
  375. data/test/config/working/typus.yml +0 -12
  376. data/test/fixtures/app/controllers/admin/assets_controller.rb +0 -2
  377. data/test/fixtures/app/controllers/admin/categories_controller.rb +0 -2
  378. data/test/fixtures/app/controllers/admin/comments_controller.rb +0 -2
  379. data/test/fixtures/app/controllers/admin/pages_controller.rb +0 -2
  380. data/test/fixtures/app/controllers/admin/posts_controller.rb +0 -2
  381. data/test/fixtures/app/controllers/admin/status_controller.rb +0 -6
  382. data/test/fixtures/app/controllers/admin/typus_users_controller.rb +0 -2
  383. data/test/fixtures/app/controllers/admin/watch_dog_controller.rb +0 -6
  384. data/test/fixtures/app/models/page.rb +0 -5
  385. data/test/fixtures/app/views/admin/dashboard/_content.html.erb +0 -1
  386. data/test/fixtures/app/views/admin/dashboard/_sidebar.html.erb +0 -1
  387. data/test/fixtures/app/views/admin/posts/_edit.html.erb +0 -1
  388. data/test/fixtures/app/views/admin/posts/_index.html.erb +0 -1
  389. data/test/fixtures/app/views/admin/posts/_new.html.erb +0 -1
  390. data/test/fixtures/app/views/admin/posts/_show.html.erb +0 -1
  391. data/test/fixtures/app/views/admin/posts/_sidebar.html.erb +0 -1
  392. data/test/fixtures/app/views/admin/resources/_sidebar.html.erb +0 -1
  393. data/test/fixtures/app/views/admin/shared/_footer.html.erb +0 -1
  394. data/test/fixtures/app/views/admin/status/index.html.erb +0 -1
  395. data/test/fixtures/app/views/admin/templates/_datepicker.html.erb +0 -1
  396. data/test/fixtures/assets.yml +0 -11
  397. data/test/fixtures/categories.yml +0 -14
  398. data/test/fixtures/comments.yml +0 -27
  399. data/test/fixtures/pages.yml +0 -41
  400. data/test/fixtures/posts.yml +0 -37
  401. data/test/fixtures/typus_users.yml +0 -59
  402. data/test/functional/admin/master_controller_assets_relationships.rb +0 -66
  403. data/test/functional/admin/master_controller_categories_lists_test.rb +0 -64
  404. data/test/functional/admin/master_controller_posts_crud_test.rb +0 -97
  405. data/test/functional/admin/master_controller_posts_formats_test.rb +0 -53
  406. data/test/functional/admin/master_controller_posts_permissions_test.rb +0 -127
  407. data/test/functional/admin/master_controller_posts_roles.rb +0 -50
  408. data/test/functional/admin/master_controller_posts_toggle_test.rb +0 -35
  409. data/test/functional/admin/master_controller_posts_views_test.rb +0 -209
  410. data/test/functional/admin/master_controller_tableless_resource_test.rb +0 -36
  411. data/test/functional/admin/master_controller_typus_users_test.rb +0 -211
  412. data/test/functional/typus_controller_test.rb +0 -342
  413. data/test/helper.rb +0 -51
  414. data/test/helpers/admin/master_helper_test.rb +0 -70
  415. data/test/helpers/admin/public_helper_test.rb +0 -26
  416. data/test/helpers/typus_helper_test.rb +0 -96
  417. data/test/lib/active_record_test.rb +0 -377
  418. data/test/lib/configuration_test.rb +0 -95
  419. data/test/lib/hash_test.rb +0 -11
  420. data/test/lib/routes_test.rb +0 -71
  421. data/test/lib/string_test.rb +0 -55
  422. data/test/unit/typus_mailer_test.rb +0 -29
  423. data/test/unit/typus_test.rb +0 -17
  424. data/test/vendor/active_record_test.rb +0 -18
@@ -0,0 +1,154 @@
1
+ <% content_for :sidebar do %>
2
+
3
+ <h2>Header (h2) <small>Small <a href="#">link</a></small></h2>
4
+
5
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
6
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
7
+ quis <a href="#">nostrud exercitation</a> ullamco laboris nisi ut aliquip ex
8
+ ea commodo consequat.</p>
9
+
10
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
11
+ tempor incididunt ut labore</p>
12
+
13
+ <h3>Header (h3)</h3>
14
+
15
+ <ul>
16
+ <li>Lorem incididunt</li>
17
+ <li>Lorem incididunt</li>
18
+ <li>Lorem incididunt</li>
19
+ </ul>
20
+
21
+ <h3><a href="#">Header (h3)</a></h3>
22
+
23
+ <ul>
24
+ <li><a href="#">Lorem incididunt</a></li>
25
+ <li><a href="#">Lorem incididunt</a></li>
26
+ <li>Lorem incididunt</li>
27
+ </ul>
28
+
29
+ <% end %>
30
+
31
+ <h2>Header (h2) <small>Small <a href="#">link</a></small></h2>
32
+
33
+ <p>
34
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
35
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
36
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
37
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
38
+ cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
39
+ non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
40
+ </p>
41
+
42
+ <blockquote>
43
+ <p>
44
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
45
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
46
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
47
+ consequat.
48
+ </p>
49
+ <p>
50
+ Duis aute irure dolor in reprehenderit in voluptate velit esse
51
+ cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
52
+ non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
53
+ </p>
54
+ </blockquote>
55
+
56
+ <pre>
57
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
58
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
59
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
60
+ consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
61
+ cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
62
+ non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
63
+ </pre>
64
+
65
+ <p>
66
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
67
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
68
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
69
+ consequat.
70
+ </p>
71
+
72
+ <p><a href="#">Link to self</a></p>
73
+
74
+ <h3>Header (h3)</h3>
75
+
76
+ <p>
77
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
78
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
79
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
80
+ consequat.
81
+ </p>
82
+
83
+ <h2>Boxes</h2>
84
+
85
+ <div class="box">
86
+ <p>
87
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
88
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
89
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
90
+ consequat.
91
+ </p>
92
+ </div>
93
+
94
+ <div class="box">
95
+ <h3>Header (h3)</h3>
96
+ <ul>
97
+ <li>Lorem ipsum dolor sit amet</li>
98
+ <li>Duis aute irure dolor in reprehenderit in voluptate</li>
99
+ <li>Laboris nisi ut aliquip ex ea commodo</li>
100
+ </ul>
101
+ </div>
102
+
103
+ <div class="box">
104
+ <h3>Header (h3)</h3>
105
+ <p>
106
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
107
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
108
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
109
+ consequat.
110
+ </p>
111
+ <ul>
112
+ <li>Lorem ipsum dolor sit amet</li>
113
+ <li>Duis aute irure dolor in reprehenderit in voluptate</li>
114
+ <li>Laboris nisi ut aliquip ex ea commodo</li>
115
+ </ul>
116
+ </div>
117
+
118
+ <p>
119
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
120
+ tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
121
+ quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
122
+ consequat.
123
+ </p>
124
+
125
+ <h2>Error Messages (h2)</h2>
126
+
127
+ <div id="flash" class="notice">
128
+ <p><strong>Hey!</strong> Sample ui-state-highlight style.</p>
129
+ </div>
130
+
131
+ <div id="flash" class="alert">
132
+ <p><strong>Alert:</strong> Sample ui-state-error style.</p>
133
+ </div>
134
+
135
+ <h2>Filters (h2)</h2>
136
+
137
+ <h3>Filters with a list inside (h3)</h3>
138
+
139
+ <div class="filters">
140
+ <ul>
141
+ <li>Filter</li>
142
+ <li>Filter</li>
143
+ </ul>
144
+ </div>
145
+
146
+ <h3>Filters with a paragraph inside (h3)</h3>
147
+
148
+ <div class="filters">
149
+ <p>This is a paragraph.</p>
150
+ </div>
151
+
152
+ <h2>Forms (h2)</h2>
153
+
154
+ <p>This is how a form looks like.</p>
@@ -0,0 +1,6 @@
1
+ <ul>
2
+ <li><%= link_to _("Dashboard"), admin_dashboard_path %></li>
3
+ <% Typus.applications.each do |app| %>
4
+ <li><%= link_to _(app), :controller => Typus.application(app).sort {|a,b| a.constantize.model_name.human <=> b.constantize.model_name.human}.first.tableize %></li>
5
+ <% end %>
6
+ </ul>
@@ -0,0 +1,3 @@
1
+ <div id="flash" class="<%= flash_type %>">
2
+ <%= message[flash_type] %>
3
+ </div>
@@ -0,0 +1,7 @@
1
+ <h1 class="logo">
2
+ <% if Rails.application.routes.routes.map(&:name).include?(:root) %>
3
+ <%= link_to Typus.admin_title, root_path, :title => _("View site") %>
4
+ <% else %>
5
+ <%= Typus.admin_title %>
6
+ <% end %>
7
+ </h1>
@@ -0,0 +1,4 @@
1
+ <ul>
2
+ <li><%= _("Logged as") %> <%= user_details %></li>
3
+ <li><%= link_to _("Sign out"), admin_session_path, :confirm => message, :method => :delete %></li>
4
+ </ul>
@@ -0,0 +1,13 @@
1
+ <% if has_file_preview && file_preview_is_image %>
2
+ <% content_for :javascripts do %>
3
+ <script type="text/javascript" charset="utf-8">
4
+ $(document).ready(function() {
5
+ $("#<%= dom_id(item, "#{attribute}_preview") %>").fancybox();
6
+ });
7
+ </script>
8
+ <% end %>
9
+ <% end %>
10
+
11
+ <a id="<%= dom_id(item, "#{attribute}_preview") %>"
12
+ href="<%= href %>"
13
+ title="<%= item.to_label %>"><%= content %></a>
@@ -0,0 +1,32 @@
1
+ <% applications.each do |app, models| %>
2
+
3
+ <table>
4
+
5
+ <thead>
6
+ <tr>
7
+ <th colspan="2"><%= _(app) %></th>
8
+ </tr>
9
+ </thead>
10
+
11
+ <% models.each do |model| %>
12
+
13
+ <%
14
+ klass = model.constantize
15
+ klass_human_name = klass.model_name.human.gsub("/", " ").pluralize
16
+ admin_items_path = { :controller => "admin/#{klass.to_resource}" }
17
+ %>
18
+
19
+ <tr class="<%= cycle("even", "odd") %>">
20
+ <td>
21
+ <%= link_to klass_human_name, admin_items_path %>
22
+ </td>
23
+ <td class="right">
24
+ <%= link_to_if @current_user.can?("create", klass), _("Add"), admin_items_path.merge(:action => "new") %>
25
+ </td>
26
+ </tr>
27
+
28
+ <% end %>
29
+
30
+ </table>
31
+
32
+ <% end %>
@@ -0,0 +1,16 @@
1
+ <table>
2
+
3
+ <thead>
4
+ <tr>
5
+ <th colspan="2"><%= _("Resources") %></th>
6
+ </tr>
7
+ </thead>
8
+
9
+ <% resources.each do |resource| %>
10
+ <tr class="<%= cycle("even", "odd") %>">
11
+ <td><%= link_to _(resource.titleize.capitalize), :controller => "admin/#{resource.underscore}" %></td>
12
+ <td align="right" style="vertical-align: bottom;"></td>
13
+ </tr>
14
+ <% end %>
15
+
16
+ </table>
@@ -0,0 +1,31 @@
1
+ <div id="filters">
2
+
3
+ <ul>
4
+
5
+ <%= form_tag nil, :method => :get do %>
6
+
7
+ <% filters.each do |filter| %>
8
+
9
+ <li>
10
+ <select name="<%= filter[:filter] %>">
11
+ <option value=""><%= filter[:message] %></option>
12
+ <% filter[:items].each do |key, value| %>
13
+ <% selected = "selected" if params[filter[:filter]].eql?(key.to_s) %>
14
+ <option <%= selected %> value="<%= key %>"><%= value %></option>
15
+ <% end %>
16
+ </select>
17
+ </li>
18
+
19
+ <% end %>
20
+
21
+ <%= hidden_field_tag :search, params[:search] %>
22
+
23
+ <li>
24
+ <%= submit_tag _("Filter"), :name => nil %>
25
+ </li>
26
+
27
+ <% end %>
28
+
29
+ </ul>
30
+
31
+ </div>
@@ -0,0 +1,3 @@
1
+ <div id="flash" class="notice">
2
+ <%= message %> <%= link_to _("Do you want to cancel it?"), params[:back_to] %>
3
+ </div>
@@ -0,0 +1,28 @@
1
+ <div id="pagination">
2
+
3
+ <%
4
+ previous_text = "&larr; " + _("Previous")
5
+ next_text = _("Next") + " &rarr;"
6
+ %>
7
+
8
+ <div class="left">
9
+
10
+ <% if @items.prev? %>
11
+ <%= link_to raw(previous_text), params.merge(:page => @items.prev.number, :anchor => @options[:anchor]) %>
12
+ <% else %>
13
+ <span class="disabled"><%= raw(previous_text) %></span>
14
+ <% end %>
15
+
16
+ </div>
17
+
18
+ <div class="right">
19
+
20
+ <% if @items.next? %>
21
+ <%= link_to raw(next_text), params.merge(:page => @items.next.number, :anchor => @options[:anchor]) %>
22
+ <% else %>
23
+ <span class="disabled"><%= raw(next_text) %></span>
24
+ <% end %>
25
+
26
+ </div>
27
+
28
+ </div>
@@ -0,0 +1,12 @@
1
+ <div id="search">
2
+
3
+ <%= form_tag url_for(:controller => params[:controller]), :method => :get do %>
4
+ <ul>
5
+ <li><input id="quicksearch" name="search" type="text" title="<%= params[:search] || _("Search") %>"/></li>
6
+ </ul>
7
+ <% hidden_params.each do |field| %>
8
+ <%= field %>
9
+ <% end %>
10
+ <% end %>
11
+
12
+ </div>
@@ -0,0 +1,17 @@
1
+ <% resources.each do |key, value| %>
2
+
3
+ <% resource = "/admin/#{key.constantize.to_resource}" %>
4
+
5
+ <%= link_to :controller => resource, :action => "index" do %>
6
+ <h3><%= _(key.constantize.model_name.human.pluralize) %></h3>
7
+ <% end %>
8
+
9
+ <% if @resource.name.eql?(key) %>
10
+ <ul>
11
+ <% value.each do |v| %>
12
+ <li><%= v %></li>
13
+ <% end %>
14
+ </ul>
15
+ <% end %>
16
+
17
+ <% end %>
@@ -0,0 +1,22 @@
1
+ <table>
2
+
3
+ <thead>
4
+ <tr>
5
+ <% headers.each do |header| %>
6
+ <th><%= header %></th>
7
+ <% end %>
8
+ <th colspan="2"></th>
9
+ </tr>
10
+ </thead>
11
+
12
+ <% items.each do |item| %>
13
+ <tr class="<%= cycle('even', 'odd') %>" id="<%= dom_id(item) %>">
14
+ <% table_fields_for_item(item, fields, link_options).each do |field| %>
15
+ <%= field %>
16
+ <% end %>
17
+ <td width="10px"><%= table_default_action(model, item) %></td>
18
+ <td width="10px"><%= table_action(model, item) %></td>
19
+ </tr>
20
+ <% end %>
21
+
22
+ </table>
@@ -1,6 +1,6 @@
1
1
 
2
2
  <%= _("You can update your password at") %>:
3
3
 
4
- <%= url_for admin_reset_password_url(:token => @user.token) %>
4
+ <%= @url %>
5
5
 
6
- <%= _("If you didn't request a password update, you can ignore this message") %>
6
+ <%= _("If you didn't request a password update, you can ignore this message") %>
@@ -0,0 +1,26 @@
1
+ <%= form_for @item, :url => options, :html => { :multipart => true } do |form| %>
2
+
3
+ <% if @item.errors.any? %>
4
+ <div id="errorExplanation">
5
+ <h3><%= pluralize(@item.errors.count, "error") %> prohibited this page from being saved:</h3>
6
+ <ul>
7
+ <% @item.errors.full_messages.each do |msg| %>
8
+ <li><%= msg %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <fieldset class="inputs">
15
+ <ol>
16
+ <%= raw build_form(@fields, form) %>
17
+ </ol>
18
+ </fieldset>
19
+
20
+ <fieldset class="buttons">
21
+ <ol>
22
+ <li><%= submit_tag button , :class => "commit" %> or <%= link_to _("Cancel and go back").downcase, :action => "index" %></li>
23
+ </ol>
24
+ </fieldset>
25
+
26
+ <% end %>
@@ -1,26 +1,28 @@
1
- <% content_for :sidebar do %>
2
- <%= typus_block :location => @resource[:self], :partial => 'sidebar' %>
3
- <%= actions %>
4
- <%= search %>
5
- <%= previous_and_next %>
6
- <% end %>
1
+ <%
2
+ page_title = _("Edit %{resource}", :resource => @resource.model_name.human)
3
+ title(page_title)
4
+ %>
7
5
 
8
- <%= display_link_to_previous if params[:back_to] %>
6
+ <% content_for :sidebar, build_sidebar %>
9
7
 
10
- <h2><%= link_to @resource[:human_name].pluralize, :action => 'index' %> &rsaquo;
11
- <%= _("Edit") %></h2>
8
+ <h2>
9
+ <%= page_title %>
10
+ <small></small>
11
+ </h2>
12
12
 
13
- <%= typus_block :location => @resource[:self], :partial => 'edit' %>
13
+ <%= display_link_to_previous %>
14
+ <%= display_flash_message %>
15
+ <%= typus_block %>
14
16
 
15
- <% form_for @item,
16
- :url => { :action => 'update',
17
- :id => @item.id ,
18
- :back_to => params[:back_to],
19
- :resource => params[:resource],
20
- :resource_id => params[:resource_id]},
21
- :html => { :multipart => true } do |f| %>
22
- <%= build_form(@fields) %>
23
- <p><%= submit_tag _("Update entry"), :class => 'button' %></p>
24
- <% end %>
17
+ <%
18
+ options = { :action => "update",
19
+ :id => @item.id ,
20
+ :back_to => params[:back_to],
21
+ :resource => params[:resource],
22
+ :resource_id => params[:resource_id] }
23
+ button = _("Save %{resource}", :resource => @resource.model_name.human)
24
+ %>
25
25
 
26
- <%= typus_relationships %>
26
+ <%= render form_partial, :options => options, :button => button %>
27
+
28
+ <%= raw typus_relationships %>
@@ -1,24 +1,37 @@
1
- <% content_for :sidebar do %>
2
- <%= typus_block :location => @resource[:self], :partial => 'sidebar' %>
3
- <%= actions %>
4
- <%= export %>
5
- <%= search %>
6
- <%= filters %>
7
- <% end %>
1
+ <%
2
+ page_title = _("%{resources}", :resources => @resource.model_name.human.pluralize)
3
+ title(page_title)
4
+ %>
5
+
6
+ <% content_for :sidebar, build_sidebar %>
8
7
 
9
- <h2><%= @resource[:human_name].pluralize %> <%= remove_filter_link %></h2>
8
+ <h2>
9
+ <%= page_title %>
10
+ <small><%= remove_filter_link %></small>
11
+ </h2>
10
12
 
11
- <%= typus_block :location => @resource[:self], :partial => 'index' %>
13
+ <%= display_flash_message %>
14
+ <%= typus_block %>
15
+
16
+ <% if (build_filters || search) && !@resource.count.zero? %>
17
+ <div class="filters">
18
+ <%= build_filters %>
19
+ <%= search %>
20
+ </div>
21
+ <% end %>
12
22
 
13
23
  <% unless @items.count.zero? -%>
14
- <%= build_list(@resource[:class], @fields, @items) %>
24
+ <%= raw build_list(@resource, @fields, @items) %>
15
25
  <%= pagination %>
16
26
  <% else %>
17
- <div id="flash" class="notice">
18
- <% if @resource[:class].count.zero? %>
19
- <p><%= _("There are no {{records}}.", :records => @resource[:human_name].pluralize.downcase) %></p>
20
- <% else %>
21
- <p><%= _("There are no {{records}} under this filter.", :records => @resource[:human_name].pluralize.downcase) %></p>
22
- <% end %>
23
- </div>
24
- <% end %>
27
+ <% if @resource.count.zero? %>
28
+ <p>
29
+ <%= _("There are no %{records}.", :records => @resource.model_name.human.pluralize.downcase) %>
30
+ <%= link_to _("Create one now."), { :action => "new" } if @current_user.can?('create', @resource) %>
31
+ </p>
32
+ <% else %>
33
+ <div class="flash notice">
34
+ <%= _("There are no %{records} under this filter.", :records => @resource.model_name.human.pluralize.downcase) %>
35
+ </div>
36
+ <% end %>
37
+ <% end %>
@@ -1,22 +1,24 @@
1
- <% content_for :sidebar do %>
2
- <%= typus_block :location => @resource[:self], :partial => 'sidebar' %>
3
- <%= actions %>
4
- <% end %>
1
+ <%
2
+ page_title = _("New %{resource}", :resource => @resource.model_name.human)
3
+ title(page_title)
4
+ %>
5
5
 
6
- <%= display_link_to_previous if params[:back_to] %>
6
+ <% content_for :sidebar, build_sidebar %>
7
7
 
8
- <h2><%= link_to @resource[:human_name].pluralize, :action => 'index' %> &rsaquo;
9
- <%= _("New") %></h2>
8
+ <h2>
9
+ <%= page_title %>
10
+ </h2>
10
11
 
11
- <%= typus_block :location => @resource[:self], :partial => 'new' %>
12
+ <%= display_link_to_previous %>
13
+ <%= typus_block %>
12
14
 
13
- <% form_for @item,
14
- :url => { :action => 'create',
15
- :back_to => params[:back_to],
16
- :selected => params[:selected],
17
- :resource => params[:resource],
18
- :resource_id => params[:resource_id] },
19
- :html => { :multipart => true } do |f| %>
20
- <%= build_form(@fields) %>
21
- <p><%= submit_tag _("Create entry"), :class => 'button' %></p>
22
- <% end %>
15
+ <%
16
+ options = { :action => 'create',
17
+ :back_to => params[:back_to],
18
+ :selected => params[:selected],
19
+ :resource => params[:resource],
20
+ :resource_id => params[:resource_id] }
21
+ button = _("Create %{resource}", :resource => @resource.model_name.human)
22
+ %>
23
+
24
+ <%= render form_partial, :options => options, :button => button %>
@@ -1,38 +1,47 @@
1
- <% content_for :sidebar do %>
2
- <%= typus_block :location => @resource[:self], :partial => 'sidebar' %>
3
- <%= actions %>
4
- <%= search %>
5
- <%= previous_and_next %>
6
- <% end %>
1
+ <%
2
+ page_title = _("Show %{resource}", :resource => @resource.model_name.human)
3
+ title(page_title)
4
+ %>
7
5
 
8
- <h2><%= link_to @resource[:human_name].pluralize, :action => 'index' %> &rsaquo;
9
- <%= _("Show") %></h2>
6
+ <% content_for :sidebar, build_sidebar %>
10
7
 
11
- <%= typus_block :location => @resource[:self], :partial => 'show' %>
8
+ <h2>
9
+ <%= page_title %>
10
+ <small></small>
11
+ </h2>
12
+
13
+ <%= display_flash_message %>
14
+ <%= typus_block %>
12
15
 
13
16
  <dl>
14
17
  <%- @fields.each do |field| -%>
15
- <dt><%=h @resource[:class].human_attribute_name(field.first) %></dt>
18
+ <dt><%=h @resource.human_attribute_name(field.first) %></dt>
16
19
  <%-
17
20
  data_type = field.last
18
21
  raw_data = @item.send(field.first)
19
22
  data = case data_type
20
23
  when :boolean
21
- boolean_hash = @resource[:class].typus_boolean(field.first)
22
- !raw_data.nil? ? boolean_hash["#{raw_data}".to_sym] : @resource[:class].typus_options_for(:nil)
24
+ boolean_hash = @resource.typus_boolean(field.first)
25
+ !raw_data.nil? ? boolean_hash["#{raw_data}".to_sym] : @resource.typus_options_for(:nil)
23
26
  when :belongs_to
24
- raw_data.typus_name if !raw_data.nil?
27
+ if !raw_data.nil?
28
+ controller = raw_data.class.to_resource
29
+ action = raw_data.class.typus_options_for(:default_action_on_item)
30
+ options = { :controller => controller, :action => action, :id => raw_data }
31
+ link_to raw_data.to_label, options
32
+ else
33
+ nil
34
+ end
25
35
  when :file
26
- @item.typus_preview(field.first)
27
- when :text
28
- text = h(raw_data)
29
- defined?(RDiscount) ? markdown(text) : text
36
+ typus_preview(@item, field.first)
37
+ when :selector
38
+ @item.mapping(field.first)
30
39
  else
31
- h(raw_data)
40
+ raw_data
32
41
  end
33
42
  -%>
34
- <dd><%= !data.blank? ? data : '&#151;' %></dd>
43
+ <dd><%= data.blank? ? "&#151;".html_safe : data %></dd>
35
44
  <%- end -%>
36
45
  </dl>
37
46
 
38
- <%= typus_relationships %>
47
+ <%= raw typus_relationships %>