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
@@ -33,7 +33,7 @@ format :html do
33
33
  }
34
34
  div =
35
35
  content_tag :div, output(yield).html_safe,
36
- :id=>card.cardname.url_key, :data=>data, :style=>h(args[:style]), :class=>classes
36
+ id: card.cardname.url_key, data: data, style: h(args[:style]), class: classes
37
37
 
38
38
  if params[:debug] == 'slot' && !tagged( @current_view, :no_wrap_comments )
39
39
  name = h card.name
@@ -48,13 +48,13 @@ format :html do
48
48
  css_classes = [ 'card-body' ]
49
49
  css_classes << args[:body_class] if args[:body_class]
50
50
  css_classes += [ 'card-content', card.safe_set_keys ] if args[:content]
51
- content_tag :div, :class=>css_classes.compact*' ' do
51
+ content_tag :div, class: css_classes.compact*' ' do
52
52
  yield args
53
53
  end
54
54
  end
55
55
 
56
56
  def panel args={}
57
- wrap_with :div, :class=>"card-frame #{args[:panel_class]}" do
57
+ wrap_with :div, class: "card-frame #{args[:panel_class]}" do
58
58
  output(yield)
59
59
  end
60
60
  end
@@ -64,7 +64,7 @@ format :html do
64
64
  args.delete(:panel_class)
65
65
  subframe args, &block
66
66
  else
67
- show_subheader = show_view?(:toolbar, args.merge(:default_visibility=>:hide)) && @current_view != :related && @current_view != :open
67
+ show_subheader = show_view?(:toolbar, args.merge(default_visibility: :hide)) && @current_view != :related && @current_view != :open
68
68
  wrap args do
69
69
  [
70
70
  _optional_render( :menu, args ),
@@ -72,7 +72,7 @@ format :html do
72
72
  [
73
73
  _optional_render( :header, args, :show),
74
74
  _optional_render( :subheader, args,(show_subheader ? :show : :hide)),
75
- _optional_render( :help, args.merge(:help_class=>'alert alert-info'), :hide),
75
+ _optional_render( :help, args.merge(help_class: 'alert alert-info'), :hide),
76
76
  wrap_body(args) { output( block.call(args) ) } ,
77
77
  ]
78
78
  end
@@ -84,9 +84,9 @@ format :html do
84
84
  def subframe args={}
85
85
  wrap args do
86
86
  [
87
- _optional_render( :menu, args.merge(:optional_horizontal_menu=>:hide) ),
87
+ _optional_render( :menu, args.merge(optional_horizontal_menu: :hide) ),
88
88
  _optional_render( :subheader, args, :show),
89
- _optional_render( :help, args.merge(:help_class=>'alert alert-info'), :hide),
89
+ _optional_render( :help, args.merge(help_class: 'alert alert-info'), :hide),
90
90
  panel(args) do
91
91
  [
92
92
  _optional_render( :header, args, :hide),
@@ -118,7 +118,7 @@ format :html do
118
118
  <span aria-hidden="true">&times;</span>
119
119
  </button>
120
120
  } : ''
121
- content_tag :div, :class=>css_class, :role=>'alert' do
121
+ content_tag :div, class: css_class, role: 'alert' do
122
122
  close_button + output( yield args)
123
123
  end
124
124
  end
@@ -58,39 +58,39 @@ format :html do
58
58
  end
59
59
 
60
60
 
61
- event :validate_accountability, :on=>:create, :before=>:approve do
61
+ event :validate_accountability, on: :create, before: :approve do
62
62
  unless left and left.accountable?
63
63
  errors.add :content, "not allowed on this card"
64
64
  end
65
65
  end
66
66
 
67
- event :require_email, :on=>:create, :after=>:approve do
67
+ event :require_email, on: :create, after: :approve do
68
68
  unless subcards["+#{Card[:email].name}"]
69
69
  errors.add :email, 'required'
70
70
  end
71
71
  end
72
72
 
73
73
 
74
- event :set_default_salt, :on=>:create, :before=>:process_subcards do
74
+ event :set_default_salt, on: :create, before: :process_subcards do
75
75
  salt = Digest::SHA1.hexdigest "--#{Time.now.to_s}--"
76
76
  Env[:salt] = salt # HACK!!! need viable mechanism to get this to password
77
- subcards["+#{Card[:salt].name}"] ||= { :content => salt }
77
+ subcards["+#{Card[:salt].name}"] ||= { content: salt }
78
78
  end
79
79
 
80
- event :set_default_status, :on=>:create, :before=>:process_subcards do
80
+ event :set_default_status, on: :create, before: :process_subcards do
81
81
  default_status = ( Auth.needs_setup? ? 'active' : 'pending' )
82
- subcards["+#{Card[:status].name}"] = { :content => default_status }
82
+ subcards["+#{Card[:status].name}"] = { content: default_status }
83
83
  end
84
84
 
85
85
  def confirm_ok?
86
- Card.new( :type_id=>Card.default_accounted_type_id ).ok? :create
86
+ Card.new( type_id: Card.default_accounted_type_id ).ok? :create
87
87
  end
88
88
 
89
- event :generate_confirmation_token, :on=>:create, :before=>:process_subcards, :when=>proc{ |c| c.confirm_ok? } do
90
- subcards["+#{Card[:token].name}"] = {:content => generate_token }
89
+ event :generate_confirmation_token, on: :create, before: :process_subcards, when: proc{ |c| c.confirm_ok? } do
90
+ subcards["+#{Card[:token].name}"] = {content: generate_token }
91
91
  end
92
92
 
93
- event :reset_password, :on=>:update, :before=>:approve, :when=>proc{ |c| c.has_reset_token? } do
93
+ event :reset_password, on: :update, before: :approve, when: proc{ |c| c.has_reset_token? } do
94
94
  case ( result = authenticate_by_token @env_token )
95
95
  when Integer
96
96
  Auth.signin result
@@ -99,9 +99,9 @@ event :reset_password, :on=>:update, :before=>:approve, :when=>proc{ |c| c.has_r
99
99
  when :token_expired
100
100
  send_reset_password_token
101
101
  success << {
102
- :id => '_self',
103
- :view => 'message',
104
- :message => "Sorry, this token has expired. Please check your email for a new password reset link."
102
+ id: '_self',
103
+ view: 'message',
104
+ message: "Sorry, this token has expired. Please check your email for a new password reset link."
105
105
  }
106
106
  abort :success
107
107
  else
@@ -111,9 +111,9 @@ end
111
111
 
112
112
  def edit_password_success_args
113
113
  {
114
- :id=>left.name,
115
- :view=>:related,
116
- :related=>{ :name=>"+#{Card[:account].name}", :view=>'edit' }
114
+ id: left.name,
115
+ view: :related,
116
+ related: { name: "+#{Card[:account].name}", view: 'edit' }
117
117
  }
118
118
  end
119
119
 
@@ -123,26 +123,26 @@ end
123
123
 
124
124
  event :reset_token do
125
125
  Auth.as_bot do
126
- token_card.update_attributes! :content => generate_token
126
+ token_card.update_attributes! content: generate_token
127
127
  end
128
128
  end
129
129
 
130
130
 
131
131
  event :send_welcome_email do
132
132
  if ((welcome = Card['welcome email']) && welcome.type_code == :email_template)
133
- welcome.deliver(:context=>left, :to=>self.email)
133
+ welcome.deliver(context: left, to: self.email)
134
134
  end
135
135
  end
136
136
 
137
- event :send_account_verification_email, :on=>:create, :after=>:extend, :when=>proc{ |c| c.token.present? } do
138
- Card[:verification_email].deliver( :context => self, :to => self.email )
137
+ event :send_account_verification_email, on: :create, after: :extend, when: proc{ |c| c.token.present? } do
138
+ Card[:verification_email].deliver( context: self, to: self.email )
139
139
  end
140
140
 
141
141
  event :send_reset_password_token do
142
142
  Auth.as_bot do
143
- token_card.update_attributes! :content => generate_token
143
+ token_card.update_attributes! content: generate_token
144
144
  end
145
- Card[:password_reset_email].deliver( :context => self, :to => self.email )
145
+ Card[:password_reset_email].deliver( context: self, to: self.email )
146
146
  end
147
147
 
148
148
  def ok_to_read
@@ -161,11 +161,11 @@ def send_change_notice act, followed_set, follow_option
161
161
  if changes_visible?(act)
162
162
  Auth.as(left.id) do
163
163
  Card[:follower_notification_email].deliver(
164
- :context => act.card,
165
- :to => email,
166
- :follower => left.name,
167
- :followed_set => followed_set,
168
- :follow_option => follow_option
164
+ context: act.card,
165
+ to: email,
166
+ follower: left.name,
167
+ followed_set: followed_set,
168
+ follow_option: follow_option
169
169
  )
170
170
  end
171
171
  end
@@ -11,17 +11,17 @@ end
11
11
 
12
12
  view :core, :raw
13
13
 
14
- event :validate_email, :after=>:approve, :on=>:save do
14
+ event :validate_email, after: :approve, on: :save do
15
15
  if content.present? && content !~ /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
16
16
  errors.add :content, 'must be valid address'
17
17
  end
18
18
  end
19
19
 
20
- event :validate_unique_email, :after=>:validate_email, :on=>:save do
20
+ event :validate_unique_email, after: :validate_email, on: :save do
21
21
  if content.present?
22
22
  Auth.as_bot do
23
- wql = { :right_id=>Card::EmailID, :eq=>content }
24
- wql[:not] = { :id => id } if id
23
+ wql = { right_id: Card::EmailID, eq: content }
24
+ wql[:not] = { id: id } if id
25
25
  if Card.search( wql ).first
26
26
  errors.add :content, 'must be unique'
27
27
  end
@@ -29,7 +29,7 @@ event :validate_unique_email, :after=>:validate_email, :on=>:save do
29
29
  end
30
30
  end
31
31
 
32
- event :downcase_email, :before=>:approve, :on=>:save do
32
+ event :downcase_email, before: :approve, on: :save do
33
33
  if content and content != content.downcase
34
34
  self.content = content.downcase
35
35
  end
@@ -4,15 +4,15 @@ include All::Permissions::Accounts
4
4
  view :editor do |args|
5
5
  card.content = ''
6
6
  autocomplete = (@parent && @parent.card.name=='*signin+*account') ? 'on' : 'off' #hack
7
- password_field :content, :class=>'card-content', :autocomplete=>autocomplete
7
+ password_field :content, class: 'card-content', autocomplete: autocomplete
8
8
  end
9
9
 
10
10
  view :raw do |args|
11
11
  '<em>encrypted</em>'
12
12
  end
13
13
 
14
- event :encrypt_password, :on=>:save, :after=>:process_subcards, :changed=>:content,
15
- :when => proc{ |c| !Card::Env[:no_password_encryptions] } do
14
+ event :encrypt_password, on: :save, after: :process_subcards, changed: :content,
15
+ when: proc{ |c| !Card::Env[:no_password_encryptions] } do
16
16
  # no_password_encryptions = hack for import - fix with api for ignoring events
17
17
 
18
18
  salt = (left && left.salt)
@@ -23,13 +23,13 @@ event :encrypt_password, :on=>:save, :after=>:process_subcards, :changed=>:conte
23
23
  # turns out we have a lot of existing account without a salt. not sure when that broke??
24
24
  end
25
25
 
26
- event :validate_password, :on=>:save, :before=>:approve do
26
+ event :validate_password, on: :save, before: :approve do
27
27
  unless content.length > 3
28
28
  errors.add :password, 'must be at least 4 characters'
29
29
  end
30
30
  end
31
31
 
32
- event :validate_password_present, :on=>:update, :before=>:approve do
32
+ event :validate_password_present, on: :update, before: :approve do
33
33
  abort :success if content.blank?
34
34
  end
35
35
 
@@ -1,4 +1,4 @@
1
- event :save_recently_edited_settings, :before=>:extend, :on=>:save, :when=>proc{|c| c.is_rule? } do
1
+ event :save_recently_edited_settings, before: :extend, on: :save, when: proc{|c| c.is_rule? } do
2
2
  if (recent = Card[:recent_settings])
3
3
  recent.insert_item 0, cardname.right
4
4
  recent.save
@@ -7,19 +7,19 @@ end
7
7
 
8
8
  format :html do
9
9
 
10
- view :closed_rule, :tags=>:unknown_ok do |args|
10
+ view :closed_rule, tags: :unknown_ok do |args|
11
11
  return 'not a rule' if !card.is_rule? #these are helpful for handling non-rule rstar cards until we have real rule sets
12
12
 
13
13
  rule_card = find_current_rule_card
14
14
 
15
15
  rule_content = !rule_card ? '' : begin
16
- subformat(rule_card)._render_closed_content :set_context=>card.cardname.trunk_name
16
+ subformat(rule_card)._render_closed_content set_context: card.cardname.trunk_name
17
17
  end
18
18
 
19
19
  cells = [
20
20
  ["rule-setting",
21
- link_to( card.cardname.tag.sub(/^\*/,''), path(:view=>:open_rule),
22
- :class => 'edit-rule-link slotter', :remote => true, :rel=>'nofollow' )
21
+ link_to( card.cardname.tag.sub(/^\*/,''), path(view: :open_rule),
22
+ class: 'edit-rule-link slotter', remote: true, rel: 'nofollow' )
23
23
  ],
24
24
  ["rule-content",
25
25
  %{<div class="rule-content-container">
@@ -38,7 +38,7 @@ format :html do
38
38
  end
39
39
 
40
40
 
41
- view :open_rule, :tags=>:unknown_ok do |args|
41
+ view :open_rule, tags: :unknown_ok do |args|
42
42
  return 'not a rule' if !card.is_rule?
43
43
  current_rule = args[:current_rule]
44
44
  setting_name = args[:setting_name]
@@ -57,8 +57,8 @@ format :html do
57
57
  end
58
58
 
59
59
  opts = {
60
- :rule_context => card, # determines the set options and the success view
61
- :set_context => card.rule_set_name,
60
+ rule_context: card, # determines the set options and the success view
61
+ set_context: card.rule_set_name,
62
62
  }
63
63
  rule_view = edit_mode ? :edit_rule : :show_rule
64
64
 
@@ -66,8 +66,8 @@ format :html do
66
66
  <tr class="card-slot open-rule #{rule_view.to_s.sub '_', '-'}">
67
67
  <td class="rule-cell" colspan="3">
68
68
  <div class="rule-setting">
69
- #{ view_link setting_name.sub(/^\*/,''), :closed_rule, :class=>'close-rule-link slotter' }
70
- #{ card_link setting_name, :text=>"all #{setting_name} rules", :class=>'setting-link', :target=>'wagn_setting' }
69
+ #{ view_link setting_name.sub(/^\*/,''), :closed_rule, class: 'close-rule-link slotter' }
70
+ #{ card_link setting_name, text: "all #{setting_name} rules", class: 'setting-link', target: 'wagn_setting' }
71
71
  </div>
72
72
 
73
73
  <div class="alert alert-info rule-instruction">
@@ -84,13 +84,13 @@ format :html do
84
84
 
85
85
  def default_open_rule_args args
86
86
  current_rule_card = find_current_rule_card || begin
87
- Card.new :name=> "#{Card[:all].name}+#{card.rule_user_setting_name}"
87
+ Card.new name: "#{Card[:all].name}+#{card.rule_user_setting_name}"
88
88
  end
89
89
 
90
- args.reverse_merge! :current_rule => current_rule_card, :setting_name => card.rule_setting_name
90
+ args.reverse_merge! current_rule: current_rule_card, setting_name: card.rule_setting_name
91
91
  end
92
92
 
93
- view :show_rule, :tags=>:unknown_ok do |args|
93
+ view :show_rule, tags: :unknown_ok do |args|
94
94
  return 'not a rule' if !card.is_rule?
95
95
 
96
96
  if !card.new_card?
@@ -98,7 +98,7 @@ format :html do
98
98
  args[:item] ||= :link
99
99
  %{
100
100
  <div class="rule-set">
101
- <label>Applies to</label> #{ card_link set.cardname, :text=>set.label }:
101
+ <label>Applies to</label> #{ card_link set.cardname, text: set.label }:
102
102
  </div>
103
103
  #{ _render_core args }
104
104
  }
@@ -107,10 +107,10 @@ format :html do
107
107
  end
108
108
  end
109
109
 
110
- view :edit_rule, :tags=>:unknown_ok do |args|
110
+ view :edit_rule, tags: :unknown_ok do |args|
111
111
  return 'not a rule' if !card.is_rule?
112
- form_args = { :url=>path(:action=>:update, :no_id=>true),
113
- :html=> {:class=>"card-form card-rule-form" } }
112
+ form_args = { url: path(action: :update, no_id: true),
113
+ html: {class: "card-form card-rule-form" } }
114
114
  if args[:remote]
115
115
  form_args[:remote] = true
116
116
  form_args[:html][:class] += ' slotter'
@@ -126,7 +126,7 @@ format :html do
126
126
  end
127
127
  end
128
128
 
129
- view :related_edit_rule, :view=>:edit_rule
129
+ view :related_edit_rule, view: :edit_rule
130
130
 
131
131
  def default_edit_rule_args args
132
132
  args[:remote] ||= true
@@ -137,40 +137,40 @@ format :html do
137
137
 
138
138
  args[:success] ||= {}
139
139
  args[:success].reverse_merge!( {
140
- :card => args[:rule_context],
141
- :id => args[:rule_context].cardname.url_key,
142
- :view => 'open_rule',
143
- :item => 'view_rule'
140
+ card: args[:rule_context],
141
+ id: args[:rule_context].cardname.url_key,
142
+ view: 'open_rule',
143
+ item: 'view_rule'
144
144
  })
145
145
 
146
146
  args[:delete_button] ||= delete_button args
147
147
  args[:cancel_button] ||=
148
148
  begin
149
- cancel_path = path :view=>( card.new_card? ? :closed_rule : :open_rule ), :success=>false
150
- button_tag( 'Cancel', :class=>'rule-cancel-button slotter', :type=>'button',
151
- :href=>cancel_path )
149
+ cancel_path = path view: ( card.new_card? ? :closed_rule : :open_rule ), success: false
150
+ button_tag( 'Cancel', class: 'rule-cancel-button slotter', type: 'button',
151
+ href: cancel_path )
152
152
  end
153
153
  end
154
154
 
155
155
  def default_related_edit_rule_args args
156
156
  args[:remote] ||= false
157
157
  args[:success] ||= {
158
- :card => args[:parent] || card,
159
- :id => (args[:parent] && args[:parent].cardname.url_key) || card.cardname.url_key,
160
- :view => :open,
161
- :item => nil
158
+ card: args[:parent] || card,
159
+ id: (args[:parent] && args[:parent].cardname.url_key) || card.cardname.url_key,
160
+ view: :open,
161
+ item: nil
162
162
  }
163
163
  default_edit_rule_args args
164
164
  args[:delete_button] = delete_button args, '.card-slot.related-view'
165
- args[:cancel_button] = card_link( args[:success][:id], :text=>'Cancel',
166
- :class=>'rule-cancel-button btn btn-default', :path_opts=>{:view=>args[:success][:view]} )
165
+ args[:cancel_button] = card_link( args[:success][:id], text: 'Cancel',
166
+ class: 'rule-cancel-button btn btn-default', path_opts: {view: args[:success][:view]} )
167
167
  end
168
168
 
169
169
  def delete_button args, slot_selector=nil
170
170
  if !card.new_card?
171
- b_args = { :remote=>true, :class=>'rule-delete-button slotter', :type=>'button' }
171
+ b_args = { remote: true, class: 'rule-delete-button slotter', type: 'button' }
172
172
  b_args['data-slot-selector'] = slot_selector if slot_selector
173
- b_args[:href] = path :action=>:delete, :success=>args[:success]
173
+ b_args[:href] = path action: :delete, success: args[:success]
174
174
  if (fset = args[:fallback_set]) && (fcard = Card.fetch(fset))
175
175
  b_args['data-confirm']="Deleting will revert to #{card.rule_setting_name} rule for #{fcard.label }"
176
176
  end
@@ -181,10 +181,10 @@ format :html do
181
181
  # used keys for args:
182
182
  # :success, :set_selected, :set_options, :rule_context
183
183
  def editor args
184
- wrap_with( :div, :class=>'card-editor' ) do
184
+ wrap_with( :div, class: 'card-editor' ) do
185
185
  [
186
186
  (type_formgroup( args ) if card.right.rule_type_editable),
187
- formgroup( 'rule', content_field( form, args.merge(:skip_rev_id=>true) ), :editor=>'content' ),
187
+ formgroup( 'rule', content_field( form, args.merge(skip_rev_id: true) ), editor: 'content' ),
188
188
  set_selection( args )
189
189
  ]
190
190
  end
@@ -193,10 +193,10 @@ format :html do
193
193
 
194
194
  def type_formgroup args
195
195
  formgroup 'type', type_field(
196
- :href => path(:name=>args[:success][:card].name, :view=>args[:success][:view], :type_reload=>true),
197
- :class => 'type-field rule-type-field live-type-field',
196
+ href: path(name: args[:success][:card].name, view: args[:success][:view], type_reload: true),
197
+ class: 'type-field rule-type-field live-type-field',
198
198
  'data-remote' => true
199
- ), :editor=>'type'
199
+ ), editor: 'type'
200
200
  end
201
201
 
202
202
 
@@ -209,7 +209,7 @@ format :html do
209
209
  end
210
210
 
211
211
  def set_selection args
212
- wrap_with( :div, :class=>'row') do
212
+ wrap_with( :div, class: 'row') do
213
213
  [
214
214
  set_formgroup( args ),
215
215
  related_set_formgroup( args)
@@ -222,7 +222,7 @@ format :html do
222
222
  tag = args[:rule_context].rule_user_setting_name
223
223
  narrower_rules = []
224
224
  option_list =
225
- wrap_each_with :li, :class=>'radio' do
225
+ wrap_each_with :li, class: 'radio' do
226
226
  args[:set_options].map do |set_name, state|
227
227
 
228
228
  checked = ( args[:set_selected] == set_name or current_set_key && args[:set_options].length==1 )
@@ -237,17 +237,17 @@ format :html do
237
237
  narrower_rules.last[0] = narrower_rules.last[0].downcase
238
238
  end
239
239
  rule_name = "#{set_name}+#{tag}"
240
- radio_button( :name, rule_name, :checked=>checked, :warning=>warning ) + %{
240
+ radio_button( :name, rule_name, checked: checked, warning: warning ) + %{
241
241
  <label class="set-label" #{'current-set-label' if is_current }>
242
- #{ card_link set_name, :text=> Card.fetch(set_name).label, :target=>'wagn_set' }
242
+ #{ card_link set_name, text: Card.fetch(set_name).label, target: 'wagn_set' }
243
243
  #{'<em>(current)</em>' if is_current }
244
- #{"<em> #{card_link "#{set_name}+#{card.rule_user_setting_name}", :text=>"(overwritten)"}</em>" if state == :overwritten }
244
+ #{"<em> #{card_link "#{set_name}+#{card.rule_user_setting_name}", text: "(overwritten)"}</em>" if state == :overwritten }
245
245
  </label>
246
246
  }.html_safe
247
247
  end
248
248
 
249
249
  end
250
- formgroup 'set', "<ul>#{ option_list }</ul>", :editor => 'set', :class=>'col-xs-6'
250
+ formgroup 'set', "<ul>#{ option_list }</ul>", editor: 'set', class: 'col-xs-6'
251
251
  end
252
252
 
253
253
  def related_set_formgroup args
@@ -255,26 +255,26 @@ format :html do
255
255
  return '' unless related_sets && related_sets.size > 0
256
256
  tag = args[:rule_context].rule_user_setting_name
257
257
  option_list =
258
- wrap_each_with :li, :class=>'radio' do
258
+ wrap_each_with :li, class: 'radio' do
259
259
  related_sets.map do |set_name, label|
260
260
  rule_name = "#{set_name}+#{tag}"
261
- rule_card = Card.fetch rule_name, :skip_modules=>true
261
+ rule_card = Card.fetch rule_name, skip_modules: true
262
262
  radio_button( :name, rule_name) + %{
263
263
  <label class="set-label">
264
- #{ card_link set_name, :text=>label, :target=>'wagn_set' }
265
- #{"<em> #{card_link "#{set_name}+#{card.rule_user_setting_name}", :text=>"(exists)"}</em>" if rule_card}
264
+ #{ card_link set_name, text: label, target: 'wagn_set' }
265
+ #{"<em> #{card_link "#{set_name}+#{card.rule_user_setting_name}", text: "(exists)"}</em>" if rule_card}
266
266
  </label>
267
267
  }.html_safe
268
268
  end
269
269
  end
270
- formgroup 'related set', "<ul>#{ option_list }</ul>", :editor => 'set', :class=>'col-xs-6'
270
+ formgroup 'related set', "<ul>#{ option_list }</ul>", editor: 'set', class: 'col-xs-6'
271
271
  end
272
272
 
273
273
  def edit_buttons args
274
- wrap_with( :div, :class=>'button-area' ) do
274
+ wrap_with( :div, class: 'button-area' ) do
275
275
  [
276
276
  args[:delete_button],
277
- button_tag( 'Submit', :class=>'rule-submit-button', :situation=>'primary' ),
277
+ button_tag( 'Submit', class: 'rule-submit-button', situation: 'primary' ),
278
278
  args[:cancel_button]
279
279
  ]
280
280
  end
@@ -304,7 +304,7 @@ format :html do
304
304
  # and returns that member's ACTUAL rule for the POTENTIAL rule's setting
305
305
  if card.new_card?
306
306
  if setting = card.right
307
- card.set_prototype.rule_card setting.codename, :user=>card.rule_user
307
+ card.set_prototype.rule_card setting.codename, user: card.rule_user
308
308
  end
309
309
  else
310
310
  card