typus 3.0.2 → 3.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (343) hide show
  1. data/Gemfile +20 -9
  2. data/Gemfile.lock +93 -65
  3. data/MIT-LICENSE +1 -1
  4. data/README.md +61 -0
  5. data/Rakefile +5 -0
  6. data/app/controllers/admin/account_controller.rb +7 -10
  7. data/app/controllers/admin/base_controller.rb +16 -1
  8. data/app/controllers/admin/resources_controller.rb +270 -159
  9. data/app/controllers/admin/session_controller.rb +8 -9
  10. data/app/helpers/admin/base_helper.rb +13 -28
  11. data/app/helpers/admin/dashboard_helper.rb +4 -10
  12. data/app/helpers/admin/file_preview_helper.rb +70 -0
  13. data/app/helpers/admin/filters_helper.rb +64 -45
  14. data/app/helpers/admin/form_helper.rb +37 -62
  15. data/app/helpers/admin/relationships_helper.rb +63 -78
  16. data/app/helpers/admin/resources_helper.rb +10 -31
  17. data/app/helpers/admin/search_helper.rb +6 -9
  18. data/app/helpers/admin/sidebar_helper.rb +15 -20
  19. data/app/helpers/admin/table_helper.rb +79 -170
  20. data/app/mailers/admin/mailer.rb +1 -1
  21. data/app/views/admin/account/forgot_password.html.erb +2 -2
  22. data/app/views/admin/account/new.html.erb +8 -4
  23. data/app/views/admin/base/user_guide.html.erb +85 -0
  24. data/app/views/admin/dashboard/_sidebar.html.erb +3 -1
  25. data/app/views/admin/dashboard/show.html.erb +2 -2
  26. data/app/views/admin/dashboard/styles.html.erb +2 -2
  27. data/app/views/admin/helpers/_apps.html.erb +5 -4
  28. data/app/views/admin/helpers/_file_preview.html.erb +3 -0
  29. data/app/views/admin/helpers/_header.html.erb +3 -3
  30. data/app/views/admin/helpers/_login_info.html.erb +2 -2
  31. data/app/views/admin/helpers/dashboard/_applications.html.erb +6 -9
  32. data/app/views/admin/helpers/dashboard/_resources.html.erb +2 -3
  33. data/app/views/admin/helpers/filters/_filters.html.erb +1 -1
  34. data/app/views/admin/helpers/resources/_display_link_to_previous.html.erb +1 -1
  35. data/app/views/admin/helpers/resources/_errors.html.erb +10 -0
  36. data/app/views/admin/helpers/search/_search.html.erb +1 -1
  37. data/app/views/admin/helpers/sidebar/_sidebar.html.erb +6 -3
  38. data/app/views/admin/helpers/table/_table.html.erb +17 -5
  39. data/app/views/admin/mailer/reset_password_link.text.erb +2 -2
  40. data/app/views/admin/resources/_form.html.erb +3 -12
  41. data/app/views/admin/resources/edit.html.erb +7 -5
  42. data/app/views/admin/resources/index.html.erb +13 -18
  43. data/app/views/admin/resources/new.html.erb +4 -4
  44. data/app/views/admin/resources/show.html.erb +9 -13
  45. data/app/views/admin/session/new.html.erb +8 -4
  46. data/app/views/admin/templates/_belongs_to.html.erb +1 -1
  47. data/app/views/admin/templates/_boolean.html.erb +2 -2
  48. data/app/views/admin/templates/_date.html.erb +2 -2
  49. data/app/views/admin/templates/_datetime.html.erb +2 -2
  50. data/app/views/admin/templates/_file.html.erb +3 -19
  51. data/app/views/admin/templates/_has_n.html.erb +4 -4
  52. data/app/views/admin/templates/_has_one.html.erb +14 -0
  53. data/app/views/admin/templates/_password.html.erb +2 -2
  54. data/app/views/admin/templates/_profile_sidebar.html.erb +3 -0
  55. data/app/views/admin/templates/_relate_form.html.erb +2 -1
  56. data/app/views/admin/templates/_selector.html.erb +1 -1
  57. data/app/views/admin/templates/_string.html.erb +6 -6
  58. data/app/views/admin/templates/_text.html.erb +11 -4
  59. data/app/views/admin/templates/_time.html.erb +2 -2
  60. data/app/views/admin/templates/_tree.html.erb +1 -1
  61. data/app/views/layouts/admin/base.html.erb +7 -6
  62. data/app/views/layouts/admin/session.html.erb +4 -14
  63. data/config/{available_locales/ca_models.yml → locales/typus.ca.models.yml} +5 -4
  64. data/config/locales/typus.ca.yml +81 -0
  65. data/config/{available_locales/de_models.yml → locales/typus.de.models.yml} +6 -2
  66. data/config/locales/typus.de.yml +80 -0
  67. data/config/locales/typus.el.models.yml +17 -0
  68. data/config/locales/typus.el.yml +82 -0
  69. data/config/{available_locales/es_models.yml → locales/typus.es.models.yml} +9 -4
  70. data/config/locales/typus.es.yml +82 -0
  71. data/config/{available_locales/fr_models.yml → locales/typus.fr.models.yml} +8 -3
  72. data/config/locales/typus.fr.yml +87 -0
  73. data/config/{available_locales/hu_models.yml → locales/typus.hu.models.yml} +6 -2
  74. data/config/locales/typus.hu.yml +80 -0
  75. data/config/{available_locales/it_models.yml → locales/typus.it.models.yml} +7 -4
  76. data/config/locales/typus.it.yml +89 -0
  77. data/config/{available_locales/language_models.yml.template → locales/typus.locale.models.yml.template} +8 -4
  78. data/config/locales/typus.locale.yml.template +81 -0
  79. data/config/{available_locales/pt-BR_models.yml → locales/typus.pt-BR.models.yml} +6 -2
  80. data/config/locales/typus.pt-BR.yml +80 -0
  81. data/config/{available_locales/ru_models.yml → locales/typus.ru.models.yml} +6 -2
  82. data/config/locales/typus.ru.yml +80 -0
  83. data/config/locales/typus.zh-CN.models.yml +17 -0
  84. data/config/locales/typus.zh-CN.yml +79 -0
  85. data/config/routes.rb +11 -7
  86. data/lib/generators/templates/config/initializers/typus.rb +8 -5
  87. data/lib/generators/templates/config/initializers/typus_resources.rb +0 -3
  88. data/lib/generators/templates/config/typus/README +6 -6
  89. data/lib/generators/templates/config/typus/typus.yml +5 -5
  90. data/lib/generators/templates/controller.rb +1 -1
  91. data/lib/generators/templates/migration.rb +1 -0
  92. data/lib/generators/templates/public/admin/javascripts/application.js +0 -4
  93. data/lib/generators/templates/public/admin/javascripts/jquery-1.4.4.min.js +167 -0
  94. data/lib/generators/templates/public/admin/javascripts/jquery.application.js +16 -0
  95. data/lib/generators/templates/public/admin/javascripts/jquery.rails.js +50 -22
  96. data/lib/generators/templates/public/admin/stylesheets/screen.css +43 -34
  97. data/lib/generators/templates/public/admin/vendor/fancybox/fancy_loading.png +0 -0
  98. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.easing-1.3.pack.js +32 -32
  99. data/lib/generators/templates/public/admin/vendor/fancybox/{jquery.fancybox-1.3.1.css → jquery.fancybox-1.3.4.css} +359 -363
  100. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.4.js +1156 -0
  101. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.4.pack.js +46 -0
  102. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.mousewheel-3.0.4.pack.js +14 -0
  103. data/lib/generators/typus/assets_generator.rb +23 -0
  104. data/lib/generators/typus/controller_generator.rb +29 -0
  105. data/lib/generators/typus/migration_generator.rb +39 -20
  106. data/lib/generators/typus/typus_generator.rb +17 -57
  107. data/lib/generators/typus/views_generator.rb +2 -6
  108. data/lib/support/active_record.rb +8 -20
  109. data/lib/support/fake_user.rb +6 -1
  110. data/lib/support/hash.rb +1 -2
  111. data/lib/support/object.rb +4 -17
  112. data/lib/support/string.rb +34 -3
  113. data/lib/tasks/typus.rake +1 -1
  114. data/lib/typus.rb +60 -48
  115. data/lib/typus/actions.rb +27 -0
  116. data/lib/typus/authentication/base.rb +3 -4
  117. data/lib/typus/authentication/http_basic.rb +1 -1
  118. data/lib/typus/authentication/none.rb +1 -1
  119. data/lib/typus/authentication/session.rb +53 -108
  120. data/lib/typus/configuration.rb +13 -11
  121. data/lib/typus/filters.rb +12 -0
  122. data/lib/typus/format.rb +9 -13
  123. data/lib/typus/i18n.rb +30 -0
  124. data/lib/typus/orm/active_record.rb +97 -194
  125. data/lib/typus/orm/active_record/search.rb +91 -0
  126. data/lib/typus/resources.rb +6 -10
  127. data/lib/typus/user.rb +20 -40
  128. data/lib/typus/version.rb +1 -1
  129. metadata +77 -231
  130. data/CHANGELOG +0 -102
  131. data/README.rdoc +0 -48
  132. data/app/helpers/admin/preview_helper.rb +0 -46
  133. data/app/views/admin/helpers/_preview.html.erb +0 -13
  134. data/app/views/admin/templates/_has_many.html.erb +0 -22
  135. data/config/available_locales/ca.yml +0 -122
  136. data/config/available_locales/de.yml +0 -122
  137. data/config/available_locales/es.yml +0 -122
  138. data/config/available_locales/fr.yml +0 -127
  139. data/config/available_locales/hu.yml +0 -122
  140. data/config/available_locales/it.yml +0 -132
  141. data/config/available_locales/language.yml.template +0 -120
  142. data/config/available_locales/pt-BR.yml +0 -122
  143. data/config/available_locales/ru.yml +0 -122
  144. data/lib/generators/templates/functional_test.rb +0 -10
  145. data/lib/generators/templates/model.rb +0 -8
  146. data/lib/generators/templates/public/admin/images/ui-icons.png +0 -0
  147. data/lib/generators/templates/public/admin/javascripts/jquery-1.4.2.min.js +0 -154
  148. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.1.js +0 -1077
  149. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.fancybox-1.3.1.pack.js +0 -44
  150. data/lib/generators/templates/public/admin/vendor/fancybox/jquery.mousewheel-3.0.2.pack.js +0 -13
  151. data/lib/typus/pagination.rb +0 -18
  152. data/test/factories.rb +0 -43
  153. data/test/fixtures/config/broken/application.yml +0 -68
  154. data/test/fixtures/config/broken/application_roles.yml +0 -20
  155. data/test/fixtures/config/broken/empty.yml +0 -0
  156. data/test/fixtures/config/broken/empty_roles.yml +0 -0
  157. data/test/fixtures/config/broken/undefined.yml +0 -3
  158. data/test/fixtures/config/broken/undefined_roles.yml +0 -6
  159. data/test/fixtures/config/default/typus.yml +0 -13
  160. data/test/fixtures/config/default/typus_roles.yml +0 -2
  161. data/test/fixtures/config/empty/empty_01.yml +0 -0
  162. data/test/fixtures/config/empty/empty_01_roles.yml +0 -0
  163. data/test/fixtures/config/empty/empty_02.yml +0 -0
  164. data/test/fixtures/config/empty/empty_02_roles.yml +0 -0
  165. data/test/fixtures/config/locales/es.yml +0 -10
  166. data/test/fixtures/config/namespaced/application.yml +0 -5
  167. data/test/fixtures/config/namespaced/application_roles.yml +0 -2
  168. data/test/fixtures/config/ordered/001_roles.yml +0 -2
  169. data/test/fixtures/config/ordered/002_roles.yml +0 -2
  170. data/test/fixtures/config/unordered/app_one_roles.yml +0 -2
  171. data/test/fixtures/config/unordered/app_two_roles.yml +0 -2
  172. data/test/fixtures/config/working/application.yml +0 -73
  173. data/test/fixtures/config/working/application_roles.yml +0 -24
  174. data/test/fixtures/config/working/typus.yml +0 -13
  175. data/test/fixtures/config/working/typus_roles.yml +0 -2
  176. data/test/fixtures/rails_app/Rakefile +0 -7
  177. data/test/fixtures/rails_app/app/controllers/admin/assets_controller.rb +0 -2
  178. data/test/fixtures/rails_app/app/controllers/admin/categories_controller.rb +0 -2
  179. data/test/fixtures/rails_app/app/controllers/admin/comments_controller.rb +0 -2
  180. data/test/fixtures/rails_app/app/controllers/admin/pages_controller.rb +0 -2
  181. data/test/fixtures/rails_app/app/controllers/admin/pictures_controller.rb +0 -2
  182. data/test/fixtures/rails_app/app/controllers/admin/posts_controller.rb +0 -2
  183. data/test/fixtures/rails_app/app/controllers/admin/status_controller.rb +0 -2
  184. data/test/fixtures/rails_app/app/controllers/admin/typus_users_controller.rb +0 -2
  185. data/test/fixtures/rails_app/app/controllers/admin/watch_dog_controller.rb +0 -2
  186. data/test/fixtures/rails_app/app/controllers/application_controller.rb +0 -3
  187. data/test/fixtures/rails_app/app/models/asset.rb +0 -5
  188. data/test/fixtures/rails_app/app/models/category.rb +0 -11
  189. data/test/fixtures/rails_app/app/models/comment.rb +0 -6
  190. data/test/fixtures/rails_app/app/models/custom_user.rb +0 -2
  191. data/test/fixtures/rails_app/app/models/delayed/task.rb +0 -5
  192. data/test/fixtures/rails_app/app/models/page.rb +0 -5
  193. data/test/fixtures/rails_app/app/models/picture.rb +0 -6
  194. data/test/fixtures/rails_app/app/models/post.rb +0 -21
  195. data/test/fixtures/rails_app/app/models/typus_user.rb +0 -8
  196. data/test/fixtures/rails_app/app/models/view.rb +0 -5
  197. data/test/fixtures/rails_app/app/views/admin/categories/_form.html.erb +0 -1
  198. data/test/fixtures/rails_app/app/views/admin/dashboard/_sidebar.html.erb +0 -1
  199. data/test/fixtures/rails_app/app/views/admin/mailer/reset_password_link.text.erb +0 -6
  200. data/test/fixtures/rails_app/app/views/admin/posts/_edit.html.erb +0 -1
  201. data/test/fixtures/rails_app/app/views/admin/posts/_index.html.erb +0 -1
  202. data/test/fixtures/rails_app/app/views/admin/posts/_new.html.erb +0 -1
  203. data/test/fixtures/rails_app/app/views/admin/posts/_show.html.erb +0 -1
  204. data/test/fixtures/rails_app/app/views/admin/posts/_sidebar.html.erb +0 -1
  205. data/test/fixtures/rails_app/app/views/admin/resources/_sidebar.html.erb +0 -1
  206. data/test/fixtures/rails_app/app/views/admin/status/index.html.erb +0 -1
  207. data/test/fixtures/rails_app/app/views/admin/templates/_datepicker.html.erb +0 -1
  208. data/test/fixtures/rails_app/config.ru +0 -4
  209. data/test/fixtures/rails_app/config/application.rb +0 -53
  210. data/test/fixtures/rails_app/config/boot.rb +0 -13
  211. data/test/fixtures/rails_app/config/database.yml +0 -14
  212. data/test/fixtures/rails_app/config/environment.rb +0 -5
  213. data/test/fixtures/rails_app/config/environments/test.rb +0 -34
  214. data/test/fixtures/rails_app/config/initializers/secret_token.rb +0 -7
  215. data/test/fixtures/rails_app/config/initializers/session_store.rb +0 -8
  216. data/test/fixtures/rails_app/config/initializers/typus.rb +0 -6
  217. data/test/fixtures/rails_app/config/routes.rb +0 -5
  218. data/test/fixtures/rails_app/config/typus/application.yml +0 -79
  219. data/test/fixtures/rails_app/config/typus/application_roles.yml +0 -25
  220. data/test/fixtures/rails_app/config/typus/typus.yml +0 -12
  221. data/test/fixtures/rails_app/config/typus/typus_roles.yml +0 -2
  222. data/test/fixtures/rails_app/db/test.sqlite3 +0 -0
  223. data/test/fixtures/rails_app/tmp/export-posts-20101012213057.csv +0 -2
  224. data/test/fixtures/rails_app/tmp/export-posts-20101012213132.csv +0 -2
  225. data/test/fixtures/rails_app/tmp/export-posts-20101012213234.csv +0 -2
  226. data/test/fixtures/rails_app/tmp/export-posts-20101012213506.csv +0 -2
  227. data/test/fixtures/rails_app/tmp/export-posts-20101012215057.csv +0 -2
  228. data/test/fixtures/rails_app/tmp/export-posts-20101012215217.csv +0 -2
  229. data/test/fixtures/rails_app/tmp/export-posts-20101012215415.csv +0 -2
  230. data/test/fixtures/rails_app/tmp/export-posts-20101012215443.csv +0 -2
  231. data/test/fixtures/rails_app/tmp/export-posts-20101012215509.csv +0 -2
  232. data/test/fixtures/rails_app/tmp/export-posts-20101012215528.csv +0 -2
  233. data/test/fixtures/rails_app/tmp/export-posts-20101012215551.csv +0 -2
  234. data/test/fixtures/rails_app/tmp/export-posts-20101012215615.csv +0 -2
  235. data/test/fixtures/rails_app/tmp/export-posts-20101012215640.csv +0 -2
  236. data/test/fixtures/rails_app/tmp/export-posts-20101012215714.csv +0 -2
  237. data/test/fixtures/rails_app/tmp/export-posts-20101012215744.csv +0 -2
  238. data/test/fixtures/rails_app/tmp/export-posts-20101012215814.csv +0 -2
  239. data/test/fixtures/rails_app/tmp/export-posts-20101012215836.csv +0 -2
  240. data/test/fixtures/rails_app/tmp/export-posts-20101012215906.csv +0 -2
  241. data/test/fixtures/rails_app/tmp/export-posts-20101012220659.csv +0 -2
  242. data/test/fixtures/rails_app/tmp/export-posts-20101012221043.csv +0 -2
  243. data/test/fixtures/rails_app/tmp/export-posts-20101012221258.csv +0 -2
  244. data/test/fixtures/rails_app/tmp/export-posts-20101012222558.csv +0 -2
  245. data/test/fixtures/rails_app/tmp/export-posts-20101012222752.csv +0 -2
  246. data/test/fixtures/rails_app/tmp/export-posts-20101012222848.csv +0 -2
  247. data/test/fixtures/rails_app/tmp/export-posts-20101012223433.csv +0 -2
  248. data/test/fixtures/rails_app/tmp/export-posts-20101012223535.csv +0 -2
  249. data/test/fixtures/rails_app/tmp/export-posts-20101012224003.csv +0 -2
  250. data/test/fixtures/rails_app/tmp/export-posts-20101012224052.csv +0 -2
  251. data/test/fixtures/rails_app/tmp/export-posts-20101012224109.csv +0 -2
  252. data/test/fixtures/rails_app/tmp/export-posts-20101012224139.csv +0 -2
  253. data/test/fixtures/rails_app/tmp/export-posts-20101012224205.csv +0 -2
  254. data/test/fixtures/rails_app/tmp/export-posts-20101012224243.csv +0 -2
  255. data/test/fixtures/rails_app/tmp/export-posts-20101012225119.csv +0 -2
  256. data/test/fixtures/rails_app/tmp/export-posts-20101013063215.csv +0 -2
  257. data/test/fixtures/rails_app/tmp/export-posts-20101013063300.csv +0 -2
  258. data/test/fixtures/rails_app/tmp/export-posts-20101013063352.csv +0 -2
  259. data/test/fixtures/rails_app/tmp/export-posts-20101013063427.csv +0 -2
  260. data/test/fixtures/rails_app/tmp/export-posts-20101013063448.csv +0 -2
  261. data/test/fixtures/rails_app/tmp/export-posts-20101013063530.csv +0 -2
  262. data/test/fixtures/rails_app/tmp/export-posts-20101013063559.csv +0 -2
  263. data/test/fixtures/rails_app/tmp/export-posts-20101013063646.csv +0 -2
  264. data/test/fixtures/rails_app/tmp/export-posts-20101013063737.csv +0 -2
  265. data/test/fixtures/rails_app/tmp/export-posts-20101013063822.csv +0 -2
  266. data/test/fixtures/rails_app/tmp/export-posts-20101013063837.csv +0 -2
  267. data/test/fixtures/rails_app/tmp/export-posts-20101013063919.csv +0 -2
  268. data/test/fixtures/rails_app/tmp/export-posts-20101013063939.csv +0 -2
  269. data/test/fixtures/rails_app/tmp/export-posts-20101013063952.csv +0 -2
  270. data/test/fixtures/rails_app/tmp/export-posts-20101013064220.csv +0 -2
  271. data/test/fixtures/rails_app/tmp/export-posts-20101013064253.csv +0 -2
  272. data/test/fixtures/rails_app/tmp/export-posts-20101013064318.csv +0 -2
  273. data/test/fixtures/rails_app/tmp/export-posts-20101013064404.csv +0 -2
  274. data/test/fixtures/rails_app/tmp/export-posts-20101013064452.csv +0 -2
  275. data/test/fixtures/rails_app/tmp/export-posts-20101013064536.csv +0 -2
  276. data/test/fixtures/rails_app/tmp/export-posts-20101013064652.csv +0 -2
  277. data/test/fixtures/rails_app/tmp/export-posts-20101013064845.csv +0 -2
  278. data/test/fixtures/rails_app/tmp/export-posts-20101013065023.csv +0 -2
  279. data/test/fixtures/rails_app/tmp/export-posts-20101013065137.csv +0 -2
  280. data/test/fixtures/rails_app/tmp/export-posts-20101013065713.csv +0 -2
  281. data/test/fixtures/rails_app/tmp/export-posts-20101013065954.csv +0 -2
  282. data/test/fixtures/rails_app/tmp/export-posts-20101013070057.csv +0 -2
  283. data/test/fixtures/rails_app/tmp/export-posts-20101013070116.csv +0 -2
  284. data/test/fixtures/rails_app/tmp/export-posts-20101013070156.csv +0 -2
  285. data/test/fixtures/rails_app/tmp/export-posts-20101013070349.csv +0 -2
  286. data/test/fixtures/rails_app/tmp/export-posts-20101013070429.csv +0 -2
  287. data/test/fixtures/rails_app/tmp/export-posts-20101013070448.csv +0 -2
  288. data/test/fixtures/rails_app/tmp/export-posts-20101013070514.csv +0 -2
  289. data/test/fixtures/rails_app/tmp/export-posts-20101013070709.csv +0 -2
  290. data/test/fixtures/rails_app/tmp/export-posts-20101013070745.csv +0 -2
  291. data/test/fixtures/rails_app/tmp/export-posts-20101013070809.csv +0 -2
  292. data/test/fixtures/rails_app/tmp/export-posts-20101013070905.csv +0 -2
  293. data/test/fixtures/rails_app/tmp/export-posts-20101013070955.csv +0 -2
  294. data/test/fixtures/rails_app/tmp/export-posts-20101013071116.csv +0 -2
  295. data/test/fixtures/rails_app/tmp/export-posts-20101013071209.csv +0 -2
  296. data/test/fixtures/rails_app/tmp/export-posts-20101013071335.csv +0 -2
  297. data/test/fixtures/rails_app/tmp/export-posts-20101013071632.csv +0 -2
  298. data/test/fixtures/rails_app/tmp/export-posts-20101013071643.csv +0 -2
  299. data/test/fixtures/rails_app/tmp/export-posts-20101013071735.csv +0 -2
  300. data/test/fixtures/rails_app/tmp/export-posts-20101013071749.csv +0 -2
  301. data/test/fixtures/rails_app/tmp/export-posts-20101013072030.csv +0 -2
  302. data/test/fixtures/rails_app/tmp/export-posts-20101013072050.csv +0 -2
  303. data/test/fixtures/rails_app/tmp/export-posts-20101013072108.csv +0 -2
  304. data/test/fixtures/rails_app/tmp/export-posts-20101013072713.csv +0 -2
  305. data/test/fixtures/rails_app/tmp/export-posts-20101013072751.csv +0 -2
  306. data/test/fixtures/rails_app/tmp/export-posts-20101013072912.csv +0 -2
  307. data/test/fixtures/rails_app/tmp/export-posts-20101013074546.csv +0 -2
  308. data/test/fixtures/rails_app/tmp/export-posts-20101018180512.csv +0 -2
  309. data/test/fixtures/rails_app/tmp/export-posts-20101018183359.csv +0 -2
  310. data/test/fixtures/rails_app/tmp/export-posts-20101018183608.csv +0 -2
  311. data/test/fixtures/rails_app/tmp/export-posts-20101018183759.csv +0 -2
  312. data/test/functional/admin/account_controller_test.rb +0 -90
  313. data/test/functional/admin/assets_controller_test.rb +0 -55
  314. data/test/functional/admin/categories_controller_test.rb +0 -62
  315. data/test/functional/admin/comments_controller_test.rb +0 -21
  316. data/test/functional/admin/dashboard_controller_test.rb +0 -138
  317. data/test/functional/admin/posts_controller_test.rb +0 -548
  318. data/test/functional/admin/session_controller_test.rb +0 -85
  319. data/test/functional/admin/status_controller_test.rb +0 -46
  320. data/test/functional/admin/typus_users_controller_test.rb +0 -159
  321. data/test/helpers/admin/base_helper_test.rb +0 -67
  322. data/test/helpers/admin/dashboard_helper_test.rb +0 -19
  323. data/test/helpers/admin/form_helper_test.rb +0 -117
  324. data/test/helpers/admin/resources_helper_test.rb +0 -64
  325. data/test/helpers/admin/sidebar_helper_test.rb +0 -274
  326. data/test/helpers/admin/table_helper_test.rb +0 -219
  327. data/test/integration/login_test.rb +0 -13
  328. data/test/integration_test_helper.rb +0 -21
  329. data/test/lib/support/active_record_test.rb +0 -86
  330. data/test/lib/support/array_test.rb +0 -11
  331. data/test/lib/support/hash_test.rb +0 -11
  332. data/test/lib/support/string_test.rb +0 -39
  333. data/test/lib/typus/active_record_test.rb +0 -451
  334. data/test/lib/typus/configuration_test.rb +0 -52
  335. data/test/lib/typus/resource_test.rb +0 -17
  336. data/test/lib/typus/routes_test.rb +0 -29
  337. data/test/lib/typus_test.rb +0 -107
  338. data/test/schema.rb +0 -100
  339. data/test/test_helper.rb +0 -16
  340. data/test/unit/admin/mailer_test.rb +0 -32
  341. data/test/unit/typus_user_roles_test.rb +0 -105
  342. data/test/unit/typus_user_test.rb +0 -142
  343. data/typus.gemspec +0 -25
@@ -7,7 +7,7 @@ class Admin::Mailer < ActionMailer::Base
7
7
  @url = url
8
8
 
9
9
  mail :to => user.email,
10
- :subject => "[#{Typus.admin_title}] #{_t("Reset password")}"
10
+ :subject => "[#{Typus.admin_title}] #{Typus::I18n.t("Reset password")}"
11
11
  end
12
12
 
13
13
  end
@@ -1,5 +1,5 @@
1
1
  <%
2
- page_title = _t("Forgot password")
2
+ page_title = Typus::I18n.t("Forgot password")
3
3
  title(page_title)
4
4
  %>
5
5
 
@@ -13,7 +13,7 @@
13
13
  </li>
14
14
 
15
15
  <li>
16
- <%= submit_tag _t("Submit"), :class => "button" %> <%= link_to _t("I remember my password"), new_admin_session_path %>
16
+ <%= submit_tag Typus::I18n.t("Submit"), :class => "button" %> <%= link_to Typus::I18n.t("I remember my password"), new_admin_session_path %>
17
17
  </li>
18
18
 
19
19
  </ul>
@@ -1,5 +1,5 @@
1
1
  <%
2
- page_title = _t("Sign up")
2
+ page_title = Typus::I18n.t("Sign up")
3
3
  title(page_title)
4
4
  %>
5
5
 
@@ -8,14 +8,18 @@
8
8
  <ul>
9
9
 
10
10
  <li>
11
- <%= form.label :email, Typus.user_class.human_attribute_name(:email) %>
12
- <%= form.text_field :email, :size => 20, :class => "text" %>
11
+ <%= form.label :email, Typus.user_class.human_attribute_name(:email), :for => 'autofocus' %>
12
+ <%= form.text_field :email, :size => 20, :class => "text", :id => 'autofocus', :autofocus => 'autofocus' %>
13
13
  </li>
14
14
 
15
15
  <li>
16
- <%= submit_tag _t("Sign up"), :class => "button" %>
16
+ <%= submit_tag Typus::I18n.t("Sign up"), :class => "button" %>
17
17
  </li>
18
18
 
19
19
  </ul>
20
20
 
21
+ <script type="text/javascript">
22
+ (function() { document.getElementById('autofocus').focus(); })();
23
+ </script>
24
+
21
25
  <% end %>
@@ -0,0 +1,85 @@
1
+ <% content_for :sidebar do %>
2
+
3
+ <h3>User Guide</h3>
4
+
5
+ <ul>
6
+ <li><%= link_to "Introduction", "#introduction" %></li>
7
+ <li><%= link_to "Basics", "#basics" %></li>
8
+ <li><%= link_to "Registered Users", "#registered-users" %></li>
9
+ </ul>
10
+
11
+ <% end %>
12
+
13
+ <a name="introduction"></a>
14
+
15
+ <h2>Introduction</h2>
16
+
17
+ <p>
18
+ This website is powered by <%= link_to "Ruby on Rails", "http://rubyonrails.org/" %> and <%= link_to "Typus", "http://core.typuscms.com/" %>.
19
+ </p>
20
+
21
+ <p>With <%= link_to "Typus", "http://core.typuscms.com/" %>, also known as the application backend or admin interface, you'll be able to update your application contents and perform the most common operations for the site maintenance.</p>
22
+
23
+ <p>
24
+ You can get more information at <%= link_to "http://core.typuscms.com/", "http://core.typuscms.com/" %>.
25
+ </p>
26
+
27
+ <a name="basics"></a>
28
+
29
+ <h2>Basic Actions</h2>
30
+
31
+ <h3>Create Entries</h3>
32
+
33
+ <p>
34
+ To create a new entry:
35
+ </p>
36
+
37
+ <ul>
38
+ <li>Click on entries tab.</li>
39
+ <li>Click "Add new" sub tab.</li>
40
+ <li>Start filling in the blanks.</li>
41
+ <li>When you are ready, click "Save Entry".</li>
42
+ </ul>
43
+
44
+ <h3>Editing &amp; Updating Entries</h3>
45
+
46
+ <p>
47
+ To edit entries:
48
+ </p>
49
+
50
+ <ul>
51
+ <li>Click on entries tab.</li>
52
+ <li>You'll see a list of entries, if you have already create some.</li>
53
+ <li>Click on "Edit".</li>
54
+ <li>Edit the entry.</li>
55
+ <li>When you are ready, click "Update Entry".</li>
56
+ </ul>
57
+
58
+ <h3>Removing Entries</h3>
59
+
60
+ <p>
61
+ To remove entries:
62
+ </p>
63
+
64
+ <ul>
65
+ <li>Click on entries tab.</li>
66
+ <li>You'll see a list of entries, if you have already create some.</li>
67
+ <li>Click on "Trash".</li>
68
+ <li>Click "Ok" on the dialog to confirm you want to remove the entry.</li>
69
+ </ul>
70
+
71
+ <p>
72
+ Removing entries will be only available if you have permissions to do so.
73
+ </p>
74
+
75
+ <a name="registered-users"></a>
76
+
77
+ <h2>Registered Users</h2>
78
+
79
+ <p>
80
+ Registered users can do a variety of different things on a <strong>Typus</strong> driven site. The various elements available to the user are determined by their user level. </p>
81
+
82
+ <p>When <code>:session</code> authentication is enabled <strong>Typus</strong> will enable a a default role which will allow registered users perform all kind of operations on entries: create, read, update and destroy.
83
+ </p>
84
+
85
+ <p>It's usually recommended having an extra role which some restrictions.</p>
@@ -1,5 +1,7 @@
1
1
  <h2>Welcome!</h2>
2
2
 
3
- <p>If you need help don't hesitate in joining the <%= link_to 'mailing list', 'http://groups.google.com/group/typus' %>.</p>
3
+ <p>If you need help don't hesitate in joining the <%= link_to 'mailing list', 'http://groups.google.com/group/typus' %> or use the <%= link_to "help", "/admin/help" %>.</p>
4
4
 
5
5
  <p>Replace this sidebar dropping a file named <code>_sidebar.html.erb</code> on the <code>app/views/admin/dashboard</code> folder.</p>
6
+
7
+ <p>If you need help you can use the provided <%= link_to "user guide", "user_guide" %>.</p>
@@ -1,5 +1,5 @@
1
1
  <%
2
- page_title = _t("Dashboard")
2
+ page_title = Typus::I18n.t("Dashboard")
3
3
  title(page_title)
4
4
  %>
5
5
 
@@ -13,4 +13,4 @@
13
13
 
14
14
  <%= applications %>
15
15
 
16
- <%= resources(current_user) %>
16
+ <%= resources(admin_user) %>
@@ -125,11 +125,11 @@ consequat.
125
125
  <h2>Error Messages (h2)</h2>
126
126
 
127
127
  <div id="flash" class="notice">
128
- <p><strong>Hey!</strong> Sample ui-state-highlight style.</p>
128
+ <strong>Hey!</strong> Sample ui-state-highlight style.
129
129
  </div>
130
130
 
131
131
  <div id="flash" class="alert">
132
- <p><strong>Alert:</strong> Sample ui-state-error style.</p>
132
+ <strong>Alert:</strong> Sample ui-state-error style.
133
133
  </div>
134
134
 
135
135
  <h2>Filters (h2)</h2>
@@ -1,8 +1,9 @@
1
1
  <ul>
2
2
  <% dashboard = 'active' if params[:controller].include?('dashboard') %>
3
- <li><%= link_to _t("Dashboard"), admin_dashboard_path, :class => dashboard %></li>
4
- <% current_user.applications.each do |app| %>
5
- <% klass = (@resource && Typus.application(app).include?(@resource.name)) ? 'active' : nil %>
6
- <li><%= link_to _t(app), { :controller => Typus.application(app).sort {|a,b| a.constantize.model_name.human <=> b.constantize.model_name.human}.first.tableize }, { :class => klass } %></li>
3
+ <li><%= link_to Typus::I18n.t("Dashboard"), admin_dashboard_path, :class => dashboard %></li>
4
+ <% admin_user.applications.each do |app| %>
5
+ <% klass = (@resource && Typus.application(app).include?(@resource.model_name)) ? 'active' : nil %>
6
+ <% controller = Typus.application(app).sort.first.tableize %>
7
+ <li><%= link_to Typus::I18n.t(app), { :controller => "/admin/#{controller}" }, { :class => klass } %></li>
7
8
  <% end %>
8
9
  </ul>
@@ -0,0 +1,3 @@
1
+ <%= link_to preview, :class => "fancybox" do %>
2
+ <%= image_tag thumb, :alt => preview %>
3
+ <% end %>
@@ -1,7 +1,7 @@
1
1
  <h1 class="logo">
2
- <% begin %>
3
- <%= link_to Typus.admin_title, root_path, :title => _t("View site") %>
4
- <% rescue %>
2
+ <% if has_root_path? %>
3
+ <%= link_to Typus.admin_title, root_path, :title => Typus::I18n.t("View site") %>
4
+ <% else %>
5
5
  <%= Typus.admin_title %>
6
6
  <% end %>
7
7
  </h1>
@@ -1,4 +1,4 @@
1
1
  <ul>
2
- <li><%= _t("Logged as") %> <%= user_details %></li>
3
- <li><%= link_to _t("Sign out"), admin_session_path, :confirm => message, :method => :delete %></li>
2
+ <li><%= Typus::I18n.t("Logged as") %> <%= link_to admin_user.name, { :controller => "/admin/#{Typus.user_class.to_resource}", :action => 'edit', :id => admin_user.id } %></li>
3
+ <li><%= link_to Typus::I18n.t("Sign out"), admin_session_path, :confirm => Typus::I18n.t("Are you sure you want to sign out and end your session?"), :method => :delete %></li>
4
4
  </ul>
@@ -1,28 +1,25 @@
1
- <% current_user.applications.each do |app| %>
1
+ <% admin_user.applications.each do |app| %>
2
2
 
3
3
  <table>
4
4
 
5
5
  <thead>
6
6
  <tr>
7
- <th colspan="2"><%= _t(app) %></th>
7
+ <th><%= Typus::I18n.t(app) %></th>
8
8
  </tr>
9
9
  </thead>
10
10
 
11
- <% current_user.application(app).each do |model| %>
11
+ <% admin_user.application(app).each do |model| %>
12
12
 
13
13
  <%
14
- klass = model.constantize
15
- klass_human_name = klass.model_name.human.gsub("/", " ").pluralize
16
- admin_items_path = { :controller => "admin/#{klass.to_resource}" }
14
+ klass = model.typus_constantize
15
+ klass_human_name = klass.model_name.human.pluralize
16
+ admin_items_path = { :controller => "/admin/#{klass.to_resource}" }
17
17
  %>
18
18
 
19
19
  <tr class="<%= cycle("even", "odd") %>">
20
20
  <td>
21
21
  <%= link_to klass_human_name, admin_items_path %>
22
22
  </td>
23
- <td class="right">
24
- <%= link_to_if current_user.can?("create", klass), _t("Add"), admin_items_path.merge(:action => "new") %>
25
- </td>
26
23
  </tr>
27
24
 
28
25
  <% end %>
@@ -4,14 +4,13 @@
4
4
 
5
5
  <thead>
6
6
  <tr>
7
- <th colspan="2"><%= _t("Resources") %></th>
7
+ <th><%= Typus::I18n.t("Resources") %></th>
8
8
  </tr>
9
9
  </thead>
10
10
 
11
11
  <% resources.each do |resource| %>
12
12
  <tr class="<%= cycle("even", "odd") %>">
13
- <td><%= link_to _t(resource.titleize.capitalize), :controller => "admin/#{resource.underscore}" %></td>
14
- <td align="right" style="vertical-align: bottom;"></td>
13
+ <td><%= link_to Typus::I18n.t(resource.titleize.capitalize), :controller => "/admin/#{resource.underscore}" %></td>
15
14
  </tr>
16
15
  <% end %>
17
16
 
@@ -6,7 +6,7 @@
6
6
  <li><%= select_tag filter[:filter], options_for_select(filter[:items], params[filter[:filter]]) %></li>
7
7
  <% end %>
8
8
  <%= hidden_field_tag :search, params[:search] if params[:search] %>
9
- <li><%= submit_tag _t("Filter"), :name => nil %></li>
9
+ <li><%= submit_tag Typus::I18n.t("Filter"), :name => nil %></li>
10
10
  </ul>
11
11
  </div>
12
12
 
@@ -1,3 +1,3 @@
1
1
  <div id="flash" class="notice">
2
- <%= message %> <%= link_to _t("Do you want to cancel it?"), params[:back_to] %>
2
+ <%= link_to Typus::I18n.t("Cancel adding a new %{resource}?", :resource => @resource.model_name.human.downcase), params[:back_to] %>
3
3
  </div>
@@ -0,0 +1,10 @@
1
+ <% if @item.errors.any? %>
2
+ <div id="errorExplanation">
3
+ <h3><%= Typus::I18n.t("%{errors} prohibited this page from being saved:", :errors => pluralize(@item.errors.count, "error")) %></h3>
4
+ <ul>
5
+ <% @item.errors.full_messages.each do |full_message| %>
6
+ <li><%= full_message %></li>
7
+ <% end %>
8
+ </ul>
9
+ </div>
10
+ <% end %>
@@ -2,7 +2,7 @@
2
2
 
3
3
  <%= form_tag url_for(:controller => params[:controller]), :method => :get do %>
4
4
  <ul>
5
- <li><%= search_field_tag "search", nil, :id => "quicksearch", :title => (params[:search] || _t("Search")) %></li>
5
+ <li><%= search_field_tag "search", nil, :id => "quicksearch", :title => (params[:search] || Typus::I18n.t("Search")) %></li>
6
6
  </ul>
7
7
  <% hidden_params.each do |field| %>
8
8
  <%= field %>
@@ -1,12 +1,15 @@
1
1
  <% resources.each do |key, value| %>
2
2
 
3
- <% resource = "/admin/#{key.constantize.to_resource}" %>
3
+ <%
4
+ klass = key.typus_constantize
5
+ resource = "/admin/#{klass.to_resource}"
6
+ %>
4
7
 
5
8
  <%= link_to :controller => resource, :action => "index" do %>
6
- <h3><%= _t(key.constantize.model_name.human.pluralize) %></h3>
9
+ <h3><%= klass.model_name.human.pluralize %></h3>
7
10
  <% end %>
8
11
 
9
- <% if @resource.name.eql?(key) %>
12
+ <% if @resource.model_name.eql?(key) %>
10
13
  <ul>
11
14
  <% value.each do |v| %>
12
15
  <li><%= v %></li>
@@ -5,18 +5,30 @@
5
5
  <% headers.each do |header| %>
6
6
  <th><%= header %></th>
7
7
  <% end %>
8
- <th colspan="2"></th>
9
8
  </tr>
10
9
  </thead>
11
10
 
12
11
  <% items.each do |item| %>
13
12
  <tr class="<%= cycle('even', 'odd') %>" id="<%= dom_id(item) %>">
14
- <% table_fields_for_item(item, fields, link_options).each do |field| %>
15
- <%= field %>
13
+ <% table_fields_for_item(item, fields).each_with_index do |field, index| %>
14
+ <td>
15
+ <%= field %>
16
+ <% if index.zero? %>
17
+ <div class="actions">
18
+ <%= table_actions(model, item, association_name) %>
19
+ </div>
20
+ <% end %>
21
+ </td>
16
22
  <% end %>
17
- <td width="10px"><%= table_default_action(model, item) %></td>
18
- <td width="10px"><%= table_action(model, item) %></td>
19
23
  </tr>
20
24
  <% end %>
21
25
 
26
+ <thead>
27
+ <tr>
28
+ <% headers.each do |header| %>
29
+ <th><%= header %></th>
30
+ <% end %>
31
+ </tr>
32
+ </thead>
33
+
22
34
  </table>
@@ -1,9 +1,9 @@
1
1
 
2
- <%= _t("You can update your password at") %>:
2
+ <%= Typus::I18n.t("You can update your password at") %>:
3
3
 
4
4
  <%= @url %>
5
5
 
6
- <%= _t("If you didn't request a password update, you can ignore this message") %>
6
+ <%= Typus::I18n.t("If you didn't request a password update, you can ignore this message") %>
7
7
 
8
8
  --
9
9
  <%= Typus.admin_title %>
@@ -1,15 +1,6 @@
1
- <%= form_for @item, :url => options[:options], :html => { :multipart => true } do |form| %>
1
+ <%= form_for @item, :url => options, :html => { :class => "resource", :multipart => true } do |form| %>
2
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 |full_message| %>
8
- <li><%= full_message %></li>
9
- <% end %>
10
- </ul>
11
- </div>
12
- <% end %>
3
+ <%= render "admin/helpers/resources/errors" %>
13
4
 
14
5
  <fieldset class="inputs">
15
6
  <ol>
@@ -19,7 +10,7 @@
19
10
 
20
11
  <fieldset class="buttons">
21
12
  <ol>
22
- <li><%= submit_tag options[:button] , :class => "commit" %> or <%= link_to _t("Cancel and go back").downcase, :action => "index" %></li>
13
+ <li><%= submit_tag button, :class => "commit", :onclick => "setConfirmUnload(false);" %></li>
23
14
  </ol>
24
15
  </fieldset>
25
16
 
@@ -1,9 +1,11 @@
1
1
  <%
2
- page_title = _t("Edit %{resource}", :resource => @resource.model_name.human)
2
+ page_title = Typus::I18n.t("Edit %{resource}", :resource => @resource.model_name.human)
3
3
  title(page_title)
4
4
  %>
5
5
 
6
- <% content_for :sidebar, build_sidebar %>
6
+ <% content_for :sidebar do %>
7
+ <% build_sidebar.present? ? build_sidebar : render("admin/templates/profile_sidebar") %>
8
+ <% end %>
7
9
 
8
10
  <h2>
9
11
  <%= page_title %>
@@ -11,7 +13,7 @@
11
13
 
12
14
  <%= display_link_to_previous %>
13
15
  <%= display_flash_message %>
14
- <%= typus_render :partial => 'edit' %>
16
+ <%= render 'edit' %>
15
17
 
16
18
  <%
17
19
  options = { :action => "update",
@@ -19,9 +21,9 @@
19
21
  :back_to => params[:back_to],
20
22
  :resource => params[:resource],
21
23
  :resource_id => params[:resource_id] }
22
- button = _t("Save %{resource}", :resource => @resource.model_name.human)
24
+ button = Typus::I18n.t("Save %{resource}", :resource => @resource.model_name.human)
23
25
  %>
24
26
 
25
- <%= typus_render :partial => 'form', :options => options, :button => button %>
27
+ <%= render :partial => 'form', :locals => { :options => options, :button => button } %>
26
28
 
27
29
  <%= raw typus_relationships %>