card 1.101.1 → 1.101.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (721) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -4
  3. data/VERSION +1 -1
  4. data/config/i18n-tasks.yml +0 -5
  5. data/config/initializers/01_core_extensions/array.rb +2 -1
  6. data/config/initializers/01_core_extensions/hash.rb +1 -0
  7. data/config/initializers/01_core_extensions/object.rb +15 -11
  8. data/config/initializers/02_patches/active_job.rb +1 -1
  9. data/config/initializers/02_patches/active_record.rb +2 -4
  10. data/config/initializers/02_patches/better_errors.rb +1 -3
  11. data/config/initializers/02_patches/kaminari.rb +2 -2
  12. data/config/initializers/deck_config.rb +1 -1
  13. data/config/initializers/inflections.rb +1 -0
  14. data/config/initializers/internationalization.rb +23 -21
  15. data/config/initializers/mime_types.rb +1 -0
  16. data/config/initializers/notification.rb +1 -0
  17. data/config/initializers/patches.rb +6 -5
  18. data/config/locales/en.yml +138 -528
  19. data/db/migrate/20110511221913_require_earlier_migrations.rb +1 -0
  20. data/db/migrate/20121111025347_require_1_10_migrations.rb +1 -0
  21. data/db/migrate/20121118114000_split_link_type.rb +1 -0
  22. data/db/migrate/20121118115000_update_link_type.rb +1 -0
  23. data/db/migrate/20130106052640_table_cleanup.rb +2 -2
  24. data/db/migrate/20130109015336_trunk_left.rb +1 -0
  25. data/db/migrate/20130411210957_update_codenames.rb +1 -0
  26. data/db/migrate/20140822073704_create_new_revision_tables.rb +1 -0
  27. data/db/migrate/20141001105348_move_revisions_to_actions.rb +9 -3
  28. data/db/migrate/20141216053032_better_index_names.rb +9 -6
  29. data/db/migrate/20170908114442_create_delayed_jobs.rb +1 -1
  30. data/db/migrate/20170908114452_increase_text_size_for_delayed_jobs.rb +1 -1
  31. data/db/migrate/20180514152037_add_card_virtuals_table.rb +1 -1
  32. data/db/migrate/20200805200729_add_unique_pair_indeces.rb +35 -1
  33. data/db/migrate_core_cards/20120611203506_rails_inflection_updates.rb +3 -2
  34. data/db/migrate_core_cards/20130411191151_renaming_for_menu.rb +9 -9
  35. data/db/migrate_core_cards/20130419215612_import_help_text.rb +3 -2
  36. data/db/migrate_core_cards/20130823192433_add_style_cards.rb +5 -5
  37. data/db/migrate_core_cards/20130910183318_move_styles_to_content.rb +3 -2
  38. data/db/migrate_core_cards/20130920291703_update_stylesheets.rb +2 -4
  39. data/db/migrate_core_cards/20131016172445_common_css_patch.rb +1 -3
  40. data/db/migrate_core_cards/20140110193325_reset_account_request_type.rb +1 -3
  41. data/db/migrate_core_cards/20140307231621_user_data_to_cards.rb +12 -8
  42. data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +2 -4
  43. data/db/migrate_core_cards/20140512155840_add_script_cards.rb +16 -9
  44. data/db/migrate_core_cards/20140629222005_add_email_cards.rb +19 -11
  45. data/db/migrate_core_cards/20140725180118_config_card_updates.rb +1 -1
  46. data/db/migrate_core_cards/20141115034214_config_descriptions_etc.rb +1 -1
  47. data/db/migrate_core_cards/20141119001955_make_symlinks_relative.rb +1 -1
  48. data/db/migrate_core_cards/20141204061304_watchers_to_following.rb +2 -0
  49. data/db/migrate_core_cards/20141216155251_add_more_following_cards.rb +4 -2
  50. data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +2 -2
  51. data/db/migrate_core_cards/20150220134731_following_to_follow_rule.rb +3 -4
  52. data/db/migrate_core_cards/20150317162412_bootstrap_themes.rb +8 -4
  53. data/db/migrate_core_cards/20150326205655_bootswatch_themes.rb +14 -7
  54. data/db/migrate_core_cards/20150429090551_search_card_context.rb +6 -4
  55. data/db/migrate_core_cards/20150508212032_menu_compatibility.rb +4 -2
  56. data/db/migrate_core_cards/20150510031118_fix_skin_codenames.rb +2 -1
  57. data/db/migrate_core_cards/20150601133433_add_recent_setting_session_card.rb +3 -3
  58. data/db/migrate_core_cards/20150610171702_add_debugger_session_card.rb +2 -1
  59. data/db/migrate_core_cards/20150610180019_add_recaptcha_key_and_admin_info_cards.rb +4 -3
  60. data/db/migrate_core_cards/20150724123438_update_file_and_image_cards.rb +6 -2
  61. data/db/migrate_core_cards/20150807205221_create_references_for_search_cards.rb +1 -1
  62. data/db/migrate_core_cards/20150824135418_update_file_history.rb +2 -0
  63. data/db/migrate_core_cards/20160804112510_reorganize_scripts.rb +1 -1
  64. data/db/migrate_core_cards/20160811115836_rename_stats_to_admin.rb +1 -0
  65. data/db/migrate_core_cards/20160914132636_fix_mod_files.rb +2 -0
  66. data/db/migrate_core_cards/20161102202156_tweak_recaptcha_setting_cards.rb +6 -6
  67. data/db/migrate_core_cards/20161103154836_update_keys.rb +2 -1
  68. data/db/migrate_core_cards/20170209132834_email_test_context.rb +2 -0
  69. data/db/migrate_core_cards/20170314175313_add_notification_event_card.rb +3 -3
  70. data/db/migrate_core_cards/20170515101262_add_advanced_edit_cards.rb +1 -1
  71. data/db/migrate_core_cards/20170608200649_add_input_options_codename.rb +1 -1
  72. data/db/migrate_core_cards/20180712042655_head_rule.rb +3 -4
  73. data/db/migrate_core_cards/20180905061537_migrate_layouts.rb +4 -4
  74. data/db/migrate_core_cards/20181120200937_update_layout.rb +1 -1
  75. data/db/migrate_core_cards/20190320091257_upgrade_recaptcha_to_v3.rb +7 -7
  76. data/db/migrate_core_cards/20190424100531_update_credit_image.rb +1 -0
  77. data/db/migrate_core_cards/20190502130029_add_shark_and_help_desk_role.rb +15 -14
  78. data/db/migrate_core_cards/20190503122739_update_pristine_data.rb +1 -1
  79. data/db/migrate_core_cards/20190625153616_pointer_overhaul.rb +9 -5
  80. data/db/migrate_core_cards/20190718140126_add_guides.rb +3 -3
  81. data/db/migrate_core_cards/20190822093633_move_help_text_to_code.rb +1 -2
  82. data/db/migrate_core_cards/20190823220018_cleanup_for_decko_1_0.rb +1 -1
  83. data/db/migrate_core_cards/20190829093961_cardtype_grouping.rb +4 -4
  84. data/db/migrate_core_cards/20190902193208_input_type.rb +1 -3
  85. data/db/migrate_core_cards/20190909104250_add_cardtype_input_types.rb +2 -2
  86. data/db/migrate_core_cards/20191028135243_add_link_editor_to_tiny_mce_config.rb +1 -0
  87. data/db/migrate_core_cards/20191115160748_history_cleanup.rb +0 -1
  88. data/db/migrate_core_cards/20191118145629_codename_fixes.rb +1 -2
  89. data/db/migrate_core_cards/20200821231558_add_nest_list_type.rb +1 -1
  90. data/db/seed/new/card_actions.yml +2153 -2145
  91. data/db/seed/new/card_acts.yml +3 -3
  92. data/db/seed/new/card_references.yml +900 -858
  93. data/db/seed/new/cards.yml +4869 -4848
  94. data/db/seed/new/schema_migrations_deck_cards.yml +2 -0
  95. data/db/seed/test/fixtures/card_actions.yml +3563 -3547
  96. data/db/seed/test/fixtures/card_acts.yml +675 -675
  97. data/db/seed/test/fixtures/card_changes.yml +103 -103
  98. data/db/seed/test/fixtures/card_references.yml +2165 -2123
  99. data/db/seed/test/fixtures/cards.yml +7862 -7751
  100. data/db/seed/test/fixtures/rails.gif +0 -0
  101. data/db/seed/test/fixtures/schema_migrations_deck_cards.yml +2 -0
  102. data/db/test_seed.rb +33 -34
  103. data/lib/card.rb +16 -2
  104. data/lib/card/auth.rb +5 -2
  105. data/lib/card/auth/current.rb +39 -100
  106. data/lib/card/auth/proxy.rb +36 -16
  107. data/lib/card/auth/token.rb +8 -2
  108. data/lib/card/cache.rb +2 -1
  109. data/lib/card/cache/all.rb +88 -0
  110. data/lib/card/cache/card_class.rb +44 -0
  111. data/lib/card/cache/persistent.rb +3 -34
  112. data/lib/card/cache/persistent_class.rb +28 -0
  113. data/lib/card/codename.rb +3 -4
  114. data/lib/card/content.rb +20 -10
  115. data/lib/card/content/all.rb +59 -0
  116. data/lib/card/content/chunk.rb +1 -1
  117. data/lib/card/content/clean.rb +4 -3
  118. data/lib/card/content/diff.rb +3 -2
  119. data/lib/card/content/diff/l_c_s/processor.rb +1 -1
  120. data/lib/card/content/diff/result.rb +1 -125
  121. data/lib/card/content/diff/summary.rb +136 -0
  122. data/lib/card/content/parser.rb +2 -2
  123. data/lib/card/content/truncate.rb +6 -6
  124. data/lib/card/director.rb +1 -1
  125. data/lib/card/director/act_direction.rb +4 -0
  126. data/lib/card/director/all.rb +61 -0
  127. data/lib/card/director/card_class.rb +18 -0
  128. data/lib/card/director/card_methods.rb +1 -0
  129. data/lib/card/director/event_delay.rb +4 -6
  130. data/lib/card/director/phases.rb +0 -1
  131. data/lib/card/director/run.rb +2 -0
  132. data/lib/card/director/stages.rb +3 -2
  133. data/lib/card/dirty.rb +13 -3
  134. data/lib/card/env/location.rb +4 -3
  135. data/lib/card/env/success.rb +46 -103
  136. data/lib/card/env/success/target.rb +73 -0
  137. data/lib/card/error.rb +1 -2
  138. data/lib/card/fetch.rb +7 -4
  139. data/lib/card/fetch/all.rb +33 -0
  140. data/lib/card/fetch/card_class.rb +155 -0
  141. data/lib/card/fetch/results.rb +9 -0
  142. data/lib/card/fetch/retrieve.rb +2 -0
  143. data/lib/card/fetch/store.rb +1 -0
  144. data/lib/card/format.rb +1 -2
  145. data/lib/card/format/content.rb +1 -3
  146. data/lib/card/format/error.rb +8 -4
  147. data/lib/card/format/method_delegation.rb +10 -2
  148. data/lib/card/format/nest.rb +3 -2
  149. data/lib/card/format/nest/fetch.rb +3 -2
  150. data/lib/card/format/nesting/mode.rb +1 -1
  151. data/lib/card/format/nesting/subformat.rb +2 -1
  152. data/lib/card/format/render.rb +2 -2
  153. data/lib/card/format/wrapper.rb +1 -1
  154. data/lib/card/lexicon.rb +5 -4
  155. data/lib/card/mailer.rb +15 -12
  156. data/lib/card/mark.rb +17 -15
  157. data/lib/card/model/save_helper.rb +3 -3
  158. data/lib/card/name.rb +10 -9
  159. data/lib/card/name/all.rb +11 -0
  160. data/lib/card/name/all/descendants.rb +7 -5
  161. data/lib/card/name/card_class.rb +28 -0
  162. data/lib/card/name/fields_and_traits.rb +4 -2
  163. data/lib/card/name/name_variants.rb +0 -1
  164. data/lib/card/query.rb +17 -17
  165. data/lib/card/query/act_query.rb +2 -2
  166. data/lib/card/query/action_query.rb +1 -1
  167. data/lib/card/query/card_query/conjunctions.rb +1 -1
  168. data/lib/card/query/card_query/interpretation.rb +1 -0
  169. data/lib/card/query/card_query/match_attributes.rb +2 -1
  170. data/lib/card/query/card_query/normalization.rb +1 -0
  171. data/lib/card/query/card_query/reference_attributes.rb +2 -2
  172. data/lib/card/query/card_query/relational_attributes.rb +2 -2
  173. data/lib/card/query/join.rb +1 -1
  174. data/lib/card/query/value/match_value.rb +1 -0
  175. data/lib/card/reference/all.rb +136 -0
  176. data/lib/card/rule/all.rb +76 -0
  177. data/lib/card/rule/cache.rb +2 -0
  178. data/lib/card/set/advanced_api.rb +4 -4
  179. data/lib/card/set/event.rb +10 -6
  180. data/lib/card/set/event/all.rb +101 -0
  181. data/lib/card/set/event/delayed_event.rb +6 -6
  182. data/lib/card/set/event/options.rb +1 -0
  183. data/lib/card/set/event/skip_and_trigger.rb +89 -0
  184. data/lib/card/set/format/abstract_format/view_definition.rb +1 -0
  185. data/lib/card/set/format/abstract_format/view_opts.rb +1 -0
  186. data/lib/card/set/i18n_scope.rb +18 -13
  187. data/lib/card/set/inheritance.rb +8 -6
  188. data/lib/card/set/loader.rb +24 -13
  189. data/lib/card/set/pattern/all.rb +63 -0
  190. data/lib/card/set/pattern/base.rb +4 -74
  191. data/lib/card/set/pattern/class_methods.rb +75 -0
  192. data/lib/card/set/required_field.rb +4 -1
  193. data/lib/card/setting.rb +13 -12
  194. data/lib/card/subcards.rb +3 -4
  195. data/lib/card/subcards/all.rb +103 -0
  196. data/lib/card/tasks/card/file_card_creator/abstract_file_card/ruby_file.rb +1 -1
  197. data/lib/card/tasks/card/file_card_creator/output_helper.rb +2 -4
  198. data/lib/card/tasks/card/migrate.rake +2 -2
  199. data/lib/card/view/cache.rb +6 -8
  200. data/lib/card/view/cache/cache_action.rb +1 -2
  201. data/lib/card/view/cache/stub.rb +1 -1
  202. data/lib/card/view/options.rb +3 -3
  203. data/lib/card/view/permission.rb +1 -0
  204. data/lib/cardio.rb +1 -1
  205. data/lib/cardio/migration.rb +1 -1
  206. data/lib/cardio/migration/deck_structure.rb +2 -4
  207. data/lib/cardio/migration/import.rb +3 -3
  208. data/lib/cardio/migration/import/import_data.rb +1 -0
  209. data/lib/cardio/mod.rb +2 -1
  210. data/lib/cardio/mod/dirs.rb +2 -2
  211. data/lib/cardio/mod/load_strategy.rb +2 -4
  212. data/lib/cardio/mod/loader/set_loader.rb +2 -1
  213. data/lib/cardio/mod/loader/set_pattern_loader.rb +0 -1
  214. data/lib/cardio/mod/module_template.rb +1 -0
  215. data/lib/cardio/modfiles.rb +2 -4
  216. data/lib/cardio/schema.rb +2 -4
  217. data/lib/cardio/utils.rb +9 -0
  218. data/lib/generators/card/format/format_generator.rb +1 -1
  219. data/lib/generators/card/migration/migration_generator.rb +2 -1
  220. data/lib/generators/card/mod/mod_generator.rb +3 -2
  221. data/lib/generators/card/set/set_generator.rb +3 -3
  222. data/lib/generators/card/template/template_generator.rb +1 -1
  223. data/mod/admin/set/self/admin.rb +6 -3
  224. data/mod/admin/set/self/admin_info.rb +3 -8
  225. data/mod/admin/spec/set/self/admin_spec.rb +4 -4
  226. data/mod/core/set/all/abort.rb +5 -5
  227. data/mod/core/set/all/assign_attributes.rb +5 -8
  228. data/mod/core/set/all/autoname.rb +17 -0
  229. data/mod/core/set/all/codename.rb +3 -2
  230. data/mod/core/set/all/collection.rb +4 -6
  231. data/mod/core/set/all/content.rb +25 -138
  232. data/mod/core/set/all/debug.rb +7 -10
  233. data/mod/core/set/all/initialize.rb +4 -0
  234. data/mod/core/set/all/name_events.rb +78 -60
  235. data/mod/core/set/all/reference_events.rb +69 -0
  236. data/mod/core/set/all/states.rb +5 -5
  237. data/mod/core/set/all/subcards.rb +1 -101
  238. data/mod/core/set/all/trash.rb +20 -14
  239. data/mod/core/set/all/type.rb +11 -11
  240. data/mod/core/set/all/utils.rb +4 -1
  241. data/mod/{admin → core}/set/self/trash.rb +3 -2
  242. data/mod/core/set/self/version.rb +0 -4
  243. data/mod/core/set/type/cardtype.rb +3 -3
  244. data/mod/core/set_pattern/06_rule.rb +1 -1
  245. data/mod/core/spec/set/all/assign_attributes_spec.rb +10 -9
  246. data/mod/core/spec/set/all/{rules2_spec.rb → clean_me_spec.rb} +19 -4
  247. data/mod/core/spec/set/all/collection_spec.rb +1 -1
  248. data/mod/core/spec/set/all/export_spec.rb +1 -0
  249. data/mod/core/spec/set/all/initialize_spec.rb +11 -11
  250. data/mod/core/spec/set/all/name_events_spec.rb +204 -0
  251. data/mod/{admin → core}/spec/set/self/trash_spec.rb +0 -0
  252. data/tmpsets/set/mod001-admin/self/admin.rb +6 -3
  253. data/tmpsets/set/mod001-admin/self/admin_info.rb +3 -8
  254. data/tmpsets/set/mod002-core/all/abort.rb +8 -8
  255. data/tmpsets/set/mod002-core/all/assign_attributes.rb +12 -28
  256. data/tmpsets/set/mod002-core/all/autoname.rb +26 -0
  257. data/tmpsets/set/mod002-core/all/codename.rb +3 -2
  258. data/tmpsets/set/mod002-core/all/collection.rb +4 -6
  259. data/tmpsets/set/mod002-core/all/content.rb +55 -99
  260. data/tmpsets/set/mod002-core/all/contextual_content.rb +2 -4
  261. data/tmpsets/set/mod002-core/all/debug.rb +8 -10
  262. data/tmpsets/set/mod002-core/all/initialize.rb +13 -9
  263. data/tmpsets/set/mod002-core/all/name_events.rb +78 -58
  264. data/tmpsets/set/mod002-core/all/reference_events.rb +78 -0
  265. data/tmpsets/set/mod002-core/all/states.rb +4 -4
  266. data/tmpsets/set/mod002-core/all/subcards.rb +1 -101
  267. data/tmpsets/set/mod002-core/all/trash.rb +20 -14
  268. data/tmpsets/set/mod002-core/all/type.rb +11 -11
  269. data/tmpsets/set/mod002-core/all/utils.rb +4 -1
  270. data/tmpsets/set/mod002-core/right/autoname.rb +12 -0
  271. data/tmpsets/set/{mod003-settings → mod002-core}/self/autoname.rb +2 -2
  272. data/tmpsets/set/{mod001-admin → mod002-core}/self/trash.rb +5 -4
  273. data/tmpsets/set/mod002-core/self/version.rb +0 -4
  274. data/tmpsets/set/mod002-core/type/cardtype.rb +37 -0
  275. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/abstract/email_field.rb +1 -2
  276. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/abstract/test_context.rb +1 -0
  277. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/all/email_html.rb +0 -0
  278. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/all/email_text.rb +0 -1
  279. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/bcc.rb +0 -0
  280. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/cc.rb +0 -0
  281. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/from.rb +0 -0
  282. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/html_message.rb +1 -0
  283. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/subject.rb +0 -0
  284. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/text_message.rb +0 -0
  285. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/right/to.rb +0 -0
  286. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/type/email_template.rb +4 -3
  287. data/tmpsets/set/{mod005-card-mod-email → mod004-card-mod-email}/type/email_template/email_config.rb +3 -1
  288. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/abstract/items.rb +5 -1
  289. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/abstract/paging.rb +1 -0
  290. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/abstract/paging/paging_links.rb +1 -0
  291. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/abstract/paging/paging_views.rb +1 -0
  292. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/all/extended.rb +2 -1
  293. data/tmpsets/set/{mod006-card-mod-collection → mod005-card-mod-collection}/all/item.rb +7 -1
  294. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/abstract/code_file.rb +0 -1
  295. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/abstract/haml_file.rb +0 -1
  296. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/abstract/lock.rb +1 -0
  297. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/abstract/templated_nests.rb +0 -0
  298. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/abstract/vendor_code_file.rb +0 -0
  299. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/all/chunk.rb +8 -8
  300. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/all/templating.rb +1 -1
  301. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/right/default.rb +0 -0
  302. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/right/structure.rb +5 -1
  303. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/self/default.rb +0 -0
  304. data/tmpsets/set/{mod007-card-mod-content → mod006-card-mod-content}/self/structure.rb +0 -0
  305. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/active_card.rb +1 -2
  306. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/base.rb +3 -1
  307. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/css.rb +0 -1
  308. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/csv.rb +2 -1
  309. data/tmpsets/set/mod007-card-mod-format/all/demo.rb +45 -0
  310. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/error.rb +12 -19
  311. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/export.rb +2 -0
  312. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/file.rb +0 -0
  313. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/frame.rb +6 -10
  314. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/haml.rb +0 -0
  315. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/head.rb +5 -1
  316. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/header.rb +0 -0
  317. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/html_content.rb +2 -1
  318. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/html_error.rb +25 -10
  319. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/html_show.rb +0 -0
  320. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/html_title.rb +0 -0
  321. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/html_wrapper.rb +13 -8
  322. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/js.rb +0 -1
  323. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/json.rb +1 -2
  324. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/links.rb +5 -4
  325. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/menu.rb +1 -1
  326. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/path.rb +1 -0
  327. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/rich_html.rb +12 -0
  328. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/rss.rb +3 -2
  329. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/all/text.rb +0 -1
  330. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/self/home.rb +0 -0
  331. data/tmpsets/set/mod007-card-mod-format/type/cardtype.rb +98 -0
  332. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/html.rb +0 -0
  333. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/json.rb +1 -1
  334. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/number.rb +4 -2
  335. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/phrase.rb +0 -0
  336. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/plain_text.rb +0 -0
  337. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/toggle.rb +2 -2
  338. data/tmpsets/set/{mod008-card-mod-format → mod007-card-mod-format}/type/uri.rb +0 -0
  339. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer.rb +0 -0
  340. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer/events.rb +0 -0
  341. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer/html_views.rb +1 -2
  342. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer/html_views/filter.rb +1 -0
  343. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer/options_api.rb +0 -0
  344. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/01_pointer/other_views.rb +1 -0
  345. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/code_pointer.rb +0 -0
  346. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/abstract/id_pointer.rb +1 -1
  347. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/all/supports_content_options.rb +0 -0
  348. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/right/content_option_view.rb +0 -0
  349. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/right/content_options.rb +0 -0
  350. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/self/content_option_view.rb +0 -0
  351. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/self/content_options.rb +0 -0
  352. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/self/input_options.rb +1 -0
  353. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/type/link_list.rb +0 -0
  354. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/type/list.rb +0 -0
  355. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/type/nest_list.rb +1 -1
  356. data/tmpsets/set/{mod009-card-mod-list → mod008-card-mod-list}/type/pointer.rb +0 -0
  357. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/abstract/permission.rb +3 -2
  358. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/all/permissions.rb +11 -7
  359. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/all/update_read_rules.rb +2 -3
  360. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/right/create.rb +0 -0
  361. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/right/delete.rb +0 -0
  362. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/right/read.rb +3 -5
  363. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/right/update.rb +0 -0
  364. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/self/create.rb +0 -0
  365. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/self/delete.rb +0 -0
  366. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/self/read.rb +0 -0
  367. data/tmpsets/set/{mod010-card-mod-permissions → mod009-card-mod-permissions}/self/update.rb +0 -0
  368. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/abstract/account_field.rb +5 -0
  369. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/abstract/accountable.rb +5 -1
  370. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/all/account.rb +16 -7
  371. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/account.rb +3 -8
  372. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/account/events.rb +2 -2
  373. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/account/views.rb +0 -0
  374. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/email.rb +5 -4
  375. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/password.rb +4 -3
  376. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/roles.rb +2 -2
  377. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/salt.rb +1 -1
  378. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/right/status.rb +1 -1
  379. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/self/signin.rb +37 -50
  380. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/type/role.rb +0 -0
  381. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/type/signup.rb +0 -0
  382. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/type/signup/views.rb +7 -2
  383. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/type/user.rb +1 -1
  384. data/tmpsets/set/{mod011-card-mod-account → mod010-card-mod-account}/type_plus_right/user/email.rb +0 -0
  385. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge.rb +3 -3
  386. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge/bridge_pills.rb +0 -0
  387. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge/follow_section.rb +0 -0
  388. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge/related_section.rb +2 -2
  389. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge/tab_views.rb +0 -0
  390. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/bridge/tab_visibility.rb +10 -5
  391. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/edit_content.rb +0 -0
  392. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/edit_inline.rb +0 -0
  393. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/edit_name.rb +18 -20
  394. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/edit_type.rb +52 -33
  395. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/editing.rb +0 -0
  396. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/editor.rb +3 -5
  397. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/form.rb +14 -11
  398. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/form_buttons.rb +11 -2
  399. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/form_elements.rb +1 -0
  400. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/formgroup.rb +0 -0
  401. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/new.rb +2 -2
  402. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/overlay_guide.rb +0 -0
  403. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/all/template_nest.rb +0 -0
  404. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/right/input_type.rb +0 -0
  405. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/self/input_type.rb +0 -0
  406. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/type/list.rb +0 -0
  407. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/type/plain_text.rb +0 -0
  408. data/tmpsets/set/{mod012-card-mod-edit → mod011-card-mod-edit}/type/pointer.rb +0 -0
  409. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history.rb +2 -1
  410. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/act_listing.rb +9 -6
  411. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/actions.rb +8 -4
  412. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/acts.rb +0 -0
  413. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/events.rb +3 -3
  414. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/last.rb +0 -0
  415. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/revision.rb +0 -0
  416. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/selected.rb +3 -3
  417. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history/views.rb +31 -0
  418. data/tmpsets/set/{mod013-card-mod-history → mod012-card-mod-history}/all/history_bridge.rb +31 -17
  419. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment.rb +36 -13
  420. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/cloud.rb +5 -1
  421. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/coded.rb +7 -2
  422. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/local.rb +4 -1
  423. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/paths.rb +1 -0
  424. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/storage_type.rb +33 -32
  425. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/upload_cache.rb +4 -0
  426. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/abstract/attachment/web.rb +0 -0
  427. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/all/file_utils.rb +0 -0
  428. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/self/admin.rb +0 -0
  429. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/self/favicon.rb +1 -0
  430. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/self/new_file.rb +0 -0
  431. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/self/new_image.rb +0 -0
  432. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/type/file.rb +27 -10
  433. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/type/image.rb +7 -4
  434. data/tmpsets/set/{mod014-card-mod-carrierwave → mod013-card-mod-carrierwave}/type/image/html_views.rb +13 -3
  435. data/tmpsets/set/{mod015-card-mod-virtual → mod014-card-mod-virtual}/abstract/virtual_cache.rb +0 -0
  436. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/abstract/machine.rb +2 -2
  437. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/abstract/machine/output_cache.rb +0 -0
  438. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/abstract/machine/output_update.rb +7 -0
  439. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/abstract/machine_input.rb +1 -0
  440. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/all/reset_machines.rb +0 -0
  441. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/right/machine_cache.rb +0 -0
  442. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/right/machine_input.rb +0 -0
  443. data/tmpsets/set/{mod016-card-mod-machines → mod015-card-mod-machines}/right/machine_output.rb +0 -0
  444. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/abstract/script.rb +1 -1
  445. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/right/script.rb +0 -0
  446. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/01_script_libraries.rb +0 -0
  447. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script.rb +0 -0
  448. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_decko.rb +0 -0
  449. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_editors.rb +0 -0
  450. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_html5shiv_printshiv.rb +0 -0
  451. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_jquery.rb +0 -0
  452. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_jquery_helper.rb +0 -0
  453. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_mods.rb +0 -0
  454. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/self/script_pointer_config.rb +0 -0
  455. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/type/coffee_script.rb +1 -1
  456. data/tmpsets/set/{mod017-card-mod-script → mod016-card-mod-script}/type/java_script.rb +0 -0
  457. data/tmpsets/set/{mod018-card-mod-ace_editor → mod017-card-mod-ace_editor}/all/ace_editor.rb +0 -1
  458. data/tmpsets/set/{mod018-card-mod-ace_editor → mod017-card-mod-ace_editor}/self/ace.rb +0 -0
  459. data/tmpsets/set/{mod018-card-mod-ace_editor → mod017-card-mod-ace_editor}/self/script_ace.rb +0 -0
  460. data/tmpsets/set/{mod018-card-mod-ace_editor → mod017-card-mod-ace_editor}/self/script_ace_config.rb +0 -0
  461. data/tmpsets/set/mod018-card-mod-alias/all/alias.rb +30 -0
  462. data/tmpsets/set/mod018-card-mod-alias/all_plus/alias.rb +31 -0
  463. data/tmpsets/set/mod018-card-mod-alias/type/alias.rb +42 -0
  464. data/tmpsets/set/mod019-card-mod-api_key/right/account.rb +18 -0
  465. data/tmpsets/set/mod019-card-mod-api_key/right/api_key.rb +103 -0
  466. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/abstract/skin_box.rb +2 -0
  467. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/right/style.rb +0 -0
  468. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style.rb +0 -0
  469. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style_bootstrap_compatible.rb +0 -0
  470. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style_cards.rb +0 -0
  471. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style_jquery_ui_smoothness.rb +0 -0
  472. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style_libraries.rb +0 -0
  473. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/self/style_mods.rb +0 -0
  474. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/type/css.rb +5 -4
  475. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/type/scss.rb +1 -1
  476. data/tmpsets/set/{mod019-card-mod-style → mod020-card-mod-style}/type/skin.rb +0 -0
  477. data/tmpsets/set/{mod020-card-mod-bar_and_box → mod021-card-mod-bar_and_box}/abstract/media.rb +0 -0
  478. data/tmpsets/set/{mod020-card-mod-bar_and_box → mod021-card-mod-bar_and_box}/all/bar.rb +1 -1
  479. data/tmpsets/set/{mod020-card-mod-bar_and_box → mod021-card-mod-bar_and_box}/all/box.rb +0 -0
  480. data/tmpsets/set/{mod020-card-mod-bar_and_box → mod021-card-mod-bar_and_box}/self/style_media.rb +0 -0
  481. data/tmpsets/set/{mod020-card-mod-bar_and_box → mod021-card-mod-bar_and_box}/type/image.rb +1 -1
  482. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/abstract/bootstrap_code_file.rb +0 -1
  483. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/abstract/bootswatch_theme.rb +1 -0
  484. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/abstract/bootswatch_theme/html_views.rb +0 -0
  485. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/abstract/bs_badge.rb +0 -0
  486. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/accordion.rb +0 -0
  487. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/dropdown.rb +13 -15
  488. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/form.rb +0 -0
  489. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/helper.rb +23 -12
  490. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/icon.rb +16 -11
  491. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/navbar.rb +8 -28
  492. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/table.rb +9 -7
  493. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/tabs.rb +0 -0
  494. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/bootstrap/wrapper.rb +2 -3
  495. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/all/rich_bootstrap.rb +0 -0
  496. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/bootstrap_core.rb +7 -6
  497. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/bootstrap_functions.rb +0 -0
  498. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/font_awesome.rb +0 -0
  499. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/material_icons.rb +0 -0
  500. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/script_bootstrap.rb +0 -0
  501. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/script_load_select2.rb +0 -0
  502. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/script_select2.rb +0 -0
  503. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/smartmenu_css.rb +0 -0
  504. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/smartmenu_js.rb +0 -0
  505. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/style_bootstrap_cards.rb +0 -0
  506. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/style_bootstrap_colorpicker.rb +0 -0
  507. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/style_select2.rb +0 -0
  508. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/self/style_select2_bootstrap.rb +0 -0
  509. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/type/bootswatch_skin.rb +0 -0
  510. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/type/customized_bootswatch_skin.rb +11 -7
  511. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/type/customized_bootswatch_skin/html_views.rb +0 -0
  512. data/tmpsets/set/{mod021-card-mod-bootstrap → mod022-card-mod-bootstrap}/type_plus_right/customized_bootswatch_skin/colors.rb +3 -2
  513. data/tmpsets/set/{mod022-card-mod-comment → mod023-card-mod-comment}/all/comment.rb +4 -1
  514. data/tmpsets/set/{mod022-card-mod-comment → mod023-card-mod-comment}/right/comment.rb +0 -0
  515. data/tmpsets/set/{mod022-card-mod-comment → mod023-card-mod-comment}/right/discussion.rb +0 -0
  516. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/all/calendar.rb +0 -0
  517. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/right/when_created.rb +1 -0
  518. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/right/when_last_edited.rb +1 -0
  519. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/self/datepicker.rb +1 -1
  520. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/self/now.rb +0 -1
  521. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/self/script_datepicker.rb +0 -0
  522. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/self/script_datepicker_config.rb +0 -0
  523. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/self/style_datepicker.rb +0 -0
  524. data/tmpsets/set/{mod023-card-mod-date → mod024-card-mod-date}/type/date.rb +0 -0
  525. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/abstract/follow_option.rb +0 -0
  526. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow.rb +0 -0
  527. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/follow_link.rb +3 -2
  528. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/follow_link_views.rb +0 -0
  529. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/followed_by.rb +0 -0
  530. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/follower_ids.rb +0 -0
  531. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/start_follow_link.rb +0 -0
  532. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/follow/stop_follow_link.rb +0 -0
  533. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/notify.rb +1 -0
  534. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/notify/base_views.rb +1 -0
  535. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/all/notify/html_views.rb +0 -0
  536. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/right/account.rb +0 -0
  537. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/right/follow.rb +1 -1
  538. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/right/follow_fields.rb +0 -0
  539. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/right/followers.rb +0 -0
  540. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/right/following.rb +0 -0
  541. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/always.rb +0 -0
  542. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/created.rb +0 -0
  543. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/edited.rb +0 -0
  544. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/follow.rb +0 -0
  545. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/follow_defaults.rb +5 -4
  546. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/follow_fields.rb +0 -0
  547. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/self/never.rb +0 -0
  548. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type/cardtype.rb +1 -1
  549. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type/notification_template.rb +0 -0
  550. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type/set.rb +0 -0
  551. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type/user.rb +0 -0
  552. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type_plus_right/user/follow.rb +3 -2
  553. data/tmpsets/set/{mod025-card-mod-follow → mod026-card-mod-follow}/type_plus_right/user/follow/follow_editor_helper.rb +0 -0
  554. data/tmpsets/set/{mod026-card-mod-google_analytics → mod027-card-mod-google_analytics}/all/google_analytics.rb +0 -0
  555. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/all/guide.rb +0 -0
  556. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/all/help.rb +0 -0
  557. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/right/guide.rb +0 -0
  558. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/right/help.rb +1 -1
  559. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/self/guide.rb +0 -0
  560. data/tmpsets/set/{mod027-card-mod-help → mod028-card-mod-help}/self/help.rb +0 -0
  561. data/tmpsets/set/{mod028-card-mod-integrate → mod029-card-mod-integrate}/all/observer.rb +0 -0
  562. data/tmpsets/set/{mod028-card-mod-integrate → mod029-card-mod-integrate}/self/on_create.rb +0 -0
  563. data/tmpsets/set/{mod028-card-mod-integrate → mod029-card-mod-integrate}/self/on_delete.rb +0 -0
  564. data/tmpsets/set/{mod028-card-mod-integrate → mod029-card-mod-integrate}/self/on_update.rb +0 -0
  565. data/tmpsets/set/{mod028-card-mod-integrate → mod029-card-mod-integrate}/self/thanks.rb +0 -0
  566. data/tmpsets/set/{mod029-card-mod-session → mod030-card-mod-session}/all/location_history.rb +0 -0
  567. data/tmpsets/set/{mod029-card-mod-session → mod030-card-mod-session}/type/session.rb +0 -0
  568. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/abstract/account_dropdown.rb +2 -4
  569. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/abstract/pointer/html_views.rb +0 -0
  570. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/alert.rb +0 -0
  571. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/layouts.rb +0 -0
  572. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/modal.rb +1 -0
  573. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/navbar_links.rb +0 -0
  574. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/overlay.rb +7 -10
  575. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/process_layout.rb +31 -29
  576. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/all/tabs.rb +1 -0
  577. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/right/enabled_roles.rb +0 -0
  578. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/right/head.rb +0 -0
  579. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/account_links.rb +6 -7
  580. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/alerts.rb +0 -0
  581. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/dropdown_divider.rb +0 -0
  582. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/foot.rb +0 -1
  583. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/head.rb +1 -1
  584. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/layout.rb +0 -0
  585. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/navbox.rb +0 -0
  586. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/self/sidebar.rb +0 -0
  587. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/type/html.rb +0 -0
  588. data/tmpsets/set/{mod030-card-mod-layout → mod031-card-mod-layout}/type/layout_type.rb +0 -0
  589. data/tmpsets/set/{mod031-card-mod-legacy → mod032-card-mod-legacy}/abstract/table_of_contents.rb +9 -6
  590. data/tmpsets/set/{mod031-card-mod-legacy → mod032-card-mod-legacy}/self/csv_structure.rb +0 -0
  591. data/tmpsets/set/{mod031-card-mod-legacy → mod032-card-mod-legacy}/self/default_html_view.rb +0 -0
  592. data/tmpsets/set/{mod031-card-mod-legacy → mod032-card-mod-legacy}/self/table_of_contents.rb +0 -0
  593. data/tmpsets/set/{mod031-card-mod-legacy → mod032-card-mod-legacy}/type/basic.rb +0 -0
  594. data/tmpsets/set/{mod032-card-mod-markdown → mod033-card-mod-markdown}/type/markdown.rb +0 -0
  595. data/tmpsets/set/{mod033-card-mod-prosemirror_editor → mod034-card-mod-prosemirror_editor}/all/prosemirror_editor.rb +0 -1
  596. data/tmpsets/set/{mod033-card-mod-prosemirror_editor → mod034-card-mod-prosemirror_editor}/self/script_prosemirror.rb +0 -0
  597. data/tmpsets/set/{mod033-card-mod-prosemirror_editor → mod034-card-mod-prosemirror_editor}/self/script_prosemirror_config.rb +0 -0
  598. data/tmpsets/set/{mod033-card-mod-prosemirror_editor → mod034-card-mod-prosemirror_editor}/self/style_prosemirror.rb +0 -0
  599. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/all/recaptcha.rb +6 -6
  600. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/self/admin_info.rb +6 -11
  601. data/tmpsets/set/{mod011-card-mod-account → mod035-card-mod-recaptcha}/self/captcha.rb +2 -2
  602. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/self/recaptcha_proxy.rb +0 -0
  603. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/self/recaptcha_secret_key.rb +0 -0
  604. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/self/recaptcha_settings.rb +9 -22
  605. data/tmpsets/set/{mod034-card-mod-recaptcha → mod035-card-mod-recaptcha}/self/recaptcha_site_key.rb +0 -0
  606. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/00_filter_helper.rb +0 -0
  607. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/02_search_params.rb +1 -3
  608. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/03_filter.rb +0 -0
  609. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/03_filter/filter_form.rb +0 -0
  610. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/03_filter/form_helper.rb +1 -1
  611. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/03_filter/query_construction.rb +0 -0
  612. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/04_right_filter_form.rb +0 -0
  613. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/05_search.rb +4 -0
  614. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/05_search/views.rb +3 -5
  615. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/06_cql_search.rb +2 -0
  616. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/filterable.rb +0 -0
  617. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/abstract/filterable_bar.rb +0 -0
  618. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/children.rb +0 -0
  619. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/created.rb +0 -0
  620. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/edited.rb +0 -0
  621. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/editors.rb +0 -0
  622. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/follow.rb +0 -0
  623. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/linked_to_by.rb +0 -0
  624. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/links_to.rb +0 -0
  625. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/mates.rb +0 -0
  626. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/nested_by.rb +0 -0
  627. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/nests.rb +0 -0
  628. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/referred_to_by.rb +0 -0
  629. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/right/refers_to.rb +0 -0
  630. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/self/recent.rb +0 -0
  631. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/self/search.rb +3 -1
  632. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/type/cardtype.rb +0 -0
  633. data/tmpsets/set/{mod035-card-mod-search → mod036-card-mod-search}/type/search_type.rb +1 -0
  634. data/tmpsets/set/mod037-card-mod-rules/all/related_sets.rb +34 -0
  635. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/right/self.rb +0 -0
  636. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/right/type_plus_right.rb +0 -0
  637. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rstar/rule_user.rb +2 -3
  638. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/bar_view.rb +0 -0
  639. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/bridge_rules_editor.rb +0 -0
  640. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/editor.rb +1 -1
  641. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/html_views.rb +0 -0
  642. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/quick_editor.rb +0 -0
  643. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rule_form.rb +2 -3
  644. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rule_form/buttons.rb +1 -2
  645. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rule_form/form_elements.rb +2 -2
  646. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rule_form/rule_set_radio.rb +1 -0
  647. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rule_form/set_selection.rb +0 -0
  648. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/rule/rules.rb +5 -5
  649. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/self/cardtype.rb +0 -0
  650. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/self/recent_settings.rb +0 -0
  651. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/self/script_rules.rb +0 -0
  652. data/tmpsets/set/mod037-card-mod-rules/type/cardtype.rb +14 -0
  653. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set.rb +1 -1
  654. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set/html_views.rb +0 -0
  655. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set/html_views/rule_lists.rb +0 -0
  656. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set/html_views/template.rb +0 -0
  657. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set/rules_filter.rb +0 -0
  658. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/set/setting_lists.rb +1 -1
  659. data/tmpsets/set/{mod036-card-mod-rules → mod037-card-mod-rules}/type/setting.rb +5 -7
  660. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/reference_editor.rb +18 -6
  661. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/reference_editor/link_editor.rb +0 -0
  662. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/reference_editor/link_editor/link_parser.rb +0 -0
  663. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/reference_editor/nest_editor.rb +1 -2
  664. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/reference_editor/nest_image.rb +0 -2
  665. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/all/tinymce_editor.rb +0 -1
  666. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/self/script_tinymce.rb +0 -0
  667. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/self/script_tinymce_config.rb +0 -0
  668. data/tmpsets/set/{mod037-card-mod-tinymce_editor → mod038-card-mod-tinymce_editor}/self/tiny_mce.rb +2 -2
  669. data/tmpsets/set/{mod039-card-mod-monkey → mod040-card-mod-monkey}/all/event_viz.rb +3 -3
  670. data/tmpsets/set/{mod039-card-mod-monkey → mod040-card-mod-monkey}/all/view_viz.rb +2 -0
  671. data/tmpsets/set/{mod039-card-mod-monkey → mod040-card-mod-monkey}/right/debug.rb +2 -3
  672. data/tmpsets/set_pattern/100-all.rb +0 -1
  673. data/tmpsets/set_pattern/101-all_plus.rb +0 -1
  674. data/tmpsets/set_pattern/102-type.rb +0 -1
  675. data/tmpsets/set_pattern/103-star.rb +0 -1
  676. data/tmpsets/set_pattern/104-rstar.rb +0 -1
  677. data/tmpsets/set_pattern/105-rule.rb +1 -2
  678. data/tmpsets/set_pattern/106-right.rb +0 -1
  679. data/tmpsets/set_pattern/107-type_plus_right.rb +0 -1
  680. data/tmpsets/set_pattern/108-self.rb +0 -1
  681. metadata +446 -448
  682. data/lib/card/mod_inflector.rb +0 -16
  683. data/lib/card/name/all/class_methods.rb +0 -28
  684. data/mod/core/set/all/actify.rb +0 -68
  685. data/mod/core/set/all/cache.rb +0 -109
  686. data/mod/core/set/all/contextual_content.rb +0 -28
  687. data/mod/core/set/all/event_conditions.rb +0 -172
  688. data/mod/core/set/all/fetch.rb +0 -122
  689. data/mod/core/set/all/fetch_helper.rb +0 -35
  690. data/mod/core/set/all/i18n.rb +0 -11
  691. data/mod/core/set/all/pattern.rb +0 -54
  692. data/mod/core/set/all/references.rb +0 -191
  693. data/mod/core/set/all/rename.rb +0 -33
  694. data/mod/core/set/all/rules.rb +0 -81
  695. data/mod/core/spec/set/all/actify_spec.rb +0 -58
  696. data/mod/core/spec/set/all/content_spec.rb +0 -15
  697. data/mod/core/spec/set/all/event_conditions_spec.rb +0 -217
  698. data/mod/core/spec/set/all/fetch_helper_spec.rb +0 -65
  699. data/mod/core/spec/set/all/fetch_spec.rb +0 -338
  700. data/mod/core/spec/set/all/i18n_spec.rb +0 -17
  701. data/mod/core/spec/set/all/pattern_spec.rb +0 -101
  702. data/mod/core/spec/set/all/permissions/reader_rules_spec.rb +0 -166
  703. data/mod/core/spec/set/all/references_spec.rb +0 -62
  704. data/mod/core/spec/set/all/rename_spec.rb +0 -189
  705. data/mod/core/spec/set/all/rules_spec.rb +0 -100
  706. data/mod/core/spec/set/all/subcards_spec.rb +0 -102
  707. data/tmpsets/set/mod002-core/all/actify.rb +0 -77
  708. data/tmpsets/set/mod002-core/all/cache.rb +0 -118
  709. data/tmpsets/set/mod002-core/all/event_conditions.rb +0 -181
  710. data/tmpsets/set/mod002-core/all/fetch.rb +0 -131
  711. data/tmpsets/set/mod002-core/all/fetch_helper.rb +0 -44
  712. data/tmpsets/set/mod002-core/all/i18n.rb +0 -20
  713. data/tmpsets/set/mod002-core/all/name.rb +0 -238
  714. data/tmpsets/set/mod002-core/all/pattern.rb +0 -63
  715. data/tmpsets/set/mod002-core/all/references.rb +0 -200
  716. data/tmpsets/set/mod002-core/all/rename.rb +0 -42
  717. data/tmpsets/set/mod002-core/all/rules.rb +0 -90
  718. data/tmpsets/set/mod003-settings/right/autoname.rb +0 -12
  719. data/tmpsets/set/mod004-standard/all/rich_html/html_views/info.rb +0 -93
  720. data/tmpsets/set/mod004-standard/type/cardtype.rb +0 -128
  721. data/tmpsets/set/mod011-card-mod-account/right/api_key.rb +0 -57
@@ -7,7 +7,7 @@ class Card
7
7
  define_method methodname do |val|
8
8
  tie :reference,
9
9
  { ref_method => { reftype: reftype, card: val } },
10
- to: ref_field
10
+ { to: ref_field }
11
11
  end
12
12
  end
13
13
 
@@ -33,7 +33,7 @@ class Card
33
33
  # DEPRECATE?
34
34
 
35
35
  def member_of val
36
- interpret right_plus: [Card::RolesID, refer_to: val]
36
+ interpret right_plus: [Card::RolesID, { refer_to: val }]
37
37
  end
38
38
 
39
39
  def member val
@@ -74,11 +74,11 @@ class Card
74
74
  private
75
75
 
76
76
  def tie_action action, val
77
- tie :action, { action => val }, to: :card_id
77
+ tie :action, { action => val }, { to: :card_id }
78
78
  end
79
79
 
80
80
  def tie_act action, val
81
- tie :act, { action => val }, to: :actor_id
81
+ tie :act, { action => val }, { to: :actor_id }
82
82
  end
83
83
 
84
84
  def junction val, side, field
@@ -58,7 +58,7 @@ class Card
58
58
  private
59
59
 
60
60
  def inside_or?
61
- from&.is_a?(Card::Query) && from.mods[:conj] == "or"
61
+ from.is_a?(Card::Query) && from.mods[:conj] == "or"
62
62
  end
63
63
 
64
64
  # the options :to and :from can be translated into the full table/alias/field trio.
@@ -21,6 +21,7 @@ class Card
21
21
 
22
22
  def exact_name_match field
23
23
  return false unless match_prefix == "=" && field.to_sym == :name
24
+
24
25
  "#{field_sql field} = #{quote match_term.to_name.key}"
25
26
  end
26
27
 
@@ -0,0 +1,136 @@
1
+ class Card
2
+ class Reference < ApplicationRecord
3
+ module All
4
+ # frozen_string_literal: true
5
+
6
+ # Cards can refer to other cards in their content, eg via links and nests.
7
+ # The card that refers is the "referer", the card that is referred to is
8
+ # the "referee". The reference itself has its own class (Card::Reference),
9
+ # which handles id-based reference tracking.
10
+
11
+ PARTIAL_REF_CODE = "P".freeze
12
+
13
+ # cards that refer to self
14
+ def referers
15
+ referer_cards_from_references references_in
16
+ end
17
+
18
+ # cards that include self
19
+ def nesters
20
+ referer_cards_from_references references_in.where(ref_type: "I")
21
+ end
22
+
23
+ def referer_cards_from_references references
24
+ references.map(&:referer_id).uniq.map(&Card.method(:fetch)).compact
25
+ end
26
+
27
+ # cards that self refers to
28
+ def referees
29
+ referees_from_references references_out
30
+ end
31
+
32
+ # cards that self includes
33
+ def nestees
34
+ referees_from_references references_out.where(ref_type: "I")
35
+ end
36
+
37
+ def referees_from_references references
38
+ references.map(&:referee_key).uniq.map { |key| Card.fetch key, new: {} }
39
+ end
40
+
41
+ # cards that refer to self by name
42
+ # (finds cards not yet linked by id)
43
+ def name_referers
44
+ Card.joins(:references_out).where card_references: { referee_key: key }
45
+ end
46
+
47
+ # delete old references from this card's content, create new ones
48
+ def update_references_out
49
+ delete_references_out
50
+ create_references_out
51
+ end
52
+
53
+ # interpret references from this card's content and
54
+ # insert entries in reference table
55
+ def create_references_out
56
+ ref_hash = {}
57
+ each_reference_out do |referee_name, ref_type|
58
+ interpret_reference ref_hash, referee_name, ref_type
59
+ end
60
+ return if ref_hash.empty?
61
+
62
+ Reference.mass_insert reference_values_array(ref_hash)
63
+ end
64
+
65
+ # delete references from this card
66
+ def delete_references_out
67
+ raise "id required to delete references" if id.nil?
68
+
69
+ Reference.where(referer_id: id).delete_all
70
+ end
71
+
72
+ private
73
+
74
+ def with_normalized_referee referee_name
75
+ return unless referee_name # eg commented nest has no referee_name
76
+
77
+ referee_name = referee_name.to_name
78
+ referee_key = referee_name.key
79
+ return if referee_key == key # don't create self reference
80
+
81
+ yield referee_name, referee_key, Lexicon.id(referee_name)
82
+ end
83
+
84
+ # interpretation phase helps to prevent duplicate references
85
+ # results in hash like:
86
+ # { referee1_key: [referee1_id, referee1_type2],
87
+ # referee2_key...
88
+ # }
89
+ def interpret_reference ref_hash, raw_referee_name, ref_type
90
+ with_normalized_referee raw_referee_name do |name, key, id|
91
+ ref_hash[key] ||= [id]
92
+ ref_hash[key] << ref_type
93
+ interpret_partial_references ref_hash, name unless id
94
+ end
95
+ end
96
+
97
+ # translate interpreted reference hash into values array,
98
+ # removing duplicate and unnecessary ref_types
99
+ def reference_values_array ref_hash
100
+ [].tap do |values|
101
+ ref_hash.each do |referee_key, hash_val|
102
+ referee_id = hash_val.shift || "null"
103
+ each_reference_type hash_val.uniq do |ref_type|
104
+ values << [id, referee_id, "'#{referee_key}'", "'#{ref_type}'"]
105
+ end
106
+ end
107
+ end
108
+ end
109
+
110
+ def each_reference_type ref_types, &block
111
+ ref_types.delete PARTIAL_REF_CODE if ref_types.size > 1
112
+ # partial references are not necessary if there are explicit references
113
+ ref_types.each(&block)
114
+ end
115
+
116
+ # invokes the given block for each reference in content with
117
+ # the reference name and reference type
118
+ def each_reference_out
119
+ content_object.find_chunks(:Reference).each do |chunk|
120
+ yield chunk.referee_name, chunk.reference_code
121
+ end
122
+ end
123
+
124
+ # Partial references are needed to track references to virtual cards.
125
+ # For example a link to virual card [[A+*self]] won't have a referee_id,
126
+ # but when A's name is changed we have to find and update that link.
127
+ def interpret_partial_references ref_hash, referee_name
128
+ return if referee_name.simple?
129
+
130
+ [referee_name.left, referee_name.right].each do |sidename|
131
+ interpret_reference ref_hash, sidename, PARTIAL_REF_CODE
132
+ end
133
+ end
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,76 @@
1
+ class Card
2
+ module Rule
3
+ # rule-related Card instance methods
4
+ module All
5
+ def rule setting_code
6
+ rule_card(setting_code, skip_modules: true)&.db_content
7
+ end
8
+
9
+ def rule_card setting_code, options={}
10
+ Card.fetch rule_card_id(setting_code), options
11
+ end
12
+
13
+ def rule_card_id setting_code
14
+ rule_id_lookup Card::Rule.rule_cache, setting_code
15
+ end
16
+
17
+ def preference setting_code, user=nil
18
+ preference_card(setting_code, user, skip_modules: true)&.db_content
19
+ end
20
+
21
+ def preference_card setting_code, user=nil, options={}
22
+ Card.fetch preference_card_id(setting_code, user), options
23
+ end
24
+
25
+ def preference_card_id setting_code, user=nil
26
+ return unless (user_id = preference_user_id user)
27
+
28
+ rule_id_lookup Card::Rule.preference_cache,
29
+ "#{setting_code}+#{user_id}",
30
+ "#{setting_code}+#{AllID}"
31
+ end
32
+
33
+ def rule?
34
+ standard_rule? || preference?
35
+ end
36
+
37
+ def standard_rule?
38
+ (Card.fetch_type_id(name.right) == SettingID) &&
39
+ (Card.fetch_type_id(name.left) == SetID)
40
+ end
41
+
42
+ def preference?
43
+ name.parts.length > 2 &&
44
+ (Card.fetch_type_id(name.right) == SettingID) &&
45
+ (Card.fetch_type_id(name[0..-3]) == SetID) &&
46
+ valid_preferer?
47
+ end
48
+
49
+ private
50
+
51
+ def valid_preferer?
52
+ preferer = self[-2, skip_modules: true]
53
+ (preferer.type_id == UserID) || (preferer.codename == :all)
54
+ end
55
+
56
+ def preference_user_id user
57
+ case user
58
+ when Integer then user
59
+ when Card then user.id
60
+ when nil then Auth.current_id
61
+ else
62
+ raise Card::ServerError, "invalid preference user"
63
+ end
64
+ end
65
+
66
+ def rule_id_lookup lookup_hash, cache_suffix, fallback_suffix=nil
67
+ rule_set_keys.each do |rule_set_key|
68
+ rule_id = lookup_hash["#{rule_set_key}+#{cache_suffix}"]
69
+ rule_id ||= fallback_suffix && lookup_hash["#{rule_set_key}+#{fallback_suffix}"]
70
+ return rule_id if rule_id
71
+ end
72
+ nil
73
+ end
74
+ end
75
+ end
76
+ end
@@ -39,12 +39,14 @@ class Card
39
39
  def lookup_hash
40
40
  rows.each_with_object({}) do |row, hash|
41
41
  next unless (key = lookup_key row)
42
+
42
43
  hash[key] = row["rule_id"].to_i
43
44
  end
44
45
  end
45
46
 
46
47
  def lookup_key row
47
48
  return false unless (setting_code = setting_code(row))
49
+
48
50
  anchor_id = row["anchor_id"]
49
51
  return false unless (pattern_code = pattern_code(anchor_id, row))
50
52
 
@@ -10,8 +10,8 @@ class Card
10
10
  def ensure_set &block
11
11
  set_module = yield
12
12
  set_module = card_set_module_const_get(set_module) unless set_module.is_a?(Module)
13
- rescue NameError => error
14
- define_set_from_error error
13
+ rescue NameError => e
14
+ define_set_from_error e
15
15
  # try again - there might be another submodule that doesn't exist
16
16
  ensure_set(&block)
17
17
  else
@@ -21,6 +21,7 @@ class Card
21
21
  def define_set_from_error error
22
22
  match = error.message.match(/uninitialized constant (?:Card::Set::)?(.+)$/)
23
23
  return unless match
24
+
24
25
  define_set match[1]
25
26
  end
26
27
 
@@ -29,8 +30,7 @@ class Card
29
30
  add_attributes name, "remote_#{name}_url".to_sym,
30
31
  :action_id_of_cached_upload, :empty_ok,
31
32
  :storage_type, :bucket, :mod
32
- uploader_class = args[:uploader] || ::CarrierWave::FileCardUploader
33
- mount_uploader name, uploader_class
33
+ mount_uploader name, (args[:uploader] || ::CarrierWave::FileCardUploader)
34
34
  Card.define_dirty_methods name
35
35
  end
36
36
 
@@ -70,7 +70,7 @@ class Card
70
70
  # @option opts [Symbol] :stage alternate representation for specifying stage
71
71
  # @option opts [True/False] :after_subcards run event after running subcard events
72
72
  def event event, stage_or_opts={}, opts={}, &final
73
- Event.new(event, stage_or_opts, opts, self, &final).register
73
+ Event.new(event, self).register stage_or_opts, opts, &final
74
74
  end
75
75
  end
76
76
 
@@ -82,15 +82,19 @@ class Card
82
82
 
83
83
  attr_reader :set_module, :opts
84
84
 
85
- def initialize event, stage_or_opts, opts, set_module, &final
85
+ def initialize event, set_module
86
86
  @event = event
87
87
  @set_module = set_module
88
+ end
89
+
90
+ def register stage_or_opts, opts, &final
88
91
  @opts = event_opts stage_or_opts, opts
89
92
  @event_block = final
93
+ validate_conditions
94
+ define
90
95
  end
91
96
 
92
- def register
93
- validate_conditions
97
+ def define
94
98
  Card.define_callbacks @event
95
99
  define_event
96
100
  set_event_callbacks
@@ -156,8 +160,8 @@ class Card
156
160
  end
157
161
  end
158
162
 
159
- def rescuing_if_integration is_integration
160
- is_integration ? rescuing_integration { yield } : yield
163
+ def rescuing_if_integration is_integration, &block
164
+ is_integration ? rescuing_integration(&block) : yield
161
165
  end
162
166
 
163
167
  # one failed integration event should not harm others.
@@ -0,0 +1,101 @@
1
+ class Card
2
+ module Set
3
+ class Event
4
+ # card methods for testing event applicability
5
+ module All
6
+ include SkipAndTrigger
7
+
8
+ def event_applies? event
9
+ return unless set_condition_applies? event.set_module, event.opts[:changing]
10
+
11
+ CONDITIONS.all? { |c| send "#{c}_condition_applies?", event, event.opts[c] }
12
+ end
13
+
14
+ private
15
+
16
+ def set_condition_applies? set_module, old_sets
17
+ return true if set_module == Card
18
+
19
+ set_condition_card(old_sets).singleton_class.include? set_module
20
+ end
21
+
22
+ def on_condition_applies? _event, actions
23
+ actions = Array(actions).compact
24
+ actions.empty? ? true : actions.include?(action)
25
+ end
26
+
27
+ # if changing name/type, the old card has no-longer-applicable set modules,
28
+ # so we create a new card to determine whether events apply.
29
+ # (note: cached condition card would ideally be cleared after all
30
+ # conditions are reviewed)
31
+ # @param old_sets [True/False] whether to use the old_sets
32
+ def set_condition_card old_sets
33
+ return self if old_sets || no_current_action?
34
+
35
+ @set_condition_card ||=
36
+ updating_sets? ? set_condition_card_with_new_set_modules : self
37
+ end
38
+
39
+ # existing card is being changed in a way that alters its sets
40
+ def updating_sets?
41
+ action == :update && real? && (type_id_is_changing? || name_is_changing?)
42
+ end
43
+
44
+ # prevents locking in set_condition_card
45
+ def no_current_action?
46
+ return false if @current_action
47
+
48
+ @set_condition_card = nil
49
+ true
50
+ end
51
+
52
+ def set_condition_card_with_new_set_modules
53
+ cc = Card.find id
54
+ cc.name = name
55
+ cc.type_id = type_id
56
+ cc.include_set_modules
57
+ end
58
+
59
+ def changed_condition_applies? _event, db_columns
60
+ return true unless action == :update
61
+
62
+ db_columns = Array(db_columns).compact
63
+ return true if db_columns.empty?
64
+
65
+ db_columns.any? { |col| single_changed_condition_applies? col }
66
+ end
67
+ alias_method :changing_condition_applies?, :changed_condition_applies?
68
+
69
+ def when_condition_applies? _event, block
70
+ case block
71
+ when Proc then block.call(self)
72
+ when Symbol then send block
73
+ else true
74
+ end
75
+ end
76
+
77
+ def single_changed_condition_applies? db_column
78
+ return true unless db_column
79
+
80
+ send "#{db_column}_is_changing?"
81
+ end
82
+
83
+ def wrong_stage opts
84
+ return false if director.stage_ok? opts
85
+
86
+ if !stage
87
+ "phase method #{method} called outside of event phases"
88
+ else
89
+ "#{opts.inspect} method #{method} called in stage #{stage}"
90
+ end
91
+ end
92
+
93
+ def wrong_action actn
94
+ return false if on_condition_applies?(nil, actn)
95
+
96
+ "on: #{actn} method #{method} called on #{action}"
97
+ end
98
+ end
99
+ end
100
+ end
101
+ end