zen 0.1a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (338) hide show
  1. data/LICENSE +19 -0
  2. data/MANIFEST +337 -0
  3. data/README.textile +42 -0
  4. data/Rakefile +6 -0
  5. data/bin/zen +9 -0
  6. data/doc/Categories.html +93 -0
  7. data/doc/Categories/Controllers.html +93 -0
  8. data/doc/Categories/Controllers/Categories.html +995 -0
  9. data/doc/Categories/Controllers/CategoryGroups.html +878 -0
  10. data/doc/Categories/Models.html +97 -0
  11. data/doc/Categories/Models/Category.html +269 -0
  12. data/doc/Categories/Models/CategoryGroup.html +231 -0
  13. data/doc/Comments.html +93 -0
  14. data/doc/Comments/Controllers.html +93 -0
  15. data/doc/Comments/Controllers/Comments.html +797 -0
  16. data/doc/Comments/Controllers/CommentsForm.html +487 -0
  17. data/doc/Comments/Liquid.html +93 -0
  18. data/doc/Comments/Liquid/CommentForm.html +522 -0
  19. data/doc/Comments/Liquid/Comments.html +543 -0
  20. data/doc/Comments/Models.html +95 -0
  21. data/doc/Comments/Models/Comment.html +260 -0
  22. data/doc/CustomFields.html +93 -0
  23. data/doc/CustomFields/Controllers.html +93 -0
  24. data/doc/CustomFields/Controllers/CustomFieldGroups.html +902 -0
  25. data/doc/CustomFields/Controllers/CustomFields.html +974 -0
  26. data/doc/CustomFields/Models.html +97 -0
  27. data/doc/CustomFields/Models/CustomField.html +272 -0
  28. data/doc/CustomFields/Models/CustomFieldGroup.html +259 -0
  29. data/doc/CustomFields/Models/CustomFieldValue.html +154 -0
  30. data/doc/Ramaze.html +93 -0
  31. data/doc/Ramaze/Helper.html +93 -0
  32. data/doc/Ramaze/Helper/ACL.html +531 -0
  33. data/doc/Ramaze/Helper/Asset.html +617 -0
  34. data/doc/Ramaze/Helper/Breadcrumb.html +411 -0
  35. data/doc/Ramaze/Helper/Common.html +738 -0
  36. data/doc/Sections.html +93 -0
  37. data/doc/Sections/Controllers.html +93 -0
  38. data/doc/Sections/Controllers/SectionEntries.html +1100 -0
  39. data/doc/Sections/Controllers/Sections.html +953 -0
  40. data/doc/Sections/Liquid.html +93 -0
  41. data/doc/Sections/Liquid/SectionEntries.html +674 -0
  42. data/doc/Sections/Liquid/Sections.html +494 -0
  43. data/doc/Sections/Models.html +97 -0
  44. data/doc/Sections/Models/Section.html +272 -0
  45. data/doc/Sections/Models/SectionEntry.html +264 -0
  46. data/doc/Sequel.html +91 -0
  47. data/doc/Sequel/Model.html +243 -0
  48. data/doc/Settings.html +93 -0
  49. data/doc/Settings/Controllers.html +91 -0
  50. data/doc/Settings/Controllers/Settings.html +565 -0
  51. data/doc/Settings/Liquid.html +91 -0
  52. data/doc/Settings/Liquid/Setting.html +426 -0
  53. data/doc/Settings/Models.html +95 -0
  54. data/doc/Settings/Models/Setting.html +293 -0
  55. data/doc/Users.html +93 -0
  56. data/doc/Users/Controllers.html +93 -0
  57. data/doc/Users/Controllers/AccessRules.html +904 -0
  58. data/doc/Users/Controllers/UserGroups.html +879 -0
  59. data/doc/Users/Controllers/Users.html +1124 -0
  60. data/doc/Users/Liquid.html +93 -0
  61. data/doc/Users/Liquid/User.html +480 -0
  62. data/doc/Users/Liquid/Users.html +495 -0
  63. data/doc/Users/Models.html +97 -0
  64. data/doc/Users/Models/AccessRule.html +257 -0
  65. data/doc/Users/Models/User.html +649 -0
  66. data/doc/Users/Models/UserGroup.html +267 -0
  67. data/doc/Zen.html +391 -0
  68. data/doc/Zen/Bin.html +113 -0
  69. data/doc/Zen/Bin/Base.html +727 -0
  70. data/doc/Zen/Controllers.html +115 -0
  71. data/doc/Zen/Controllers/AdminController.html +298 -0
  72. data/doc/Zen/Controllers/BaseController.html +272 -0
  73. data/doc/Zen/Controllers/FrontendController.html +164 -0
  74. data/doc/Zen/Controllers/MainController.html +421 -0
  75. data/doc/Zen/Database.html +498 -0
  76. data/doc/Zen/Language.html +660 -0
  77. data/doc/Zen/Liquid.html +117 -0
  78. data/doc/Zen/Liquid/ControllerBehavior.html +448 -0
  79. data/doc/Zen/Liquid/General.html +444 -0
  80. data/doc/Zen/Liquid/Redirect.html +435 -0
  81. data/doc/Zen/Liquid/Strip.html +447 -0
  82. data/doc/Zen/Logger.html +393 -0
  83. data/doc/Zen/Package.html +909 -0
  84. data/doc/_index.html +724 -0
  85. data/doc/class_list.html +36 -0
  86. data/doc/css/common.css +1 -0
  87. data/doc/css/full_list.css +53 -0
  88. data/doc/css/style.css +310 -0
  89. data/doc/file.README.html +86 -0
  90. data/doc/file_list.html +38 -0
  91. data/doc/frames.html +13 -0
  92. data/doc/index.html +86 -0
  93. data/doc/js/app.js +203 -0
  94. data/doc/js/full_list.js +149 -0
  95. data/doc/js/jquery.js +154 -0
  96. data/doc/method_list.html +1139 -0
  97. data/doc/top-level-namespace.html +88 -0
  98. data/lib/zen.rb +77 -0
  99. data/lib/zen/base/database.rb +105 -0
  100. data/lib/zen/base/language.rb +132 -0
  101. data/lib/zen/base/logger.rb +54 -0
  102. data/lib/zen/base/package.rb +233 -0
  103. data/lib/zen/base/version.rb +11 -0
  104. data/lib/zen/bin/zen_binary.rb +173 -0
  105. data/lib/zen/controller/admin_controller.rb +60 -0
  106. data/lib/zen/controller/base_controller.rb +39 -0
  107. data/lib/zen/controller/frontend_controller.rb +16 -0
  108. data/lib/zen/controller/main_controller.rb +93 -0
  109. data/lib/zen/helper/acl.rb +124 -0
  110. data/lib/zen/helper/asset.rb +104 -0
  111. data/lib/zen/helper/breadcrumb.rb +71 -0
  112. data/lib/zen/helper/common.rb +157 -0
  113. data/lib/zen/language/en/zen_general.rb +21 -0
  114. data/lib/zen/language/en/zen_models.rb +39 -0
  115. data/lib/zen/layout/admin.xhtml +72 -0
  116. data/lib/zen/layout/login.xhtml +44 -0
  117. data/lib/zen/liquid/controller_behavior.rb +55 -0
  118. data/lib/zen/liquid/general.rb +69 -0
  119. data/lib/zen/liquid/redirect.rb +47 -0
  120. data/lib/zen/liquid/strip.rb +58 -0
  121. data/lib/zen/model/methods.rb +26 -0
  122. data/lib/zen/model/settings.rb +27 -0
  123. data/lib/zen/packages/categories/LICENSE +19 -0
  124. data/lib/zen/packages/categories/README.textile +0 -0
  125. data/lib/zen/packages/categories/lib/categories.rb +24 -0
  126. data/lib/zen/packages/categories/lib/categories/controller/categories.rb +202 -0
  127. data/lib/zen/packages/categories/lib/categories/controller/category_groups.rb +173 -0
  128. data/lib/zen/packages/categories/lib/categories/language/en/categories.rb +38 -0
  129. data/lib/zen/packages/categories/lib/categories/language/en/category_groups.rb +37 -0
  130. data/lib/zen/packages/categories/lib/categories/model/category.rb +42 -0
  131. data/lib/zen/packages/categories/lib/categories/model/category_group.rb +29 -0
  132. data/lib/zen/packages/categories/lib/categories/view/admin/categories/edit.xhtml +7 -0
  133. data/lib/zen/packages/categories/lib/categories/view/admin/categories/form.xhtml +36 -0
  134. data/lib/zen/packages/categories/lib/categories/view/admin/categories/index.xhtml +70 -0
  135. data/lib/zen/packages/categories/lib/categories/view/admin/categories/new.xhtml +7 -0
  136. data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/edit.xhtml +7 -0
  137. data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/form.xhtml +18 -0
  138. data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/index.xhtml +72 -0
  139. data/lib/zen/packages/categories/lib/categories/view/admin/category_groups/new.xhtml +7 -0
  140. data/lib/zen/packages/categories/migrations/.gitkeep +0 -0
  141. data/lib/zen/packages/categories/migrations/1295282303_create_schema.rb +40 -0
  142. data/lib/zen/packages/comments/LICENSE +19 -0
  143. data/lib/zen/packages/comments/README.textile +0 -0
  144. data/lib/zen/packages/comments/lib/comments.rb +26 -0
  145. data/lib/zen/packages/comments/lib/comments/controller/comments.rb +157 -0
  146. data/lib/zen/packages/comments/lib/comments/controller/comments_form.rb +135 -0
  147. data/lib/zen/packages/comments/lib/comments/language/en/comments.rb +52 -0
  148. data/lib/zen/packages/comments/lib/comments/liquid/comment_form.rb +97 -0
  149. data/lib/zen/packages/comments/lib/comments/liquid/comments.rb +115 -0
  150. data/lib/zen/packages/comments/lib/comments/model/comment.rb +34 -0
  151. data/lib/zen/packages/comments/lib/comments/view/admin/comments/edit.xhtml +7 -0
  152. data/lib/zen/packages/comments/lib/comments/view/admin/comments/form.xhtml +31 -0
  153. data/lib/zen/packages/comments/lib/comments/view/admin/comments/index.xhtml +74 -0
  154. data/lib/zen/packages/comments/migrations/.gitkeep +0 -0
  155. data/lib/zen/packages/comments/migrations/1295282202_create_schema.rb +24 -0
  156. data/lib/zen/packages/comments/migrations/1296949631_add_defensio_signature.rb +11 -0
  157. data/lib/zen/packages/custom_fields/LICENSE +19 -0
  158. data/lib/zen/packages/custom_fields/README.textile +0 -0
  159. data/lib/zen/packages/custom_fields/lib/custom_fields.rb +24 -0
  160. data/lib/zen/packages/custom_fields/lib/custom_fields/controller/custom_field_groups.rb +179 -0
  161. data/lib/zen/packages/custom_fields/lib/custom_fields/controller/custom_fields.rb +194 -0
  162. data/lib/zen/packages/custom_fields/lib/custom_fields/language/en/custom_field_groups.rb +45 -0
  163. data/lib/zen/packages/custom_fields/lib/custom_fields/language/en/custom_fields.rb +64 -0
  164. data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field.rb +41 -0
  165. data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field_group.rb +32 -0
  166. data/lib/zen/packages/custom_fields/lib/custom_fields/model/custom_field_value.rb +20 -0
  167. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/edit.xhtml +7 -0
  168. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/form.xhtml +18 -0
  169. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/index.xhtml +88 -0
  170. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_field_groups/new.xhtml +7 -0
  171. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/edit.xhtml +7 -0
  172. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/form.xhtml +50 -0
  173. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/index.xhtml +75 -0
  174. data/lib/zen/packages/custom_fields/lib/custom_fields/view/admin/custom_fields/new.xhtml +7 -0
  175. data/lib/zen/packages/custom_fields/migrations/.gitkeep +0 -0
  176. data/lib/zen/packages/custom_fields/migrations/1295255665_create_schema.rb +53 -0
  177. data/lib/zen/packages/sections/LICENSE +19 -0
  178. data/lib/zen/packages/sections/README.textile +43 -0
  179. data/lib/zen/packages/sections/lib/sections.rb +33 -0
  180. data/lib/zen/packages/sections/lib/sections/controller/section_entries.rb +251 -0
  181. data/lib/zen/packages/sections/lib/sections/controller/sections.rb +205 -0
  182. data/lib/zen/packages/sections/lib/sections/language/en/section_entries.rb +58 -0
  183. data/lib/zen/packages/sections/lib/sections/language/en/sections.rb +63 -0
  184. data/lib/zen/packages/sections/lib/sections/liquid/section_entries.rb +209 -0
  185. data/lib/zen/packages/sections/lib/sections/liquid/sections.rb +76 -0
  186. data/lib/zen/packages/sections/lib/sections/model/section.rb +43 -0
  187. data/lib/zen/packages/sections/lib/sections/model/section_entry.rb +43 -0
  188. data/lib/zen/packages/sections/lib/sections/view/admin/edit.xhtml +7 -0
  189. data/lib/zen/packages/sections/lib/sections/view/admin/form.xhtml +54 -0
  190. data/lib/zen/packages/sections/lib/sections/view/admin/index.xhtml +77 -0
  191. data/lib/zen/packages/sections/lib/sections/view/admin/new.xhtml +7 -0
  192. data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/edit.xhtml +7 -0
  193. data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/form.xhtml +147 -0
  194. data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/index.xhtml +74 -0
  195. data/lib/zen/packages/sections/lib/sections/view/admin/section_entries/new.xhtml +7 -0
  196. data/lib/zen/packages/sections/migrations/.gitkeep +0 -0
  197. data/lib/zen/packages/sections/migrations/1295251836_create_schema.rb +35 -0
  198. data/lib/zen/packages/sections/migrations/1296335671_userdata_section_entries.rb +18 -0
  199. data/lib/zen/packages/sections/migrations/1296936110_drop_comment_antispam.rb +11 -0
  200. data/lib/zen/packages/settings/LICENSE +0 -0
  201. data/lib/zen/packages/settings/README.textile +0 -0
  202. data/lib/zen/packages/settings/lib/settings.rb +22 -0
  203. data/lib/zen/packages/settings/lib/settings/controller/settings.rb +113 -0
  204. data/lib/zen/packages/settings/lib/settings/language/en/settings.rb +56 -0
  205. data/lib/zen/packages/settings/lib/settings/liquid/setting.rb +56 -0
  206. data/lib/zen/packages/settings/lib/settings/model/setting.rb +38 -0
  207. data/lib/zen/packages/settings/lib/settings/view/admin/settings/index.xhtml +79 -0
  208. data/lib/zen/packages/settings/migrations/.gitkeep +0 -0
  209. data/lib/zen/packages/settings/migrations/1295597111_create_schema.rb +31 -0
  210. data/lib/zen/packages/users/LICENSE +19 -0
  211. data/lib/zen/packages/users/README.textile +0 -0
  212. data/lib/zen/packages/users/lib/users.rb +35 -0
  213. data/lib/zen/packages/users/lib/users/controller/access_rules.rb +186 -0
  214. data/lib/zen/packages/users/lib/users/controller/user_groups.rb +171 -0
  215. data/lib/zen/packages/users/lib/users/controller/users.rb +240 -0
  216. data/lib/zen/packages/users/lib/users/language/en/access_rules.rb +49 -0
  217. data/lib/zen/packages/users/lib/users/language/en/user_groups.rb +42 -0
  218. data/lib/zen/packages/users/lib/users/language/en/users.rb +63 -0
  219. data/lib/zen/packages/users/lib/users/liquid/user.rb +75 -0
  220. data/lib/zen/packages/users/lib/users/liquid/users.rb +80 -0
  221. data/lib/zen/packages/users/lib/users/model/access_rule.rb +29 -0
  222. data/lib/zen/packages/users/lib/users/model/user.rb +96 -0
  223. data/lib/zen/packages/users/lib/users/model/user_group.rb +38 -0
  224. data/lib/zen/packages/users/lib/users/public/admin/js/users/access_rules.js +43 -0
  225. data/lib/zen/packages/users/lib/users/view/admin/access_rules/edit.xhtml +7 -0
  226. data/lib/zen/packages/users/lib/users/view/admin/access_rules/form.xhtml +68 -0
  227. data/lib/zen/packages/users/lib/users/view/admin/access_rules/index.xhtml +85 -0
  228. data/lib/zen/packages/users/lib/users/view/admin/access_rules/new.xhtml +7 -0
  229. data/lib/zen/packages/users/lib/users/view/admin/user_groups/edit.xhtml +7 -0
  230. data/lib/zen/packages/users/lib/users/view/admin/user_groups/form.xhtml +19 -0
  231. data/lib/zen/packages/users/lib/users/view/admin/user_groups/index.xhtml +69 -0
  232. data/lib/zen/packages/users/lib/users/view/admin/user_groups/new.xhtml +7 -0
  233. data/lib/zen/packages/users/lib/users/view/admin/users/edit.xhtml +7 -0
  234. data/lib/zen/packages/users/lib/users/view/admin/users/form.xhtml +25 -0
  235. data/lib/zen/packages/users/lib/users/view/admin/users/index.xhtml +73 -0
  236. data/lib/zen/packages/users/lib/users/view/admin/users/login.xhtml +22 -0
  237. data/lib/zen/packages/users/lib/users/view/admin/users/new.xhtml +7 -0
  238. data/lib/zen/packages/users/migrations/.gitkeep +0 -0
  239. data/lib/zen/packages/users/migrations/1295281013_create_schema.rb +54 -0
  240. data/lib/zen/public/admin/css/boilerplate.css +174 -0
  241. data/lib/zen/public/admin/css/general.css +485 -0
  242. data/lib/zen/public/admin/css/grid.css +119 -0
  243. data/lib/zen/public/admin/css/layout.css +111 -0
  244. data/lib/zen/public/admin/images/general/noise.jpg +0 -0
  245. data/lib/zen/public/admin/images/icons/accept.png +0 -0
  246. data/lib/zen/public/admin/images/icons/add.png +0 -0
  247. data/lib/zen/public/admin/images/icons/back.png +0 -0
  248. data/lib/zen/public/admin/images/icons/bold.png +0 -0
  249. data/lib/zen/public/admin/images/icons/close.png +0 -0
  250. data/lib/zen/public/admin/images/icons/delete.png +0 -0
  251. data/lib/zen/public/admin/images/icons/edit.png +0 -0
  252. data/lib/zen/public/admin/images/icons/error.png +0 -0
  253. data/lib/zen/public/admin/images/icons/help.png +0 -0
  254. data/lib/zen/public/admin/images/icons/info.png +0 -0
  255. data/lib/zen/public/admin/images/icons/italic.png +0 -0
  256. data/lib/zen/public/admin/images/icons/large/error.png +0 -0
  257. data/lib/zen/public/admin/images/icons/large/notice.png +0 -0
  258. data/lib/zen/public/admin/images/icons/large/success.png +0 -0
  259. data/lib/zen/public/admin/images/icons/link.png +0 -0
  260. data/lib/zen/public/admin/images/icons/logout.png +0 -0
  261. data/lib/zen/public/admin/images/icons/ol.png +0 -0
  262. data/lib/zen/public/admin/images/icons/pdf.png +0 -0
  263. data/lib/zen/public/admin/images/icons/ul.png +0 -0
  264. data/lib/zen/public/admin/images/icons/user.png +0 -0
  265. data/lib/zen/public/admin/images/icons/view.png +0 -0
  266. data/lib/zen/public/admin/js/mootools/core.js +436 -0
  267. data/lib/zen/public/admin/js/mootools/more.js +288 -0
  268. data/lib/zen/public/admin/js/zen/editor/base.js +265 -0
  269. data/lib/zen/public/admin/js/zen/editor/drivers/html.js +104 -0
  270. data/lib/zen/public/admin/js/zen/editor/drivers/markdown.js +102 -0
  271. data/lib/zen/public/admin/js/zen/editor/drivers/textile.js +102 -0
  272. data/lib/zen/public/admin/js/zen/init.js +57 -0
  273. data/lib/zen/public/admin/js/zen/modal.js +159 -0
  274. data/lib/zen/public/admin/js/zen/notification.js +213 -0
  275. data/lib/zen/public/admin/js/zen/tabs.js +263 -0
  276. data/lib/zen/tasks.rb +6 -0
  277. data/pkg/.gitkeep +0 -0
  278. data/proto/app/Rakefile +2 -0
  279. data/proto/app/app.rb +20 -0
  280. data/proto/app/config.ru +18 -0
  281. data/proto/app/config/config.rb +17 -0
  282. data/proto/app/config/database.rb +18 -0
  283. data/proto/app/config/middlewares.rb +23 -0
  284. data/proto/app/config/requires.rb +8 -0
  285. data/proto/app/logs/.gitkeep +0 -0
  286. data/proto/app/public/.gitkeep +0 -0
  287. data/proto/app/start.rb +22 -0
  288. data/proto/app/vendor/.gitkeep +0 -0
  289. data/proto/app/vendor/themes/.gitkeep +0 -0
  290. data/proto/migration.rb +11 -0
  291. data/proto/module/LICENSE +0 -0
  292. data/proto/module/README.textile +0 -0
  293. data/proto/module/lib/module.rb +15 -0
  294. data/proto/module/lib/module/controller/controllers.rb +86 -0
  295. data/proto/module/lib/module/language/en/languages.rb +3 -0
  296. data/proto/module/lib/module/model/model.rb +12 -0
  297. data/proto/module/lib/module/view/admin/edit.xhtml +0 -0
  298. data/proto/module/lib/module/view/admin/form.xhtml +0 -0
  299. data/proto/module/lib/module/view/admin/index.xhtml +0 -0
  300. data/proto/module/lib/module/view/admin/new.xhtml +0 -0
  301. data/proto/module/migrations/.gitkeep +0 -0
  302. data/spec/javascript/css/base.css +177 -0
  303. data/spec/javascript/css/style.css +204 -0
  304. data/spec/javascript/css/typography.css +70 -0
  305. data/spec/javascript/editor/index.html +65 -0
  306. data/spec/javascript/images/close.png +0 -0
  307. data/spec/javascript/images/info.png +0 -0
  308. data/spec/javascript/js/editor.js +16 -0
  309. data/spec/javascript/js/modal.js +12 -0
  310. data/spec/javascript/js/namespace.js +2 -0
  311. data/spec/javascript/js/notification.js +43 -0
  312. data/spec/javascript/js/tabs.js +8 -0
  313. data/spec/javascript/modal/index.html +45 -0
  314. data/spec/javascript/notification/index.html +48 -0
  315. data/spec/javascript/tabs/index.html +73 -0
  316. data/spec/javascript/tabs/tab_1.html +1 -0
  317. data/spec/javascript/tabs/tab_2.html +1 -0
  318. data/spec/zen/base/language.rb +31 -0
  319. data/spec/zen/base/logger.rb +34 -0
  320. data/spec/zen/base/package.rb +47 -0
  321. data/spec/zen/config/database.rb +8 -0
  322. data/spec/zen/helper/asset.rb +26 -0
  323. data/spec/zen/helper/breadcrumb.rb +24 -0
  324. data/spec/zen/language/en/general.rb +4 -0
  325. data/spec/zen/language/nl/general.rb +4 -0
  326. data/spec/zen/liquid/general.rb +42 -0
  327. data/spec/zen/logs/.gitkeep +0 -0
  328. data/spec/zen/spec.rb +9 -0
  329. data/spec/zen/spec_database.db +0 -0
  330. data/tasks/bacon.rake +99 -0
  331. data/tasks/build.rake +72 -0
  332. data/tasks/clean.rake +18 -0
  333. data/tasks/db.rake +81 -0
  334. data/tasks/doc.rake +5 -0
  335. data/tasks/extension.rake +65 -0
  336. data/tasks/proto.rake +37 -0
  337. data/tasks/theme.rake +63 -0
  338. metadata +512 -0
@@ -0,0 +1,411 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta name="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>Module: Ramaze::Helper::Breadcrumb</title>
7
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
8
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
9
+
10
+ <script type="text/javascript" charset="utf-8">
11
+ relpath = '../..';
12
+ if (relpath != '') relpath += '/';
13
+ </script>
14
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
15
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
16
+
17
+ </head>
18
+ <body>
19
+ <script type="text/javascript" charset="utf-8">
20
+ if (window.top.frames.main) document.body.className = 'frames';
21
+ </script>
22
+
23
+ <div id="header">
24
+ <div id="menu">
25
+
26
+ <a href="../../_index.html">Index (B)</a> &raquo;
27
+ <span class='title'><span class='object_link'><a href="../../Ramaze.html" title="Ramaze (module)">Ramaze</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Helper.html" title="Ramaze::Helper (module)">Helper</a></span></span>
28
+ &raquo;
29
+ <span class="title">Breadcrumb</span>
30
+
31
+
32
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
33
+ </div>
34
+
35
+ <div id="search">
36
+ <a id="class_list_link" href="#">Class List</a>
37
+ <a id="method_list_link" href="#">Method List</a>
38
+ <a id ="file_list_link" href="#">File List</a>
39
+ </div>
40
+
41
+ <div class="clear"></div>
42
+ </div>
43
+
44
+ <iframe id="search_frame"></iframe>
45
+
46
+ <div id="content"><h1>Module: Ramaze::Helper::Breadcrumb
47
+
48
+
49
+
50
+ </h1>
51
+
52
+ <dl class="box">
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ <dt class="r1 last">Defined in:</dt>
62
+ <dd class="r1 last">/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/breadcrumb.rb</dd>
63
+
64
+ </dl>
65
+ <div class="clear"></div>
66
+
67
+ <h2>Overview</h2><div class="docstring">
68
+ <div class="discussion">
69
+ <p>Helper that can be used to quickly generate breadcrumbs without having
70
+ to manually write the <span class="caps">HTML</span> separators and formatting the output correctly.
71
+ In order to create a set of breadcrumbs we first need to call the set_breadcrumbs
72
+ method:</p>
73
+ <pre class="code"><span class='id set_breadcrumbs'>set_breadcrumbs</span> <span class='id segment1'>segment1</span><span class='comma'>,</span> <span class='id segment2'>segment2</span><span class='comma'>,</span> <span class='id segment3'>segment3</span><span class='comma'>,</span> <span class='id etc'>etc</span></pre>
74
+ <p>Each argument will be a segment of the breadcrumbs, separated by a custom character.
75
+ Retrieving the breadcrumbs is super easy:</p>
76
+ <pre class="code"><span class='id get_breadcrumbs'>get_breadcrumbs</span></pre>
77
+ <p>This will generate the correct <span class="caps">HTML</span> and return it, all you have to do is output it.</p>
78
+
79
+ </div>
80
+ </div>
81
+ <div class="tags">
82
+ <h3>Author:</h3>
83
+ <ul class="author">
84
+
85
+ <li>
86
+
87
+
88
+
89
+
90
+
91
+ <div class='inline'><p>Yorick Peterse</p></div>
92
+
93
+ </li>
94
+
95
+ </ul>
96
+ <h3>Since:</h3>
97
+ <ul class="since">
98
+
99
+ <li>
100
+
101
+
102
+
103
+
104
+
105
+ <div class='inline'><p>0.1</p></div>
106
+
107
+ </li>
108
+
109
+ </ul>
110
+
111
+ </div>
112
+
113
+
114
+
115
+ <h2>
116
+ Instance Method Summary
117
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
118
+ </h2>
119
+
120
+ <ul class="summary">
121
+
122
+ <li class="public ">
123
+ <span class="summary_signature">
124
+
125
+ <a href="#get_breadcrumbs-instance_method" title="#get_breadcrumbs (instance method)">- (String) <strong>get_breadcrumbs</strong>(separator = &quot;&amp;raquo;&quot;
126
+ ) </a>
127
+
128
+
129
+
130
+ </span>
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
139
+ <span class="summary_desc"><div class='inline'><p>Retrieves all breacrumbs and separates them either by &#8220;&raquo;&#8221; or a custom element
140
+ set as the first argument of this method.</p></div></span>
141
+
142
+ </li>
143
+
144
+
145
+ <li class="public ">
146
+ <span class="summary_signature">
147
+
148
+ <a href="#set_breadcrumbs-instance_method" title="#set_breadcrumbs (instance method)">- (Object) <strong>set_breadcrumbs</strong>(*args) </a>
149
+
150
+
151
+
152
+ </span>
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+ <span class="summary_desc"><div class='inline'><p>Appends each element to the list of breadcrumb segments.</p></div></span>
162
+
163
+ </li>
164
+
165
+
166
+ </ul>
167
+
168
+
169
+
170
+
171
+ <div id="instance_method_details" class="method_details_list">
172
+ <h2>Instance Method Details</h2>
173
+
174
+
175
+ <div class="method_details first">
176
+ <p class="signature first" id="get_breadcrumbs-instance_method">
177
+
178
+ - (<tt>String</tt>) <strong>get_breadcrumbs</strong>(separator = &quot;&amp;raquo;&quot;
179
+ )
180
+
181
+
182
+
183
+ </p><div class="docstring">
184
+ <div class="discussion">
185
+ <p>Retrieves all breacrumbs and separates them either by &#8220;&raquo;&#8221; or a custom element
186
+ set as the first argument of this method.</p>
187
+
188
+ </div>
189
+ </div>
190
+ <div class="tags">
191
+
192
+ <div class="examples">
193
+ <h3>Examples:</h3>
194
+
195
+ <h4><div class='inline'></div></h4>
196
+ <pre class="example code"><span class='id get_breadcrumbs'>get_breadcrumbs</span> <span class='comment'># =&gt; &quot;Articles &amp;raquo; Edit&quot;</span></pre>
197
+
198
+ <h4><div class='inline'></div></h4>
199
+ <pre class="example code"><span class='id get_breadcrumbs'>get_breadcrumbs</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&gt;</span><span class='tstring_end'>&quot;</span></span> <span class='comment'># =&gt; &quot;Articles &gt; Edit&quot;</span></pre>
200
+
201
+ </div>
202
+ <h3>Parameters:</h3>
203
+ <ul class="param">
204
+
205
+ <li>
206
+
207
+ <span class='type'>(<tt>String</tt>)</span>
208
+
209
+
210
+ <span class='name'>separator</span>
211
+
212
+
213
+ <em class="default">(defaults to: <tt>&quot;&amp;raquo;&quot;
214
+ </tt>)</em>
215
+
216
+
217
+ &mdash;
218
+ <div class='inline'><p>The <span class="caps">HTML</span> character to use for separating each segment.</p></div>
219
+
220
+ </li>
221
+
222
+ </ul>
223
+ <h3>Returns:</h3>
224
+ <ul class="return">
225
+
226
+ <li>
227
+
228
+ <span class='type'>(<tt>String</tt>)</span>
229
+
230
+
231
+
232
+
233
+ </li>
234
+
235
+ </ul>
236
+ <h3>Author:</h3>
237
+ <ul class="author">
238
+
239
+ <li>
240
+
241
+
242
+
243
+
244
+
245
+ <div class='inline'><p>Yorick Peterse</p></div>
246
+
247
+ </li>
248
+
249
+ </ul>
250
+ <h3>Since:</h3>
251
+ <ul class="since">
252
+
253
+ <li>
254
+
255
+
256
+
257
+
258
+
259
+ <div class='inline'><p>0.1</p></div>
260
+
261
+ </li>
262
+
263
+ </ul>
264
+
265
+ </div><table class="source_code">
266
+ <tr>
267
+ <td>
268
+ <pre class="lines">
269
+
270
+
271
+ 55
272
+ 56
273
+ 57
274
+ 58
275
+ 59
276
+ 60
277
+ 61
278
+ 62
279
+ 63
280
+ 64
281
+ 65
282
+ 66
283
+ 67
284
+ 68</pre>
285
+ </td>
286
+ <td>
287
+ <pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/breadcrumb.rb', line 55</span>
288
+
289
+ <span class='kw'>def</span> <span class='id get_breadcrumbs'>get_breadcrumbs</span> <span class='id separator'>separator</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&amp;raquo;</span><span class='tstring_end'>&quot;</span></span>
290
+ <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@breadcrumbs</span> <span class='kw'>or</span> <span class='ivar'>@breadcrumbs</span><span class='period'>.</span><span class='id empty?'>empty?</span>
291
+ <span class='kw'>return</span>
292
+ <span class='kw'>end</span>
293
+
294
+ <span class='id html'>html</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
295
+ <span class='id separator'>separator</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id separator'>separator</span><span class='rbrace'>}</span><span class='tstring_content'> </span><span class='tstring_end'>&quot;</span></span>
296
+
297
+ <span class='ivar'>@breadcrumbs</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id segment'>segment</span><span class='op'>|</span>
298
+ <span class='id html'>html</span> <span class='op'>+=</span> <span class='id segment'>segment</span> <span class='op'>+</span> <span class='id separator'>separator</span>
299
+ <span class='kw'>end</span>
300
+
301
+ <span class='kw'>return</span> <span class='id html'>html</span><span class='period'>.</span><span class='id chomp'>chomp</span><span class='lparen'>(</span><span class='id separator'>separator</span><span class='rparen'>)</span>
302
+ <span class='kw'>end</span></pre>
303
+ </td>
304
+ </tr>
305
+ </table>
306
+ </div>
307
+
308
+ <div class="method_details ">
309
+ <p class="signature " id="set_breadcrumbs-instance_method">
310
+
311
+ - (<tt>Object</tt>) <strong>set_breadcrumbs</strong>(*args)
312
+
313
+
314
+
315
+ </p><div class="docstring">
316
+ <div class="discussion">
317
+ <p>Appends each element to the list of breadcrumb segments.</p>
318
+ <p>Note that you&#8217;ll have to manually specify anchor tags, this method won&#8217;t automatically
319
+ generate URLs.</p>
320
+
321
+ </div>
322
+ </div>
323
+ <div class="tags">
324
+
325
+ <div class="examples">
326
+ <h3>Examples:</h3>
327
+
328
+ <h4><div class='inline'></div></h4>
329
+ <pre class="example code"><span class='id set_breadcrumbs'>set_breadcrumbs</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Articles</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Edit</span><span class='tstring_end'>&quot;</span></span></pre>
330
+
331
+ </div>
332
+ <h3>Parameters:</h3>
333
+ <ul class="param">
334
+
335
+ <li>
336
+
337
+ <span class='type'>(<tt>Array</tt>)</span>
338
+
339
+
340
+ <span class='name'>args</span>
341
+
342
+
343
+
344
+ &mdash;
345
+ <div class='inline'><p>Array of segments for the breadcrumbs.</p></div>
346
+
347
+ </li>
348
+
349
+ </ul>
350
+ <h3>Author:</h3>
351
+ <ul class="author">
352
+
353
+ <li>
354
+
355
+
356
+
357
+
358
+
359
+ <div class='inline'><p>Yorick Peterse</p></div>
360
+
361
+ </li>
362
+
363
+ </ul>
364
+ <h3>Since:</h3>
365
+ <ul class="since">
366
+
367
+ <li>
368
+
369
+
370
+
371
+
372
+
373
+ <div class='inline'><p>0.1</p></div>
374
+
375
+ </li>
376
+
377
+ </ul>
378
+
379
+ </div><table class="source_code">
380
+ <tr>
381
+ <td>
382
+ <pre class="lines">
383
+
384
+
385
+ 37
386
+ 38
387
+ 39</pre>
388
+ </td>
389
+ <td>
390
+ <pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/breadcrumb.rb', line 37</span>
391
+
392
+ <span class='kw'>def</span> <span class='id set_breadcrumbs'>set_breadcrumbs</span> <span class='op'>*</span><span class='id args'>args</span>
393
+ <span class='ivar'>@breadcrumbs</span> <span class='op'>=</span> <span class='id args'>args</span>
394
+ <span class='kw'>end</span></pre>
395
+ </td>
396
+ </tr>
397
+ </table>
398
+ </div>
399
+
400
+ </div>
401
+
402
+ </div>
403
+
404
+ <div id="footer">
405
+ Generated on Sun Feb 6 21:24:01 2011 by
406
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
407
+ 0.6.4 (ruby-1.9.2).
408
+ </div>
409
+
410
+ </body>
411
+ </html>
@@ -0,0 +1,738 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta name="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>Module: Ramaze::Helper::Common</title>
7
+ <link rel="stylesheet" href="../../css/style.css" type="text/css" media="screen" charset="utf-8" />
8
+ <link rel="stylesheet" href="../../css/common.css" type="text/css" media="screen" charset="utf-8" />
9
+
10
+ <script type="text/javascript" charset="utf-8">
11
+ relpath = '../..';
12
+ if (relpath != '') relpath += '/';
13
+ </script>
14
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
15
+ <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>
16
+
17
+ </head>
18
+ <body>
19
+ <script type="text/javascript" charset="utf-8">
20
+ if (window.top.frames.main) document.body.className = 'frames';
21
+ </script>
22
+
23
+ <div id="header">
24
+ <div id="menu">
25
+
26
+ <a href="../../_index.html">Index (C)</a> &raquo;
27
+ <span class='title'><span class='object_link'><a href="../../Ramaze.html" title="Ramaze (module)">Ramaze</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Helper.html" title="Ramaze::Helper (module)">Helper</a></span></span>
28
+ &raquo;
29
+ <span class="title">Common</span>
30
+
31
+
32
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
33
+ </div>
34
+
35
+ <div id="search">
36
+ <a id="class_list_link" href="#">Class List</a>
37
+ <a id="method_list_link" href="#">Method List</a>
38
+ <a id ="file_list_link" href="#">File List</a>
39
+ </div>
40
+
41
+ <div class="clear"></div>
42
+ </div>
43
+
44
+ <iframe id="search_frame"></iframe>
45
+
46
+ <div id="content"><h1>Module: Ramaze::Helper::Common
47
+
48
+
49
+
50
+ </h1>
51
+
52
+ <dl class="box">
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ <dt class="r1 last">Defined in:</dt>
62
+ <dd class="r1 last">/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/common.rb</dd>
63
+
64
+ </dl>
65
+ <div class="clear"></div>
66
+
67
+ <h2>Overview</h2><div class="docstring">
68
+ <div class="discussion">
69
+ <p>Helper that contains several common methods for which creating their
70
+ own helper would be a bit of an overkill.</p>
71
+
72
+ </div>
73
+ </div>
74
+ <div class="tags">
75
+ <h3>Author:</h3>
76
+ <ul class="author">
77
+
78
+ <li>
79
+
80
+
81
+
82
+
83
+
84
+ <div class='inline'><p>Yorick Peterse</p></div>
85
+
86
+ </li>
87
+
88
+ </ul>
89
+ <h3>Since:</h3>
90
+ <ul class="since">
91
+
92
+ <li>
93
+
94
+
95
+
96
+
97
+
98
+ <div class='inline'><p>0.1</p></div>
99
+
100
+ </li>
101
+
102
+ </ul>
103
+
104
+ </div>
105
+
106
+
107
+
108
+ <h2>
109
+ Instance Method Summary
110
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
111
+ </h2>
112
+
113
+ <ul class="summary">
114
+
115
+ <li class="public ">
116
+ <span class="summary_signature">
117
+
118
+ <a href="#anchor_to-instance_method" title="#anchor_to (instance method)">- (String) <strong>anchor_to</strong>(text, url, *attributes) </a>
119
+
120
+
121
+
122
+ </span>
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+ <span class="summary_desc"><div class='inline'><p>Generate an anchor tag inspired by the way Rails does this.</p></div></span>
132
+
133
+ </li>
134
+
135
+
136
+ <li class="public ">
137
+ <span class="summary_signature">
138
+
139
+ <a href="#cycle-instance_method" title="#cycle (instance method)">- (String) <strong>cycle</strong>(*args) </a>
140
+
141
+
142
+
143
+ </span>
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+ <span class="summary_desc"><div class='inline'><p>The cycle method cycles through a specified list of words.</p></div></span>
153
+
154
+ </li>
155
+
156
+
157
+ <li class="public ">
158
+ <span class="summary_signature">
159
+
160
+ <a href="#notification-instance_method" title="#notification (instance method)">- (Object) <strong>notification</strong>(type, title, message, image = nil, sticky = false) </a>
161
+
162
+
163
+
164
+ </span>
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+ <span class="summary_desc"><div class='inline'><p>Generate the required data for showing a Javascript based notification.</p></div></span>
174
+
175
+ </li>
176
+
177
+
178
+ </ul>
179
+
180
+
181
+
182
+
183
+ <div id="instance_method_details" class="method_details_list">
184
+ <h2>Instance Method Details</h2>
185
+
186
+
187
+ <div class="method_details first">
188
+ <p class="signature first" id="anchor_to-instance_method">
189
+
190
+ - (<tt>String</tt>) <strong>anchor_to</strong>(text, url, *attributes)
191
+
192
+
193
+
194
+ </p><div class="docstring">
195
+ <div class="discussion">
196
+ <p>Generate an anchor tag inspired by the way Rails does this.
197
+ The first parameter is the text to display, the second parameter is the <span class="caps">URL</span>.</p>
198
+ <p>The anchor_to tag supports both query string parameters just like the link helper
199
+ that ships with Ramaze but it also supports the possibility of adding <span class="caps">HTML</span>
200
+ attributes such as an ID or class.</p>
201
+ <p>URLs can be formatted in two ways. The first one, which is the most common one,
202
+ is using a path to a controller/method. Simply specify a string such as
203
+ &#8220;controller/method&#8221;. If you want to create an anchor that points to an external
204
+ website, say Google, simply start the string with &#8220;http://&#8221; and you&#8217;re good to go.</p>
205
+ <p>When using a hash the :href key will be used for the link location.
206
+ Other keys will be used to create query string items. If the <span class="caps">URL</span> starts with
207
+ http:// it will be an external <span class="caps">URL</span>.</p>
208
+
209
+ </div>
210
+ </div>
211
+ <div class="tags">
212
+
213
+ <div class="examples">
214
+ <h3>Examples:</h3>
215
+
216
+ <h4><div class='inline'></div></h4>
217
+ <pre class="example code"><span class='comment'># Rather verbose isn't it?
218
+ </span><span class='id anchor_to'>anchor_to</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Google Search</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='lbrace'>{</span><span class='symbol'>:href</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>http://google.com</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='symbol'>:q</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Search term</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span><span class='comma'>,</span> <span class='symbol'>:class</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>anchor_class</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='symbol'>:title</span> <span class='op'>=&gt;</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Google Search Results :D</span><span class='tstring_end'>'</span></span>
219
+
220
+ <span class='comment'># This is also perfectly fine
221
+ </span><span class='id anchor_to'>anchor_to</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Dashboard</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>dashboard</span><span class='tstring_end'>'</span></span></pre>
222
+
223
+ </div>
224
+ <h3>Parameters:</h3>
225
+ <ul class="param">
226
+
227
+ <li>
228
+
229
+ <span class='type'>(<tt>String</tt>)</span>
230
+
231
+
232
+ <span class='name'>text</span>
233
+
234
+
235
+
236
+ &mdash;
237
+ <div class='inline'><p>The text to display in the anchor tag.</p></div>
238
+
239
+ </li>
240
+
241
+ <li>
242
+
243
+ <span class='type'>(<tt>Hash/String</tt>)</span>
244
+
245
+
246
+ <span class='name'>url</span>
247
+
248
+
249
+
250
+ &mdash;
251
+ <div class='inline'><p>Either a hash or a string that defines the <span class="caps">URL</span>.</p></div>
252
+
253
+ </li>
254
+
255
+ <li>
256
+
257
+ <span class='type'>(<tt>Array</tt>)</span>
258
+
259
+
260
+ <span class='name'>attributes</span>
261
+
262
+
263
+
264
+ &mdash;
265
+ <div class='inline'><p>Optional <span class="caps">HTML</span> attributes to add to the anchor tag.</p></div>
266
+
267
+ </li>
268
+
269
+ </ul>
270
+ <h3>Returns:</h3>
271
+ <ul class="return">
272
+
273
+ <li>
274
+
275
+ <span class='type'>(<tt>String</tt>)</span>
276
+
277
+
278
+
279
+
280
+ </li>
281
+
282
+ </ul>
283
+ <h3>Author:</h3>
284
+ <ul class="author">
285
+
286
+ <li>
287
+
288
+
289
+
290
+
291
+
292
+ <div class='inline'><p>Yorick Peterse</p></div>
293
+
294
+ </li>
295
+
296
+ </ul>
297
+ <h3>Since:</h3>
298
+ <ul class="since">
299
+
300
+ <li>
301
+
302
+
303
+
304
+
305
+
306
+ <div class='inline'><p>0.1</p></div>
307
+
308
+ </li>
309
+
310
+ </ul>
311
+
312
+ </div><table class="source_code">
313
+ <tr>
314
+ <td>
315
+ <pre class="lines">
316
+
317
+
318
+ 72
319
+ 73
320
+ 74
321
+ 75
322
+ 76
323
+ 77
324
+ 78
325
+ 79
326
+ 80
327
+ 81
328
+ 82
329
+ 83
330
+ 84
331
+ 85
332
+ 86
333
+ 87
334
+ 88
335
+ 89
336
+ 90
337
+ 91
338
+ 92
339
+ 93
340
+ 94
341
+ 95
342
+ 96
343
+ 97
344
+ 98
345
+ 99
346
+ 100
347
+ 101
348
+ 102
349
+ 103
350
+ 104
351
+ 105
352
+ 106
353
+ 107
354
+ 108
355
+ 109
356
+ 110
357
+ 111
358
+ 112
359
+ 113
360
+ 114
361
+ 115
362
+ 116
363
+ 117
364
+ 118
365
+ 119
366
+ 120</pre>
367
+ </td>
368
+ <td>
369
+ <pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/common.rb', line 72</span>
370
+
371
+ <span class='kw'>def</span> <span class='id anchor_to'>anchor_to</span> <span class='id text'>text</span><span class='comma'>,</span> <span class='id url'>url</span><span class='comma'>,</span> <span class='op'>*</span><span class='id attributes'>attributes</span>
372
+
373
+ <span class='comment'># Sanitize the text and URL
374
+ </span> <span class='id text'>text</span> <span class='op'>=</span> <span class='const'>Rack</span><span class='op'>::</span><span class='const'>Utils</span><span class='period'>.</span><span class='id escape_html'>escape_html</span> <span class='id text'>text</span>
375
+
376
+ <span class='comment'># Get the URL from the second parameter (either a string or a hash).
377
+ </span> <span class='kw'>if</span> <span class='id url'>url</span><span class='period'>.</span><span class='id class'>class</span><span class='period'>.</span><span class='id to_s'>to_s</span> <span class='op'>===</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>Hash</span><span class='tstring_end'>'</span></span>
378
+ <span class='comment'># Get the URL from the hash and delete it
379
+ </span> <span class='id anchor_url'>anchor_url</span> <span class='op'>=</span> <span class='id url'>url</span><span class='lbracket'>[</span><span class='symbol'>:href</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id strip'>strip</span>
380
+ <span class='id url'>url</span><span class='period'>.</span><span class='id delete'>delete</span><span class='lparen'>(</span><span class='id anchor_url'>anchor_url</span><span class='rparen'>)</span>
381
+
382
+ <span class='comment'># Generate the query string based on the left over values in the URL hash
383
+ </span> <span class='id query_string'>query_string</span> <span class='op'>=</span> <span class='const'>Rack</span><span class='op'>::</span><span class='const'>Utils</span><span class='period'>.</span><span class='id build_query'>build_query</span> <span class='id url'>url</span>
384
+
385
+ <span class='comment'># Create the full URL
386
+ </span> <span class='id anchor_url'>anchor_url</span> <span class='op'>=</span> <span class='id anchor_url'>anchor_url</span> <span class='op'>+</span> <span class='id query_string'>query_string</span>
387
+ <span class='kw'>else</span>
388
+ <span class='id anchor_url'>anchor_url</span> <span class='op'>=</span> <span class='id url'>url</span>
389
+ <span class='kw'>end</span>
390
+
391
+ <span class='comment'># Got attributes?
392
+ </span> <span class='kw'>if</span> <span class='op'>!</span><span class='id attributes'>attributes</span> <span class='kw'>or</span> <span class='id attributes'>attributes</span><span class='period'>.</span><span class='id empty?'>empty?</span>
393
+ <span class='id attributes'>attributes</span> <span class='op'>=</span> <span class='const'>Hash</span><span class='period'>.</span><span class='id new'>new</span>
394
+ <span class='kw'>else</span>
395
+ <span class='id attributes'>attributes</span> <span class='op'>=</span> <span class='id attributes'>attributes</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
396
+ <span class='kw'>end</span>
397
+
398
+ <span class='comment'># Check to see if we're dealing with an internal or external URL
399
+ </span> <span class='kw'>if</span> <span class='op'>!</span><span class='id anchor_url'>anchor_url</span><span class='period'>.</span><span class='id include?'>include?</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>://</span><span class='tstring_end'>'</span></span> <span class='kw'>or</span> <span class='op'>!</span><span class='id anchor_url'>anchor_url</span><span class='period'>.</span><span class='id include?'>include?</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>www.</span><span class='tstring_end'>'</span></span>
400
+ <span class='id anchor_url'>anchor_url</span> <span class='op'>=</span> <span class='id request'>request</span><span class='period'>.</span><span class='id domain'>domain</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id anchor_url'>anchor_url</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
401
+ <span class='kw'>end</span>
402
+
403
+ <span class='comment'># Add the href attribute so it gets processed
404
+ </span> <span class='id attributes'>attributes</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>href</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id anchor_url'>anchor_url</span>
405
+
406
+ <span class='comment'># Add all the extra arguments
407
+ </span> <span class='id html_attributes'>html_attributes</span> <span class='op'>=</span> <span class='const'>String</span><span class='period'>.</span><span class='id new'>new</span>
408
+
409
+ <span class='id attributes'>attributes</span><span class='period'>.</span><span class='id each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id attribute'>attribute</span><span class='comma'>,</span> <span class='id value'>value</span><span class='op'>|</span>
410
+ <span class='id attribute'>attribute</span> <span class='op'>=</span> <span class='const'>Rack</span><span class='op'>::</span><span class='const'>Utils</span><span class='period'>.</span><span class='id escape_html'>escape_html</span> <span class='id attribute'>attribute</span>
411
+ <span class='id html_attributes'>html_attributes</span> <span class='op'>+=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id attribute'>attribute</span><span class='rbrace'>}</span><span class='tstring_content'>=\&quot;</span><span class='embexpr_beg'>#{</span><span class='id value'>value</span><span class='rbrace'>}</span><span class='tstring_content'>\&quot; </span><span class='tstring_end'>&quot;</span></span>
412
+ <span class='kw'>end</span>
413
+
414
+ <span class='comment'># Remove the trailing space
415
+ </span> <span class='id html_attributes'>html_attributes</span> <span class='op'>=</span> <span class='id html_attributes'>html_attributes</span><span class='period'>.</span><span class='id strip'>strip</span>
416
+
417
+ <span class='comment'># Return the tag
418
+ </span> <span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>&lt;a </span><span class='embexpr_beg'>#{</span><span class='id html_attributes'>html_attributes</span><span class='rbrace'>}</span><span class='tstring_content'>&gt;</span><span class='embexpr_beg'>#{</span><span class='id text'>text</span><span class='rbrace'>}</span><span class='tstring_content'>&lt;/a&gt;</span><span class='tstring_end'>&quot;</span></span>
419
+ <span class='kw'>end</span></pre>
420
+ </td>
421
+ </tr>
422
+ </table>
423
+ </div>
424
+
425
+ <div class="method_details ">
426
+ <p class="signature " id="cycle-instance_method">
427
+
428
+ - (<tt>String</tt>) <strong>cycle</strong>(*args)
429
+
430
+
431
+
432
+ </p><div class="docstring">
433
+ <div class="discussion">
434
+ <p>The cycle method cycles through a specified list of words. This helper can be
435
+ used to generate &#8220;zebra&#8221; tables, meaning that every odd row has a different color.</p>
436
+ <p>The amount of words you want to cycle through is completely customizable,
437
+ however you should atleast have two words otherwise this method will be
438
+ completely useless.</p>
439
+
440
+ </div>
441
+ </div>
442
+ <div class="tags">
443
+ <h3>Parameters:</h3>
444
+ <ul class="param">
445
+
446
+ <li>
447
+
448
+ <span class='type'>(<tt>Array</tt>)</span>
449
+
450
+
451
+ <span class='name'>args</span>
452
+
453
+
454
+
455
+ &mdash;
456
+ <div class='inline'><p>All words to cycle through.</p></div>
457
+
458
+ </li>
459
+
460
+ </ul>
461
+ <h3>Returns:</h3>
462
+ <ul class="return">
463
+
464
+ <li>
465
+
466
+ <span class='type'>(<tt>String</tt>)</span>
467
+
468
+
469
+
470
+
471
+ </li>
472
+
473
+ </ul>
474
+ <h3>Author:</h3>
475
+ <ul class="author">
476
+
477
+ <li>
478
+
479
+
480
+
481
+
482
+
483
+ <div class='inline'><p>Yorick Peterse</p></div>
484
+
485
+ </li>
486
+
487
+ </ul>
488
+ <h3>Since:</h3>
489
+ <ul class="since">
490
+
491
+ <li>
492
+
493
+
494
+
495
+
496
+
497
+ <div class='inline'><p>0.1</p></div>
498
+
499
+ </li>
500
+
501
+ </ul>
502
+
503
+ </div><table class="source_code">
504
+ <tr>
505
+ <td>
506
+ <pre class="lines">
507
+
508
+
509
+ 135
510
+ 136
511
+ 137
512
+ 138
513
+ 139
514
+ 140
515
+ 141
516
+ 142
517
+ 143
518
+ 144
519
+ 145
520
+ 146
521
+ 147
522
+ 148
523
+ 149
524
+ 150
525
+ 151
526
+ 152
527
+ 153
528
+ 154</pre>
529
+ </td>
530
+ <td>
531
+ <pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/common.rb', line 135</span>
532
+
533
+ <span class='kw'>def</span> <span class='id cycle'>cycle</span> <span class='op'>*</span><span class='id args'>args</span>
534
+ <span class='kw'>if</span> <span class='cvar'>@@cycle_counter</span><span class='period'>.</span><span class='id nil?'>nil?</span>
535
+ <span class='cvar'>@@cycle_counter</span> <span class='op'>=</span> <span class='int'>0</span>
536
+ <span class='kw'>end</span>
537
+
538
+ <span class='comment'># Check the current counter and reset it if it matches the total amount of arguments
539
+ </span> <span class='kw'>if</span> <span class='cvar'>@@cycle_counter</span> <span class='op'>&gt;=</span> <span class='id args'>args</span><span class='period'>.</span><span class='id count'>count</span>
540
+ <span class='comment'># Reset the counter
541
+ </span> <span class='cvar'>@@cycle_counter</span> <span class='op'>=</span> <span class='int'>0</span>
542
+ <span class='kw'>end</span>
543
+
544
+ <span class='comment'># Get the element based on the current index
545
+ </span> <span class='id cycle_element'>cycle_element</span> <span class='op'>=</span> <span class='id args'>args</span><span class='lbracket'>[</span><span class='cvar'>@@cycle_counter</span><span class='rbracket'>]</span>
546
+
547
+ <span class='comment'># Increment the counter
548
+ </span> <span class='cvar'>@@cycle_counter</span> <span class='op'>+=</span> <span class='int'>1</span>
549
+
550
+ <span class='comment'># Return the cycle element
551
+ </span> <span class='kw'>return</span> <span class='id cycle_element'>cycle_element</span>
552
+ <span class='kw'>end</span></pre>
553
+ </td>
554
+ </tr>
555
+ </table>
556
+ </div>
557
+
558
+ <div class="method_details ">
559
+ <p class="signature " id="notification-instance_method">
560
+
561
+ - (<tt>Object</tt>) <strong>notification</strong>(type, title, message, image = nil, sticky = false)
562
+
563
+
564
+
565
+ </p><div class="docstring">
566
+ <div class="discussion">
567
+ <p>Generate the required data for showing a Javascript based notification.
568
+ Basically all this method does is storing a hash in the flash data and
569
+ making the required code to do so slightly shorter.</p>
570
+ <p>the type of notification will be used for the image. For example, an error message would
571
+ result in an image named &#8220;error.png&#8221; (.png is used for all default icons).
572
+ be automatically removed after a certain period of time.</p>
573
+
574
+ </div>
575
+ </div>
576
+ <div class="tags">
577
+ <h3>Parameters:</h3>
578
+ <ul class="param">
579
+
580
+ <li>
581
+
582
+ <span class='type'>(<tt>Symbol</tt>)</span>
583
+
584
+
585
+ <span class='name'>type</span>
586
+
587
+
588
+
589
+ &mdash;
590
+ <div class='inline'><p>The type of notification to generate (error, notice, etc).</p></div>
591
+
592
+ </li>
593
+
594
+ <li>
595
+
596
+ <span class='type'>(<tt>String</tt>)</span>
597
+
598
+
599
+ <span class='name'>title</span>
600
+
601
+
602
+
603
+ &mdash;
604
+ <div class='inline'><p>The title of the notification.</p></div>
605
+
606
+ </li>
607
+
608
+ <li>
609
+
610
+ <span class='type'>(<tt>String</tt>)</span>
611
+
612
+
613
+ <span class='name'>message</span>
614
+
615
+
616
+
617
+ &mdash;
618
+ <div class='inline'><p>The message to display in the notification.</p></div>
619
+
620
+ </li>
621
+
622
+ <li>
623
+
624
+ <span class='type'>(<tt>String</tt>)</span>
625
+
626
+
627
+ <span class='name'>image</span>
628
+
629
+
630
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
631
+
632
+
633
+ &mdash;
634
+ <div class='inline'><p>An optional path to a custom image to use. If no image is specified</p></div>
635
+
636
+ </li>
637
+
638
+ <li>
639
+
640
+ <span class='type'>(<tt>Boolean</tt>)</span>
641
+
642
+
643
+ <span class='name'>sticky</span>
644
+
645
+
646
+ <em class="default">(defaults to: <tt>false</tt>)</em>
647
+
648
+
649
+ &mdash;
650
+ <div class='inline'><p>Boolean that indicates that the notification shouldn&#8217;t</p></div>
651
+
652
+ </li>
653
+
654
+ </ul>
655
+ <h3>Author:</h3>
656
+ <ul class="author">
657
+
658
+ <li>
659
+
660
+
661
+
662
+
663
+
664
+ <div class='inline'><p>Yorick Peterse</p></div>
665
+
666
+ </li>
667
+
668
+ </ul>
669
+ <h3>Since:</h3>
670
+ <ul class="since">
671
+
672
+ <li>
673
+
674
+
675
+
676
+
677
+
678
+ <div class='inline'><p>0.1</p></div>
679
+
680
+ </li>
681
+
682
+ </ul>
683
+
684
+ </div><table class="source_code">
685
+ <tr>
686
+ <td>
687
+ <pre class="lines">
688
+
689
+
690
+ 27
691
+ 28
692
+ 29
693
+ 30
694
+ 31
695
+ 32
696
+ 33
697
+ 34
698
+ 35
699
+ 36
700
+ 37
701
+ 38
702
+ 39
703
+ 40</pre>
704
+ </td>
705
+ <td>
706
+ <pre class="code"><span class="info file"># File '/Applications/MAMP/htdocs/ruby/zen/zen/lib/zen/helper/common.rb', line 27</span>
707
+
708
+ <span class='kw'>def</span> <span class='id notification'>notification</span> <span class='id type'>type</span><span class='comma'>,</span> <span class='id title'>title</span><span class='comma'>,</span> <span class='id message'>message</span><span class='comma'>,</span> <span class='id image'>image</span> <span class='op'>=</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='id sticky'>sticky</span> <span class='op'>=</span> <span class='kw'>false</span>
709
+ <span class='kw'>if</span> <span class='id image'>image</span><span class='period'>.</span><span class='id nil?'>nil?</span>
710
+ <span class='id image'>image</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>/admin/images/icons/large/</span><span class='embexpr_beg'>#{</span><span class='id type'>type</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='rbrace'>}</span><span class='tstring_content'>.png</span><span class='tstring_end'>&quot;</span></span>
711
+ <span class='kw'>end</span>
712
+
713
+ <span class='id sticky'>sticky</span> <span class='op'>=</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id type'>type</span> <span class='op'>===</span> <span class='symbol'>:error</span>
714
+
715
+ <span class='id flash'>flash</span><span class='lbracket'>[</span><span class='symbol'>:notification</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbrace'>{</span>
716
+ <span class='symbol'>:title</span> <span class='op'>=&gt;</span> <span class='id title'>title</span><span class='comma'>,</span>
717
+ <span class='symbol'>:content</span> <span class='op'>=&gt;</span> <span class='id message'>message</span><span class='comma'>,</span>
718
+ <span class='symbol'>:image</span> <span class='op'>=&gt;</span> <span class='id image'>image</span><span class='comma'>,</span>
719
+ <span class='symbol'>:sticky</span> <span class='op'>=&gt;</span> <span class='id sticky'>sticky</span>
720
+ <span class='rbrace'>}</span>
721
+ <span class='kw'>end</span></pre>
722
+ </td>
723
+ </tr>
724
+ </table>
725
+ </div>
726
+
727
+ </div>
728
+
729
+ </div>
730
+
731
+ <div id="footer">
732
+ Generated on Sun Feb 6 21:24:00 2011 by
733
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
734
+ 0.6.4 (ruby-1.9.2).
735
+ </div>
736
+
737
+ </body>
738
+ </html>