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
@@ -15,7 +15,7 @@ module Card::SpecHelper
15
15
 
16
16
  def newcard name, content=""
17
17
  #FIXME - misleading name; sounds like it doesn't save.
18
- Card.create! :name=>name, :content=>content
18
+ Card.create! name: name, content: content
19
19
  end
20
20
 
21
21
  def assert_view_select(view_html, *args, &block)
@@ -44,7 +44,7 @@ module Card::SpecHelper
44
44
  end
45
45
 
46
46
  def render_editor(type)
47
- card = Card.create(:name=>"my favority #{type} + #{rand(4)}", :type=>type)
47
+ card = Card.create(name: "my favority #{type} + #{rand(4)}", type: type)
48
48
  card.format.render(:edit)
49
49
  end
50
50
 
@@ -53,7 +53,7 @@ module Card::SpecHelper
53
53
  end
54
54
 
55
55
  def render_content_with_args content, format_args={}, view_args={}
56
- @card ||= Card.new :name=>"Tempo Rary 2"
56
+ @card ||= Card.new name: "Tempo Rary 2"
57
57
  @card.content = content
58
58
  @card.format(format_args)._render :core, view_args
59
59
  end
@@ -65,9 +65,9 @@ module Card::SpecHelper
65
65
  def render_card_with_args view, card_args={}, format_args={}, view_args={}
66
66
  card = begin
67
67
  if card_args[:name]
68
- Card.fetch card_args[:name], :new=>card_args
68
+ Card.fetch card_args[:name], new: card_args
69
69
  else
70
- Card.new card_args.merge( :name=> 'Tempo Rary' )
70
+ Card.new card_args.merge( name: 'Tempo Rary' )
71
71
  end
72
72
  end
73
73
  card.format(format_args)._render(view, view_args)
data/lib/card/success.rb CHANGED
@@ -81,7 +81,7 @@ class Card
81
81
  elsif @id
82
82
  Card.find @id
83
83
  elsif @name
84
- Card.fetch @name.to_name.to_absolute(name_context), :new=>@new_args
84
+ Card.fetch @name.to_name.to_absolute(name_context), new: @new_args
85
85
  end
86
86
  end
87
87
 
data/lib/cardio.rb CHANGED
@@ -8,7 +8,7 @@ module Cardio
8
8
  CARD_GEM_ROOT = File.expand_path('../..', __FILE__)
9
9
 
10
10
  ActiveSupport.on_load :card do
11
- if Card.count > 0
11
+ if Card.take
12
12
  Card::Loader.load_mods
13
13
  else
14
14
  Rails.logger.warn "empty database"
@@ -65,18 +65,18 @@ module Cardio
65
65
 
66
66
  def set_paths paths
67
67
  @@paths = paths
68
- add_path 'tmp/set', :root => root
69
- add_path 'tmp/set_pattern', :root => root
68
+ add_path 'tmp/set', root: root
69
+ add_path 'tmp/set_pattern', root: root
70
70
 
71
71
  add_path 'mod'
72
72
 
73
73
  add_path "db"
74
74
  add_path 'db/migrate'
75
75
  add_path "db/migrate_core_cards"
76
- add_path "db/migrate_deck_cards", :root => root, :with => 'db/migrate_cards'
77
- add_path "db/seeds", :with => "db/seeds.rb"
76
+ add_path "db/migrate_deck_cards", root: root, with: 'db/migrate_cards'
77
+ add_path "db/seeds", with: "db/seeds.rb"
78
78
 
79
- add_path 'config/initializers', :glob => '**/*.rb'
79
+ add_path 'config/initializers', glob: '**/*.rb'
80
80
 
81
81
  end
82
82
 
@@ -141,7 +141,7 @@ module Cardio
141
141
  def delete_tmp_files id=nil
142
142
  dir = Cardio.paths['files'].existent.first + '/tmp'
143
143
  dir += "/#{id}" if id
144
- FileUtils.rm_rf dir, :secure=>true
144
+ FileUtils.rm_rf dir, secure: true
145
145
  rescue
146
146
  Rails.logger.info "failed to remove tmp files"
147
147
  end
@@ -7,9 +7,9 @@ class Card
7
7
  class FormatGenerator < NamedBase
8
8
  source_root File.expand_path('../templates', __FILE__)
9
9
 
10
- argument :module_name, :required => true
11
- class_option 'core', :type => :boolean, aliases: '-c', :default => false, :group => :runtime,
12
- :desc=>'create format files in Card gem'
10
+ argument :module_name, required: true
11
+ class_option 'core', type: :boolean, aliases: '-c', default: false, group: :runtime,
12
+ desc: 'create format files in Card gem'
13
13
 
14
14
  def create_files
15
15
  mod_path = if options.core?
@@ -6,8 +6,8 @@ class Card
6
6
  module Generators
7
7
  class MigrationGenerator < MigrationBase
8
8
  source_root File.expand_path('../templates', __FILE__)
9
-
10
- class_option 'core', :type => :boolean, aliases: '-c', :default => false, :group => :runtime,
9
+
10
+ class_option 'core', type: :boolean, aliases: '-c', default: false, group: :runtime,
11
11
  desc: "Create card migration for card core"
12
12
 
13
13
  def create_migration_file
@@ -17,11 +17,11 @@ class Card
17
17
  set_local_assigns!
18
18
  migration_template @migration_template, File.join( mig_paths.first, "#{file_name}.rb")
19
19
  end
20
-
20
+
21
21
  protected
22
-
22
+
23
23
  # sets the default migration template that is being used for the generation of the migration
24
- # depending on the arguments which would be sent out in the command line, the migration template
24
+ # depending on the arguments which would be sent out in the command line, the migration template
25
25
  # and the table name instance variables are setup.
26
26
 
27
27
  def set_local_assigns!
@@ -7,10 +7,10 @@ class Card
7
7
  class SetGenerator < NamedBase
8
8
  source_root File.expand_path('../templates', __FILE__)
9
9
 
10
- argument :set_pattern, :required => true
11
- argument :anchors, :required=>true, :type=>:array
12
- class_option 'core', :type => :boolean, aliases: '-c', :default => false, :group => :runtime,
13
- :desc=>'create set files in Card gem'
10
+ argument :set_pattern, required: true
11
+ argument :anchors, required: true, type: :array
12
+ class_option 'core', type: :boolean, aliases: '-c', default: false, group: :runtime,
13
+ desc: 'create set files in Card gem'
14
14
 
15
15
  def create_files
16
16
  mod_path = if options.core?
@@ -9,9 +9,9 @@ module Card::Chunk
9
9
  attr_reader :options
10
10
 
11
11
  Card::Chunk.register_class self, {
12
- :prefix_re => '\\{\\{',
13
- :full_re => /^\{\{([^\}]*)\}\}/,
14
- :idx_char => '{'
12
+ prefix_re: '\\{\\{',
13
+ full_re: /^\{\{([^\}]*)\}\}/,
14
+ idx_char: '{'
15
15
  }
16
16
 
17
17
  def interpret match, content
@@ -27,7 +27,7 @@ module Card::Chunk
27
27
  @options = @opt_lists.to_s.split('|').reverse.inject(nil) do |prev_level, level_options|
28
28
  process_options level_options, prev_level
29
29
  end || {}
30
- @options.merge! :inc_name => name, :inc_syntax => in_brackets
30
+ @options.merge! inc_name: name, inc_syntax: in_brackets
31
31
  @name = name
32
32
  end
33
33
 
@@ -8,9 +8,9 @@ module Card::Chunk
8
8
  word = /\s*([^\]\|]+)\s*/
9
9
  # Groups: $1, [$2]: [[$1]] or [[$1|$2]] or $3, $4: [$3][$4]
10
10
  Card::Chunk.register_class self, {
11
- :prefix_re => '\\[',
12
- :full_re => /^\[\[([^\]]+)\]\]/,
13
- :idx_char => '['
11
+ prefix_re: '\\[',
12
+ full_re: /^\[\[([^\]]+)\]\]/,
13
+ idx_char: '['
14
14
  }
15
15
 
16
16
  def interpret match, content
@@ -60,9 +60,9 @@ module Card::Chunk
60
60
 
61
61
  if @explicit_link
62
62
  @explicit_link = render_obj @explicit_link
63
- format.web_link @explicit_link, :text=> @link_text
63
+ format.web_link @explicit_link, text: @link_text
64
64
  elsif @name
65
- format.card_link referee_name, :text=>@link_text, :known=>referee_card.send_if(:known?)
65
+ format.card_link referee_name, text: @link_text, known: referee_card.send_if(:known?)
66
66
  end
67
67
  end
68
68
 
@@ -8,8 +8,8 @@ module Card::Chunk
8
8
  class EscapedLiteral < Abstract
9
9
  FULL_RE = { '[' => /^\\\[\[[^\]]*\]\]/, '{' => /^\\\{\{[^\}]*\}\}/ }
10
10
  Card::Chunk.register_class self, {
11
- :prefix_re => '\\\\(?:\\[\\[|\\{\\{)',
12
- :idx_char => '\\'
11
+ prefix_re: '\\\\(?:\\[\\[|\\{\\{)',
12
+ idx_char: '\\'
13
13
  }
14
14
 
15
15
  def self.full_re prefix
@@ -20,29 +20,29 @@ module Card::Chunk
20
20
  (
21
21
  Card::Query::MODIFIERS.keys +
22
22
  Card::Query::OPERATORS.keys +
23
- Card::Query::CardClause::ATTRIBUTES.keys +
24
- Card::Query::CardClause::CONJUNCTIONS.keys +
23
+ Card::Query::ATTRIBUTES.keys +
24
+ Card::Query::CONJUNCTIONS.keys +
25
25
  ['desc', 'asc', 'count']
26
26
  ).map(&:to_name)
27
27
  )
28
28
  word = /\s*([^"]+)\s*/
29
29
 
30
30
  Card::Chunk.register_class self, {
31
- :prefix_re => '(?<=[:,\\[])\\s*"', # we check for colon, comma or square bracket before a quote
31
+ prefix_re: '(?<=[:,\\[])\\s*"', # we check for colon, comma or square bracket before a quote
32
32
  # we have to use a lookbehind, otherwise
33
33
  # if the colon matches it would be
34
34
  # identified mistakenly as an URI chunk
35
- :full_re => /"([^"]+)"/,
36
- :idx_char => '"'
35
+ full_re: /"([^"]+)"/,
36
+ idx_char: '"'
37
37
  }
38
38
  # OPTIMIZE: instead of comma or square bracket check for operator followed by comma or "plus_right"|"plus_left"|"plus" followed by square bracket
39
39
  # something like
40
40
  # prefix_patterns = [
41
41
  # "\"\\s*(?:#{Card::Query::OPERATORS.keys.join('|')})\"\\s*,",
42
- # "\"\\s*(?:#{Card::Query::CardClause::PLUS_ATTRIBUTES}.keys.join('|')})\\s*:\\s*\\[\\s*",
43
- # "\"\\s*(?:#{(QUERY_KEYWORDS - Card::Query::CardClause::PLUS_ATTRIBUTES).join('|')})\"\\s*:",
42
+ # "\"\\s*(?:#{Card::Query::PLUS_ATTRIBUTES}.keys.join('|')})\\s*:\\s*\\[\\s*",
43
+ # "\"\\s*(?:#{(QUERY_KEYWORDS - Card::Query::PLUS_ATTRIBUTES).join('|')})\"\\s*:",
44
44
  # ]
45
- # :prefix_re => '(?<=#{prefix_patterns.join('|')})\\s*"'
45
+ # prefix_re: '(?<=#{prefix_patterns.join('|')})\\s*"'
46
46
  # But: What do we do with the "in" operator? After the first value there is no prefix which we can use to detect the following values as QueryReference chunks
47
47
 
48
48
  class << self
@@ -24,14 +24,14 @@ module Card::Chunk
24
24
  REJECTED_PREFIX_RE = %w{ ! ": " ' ]( }.map{|s|Regexp.escape s} * '|'
25
25
 
26
26
  attr_reader :uri, :link_text
27
- delegate :to, :scheme, :host, :port, :path, :query, :fragment, :to => :uri
27
+ delegate :to, :scheme, :host, :port, :path, :query, :fragment, to: :uri
28
28
 
29
29
  Card::Chunk.register_class self, {
30
- :prefix_re => "(?:(?!#{REJECTED_PREFIX_RE})(?:#{SCHEMES * '|'})\\:)",
31
- :full_re => /^#{::URI.regexp( SCHEMES )}/,
32
- :idx_char => ':'
30
+ prefix_re: "(?:(?!#{REJECTED_PREFIX_RE})(?:#{SCHEMES * '|'})\\:)",
31
+ full_re: /^#{::URI.regexp( SCHEMES )}/,
32
+ idx_char: ':'
33
33
  }
34
-
34
+
35
35
  class << self
36
36
  def full_match content, prefix
37
37
  prepend_str = if prefix[-1,1] != ':' && config[:prepend_str]
@@ -49,7 +49,7 @@ module Card::Chunk
49
49
  !( preceding_string =~ /(?:#{REJECTED_PREFIX_RE})$/ )
50
50
  end
51
51
  end
52
-
52
+
53
53
  def interpret match, content
54
54
  chunk = match[0]
55
55
  last_char = chunk[-1,1]
@@ -67,7 +67,7 @@ module Card::Chunk
67
67
  #warn "uri parse[#{match.inspect}]"
68
68
  @uri = ::URI.parse( chunk )
69
69
  @process_chunk = "#{format.web_link(@link_text)}#{@trailing_punctuation}"
70
- rescue ::URI::Error=>e
70
+ rescue ::URI::Error => e
71
71
  #warn "rescue parse #{chunk_class}: '#{m}' #{e.inspect} #{e.backtrace*"\n"}"
72
72
  Rails.logger.warn "rescue parse #{self.class}: #{e.inspect}"
73
73
  end
@@ -80,18 +80,18 @@ module Card::Chunk
80
80
 
81
81
  PREPEND_STR = 'mailto:'
82
82
  EMAIL = "[a-zA-Z\d](?:[-a-zA-Z\d]*[a-zA-Z\d])?\\@"
83
-
83
+
84
84
  Card::Chunk.register_class self, {
85
- :prefix_re => "(?:(?!#{REJECTED_PREFIX_RE})#{EMAIL})\\b",
86
- :full_re => /^#{::URI.regexp( SCHEMES )}/,
87
- :prepend_str => PREPEND_STR,
88
- :idx_char => '@'
85
+ prefix_re: "(?:(?!#{REJECTED_PREFIX_RE})#{EMAIL})\\b",
86
+ full_re: /^#{::URI.regexp( SCHEMES )}/,
87
+ prepend_str: PREPEND_STR,
88
+ idx_char: '@'
89
89
  }
90
90
 
91
91
  def interpret match, content
92
92
  super
93
93
  @text = @text.sub(/^mailto:/,'') # this removes the prepended string from the unchanged match text
94
- @process_chunk = "#{format.web_link(@link_text, :text=> @text)}#{@trailing_punctuation}"
94
+ @process_chunk = "#{format.web_link(@link_text, text: @text)}#{@trailing_punctuation}"
95
95
  end
96
96
  end
97
97
 
@@ -118,18 +118,18 @@ module Card::Chunk
118
118
 
119
119
  PREPEND_STR = 'http://'
120
120
  HOST = "(?:[a-zA-Z\d](?:[-a-zA-Z\d]*[a-zA-Z\d])?\\.)+#{TLDS}"
121
-
121
+
122
122
  Card::Chunk.register_class self, {
123
- :prefix_re => "(?:(?!#{REJECTED_PREFIX_RE})#{HOST})\\b",
124
- :full_re => /^#{::URI.regexp( SCHEMES )}/,
125
- :prepend_str => PREPEND_STR
123
+ prefix_re: "(?:(?!#{REJECTED_PREFIX_RE})#{HOST})\\b",
124
+ full_re: /^#{::URI.regexp( SCHEMES )}/,
125
+ prepend_str: PREPEND_STR
126
126
  }
127
127
 
128
128
  def interpret match, content
129
129
  super
130
130
  @text = @text.sub(/^http:\/\//,'') # this removes the prepended string from the unchanged match text
131
131
  #warn "huri t:#{@text}, #{match}, #{params.inspect}"
132
- @process_chunk = "#{format.web_link(@link_text, :text=>@text)}#{@trailing_punctuation}"
132
+ @process_chunk = "#{format.web_link(@link_text, text: @text)}#{@trailing_punctuation}"
133
133
  end
134
134
  end
135
135
  end
@@ -24,16 +24,16 @@ class Card
24
24
  end
25
25
 
26
26
  def layout_from_rule
27
- if rule = card.rule_card(:layout) and rule.type_id==Card::PointerID and layout_name=rule.item_names.first
27
+ if (rule = card.rule_card(:layout)) && rule.type_id == Card::PointerID && (layout_name = rule.item_names.first)
28
28
  layout_from_card_or_code layout_name
29
29
  end
30
30
  end
31
31
 
32
32
  def layout_from_card_or_code name
33
- layout_card = Card.fetch name.to_s, :skip_virtual=>true, :skip_modules=>true
33
+ layout_card = Card.fetch name.to_s, skip_virtual: true, skip_modules: true
34
34
  if layout_card and layout_card.ok? :read
35
35
  layout_card.content
36
- elsif hardcoded_layout = LAYOUTS[name]
36
+ elsif (hardcoded_layout = LAYOUTS[name])
37
37
  hardcoded_layout
38
38
  else
39
39
  "<h1>Unknown layout: #{name}</h1>Built-in Layouts: #{LAYOUTS.keys.join(', ')}"
@@ -41,7 +41,7 @@ class Card
41
41
  end
42
42
 
43
43
  def get_inclusion_defaults nested_card
44
- {:view => (nested_card.rule( :default_html_view ) || :titled) }
44
+ {view: (nested_card.rule( :default_html_view ) || :titled) }
45
45
  end
46
46
 
47
47
  def default_item_view
@@ -29,7 +29,7 @@ end
29
29
 
30
30
  #fixme -this needs a better home!
31
31
  def format opts={}
32
- opts = { :format=>opts.to_sym } if [Symbol, String].member? opts.class
33
-
32
+ opts = { format: opts.to_sym } if [Symbol, String].member? opts.class
33
+
34
34
  Card::Format.new self, opts
35
35
  end
@@ -1,12 +1,7 @@
1
1
 
2
2
  module ClassMethods
3
- def search spec, &block
4
- query = ::Card::Query.new(spec)
5
- execute_query query, &block
6
- end
7
-
8
- def execute_query query
9
- results = query.run
3
+ def search spec
4
+ results = ::Card::Query.run(spec)
10
5
  if block_given? and Array===results
11
6
  results.each { |result| yield result }
12
7
  end
@@ -16,7 +11,7 @@ module ClassMethods
16
11
  def count_by_wql(spec)
17
12
  spec = spec.clone
18
13
  spec.delete(:offset)
19
- search spec.merge(:return=>'count')
14
+ search spec.merge(return: 'count')
20
15
  end
21
16
 
22
17
  def find_each(options = {})
@@ -88,8 +83,8 @@ end
88
83
 
89
84
  def extended_item_cards context = nil
90
85
  context = (context ? context.cardname : self.cardname)
91
- args={ :limit=>'' }
92
- items = self.item_cards(args.merge(:context=>context))
86
+ args={ limit: '' }
87
+ items = self.item_cards(args.merge(context: context))
93
88
  extended_list = []
94
89
  already_extended = ::Set.new # avoid loops
95
90
 
@@ -114,8 +109,8 @@ end
114
109
 
115
110
  def extended_list context = nil
116
111
  context = (context ? context.cardname : self.cardname)
117
- args={ :limit=>'' }
118
- self.item_cards(args.merge(:context=>context)).map do |x|
112
+ args={ limit: '' }
113
+ self.item_cards(args.merge(context: context)).map do |x|
119
114
  x.item_cards(args)
120
115
  end.flatten.map do |x|
121
116
  x.item_cards(args)
@@ -142,7 +137,7 @@ format do
142
137
  end
143
138
 
144
139
  def item_args args
145
- i_args = { :view => item_view(args)}
140
+ i_args = { view: item_view(args)}
146
141
  if type = card.item_type
147
142
  i_args[:type] = type
148
143
  end
@@ -168,7 +163,7 @@ format do
168
163
 
169
164
  def set_default_search_params overrides={}
170
165
  @default_search_params ||= begin
171
- p = { :default_limit=> 100 }.merge overrides
166
+ p = { default_limit: 100 }.merge overrides
172
167
  set_search_params_variables! p
173
168
  p
174
169
  end
@@ -250,8 +245,8 @@ format do
250
245
  if chunk.kind_of? Card::Chunk::Include
251
246
  r_args.merge!(chunk.options)
252
247
  elsif chunk.kind_of? Card::Chunk::Link
253
- r_args.reverse_merge!(:view=>:link)
254
- r_args.reverse_merge!(:title=>chunk.link_text) if chunk.link_text
248
+ r_args.reverse_merge!(view: :link)
249
+ r_args.reverse_merge!(title: chunk.link_text) if chunk.link_text
255
250
  end
256
251
  r_args
257
252
  end
@@ -268,14 +263,14 @@ format :html do
268
263
  tab_buttons = ''
269
264
  tab_panes = ''
270
265
  active_tab = true
271
- each_reference_with_args(:item=>:content) do |name, nest_args|
266
+ each_reference_with_args(item: :content) do |name, nest_args|
272
267
  id = "#{card.cardname.safe_key}-#{name.to_name.safe_key}"
273
268
  url = nest_path name, nest_args
274
269
  tab_name = nest_args[:title] || name
275
- tab_buttons += tab_button( "##{id}", tab_name, active_tab, 'data-url'=>url.html_safe, :class=>(active_tab ? nil : 'load'))
270
+ tab_buttons += tab_button( "##{id}", tab_name, active_tab, 'data-url'=>url.html_safe, class: (active_tab ? nil : 'load'))
276
271
 
277
272
  # only render the first active tab, other tabs get loaded via ajax
278
- tab_content = active_tab ? nest(Card.fetch(name, :new=>{}), nest_args) : ''
273
+ tab_content = active_tab ? nest(Card.fetch(name, new: {}), nest_args) : ''
279
274
  tab_panes += tab_pane( id, tab_content, active_tab )
280
275
  active_tab = false
281
276
  end
@@ -295,7 +290,7 @@ format :html do
295
290
  page_path(name, path_args)
296
291
  end
297
292
 
298
- view :pills, :view=>:tabs
293
+ view :pills, view: :tabs
299
294
  def default_pills_args args
300
295
  args[:tab_type] ||= 'pills'
301
296
  end
@@ -315,29 +310,29 @@ format :html do
315
310
  args[:tab_type] ||= 'tabs'
316
311
  end
317
312
 
318
- view :pills_static, :view=>:tabs_static
313
+ view :pills_static, view: :tabs_static
319
314
  def default_tabs_static_args args
320
315
  args[:tab_type] ||= 'pills'
321
316
  end
322
317
 
323
318
  def tab_panel tab_buttons, tab_panes, tab_type='tabs'
324
- wrap_with :div, :role=>"tabpanel" do
319
+ wrap_with :div, role: "tabpanel" do
325
320
  [
326
- content_tag(:ul, tab_buttons.html_safe, :class=>"nav nav-#{tab_type}", :role=>"tablist"),
327
- content_tag(:div, tab_panes.html_safe, :class=>'tab-content')
321
+ content_tag(:ul, tab_buttons.html_safe, class: "nav nav-#{tab_type}", role: "tablist"),
322
+ content_tag(:div, tab_panes.html_safe, class: 'tab-content')
328
323
  ]
329
324
  end
330
325
  end
331
326
 
332
327
  def tab_button target, text, active=false, link_attr={}
333
328
  link = link_to fancy_title(text), target, link_attr.merge('role'=>'tab','data-toggle'=>'tab')
334
- li_args = { :role => :presentation }
329
+ li_args = { role: :presentation }
335
330
  li_args[:class] = 'active' if active
336
331
  content_tag :li, link, li_args
337
332
  end
338
333
 
339
334
  def tab_pane id, content, active=false
340
- div_args = {:role => :tabpanel, :id=>id, :class=>"tab-pane #{'active' if active}"}
335
+ div_args = {role: :tabpanel, id: id, class: "tab-pane #{'active' if active}"}
341
336
  content_tag :div, content.html_safe, div_args
342
337
  end
343
338
  end