card 1.16.6 → 1.16.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/.yardoc/checksums +234 -49
  3. data/.yardoc/object_types +0 -0
  4. data/.yardoc/objects/root.dat +0 -0
  5. data/VERSION +1 -1
  6. data/config/initializers/mime_types.rb +3 -3
  7. data/config/initializers/notification.rb +1 -1
  8. data/db/migrate/20121118115000_update_link_type.rb +8 -8
  9. data/db/migrate/20130411210957_update_codenames.rb +2 -2
  10. data/db/migrate/20140822073704_create_new_revision_tables.rb +12 -13
  11. data/db/migrate/20141001105348_move_revisions_to_actions.rb +16 -16
  12. data/db/migrate/20141121172918_rename_card_migration_table.rb +4 -4
  13. data/db/migrate_core_cards/20130419215612_import_help_text.rb +3 -3
  14. data/db/migrate_core_cards/20130823192433_add_style_cards.rb +45 -47
  15. data/db/migrate_core_cards/20130910183318_move_styles_to_content.rb +1 -1
  16. data/db/migrate_core_cards/20130920214038_jsonize_tinymce.rb +3 -3
  17. data/db/migrate_core_cards/20130920291703_update_stylesheets.rb +3 -3
  18. data/db/migrate_core_cards/20130927191728_account_events.rb +6 -6
  19. data/db/migrate_core_cards/20131016172445_common_css_patch.rb +1 -1
  20. data/db/migrate_core_cards/20140110193325_reset_account_request_type.rb +1 -1
  21. data/db/migrate_core_cards/20140307231621_user_data_to_cards.rb +19 -19
  22. data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +11 -12
  23. data/db/migrate_core_cards/20140512155840_add_script_cards.rb +35 -36
  24. data/db/migrate_core_cards/20140629222005_add_email_cards.rb +55 -55
  25. data/db/migrate_core_cards/20140725180118_config_card_updates.rb +1 -1
  26. data/db/migrate_core_cards/20141111083921_delete_machine_output.rb +2 -2
  27. data/db/migrate_core_cards/20141115034214_config_descriptions_etc.rb +3 -3
  28. data/db/migrate_core_cards/20141120120605_fix_notification_html_message.rb +2 -2
  29. data/db/migrate_core_cards/20141204061304_watchers_to_following.rb +8 -8
  30. data/db/migrate_core_cards/20141208162106_add_ace_script.rb +2 -2
  31. data/db/migrate_core_cards/20141216155251_add_more_following_cards.rb +16 -16
  32. data/db/migrate_core_cards/20141230204340_uri_codename.rb +1 -1
  33. data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +19 -19
  34. data/db/migrate_core_cards/20150220134731_following_to_follow_rule.rb +3 -3
  35. data/db/migrate_core_cards/20150317162412_bootstrap_themes.rb +15 -15
  36. data/db/migrate_core_cards/20150326205655_bootswatch_themes.rb +11 -11
  37. data/db/migrate_core_cards/20150331135745_new_card_menu.rb +1 -1
  38. data/db/migrate_core_cards/20150429090551_search_card_context.rb +1 -1
  39. data/db/migrate_core_cards/20150508212032_menu_compatibility.rb +3 -3
  40. data/db/migrate_core_cards/20150510031118_fix_skin_images.rb +1 -1
  41. data/db/migrate_core_cards/20150528084659_add_session_cardtype.rb +4 -4
  42. data/db/migrate_core_cards/20150601133433_add_recent_setting_session_card.rb +5 -5
  43. data/db/migrate_core_cards/20150605115802_add_performance_log_card.rb +1 -1
  44. data/db/migrate_core_cards/20150610171702_add_debugger_session_card.rb +2 -2
  45. data/db/migrate_core_cards/20150611203506_rails_inflection_updates.rb +5 -5
  46. data/db/migrate_core_cards/20150627205133_fix_script_bootstrap_card_type.rb +1 -1
  47. data/db/migrate_core_cards/20150702130543_remove_edit_toolbar_pinned.rb +1 -1
  48. data/db/migrate_core_cards/20150724123438_update_file_and_image_cards.rb +5 -5
  49. data/db/migrate_core_cards/20150807205221_create_references_for_search_cards.rb +1 -1
  50. data/db/migrate_core_cards/20150824135418_update_file_history.rb +3 -3
  51. data/db/migrate_core_cards/20150903130006_attachment_upload_cards.rb +2 -2
  52. data/db/migrate_core_cards/20150910085603_remove_performance_log_card.rb +1 -1
  53. data/lib/card.rb +4 -4
  54. data/lib/card/active_record_ext.rb +8 -8
  55. data/lib/card/auth.rb +6 -6
  56. data/lib/card/cache.rb +1 -1
  57. data/lib/card/chunk.rb +1 -1
  58. data/lib/card/content.rb +1 -1
  59. data/lib/card/diff.rb +10 -10
  60. data/lib/card/env.rb +1 -1
  61. data/lib/card/format.rb +12 -12
  62. data/lib/card/loader.rb +1 -1
  63. data/lib/card/migration.rb +1 -1
  64. data/lib/card/name.rb +4 -4
  65. data/lib/card/query.rb +255 -61
  66. data/lib/card/query/attributes.rb +310 -0
  67. data/lib/card/query/clause.rb +12 -15
  68. data/lib/card/query/join.rb +73 -0
  69. data/lib/card/query/reference.rb +51 -0
  70. data/lib/card/query/sql_statement.rb +228 -0
  71. data/lib/card/query/value.rb +66 -0
  72. data/lib/card/reference.rb +6 -6
  73. data/lib/card/set.rb +12 -12
  74. data/lib/card/set_pattern.rb +9 -9
  75. data/lib/card/spec_helper.rb +5 -5
  76. data/lib/card/success.rb +1 -1
  77. data/lib/cardio.rb +7 -7
  78. data/lib/generators/card/format/format_generator.rb +3 -3
  79. data/lib/generators/card/migration/migration_generator.rb +5 -5
  80. data/lib/generators/card/set/set_generator.rb +4 -4
  81. data/mod/01_core/chunk/include.rb +4 -4
  82. data/mod/01_core/chunk/link.rb +5 -5
  83. data/mod/01_core/chunk/literal.rb +2 -2
  84. data/mod/01_core/chunk/query_reference.rb +8 -8
  85. data/mod/01_core/chunk/uri.rb +18 -18
  86. data/mod/01_core/format/html_format.rb +4 -4
  87. data/mod/01_core/set/all/active_card.rb +2 -2
  88. data/mod/01_core/set/all/collection.rb +21 -26
  89. data/mod/01_core/set/all/content.rb +2 -2
  90. data/mod/01_core/set/all/fetch.rb +6 -6
  91. data/mod/01_core/set/all/initialize.rb +4 -4
  92. data/mod/01_core/set/all/location_history.rb +2 -2
  93. data/mod/01_core/set/all/name.rb +14 -14
  94. data/mod/01_core/set/all/pattern.rb +1 -1
  95. data/mod/01_core/set/all/permissions.rb +12 -12
  96. data/mod/01_core/set/all/phases.rb +29 -12
  97. data/mod/01_core/set/all/references.rb +14 -14
  98. data/mod/01_core/set/all/rules.rb +8 -8
  99. data/mod/01_core/set/all/templating.rb +10 -9
  100. data/mod/01_core/set/all/tracked_attributes.rb +7 -7
  101. data/mod/01_core/set/all/trash.rb +6 -6
  102. data/mod/01_core/set/all/type.rb +7 -7
  103. data/mod/01_core/set/all/utils.rb +4 -4
  104. data/mod/01_core/set/all/view_cache.rb +1 -1
  105. data/mod/01_core/set_pattern/02_all_plus.rb +2 -2
  106. data/mod/01_core/set_pattern/03_type.rb +1 -1
  107. data/mod/01_core/set_pattern/04_star.rb +1 -1
  108. data/mod/01_core/set_pattern/05_rstar.rb +2 -2
  109. data/mod/01_core/set_pattern/06_right.rb +4 -4
  110. data/mod/01_core/set_pattern/07_type_plus_right.rb +4 -4
  111. data/mod/01_core/set_pattern/08_self.rb +1 -1
  112. data/mod/01_core/spec/chunk/uri_spec.rb +73 -73
  113. data/mod/01_core/spec/format/html_format_spec.rb +5 -5
  114. data/mod/01_core/spec/set/all/attribute_tracking_spec.rb +1 -1
  115. data/mod/01_core/spec/set/all/collection_spec.rb +22 -22
  116. data/mod/01_core/spec/set/all/content_spec.rb +1 -1
  117. data/mod/01_core/spec/set/all/fetch_spec.rb +24 -24
  118. data/mod/01_core/spec/set/all/initialize_spec.rb +9 -9
  119. data/mod/01_core/spec/set/all/name_spec.rb +8 -8
  120. data/mod/01_core/spec/set/all/pattern_spec.rb +10 -10
  121. data/mod/01_core/spec/set/all/permissions_spec.rb +45 -45
  122. data/mod/01_core/spec/set/all/references_spec.rb +1 -1
  123. data/mod/01_core/spec/set/all/rules2_spec.rb +15 -15
  124. data/mod/01_core/spec/set/all/rules_spec.rb +37 -37
  125. data/mod/01_core/spec/set/all/templating_spec.rb +21 -21
  126. data/mod/01_core/spec/set/all/tracked_attributes_spec.rb +55 -55
  127. data/mod/01_core/spec/set/all/trash_spec.rb +4 -4
  128. data/mod/01_core/spec/set/all/type_spec.rb +15 -15
  129. data/mod/01_history/lib/card/act.rb +2 -2
  130. data/mod/01_history/lib/card/action.rb +22 -22
  131. data/mod/01_history/lib/card/change.rb +1 -1
  132. data/mod/01_history/set/all/actions.rb +2 -2
  133. data/mod/01_history/set/all/content_history.rb +4 -4
  134. data/mod/01_history/set/all/history.rb +46 -46
  135. data/mod/02_basic_types/set/all/all_css.rb +10 -10
  136. data/mod/02_basic_types/set/all/all_csv.rb +7 -7
  137. data/mod/02_basic_types/set/all/base.rb +25 -25
  138. data/mod/02_basic_types/set/all/json.rb +16 -16
  139. data/mod/02_basic_types/set/all/rss.rb +7 -7
  140. data/mod/02_basic_types/set/type/html.rb +2 -2
  141. data/mod/02_basic_types/set/type/plain_text.rb +1 -1
  142. data/mod/02_basic_types/set/type/pointer.rb +39 -31
  143. data/mod/02_basic_types/spec/set/all/all_css_spec.rb +1 -1
  144. data/mod/02_basic_types/spec/set/all/all_csv_spec.rb +1 -1
  145. data/mod/02_basic_types/spec/set/all/base_spec.rb +18 -18
  146. data/mod/02_basic_types/spec/set/all/json_spec.rb +4 -4
  147. data/mod/02_basic_types/spec/set/all/rss_spec.rb +8 -2
  148. data/mod/02_basic_types/spec/set/type/plain_text_spec.rb +1 -1
  149. data/mod/02_basic_types/spec/set/type/pointer_spec.rb +54 -44
  150. data/mod/03_machines/lib/card/machine.rb +46 -29
  151. data/mod/03_machines/lib/card/machine_input.rb +34 -10
  152. data/mod/03_machines/set/type/coffee_script.rb +3 -3
  153. data/mod/03_machines/set/type/css.rb +8 -8
  154. data/mod/03_machines/set/type/java_script.rb +4 -4
  155. data/mod/03_machines/set/type/scss.rb +2 -2
  156. data/mod/03_machines/set/type/skin.rb +1 -1
  157. data/mod/03_machines/spec/lib/shared_machine_examples.rb +27 -27
  158. data/mod/03_machines/spec/lib/shared_machine_input_examples.rb +8 -8
  159. data/mod/03_machines/spec/set/type/coffeescript_spec.rb +6 -6
  160. data/mod/03_machines/spec/set/type/css_spec.rb +9 -9
  161. data/mod/03_machines/spec/set/type/javascript_spec.rb +6 -6
  162. data/mod/03_machines/spec/set/type/scss_spec.rb +5 -5
  163. data/mod/03_machines/spec/set/type/skin_spec.rb +25 -25
  164. data/mod/04_settings/lib/card/setting.rb +11 -11
  165. data/mod/04_settings/set/abstract/permission.rb +9 -9
  166. data/mod/04_settings/set/right/script.rb +1 -1
  167. data/mod/04_settings/set/right/structure.rb +0 -5
  168. data/mod/04_settings/set/right/style.rb +2 -2
  169. data/mod/04_settings/set/self/accountable.rb +1 -1
  170. data/mod/04_settings/set/self/add_help.rb +1 -1
  171. data/mod/04_settings/set/self/autoname.rb +1 -1
  172. data/mod/04_settings/set/self/captcha.rb +1 -1
  173. data/mod/04_settings/set/self/create.rb +1 -1
  174. data/mod/04_settings/set/self/default.rb +1 -1
  175. data/mod/04_settings/set/self/delete.rb +1 -1
  176. data/mod/04_settings/set/self/help.rb +1 -1
  177. data/mod/04_settings/set/self/input.rb +1 -1
  178. data/mod/04_settings/set/self/layout.rb +1 -1
  179. data/mod/04_settings/set/self/on_create.rb +1 -1
  180. data/mod/04_settings/set/self/on_delete.rb +1 -1
  181. data/mod/04_settings/set/self/on_update.rb +1 -1
  182. data/mod/04_settings/set/self/options.rb +1 -1
  183. data/mod/04_settings/set/self/options_label.rb +1 -1
  184. data/mod/04_settings/set/self/read.rb +1 -1
  185. data/mod/04_settings/set/self/script.rb +1 -1
  186. data/mod/04_settings/set/self/structure.rb +1 -1
  187. data/mod/04_settings/set/self/style.rb +1 -1
  188. data/mod/04_settings/set/self/table_of_contents.rb +1 -1
  189. data/mod/04_settings/set/self/thanks.rb +1 -1
  190. data/mod/04_settings/set/self/update.rb +1 -1
  191. data/mod/04_settings/set/type/setting.rb +14 -14
  192. data/mod/04_settings/spec/set/right/comment_spec.rb +5 -5
  193. data/mod/04_settings/spec/set/right/create_spec.rb +1 -1
  194. data/mod/04_settings/spec/set/right/script_spec.rb +5 -5
  195. data/mod/04_settings/spec/set/right/structure_spec.rb +4 -2
  196. data/mod/04_settings/spec/set/right/style_spec.rb +7 -7
  197. data/mod/04_settings/spec/set/type/setting_spec.rb +2 -2
  198. data/mod/05_email/lib/card/follow_option.rb +24 -24
  199. data/mod/05_email/set/all/follow.rb +24 -16
  200. data/mod/05_email/set/all/notify.rb +25 -23
  201. data/mod/05_email/set/all/observer.rb +5 -5
  202. data/mod/05_email/set/right/bcc.rb +8 -8
  203. data/mod/05_email/set/right/follow.rb +44 -17
  204. data/mod/05_email/set/right/follow_fields.rb +1 -1
  205. data/mod/05_email/set/right/following.rb +49 -40
  206. data/mod/05_email/set/self/always.rb +2 -2
  207. data/mod/05_email/set/self/created.rb +1 -1
  208. data/mod/05_email/set/self/edited.rb +4 -4
  209. data/mod/05_email/set/self/follow.rb +1 -1
  210. data/mod/05_email/set/self/follow_defaults.rb +9 -9
  211. data/mod/05_email/set/self/never.rb +1 -1
  212. data/mod/05_email/set/type/email_template.rb +9 -9
  213. data/mod/05_email/set/type_plus_right/user/follow.rb +16 -16
  214. data/mod/05_email/spec/set/all/follow_spec.rb +10 -10
  215. data/mod/05_email/spec/set/all/notify_spec.rb +82 -82
  216. data/mod/05_email/spec/set/all/observer_spec.rb +16 -16
  217. data/mod/05_email/spec/set/right/followers_spec.rb +6 -6
  218. data/mod/05_email/spec/set/self/follow_defaults_spec.rb +2 -2
  219. data/mod/05_standard/lib/carrier_wave/cardmount.rb +5 -5
  220. data/mod/05_standard/lib/image_uploader.rb +8 -8
  221. data/mod/05_standard/set/abstract/attachment.rb +18 -18
  222. data/mod/05_standard/set/all/account.rb +5 -5
  223. data/mod/05_standard/set/all/comment.rb +7 -7
  224. data/mod/05_standard/set/all/error.rb +25 -25
  225. data/mod/05_standard/set/all/event_viz.rb +1 -1
  226. data/mod/05_standard/set/all/links.rb +9 -9
  227. data/mod/05_standard/set/all/rich_html/content.rb +34 -34
  228. data/mod/05_standard/set/all/rich_html/editing.rb +35 -35
  229. data/mod/05_standard/set/all/rich_html/form.rb +20 -20
  230. data/mod/05_standard/set/all/rich_html/header.rb +8 -8
  231. data/mod/05_standard/set/all/rich_html/menu.rb +33 -33
  232. data/mod/05_standard/set/all/rich_html/modal.rb +16 -16
  233. data/mod/05_standard/set/all/rich_html/toolbar.rb +63 -63
  234. data/mod/05_standard/set/all/rich_html/wrapper.rb +8 -8
  235. data/mod/05_standard/set/right/account.rb +27 -27
  236. data/mod/05_standard/set/right/email.rb +5 -5
  237. data/mod/05_standard/set/right/password.rb +5 -5
  238. data/mod/05_standard/set/rstar/rules.rb +52 -52
  239. data/mod/05_standard/set/self/account_links.rb +27 -27
  240. data/mod/05_standard/set/self/all.rb +1 -1
  241. data/mod/05_standard/set/self/head.rb +5 -5
  242. data/mod/05_standard/set/self/navbox.rb +11 -11
  243. data/mod/05_standard/set/self/recent.rb +2 -2
  244. data/mod/05_standard/set/self/search.rb +13 -13
  245. data/mod/05_standard/set/self/signin.rb +19 -19
  246. data/mod/05_standard/set/self/stats.rb +2 -2
  247. data/mod/05_standard/set/type/basic.rb +1 -1
  248. data/mod/05_standard/set/type/cardtype.rb +5 -5
  249. data/mod/05_standard/set/type/date.rb +1 -1
  250. data/mod/05_standard/set/type/file.rb +7 -7
  251. data/mod/05_standard/set/type/image.rb +8 -8
  252. data/mod/05_standard/set/type/number.rb +2 -2
  253. data/mod/05_standard/set/type/phrase.rb +1 -1
  254. data/mod/05_standard/set/type/search_type.rb +27 -21
  255. data/mod/05_standard/set/type/session.rb +2 -2
  256. data/mod/05_standard/set/type/set.rb +37 -37
  257. data/mod/05_standard/set/type/signup.rb +25 -25
  258. data/mod/05_standard/set/type/uri.rb +1 -1
  259. data/mod/05_standard/set/type/user.rb +21 -21
  260. data/mod/05_standard/spec/chunk/include_spec.rb +16 -16
  261. data/mod/05_standard/spec/chunk/link_spec.rb +18 -18
  262. data/mod/05_standard/spec/chunk/query_reference_spec.rb +1 -1
  263. data/mod/05_standard/spec/set/all/account_spec.rb +7 -7
  264. data/mod/05_standard/spec/set/all/email_html_spec.rb +3 -3
  265. data/mod/05_standard/spec/set/all/history_spec.rb +14 -14
  266. data/mod/05_standard/spec/set/all/rich_html/editing_spec.rb +1 -1
  267. data/mod/05_standard/spec/set/all/rich_html/form_spec.rb +2 -2
  268. data/mod/05_standard/spec/set/right/account_spec.rb +9 -9
  269. data/mod/05_standard/spec/set/right/email_spec.rb +8 -8
  270. data/mod/05_standard/spec/set/right/password_spec.rb +9 -9
  271. data/mod/05_standard/spec/set/right/stats_spec.rb +1 -1
  272. data/mod/05_standard/spec/set/right/when_created_spec.rb +1 -1
  273. data/mod/05_standard/spec/set/right/when_last_edited_spec.rb +1 -1
  274. data/mod/05_standard/spec/set/rstar/rules_spec.rb +2 -2
  275. data/mod/05_standard/spec/set/self/account_links_spec.rb +2 -2
  276. data/mod/05_standard/spec/set/self/all_spec.rb +8 -11
  277. data/mod/05_standard/spec/set/self/head_spec.rb +1 -1
  278. data/mod/05_standard/spec/set/self/navbox_spec.rb +1 -1
  279. data/mod/05_standard/spec/set/self/now_spec.rb +1 -1
  280. data/mod/05_standard/spec/set/self/stats_spec.rb +1 -1
  281. data/mod/05_standard/spec/set/self/version_spec.rb +1 -1
  282. data/mod/05_standard/spec/set/type/email_template_spec.rb +25 -25
  283. data/mod/05_standard/spec/set/type/file_spec.rb +4 -4
  284. data/mod/05_standard/spec/set/type/html_spec.rb +3 -3
  285. data/mod/05_standard/spec/set/type/image_spec.rb +6 -6
  286. data/mod/05_standard/spec/set/type/layout_type_spec.rb +1 -1
  287. data/mod/05_standard/spec/set/type/search_type_spec.rb +10 -10
  288. data/mod/05_standard/spec/set/type/signup_spec.rb +11 -11
  289. data/mod/05_standard/spec/set/type/toggle_spec.rb +2 -2
  290. data/mod/05_standard/spec/set/type/uri_spec.rb +9 -9
  291. data/mod/06_bootstrap/set/all/bootstrap/helper.rb +10 -10
  292. data/mod/06_bootstrap/set/all/bootstrap/wrapper.rb +4 -4
  293. data/mod/06_bootstrap/set/all/rich_bootstrap.rb +1 -1
  294. data/spec/lib/card/action_spec.rb +2 -2
  295. data/spec/lib/card/cache_spec.rb +7 -7
  296. data/spec/lib/card/content_spec.rb +31 -37
  297. data/spec/lib/card/diff_spec.rb +56 -56
  298. data/spec/lib/card/format_spec.rb +11 -11
  299. data/spec/lib/card/query_spec.rb +382 -265
  300. data/spec/lib/card/reference_spec.rb +133 -140
  301. data/spec/lib/card/set_pattern_spec.rb +10 -9
  302. data/spec/lib/card/set_spec.rb +11 -11
  303. data/spec/lib/card/success_spec.rb +16 -8
  304. data/spec/mailers/mailer_spec.rb +5 -5
  305. data/spec/models/card/cardtype_spec.rb +20 -20
  306. data/spec/models/card/create_spec.rb +6 -6
  307. data/spec/models/card/trash_spec.rb +20 -20
  308. data/spec/models/card/type_transition_spec.rb +3 -3
  309. data/spec/models/card/validation_spec.rb +5 -5
  310. data/spec/models/card_spec.rb +24 -24
  311. data/spec/spec_helper.rb +5 -5
  312. data/tmpsets/set/mod001-01_core/all/active_card.rb +2 -2
  313. data/tmpsets/set/mod001-01_core/all/collection.rb +23 -26
  314. data/tmpsets/set/mod001-01_core/all/content.rb +2 -2
  315. data/tmpsets/set/mod001-01_core/all/fetch.rb +6 -6
  316. data/tmpsets/set/mod001-01_core/all/initialize.rb +8 -4
  317. data/tmpsets/set/mod001-01_core/all/name.rb +14 -14
  318. data/tmpsets/set/mod001-01_core/all/pattern.rb +1 -1
  319. data/tmpsets/set/mod001-01_core/all/permissions.rb +12 -12
  320. data/tmpsets/set/mod001-01_core/all/phases.rb +31 -13
  321. data/tmpsets/set/mod001-01_core/all/references.rb +14 -14
  322. data/tmpsets/set/mod001-01_core/all/rules.rb +8 -10
  323. data/tmpsets/set/mod001-01_core/all/templating.rb +10 -9
  324. data/tmpsets/set/mod001-01_core/all/tracked_attributes.rb +7 -7
  325. data/tmpsets/set/mod001-01_core/all/trash.rb +9 -8
  326. data/tmpsets/set/mod001-01_core/all/type.rb +7 -7
  327. data/tmpsets/set/mod001-01_core/all/utils.rb +16 -4
  328. data/tmpsets/set/mod001-01_core/all/view_cache.rb +1 -1
  329. data/tmpsets/set/mod002-01_history/all/actions.rb +2 -2
  330. data/tmpsets/set/mod002-01_history/all/content_history.rb +11 -7
  331. data/tmpsets/set/mod002-01_history/all/history.rb +46 -46
  332. data/tmpsets/set/mod003-02_basic_types/all/all_css.rb +10 -10
  333. data/tmpsets/set/mod003-02_basic_types/all/all_csv.rb +7 -7
  334. data/tmpsets/set/mod003-02_basic_types/all/base.rb +25 -25
  335. data/tmpsets/set/mod003-02_basic_types/all/json.rb +16 -16
  336. data/tmpsets/set/mod003-02_basic_types/all/rss.rb +7 -7
  337. data/tmpsets/set/mod003-02_basic_types/type/html.rb +2 -2
  338. data/tmpsets/set/mod003-02_basic_types/type/plain_text.rb +1 -1
  339. data/tmpsets/set/mod003-02_basic_types/type/pointer.rb +38 -31
  340. data/tmpsets/set/mod004-03_machines/right/machine_output.rb +4 -0
  341. data/tmpsets/set/mod004-03_machines/type/coffee_script.rb +3 -3
  342. data/tmpsets/set/mod004-03_machines/type/css.rb +8 -8
  343. data/tmpsets/set/mod004-03_machines/type/java_script.rb +4 -4
  344. data/tmpsets/set/mod004-03_machines/type/scss.rb +2 -2
  345. data/tmpsets/set/mod004-03_machines/type/skin.rb +1 -1
  346. data/tmpsets/set/mod005-04_settings/abstract/permission.rb +9 -9
  347. data/tmpsets/set/mod005-04_settings/right/script.rb +1 -1
  348. data/tmpsets/set/mod005-04_settings/right/structure.rb +0 -5
  349. data/tmpsets/set/mod005-04_settings/right/style.rb +2 -2
  350. data/tmpsets/set/mod005-04_settings/self/accountable.rb +1 -1
  351. data/tmpsets/set/mod005-04_settings/self/add_help.rb +1 -1
  352. data/tmpsets/set/mod005-04_settings/self/autoname.rb +1 -1
  353. data/tmpsets/set/mod005-04_settings/self/captcha.rb +1 -1
  354. data/tmpsets/set/mod005-04_settings/self/create.rb +1 -1
  355. data/tmpsets/set/mod005-04_settings/self/default.rb +1 -1
  356. data/tmpsets/set/mod005-04_settings/self/delete.rb +1 -1
  357. data/tmpsets/set/mod005-04_settings/self/help.rb +1 -1
  358. data/tmpsets/set/mod005-04_settings/self/input.rb +1 -1
  359. data/tmpsets/set/mod005-04_settings/self/layout.rb +1 -1
  360. data/tmpsets/set/mod005-04_settings/self/on_create.rb +1 -1
  361. data/tmpsets/set/mod005-04_settings/self/on_delete.rb +1 -1
  362. data/tmpsets/set/mod005-04_settings/self/on_update.rb +1 -1
  363. data/tmpsets/set/mod005-04_settings/self/options.rb +1 -1
  364. data/tmpsets/set/mod005-04_settings/self/options_label.rb +1 -1
  365. data/tmpsets/set/mod005-04_settings/self/read.rb +1 -1
  366. data/tmpsets/set/mod005-04_settings/self/script.rb +1 -1
  367. data/tmpsets/set/mod005-04_settings/self/structure.rb +1 -1
  368. data/tmpsets/set/mod005-04_settings/self/style.rb +1 -1
  369. data/tmpsets/set/mod005-04_settings/self/table_of_contents.rb +1 -1
  370. data/tmpsets/set/mod005-04_settings/self/thanks.rb +1 -1
  371. data/tmpsets/set/mod005-04_settings/self/update.rb +1 -1
  372. data/tmpsets/set/mod005-04_settings/type/setting.rb +14 -14
  373. data/tmpsets/set/mod006-05_email/all/follow.rb +24 -16
  374. data/tmpsets/set/mod006-05_email/all/notify.rb +25 -23
  375. data/tmpsets/set/mod006-05_email/all/observer.rb +8 -8
  376. data/tmpsets/set/mod006-05_email/right/bcc.rb +8 -8
  377. data/tmpsets/set/mod006-05_email/right/follow.rb +44 -17
  378. data/tmpsets/set/mod006-05_email/right/follow_fields.rb +1 -1
  379. data/tmpsets/set/mod006-05_email/right/following.rb +49 -40
  380. data/tmpsets/set/mod006-05_email/self/always.rb +2 -2
  381. data/tmpsets/set/mod006-05_email/self/created.rb +1 -1
  382. data/tmpsets/set/mod006-05_email/self/edited.rb +4 -4
  383. data/tmpsets/set/mod006-05_email/self/follow.rb +1 -1
  384. data/tmpsets/set/mod006-05_email/self/follow_defaults.rb +9 -9
  385. data/tmpsets/set/mod006-05_email/self/never.rb +1 -1
  386. data/tmpsets/set/mod006-05_email/type/email_template.rb +9 -9
  387. data/tmpsets/set/mod006-05_email/type_plus_right/user/follow.rb +17 -17
  388. data/tmpsets/set/mod007-05_standard/abstract/attachment.rb +98 -46
  389. data/tmpsets/set/mod007-05_standard/all/account.rb +5 -5
  390. data/tmpsets/set/mod007-05_standard/all/comment.rb +7 -7
  391. data/tmpsets/set/mod007-05_standard/all/error.rb +26 -26
  392. data/tmpsets/set/mod007-05_standard/all/event_viz.rb +1 -1
  393. data/tmpsets/set/mod007-05_standard/all/links.rb +10 -9
  394. data/tmpsets/set/mod007-05_standard/all/rich_html/content.rb +34 -34
  395. data/tmpsets/set/mod007-05_standard/all/rich_html/editing.rb +35 -35
  396. data/tmpsets/set/mod007-05_standard/all/rich_html/form.rb +20 -20
  397. data/tmpsets/set/mod007-05_standard/all/rich_html/header.rb +8 -8
  398. data/tmpsets/set/mod007-05_standard/all/rich_html/menu.rb +33 -33
  399. data/tmpsets/set/mod007-05_standard/all/rich_html/modal.rb +16 -16
  400. data/tmpsets/set/mod007-05_standard/all/rich_html/toolbar.rb +63 -63
  401. data/tmpsets/set/mod007-05_standard/all/rich_html/wrapper.rb +8 -8
  402. data/tmpsets/set/mod007-05_standard/right/account.rb +27 -27
  403. data/tmpsets/set/mod007-05_standard/right/email.rb +5 -5
  404. data/tmpsets/set/mod007-05_standard/right/password.rb +5 -5
  405. data/tmpsets/set/mod007-05_standard/rstar/rules.rb +52 -52
  406. data/tmpsets/set/mod007-05_standard/self/account_links.rb +27 -27
  407. data/tmpsets/set/mod007-05_standard/self/all.rb +1 -1
  408. data/tmpsets/set/mod007-05_standard/self/head.rb +5 -5
  409. data/tmpsets/set/mod007-05_standard/self/navbox.rb +11 -11
  410. data/tmpsets/set/mod007-05_standard/self/recent.rb +2 -2
  411. data/tmpsets/set/mod007-05_standard/self/search.rb +13 -13
  412. data/tmpsets/set/mod007-05_standard/self/signin.rb +19 -19
  413. data/tmpsets/set/mod007-05_standard/self/stats.rb +2 -2
  414. data/tmpsets/set/mod007-05_standard/type/basic.rb +1 -1
  415. data/tmpsets/set/mod007-05_standard/type/cardtype.rb +5 -5
  416. data/tmpsets/set/mod007-05_standard/type/date.rb +1 -1
  417. data/tmpsets/set/mod007-05_standard/type/file.rb +23 -8
  418. data/tmpsets/set/mod007-05_standard/type/image.rb +10 -8
  419. data/tmpsets/set/mod007-05_standard/type/number.rb +2 -2
  420. data/tmpsets/set/mod007-05_standard/type/phrase.rb +1 -1
  421. data/tmpsets/set/mod007-05_standard/type/search_type.rb +21 -19
  422. data/tmpsets/set/mod007-05_standard/type/session.rb +2 -2
  423. data/tmpsets/set/mod007-05_standard/type/set.rb +37 -37
  424. data/tmpsets/set/mod007-05_standard/type/signup.rb +25 -25
  425. data/tmpsets/set/mod007-05_standard/type/uri.rb +1 -1
  426. data/tmpsets/set/mod007-05_standard/type/user.rb +21 -21
  427. data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/helper.rb +10 -10
  428. data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/wrapper.rb +4 -4
  429. data/tmpsets/set/mod008-06_bootstrap/all/rich_bootstrap.rb +1 -1
  430. data/tmpsets/set_pattern/101-all_plus.rb +2 -2
  431. data/tmpsets/set_pattern/102-type.rb +1 -1
  432. data/tmpsets/set_pattern/103-star.rb +1 -1
  433. data/tmpsets/set_pattern/104-rstar.rb +2 -2
  434. data/tmpsets/set_pattern/105-right.rb +4 -4
  435. data/tmpsets/set_pattern/106-type_plus_right.rb +4 -4
  436. data/tmpsets/set_pattern/107-self.rb +1 -1
  437. metadata +7 -5
  438. data/lib/card/query/card_clause.rb +0 -528
  439. data/lib/card/query/ref_clause.rb +0 -47
  440. data/lib/card/query/value_clause.rb +0 -65
@@ -7,15 +7,15 @@ describe Card::Set::Right::Script do
7
7
  let(:compressed_changed_js) { 'alert("Hello");' }
8
8
  let(:new_js) { 'alert( "Hey" );' }
9
9
  let(:compressed_new_js) { 'alert("Hey");' }
10
-
10
+
11
11
  it_should_behave_like 'pointer machine', that_produces_js do
12
- let(:machine_card) { Card.gimme! "test my style+*script", :type => :pointer, :content => ''}
13
- let(:machine_input_card) { Card.gimme! "test js", :type => Card::JavaScriptID, :content => js }
14
- let(:another_machine_input_card) { Card.gimme! "more js", :type => Card::JavaScriptID, :content => new_js }
12
+ let(:machine_card) { Card.gimme! "test my style+*script", type: :pointer, content: ''}
13
+ let(:machine_input_card) { Card.gimme! "test js", type: Card::JavaScriptID, content: js }
14
+ let(:another_machine_input_card) { Card.gimme! "more js", type: Card::JavaScriptID, content: new_js }
15
15
  let(:expected_input_items) { nil }
16
16
  let(:input_type) { :java_script }
17
17
  let(:card_content) do
18
- { in: js, out: compressed_js,
18
+ { in: js, out: compressed_js,
19
19
  changed_in: changed_js, changed_out: compressed_changed_js,
20
20
  new_in: new_js, new_out: compressed_new_js
21
21
  }
@@ -2,21 +2,23 @@
2
2
 
3
3
  describe Card::Set::Right::Structure do
4
4
  it "closed_content is rendered as type + raw" do
5
- template = Card.new(:name=>'A+*right+*structure', :content=>'[[link]] {{inclusion}}')
5
+ template = Card.new(name: 'A+*right+*structure', content: '[[link]] {{inclusion}}')
6
6
  expect(template.format._render(:closed_content)).to eq(
7
7
  '<a class="cardtype known-card" href="/Basic">Basic</a> : [[link]] {{inclusion}}'
8
8
  )
9
9
  end
10
10
 
11
11
  it "closed_content is rendered as type + raw" do
12
- template = Card.new(:name=>'A+*right+*structure', :type=>'Html', :content=>'[[link]] {{inclusion}}')
12
+ template = Card.new(name: 'A+*right+*structure', type: 'Html', content: '[[link]] {{inclusion}}')
13
13
  expect(template.format._render(:closed_content)).to eq(
14
14
  '<a class="cardtype known-card" href="/HTML">HTML</a> : [[link]] {{inclusion}}'
15
15
  )
16
16
  end
17
17
 
18
+ =begin
18
19
  it 'renders core as raw' do
19
20
  trs = Card.fetch('*type+*right+*structure').format.render_core
20
21
  expect(trs).to eq '{"type":"_left"}'
21
22
  end
23
+ =end
22
24
  end
@@ -5,22 +5,22 @@ require File.expand_path('../../../../../03_machines/spec/lib/shared_machine_exa
5
5
  describe Card::Set::Right::Style do
6
6
  # describe "#delet"
7
7
  # it "should delete tempfile"
8
- #let!(:skin_card) { Card.gimme! "test skin", :type => :skin, :content => '[[test css]]'}
8
+ #let!(:skin_card) { Card.gimme! "test skin", type: :skin, content: '[[test css]]'}
9
9
  let(:css) { "#box { display: block }" }
10
10
  let(:compressed_css) { "#box{display:block}\n" }
11
11
  let(:changed_css) { "#box { display: inline }" }
12
12
  let(:compressed_changed_css) { "#box{display:inline}\n" }
13
13
  let(:new_css) { "#box{ display: none}\n" }
14
- let(:compressed_new_css) { "#box{display:none}\n" }
15
-
14
+ let(:compressed_new_css) { "#box{display:none}\n" }
15
+
16
16
  it_should_behave_like 'pointer machine', that_produces_css do
17
- let(:machine_card) { Card.gimme! "test my style+*style", :type => :pointer, :content => ''}
18
- let(:machine_input_card) { Card.gimme! "test css", :type => :css, :content => css }
19
- let(:another_machine_input_card) { Card.gimme! "more css", :type => :css, :content => new_css }
17
+ let(:machine_card) { Card.gimme! "test my style+*style", type: :pointer, content: ''}
18
+ let(:machine_input_card) { Card.gimme! "test css", type: :css, content: css }
19
+ let(:another_machine_input_card) { Card.gimme! "more css", type: :css, content: new_css }
20
20
  let(:expected_input_items) { nil } #[Card.fetch("test skin"), machine_input_card] }
21
21
  let(:input_type) { :css }
22
22
  let(:card_content) do
23
- { in: css, out: compressed_css,
23
+ { in: css, out: compressed_css,
24
24
  changed_in: changed_css, changed_out: compressed_changed_css,
25
25
  new_in: new_css, new_out: compressed_new_css
26
26
  }
@@ -3,8 +3,8 @@
3
3
  describe Card::Set::Type::Setting do
4
4
  context "core view" do
5
5
  it 'should have a table' do
6
- core = render_card :core, :name=>:help
7
- assert_view_select core, 'table'
6
+ core = render_card :core, name: :help
7
+ assert_view_select core, 'table'
8
8
  end
9
9
  end
10
10
  end
@@ -5,29 +5,29 @@ class Card
5
5
  module FollowOption
6
6
  mattr_reader :test, :follower_candidate_ids
7
7
  @@test, @@follower_candidate_ids = {}, {}
8
-
9
- @@options = { :all=>[], :main=>[], :restrictive=>[] }
10
-
11
- def self.included(host_class)
8
+
9
+ @@options = { all: [], main: [], restrictive: [] }
10
+
11
+ def self.included(host_class)
12
12
  host_class.extend ClassMethods
13
13
  end
14
-
14
+
15
15
  def self.codenames type=:all
16
16
  @@options[type]
17
17
  end
18
-
18
+
19
19
  def self.cards
20
20
  codenames.map { |codename| Card[codename] }
21
21
  end
22
-
22
+
23
23
  def self.restrictive_options
24
24
  self.codenames :restrictive
25
25
  end
26
-
26
+
27
27
  def self.main_options
28
28
  self.codenames :main
29
29
  end
30
-
30
+
31
31
  def restrictive_option?
32
32
  Card::FollowOption.restrictive_options.include? codename
33
33
  end
@@ -37,39 +37,39 @@ class Card
37
37
  end
38
38
 
39
39
  module ClassMethods
40
-
40
+
41
41
  # args:
42
- # :position => <Fixnum> (starting at 1, default: add to end)
42
+ # position: <Fixnum> (starting at 1, default: add to end)
43
43
  def restrictive_follow_opts args
44
44
  add_option args, :restrictive
45
45
  end
46
-
46
+
47
47
  # args:
48
- # :position => <Fixnum> (starting at 1, default: add to end)
48
+ # position: <Fixnum> (starting at 1, default: add to end)
49
49
  def follow_opts args
50
50
  add_option args, :main
51
51
  end
52
-
52
+
53
53
  def follow_test opts={}, &block
54
54
  Card::FollowOption.test[ get_codename(opts) ] = block
55
55
  end
56
-
56
+
57
57
  def follower_candidate_ids opts={}, &block
58
58
  Card::FollowOption.follower_candidate_ids[ get_codename(opts) ] = block
59
59
  end
60
-
60
+
61
61
  private
62
-
62
+
63
63
  def insert_option pos, item, type
64
- if Card::FollowOption.codenames(type)[pos]
64
+ if Card::FollowOption.codenames(type)[pos]
65
65
  Card::FollowOption.codenames(type).insert(pos, item)
66
- else
66
+ else
67
67
  # If pos > codenames.size in a previous insert then we have a bunch of preceding nils in the array.
68
68
  # Hence, we have to overwrite a nil value if we encounter one and can't use insert.
69
69
  Card::FollowOption.codenames(type)[pos] = item
70
70
  end
71
71
  end
72
-
72
+
73
73
  def add_option opts, type, &block
74
74
  codename = get_codename opts
75
75
  if opts[:position]
@@ -79,12 +79,12 @@ class Card
79
79
  end
80
80
  Card::FollowOption.codenames(:all) << codename
81
81
  end
82
-
82
+
83
83
  def get_codename opts
84
84
  opts[:codename] || self.name.match(/::(\w+)$/)[1].underscore.to_sym
85
85
  end
86
-
87
-
88
- end
86
+
87
+
88
+ end
89
89
  end
90
90
  end
@@ -2,19 +2,23 @@ card_accessor :followers
2
2
 
3
3
  FOLLOWER_IDS_CACHE_KEY = 'FOLLOWER_IDS'
4
4
 
5
- event :cache_expired_because_of_new_set, :before=>:store, :on=>:create, :when=>proc { |c| c.type_id == Card::SetID } do
5
+ event :cache_expired_for_new_set, before: :store, on: :create,
6
+ when: proc { |c| c.type_id == Card::SetID } do
6
7
  Card.follow_caches_expired
7
8
  end
8
9
 
9
- event :cache_expired_because_of_type_change, :before=>:store, :changed=>:type_id do #FIXME expire (also?) after save
10
+ event :cache_expired_for_type_change, before: :store, changed: :type_id do
11
+ #FIXME expire (also?) after save
10
12
  Card.follow_caches_expired
11
13
  end
12
14
 
13
- event :cache_expired_because_of_name_change, :before=>:store, :changed=>:name do
15
+ event :cache_expired_for_name_change, before: :store, changed: :name do
14
16
  Card.follow_caches_expired
15
17
  end
16
18
 
17
- event :cache_expired_because_of_new_user_rule, :before=>:extend, :when=>proc { |c| c.follow_rule_card? } do
19
+ event :cache_expired_for_new_user_rule, before: :extend,
20
+ when: proc { |c| c.follow_rule_card? } do
21
+
18
22
  Card.follow_caches_expired
19
23
  end
20
24
 
@@ -22,21 +26,25 @@ format do
22
26
 
23
27
  def follow_link_hash args
24
28
  toggle = args[:toggle] || ( card.followed? ? :off : :on )
25
- hash = { :class => "follow-toggle-#{toggle}" }
29
+ hash = { class: "follow-toggle-#{toggle}" }
30
+ these_emails = "emails about changes to #{card.follow_label}"
26
31
  case toggle
27
32
  when :off
28
33
  hash[:content] = '*never'
29
- hash[:title] = "stop sending emails about changes to #{card.follow_label}"
34
+ hash[:title] = "stop sending #{these_emails}"
30
35
  hash[:verb] = 'unfollow'
31
36
  when :on
32
37
  hash[:content] = '*always'
33
- hash[:title] = "send emails about changes to #{card.follow_label}"
38
+ hash[:title] = "send #{these_emails}"
34
39
  hash[:verb] = 'follow'
35
40
  end
36
- follow_rule_name = card.default_follow_set_card.follow_rule_name( Auth.current.name )
37
- hash[:path] = path :name=>follow_rule_name, :action=>:update,
38
- :success=>{ :layout=>:modal, :view=>:follow_status },
39
- :card=>{ :content=>"[[#{hash[:content]}]]" }
41
+ set_card = card.default_follow_set_card
42
+ hash[:path] = path(
43
+ name: set_card.follow_rule_name( Auth.current.name),
44
+ action: :update,
45
+ success: { layout: :modal, view: :follow_status },
46
+ card: { content: "[[#{hash[:content]}]]" }
47
+ )
40
48
  hash
41
49
  end
42
50
 
@@ -50,14 +58,14 @@ end
50
58
 
51
59
  format :html do
52
60
 
53
- view :follow_link, :tags=>:unknown_ok, :perms=>:none do |args|
61
+ view :follow_link, tags: :unknown_ok, perms: :none do |args|
54
62
  hash = follow_link_hash args
55
63
  text = args[:icon] ? glyphicon('flag') : ''
56
64
  text += %[<span class="follow-verb menu-item-label">#{hash[:verb]}</span>].html_safe
57
- follow_rule_card = Card.fetch(card.default_follow_set_card.follow_rule_name( Auth.current.name ), :new=>{})
65
+ follow_rule_card = Card.fetch(card.default_follow_set_card.follow_rule_name( Auth.current.name ), new: {})
58
66
  opts = ( args[:html_args] || {} ).clone
59
67
  opts.merge!(
60
- :title => hash[:title],
68
+ title: hash[:title],
61
69
  'data-path' => hash[:path],
62
70
  'data-toggle' => 'modal',
63
71
  'data-target' => "#modal-#{card.cardname.safe_key}",
@@ -114,7 +122,7 @@ end
114
122
 
115
123
 
116
124
  def follow_rule_applies? follower_id
117
- follow_rule = rule :follow, :user_id=>follower_id
125
+ follow_rule = rule :follow, user_id: follower_id
118
126
  if follow_rule.present?
119
127
  follow_rule.split("\n").each do |value|
120
128
 
@@ -210,7 +218,7 @@ def all_direct_follower_ids_with_reason
210
218
  set_card.all_user_ids_with_rule_for(:follow).each do |user_id|
211
219
  if (!visited.include?(user_id)) && (follow_option = self.follow_rule_applies?(user_id))
212
220
  visited << user_id
213
- yield(user_id, :set_card=>set_card, :option=>follow_option)
221
+ yield(user_id, set_card: set_card, option: follow_option)
214
222
  end
215
223
  end
216
224
  end
@@ -11,16 +11,16 @@ class FollowerStash
11
11
  if !@visited.include? card.key
12
12
  @visited.add card.key
13
13
  card.all_direct_follower_ids_with_reason do |user_id, reason|
14
- notify Card.fetch(user_id), :of=>reason
14
+ notify Card.fetch(user_id), of: reason
15
15
  end
16
16
  if card.left and !@visited.include?(card.left.name) and follow_field_rule = card.left.rule_card(:follow_fields)
17
17
 
18
- follow_field_rule.item_names(:context=>card.left.cardname).each do |item|
18
+ follow_field_rule.item_names(context: card.left.cardname).each do |item|
19
19
  if @visited.include? item.to_name.key
20
20
  add_affected_card card.left
21
21
  break
22
22
  elsif item.to_name.key == Card[:includes].key
23
- includee_set = Card.search(:included_by=>card.left.name).map(&:key)
23
+ includee_set = Card.search(included_by: card.left.name).map(&:key)
24
24
  if !@visited.intersection(includee_set).empty?
25
25
  add_affected_card card.left
26
26
  break
@@ -66,19 +66,19 @@ def notable_change?
66
66
  !silent_change && !supercard && current_act && Card::Auth.current_id != WagnBotID && followable?
67
67
  end
68
68
 
69
- event :notify_followers_after_save, :after=>:subsequent, :on=>:save, :when=>proc{ |ca| ca.notable_change? } do
69
+ event :notify_followers_after_save, after: :subsequent, on: :save, when: proc{ |ca| ca.notable_change? } do
70
70
  notify_followers
71
71
  end
72
72
 
73
73
  # in the delete case we have to calculate the follower_stash beforehand
74
74
  # but we can't pass the follower_stash through the ActiveJob queue.
75
75
  # We have to deal with the notifications in the extend phase instead of the subsequent phase
76
- event :stash_followers, :after=>:approve, :on=>:delete do
76
+ event :stash_followers, after: :approve, on: :delete do
77
77
  act_card.follower_stash ||= FollowerStash.new
78
78
  act_card.follower_stash.add_affected_card self
79
79
  end
80
- event :notify_followers_after_delete, :after=>:extend, :on=>:delete,
81
- :when=>proc{ |ca| ca.notable_change? } do
80
+ event :notify_followers_after_delete, after: :extend, on: :delete,
81
+ when: proc{ |ca| ca.notable_change? } do
82
82
  notify_followers
83
83
  end
84
84
 
@@ -102,7 +102,7 @@ def notify_followers
102
102
  end
103
103
 
104
104
  format do
105
- view :list_of_changes, :denial=>:blank do |args|
105
+ view :list_of_changes, denial: :blank do |args|
106
106
  action = get_action(args)
107
107
 
108
108
  relevant_fields = case action.action_type
@@ -117,10 +117,11 @@ format do
117
117
  end
118
118
 
119
119
 
120
- view :subedits, :perms=>:none do |args|
121
- subedits = get_act(args).relevant_actions_for(card).map do |action|
120
+ view :subedits, perms: :none do |args|
121
+ subedits =
122
+ get_act(args).relevant_actions_for(card).map do |action|
122
123
  if action.card_id != card.id
123
- action.card.format(:format=>@format).render_subedit_notice(:action=>action)
124
+ action.card.format(format: @format).render_subedit_notice(action: action)
124
125
  end
125
126
  end.compact.join
126
127
 
@@ -131,7 +132,7 @@ format do
131
132
  end
132
133
  end
133
134
 
134
- view :subedit_notice, :denial=>:blank do |args|
135
+ view :subedit_notice, denial: :blank do |args|
135
136
  action = get_action(args)
136
137
  name_before_action = (action.new_values[:name] && action.old_values[:name]) || card.name
137
138
 
@@ -139,7 +140,7 @@ format do
139
140
  #{ render_list_of_changes(args) }}
140
141
  end
141
142
 
142
- view :followed, :perms=>:none, :closed=>true do |args|
143
+ view :followed, perms: :none, closed: true do |args|
143
144
  if args[:followed_set] && (set_card = Card.fetch(args[:followed_set])) &&
144
145
  args[:follow_option] && (option_card = Card.fetch(args[:follow_option]))
145
146
  option_card.description set_card
@@ -148,15 +149,15 @@ format do
148
149
  end
149
150
  end
150
151
 
151
- view :follower, :perms=>:none, :closed=>true do |args|
152
+ view :follower, perms: :none, closed: true do |args|
152
153
  args[:follower] || 'follower'
153
154
  end
154
155
 
155
- view :unfollow_url, :perms=>:none, :closed=>true do |args|
156
+ view :unfollow_url, perms: :none, closed: true do |args|
156
157
  if args[:followed_set] && (set_card = Card.fetch(args[:followed_set])) && args[:follow_option] && args[:follower]
157
158
  rule_name = set_card.follow_rule_name args[:follower]
158
159
  target_name = "#{args[:follower]}+#{Card[:follow].name}"
159
- update_path = page_path target_name, :action=>:update, :card=>{:subcards=>{rule_name=>Card[:never].name}}
160
+ update_path = page_path target_name, action: :update, card: {subcards: {rule_name=>Card[:never].name}}
160
161
  card_url update_path # absolutize path
161
162
  end
162
163
  end
@@ -171,11 +172,12 @@ format do
171
172
  end
172
173
  item_title += "#{field}: "
173
174
 
174
- item_value = if action.action_type == :delete
175
- action.old_values[field]
176
- else
177
- action.new_values[field]
178
- end
175
+ item_value =
176
+ if action.action_type == :delete
177
+ action.old_values[field]
178
+ else
179
+ action.new_values[field]
180
+ end
179
181
 
180
182
  wrap_list_item "#{item_title}#{item_value}"
181
183
  end
@@ -208,14 +210,14 @@ end
208
210
 
209
211
 
210
212
  format :email_text do
211
- view :last_action, :perms=>:none do |args|
213
+ view :last_action, perms: :none do |args|
212
214
  act = get_act(args)
213
215
  "#{act.main_action.action_type}d"
214
216
  end
215
217
  end
216
218
 
217
219
  format :email_html do
218
- view :last_action, :perms=>:none do |args|
220
+ view :last_action, perms: :none do |args|
219
221
  act = get_act(args)
220
222
  "#{act.main_action.action_type}d"
221
223
  end
@@ -7,8 +7,8 @@ end
7
7
 
8
8
  def email_templates_for setting
9
9
 
10
- if email_templates = @email_template_cache ||
11
- ( event_card = self.rule_card(setting) and event_card.extended_item_cards )
10
+ if (email_templates = @email_template_cache ||
11
+ ((event_card = self.rule_card(setting)) && event_card.extended_item_cards))
12
12
  email_templates.each do |mailcard|
13
13
  yield(mailcard)
14
14
  end
@@ -16,12 +16,12 @@ def email_templates_for setting
16
16
  end
17
17
 
18
18
  [:create, :update, :delete].each do |action|
19
- event "observer_#{action}".to_sym, :after=>:extend, :on=>action do
20
- self.send_action_mails :on=>action
19
+ event "observer_#{action}".to_sym, after: :extend, on: action do
20
+ self.send_action_mails on: action
21
21
  end
22
22
  end
23
23
 
24
- event :cache_delete_email_templates, :after=>:approve, :on=>:delete do
24
+ event :cache_delete_email_templates, after: :approve, on: :delete do
25
25
  event_card = self.rule_card(:on_delete)
26
26
  @email_template_cache = event_card && event_card.extended_item_cards
27
27
  end