card 1.102.0 → 1.103.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/config/environments/production.rb +9 -9
- data/config/initializers/02_patches/active_record.rb +2 -2
- data/config/locales/en.yml +0 -144
- data/db/migrate_core_cards/20130411191151_renaming_for_menu.rb +0 -1
- data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +0 -2
- data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +0 -2
- data/db/migrate_core_cards/20190417142612_reorganize_scripts_2.rb +2 -4
- data/db/migrate_core_cards/20190502130029_add_shark_and_help_desk_role.rb +1 -1
- data/db/migrate_core_cards/20190710090209_homepage_tweaks.rb +3 -7
- data/db/migrate_core_cards/20190823220018_cleanup_for_decko_1_0.rb +2 -4
- data/db/migrate_core_cards/20190902193208_input_type.rb +3 -8
- data/db/migrate_core_cards/20190904174403_token_upgrade.rb +1 -1
- data/db/migrate_core_cards/20200821231558_add_nest_list_type.rb +2 -2
- data/db/migrate_core_cards/data/1.12_stylesheets/traditional.scss +1 -2
- data/db/seed/new/card_actions.yml +1875 -1363
- data/db/seed/new/card_acts.yml +2 -2
- data/db/seed/new/card_references.yml +1040 -536
- data/db/seed/new/cards.yml +3577 -2194
- data/db/seed/new/schema_migrations_core_cards.yml +20 -0
- data/db/seed/test/fixtures/card_actions.yml +4713 -4121
- data/db/seed/test/fixtures/card_acts.yml +755 -695
- data/db/seed/test/fixtures/card_changes.yml +103 -103
- data/db/seed/test/fixtures/card_references.yml +3185 -2632
- data/db/seed/test/fixtures/cards.yml +10091 -8454
- data/db/seed/test/fixtures/schema_migrations_core_cards.yml +20 -0
- data/db/test_seed.rb +6 -1
- data/lib/card/auth/current.rb +1 -1
- data/lib/card/cache/persistent.rb +1 -1
- data/lib/card/cache/persistent_class.rb +1 -1
- data/lib/card/cache.rb +1 -1
- data/lib/card/codename.rb +1 -1
- data/lib/card/content/chunk.rb +0 -1
- data/lib/card/content/diff/summary.rb +14 -18
- data/lib/card/content.rb +9 -1
- data/lib/card/director/act_direction.rb +5 -3
- data/lib/card/director/all.rb +4 -4
- data/lib/card/director/stages.rb +2 -0
- data/lib/card/error.rb +1 -1
- data/lib/card/fetch/results.rb +6 -6
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/abstract_file_card/migration_file.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/abstract_file_card/ruby_file.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/abstract_file_card/source_file.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/abstract_file_card.rb +0 -5
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/haml_card.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/output_helper.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/script_card.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator → file_card_creator}/style_card.rb +0 -0
- data/lib/card/{tasks/card/file_card_creator.rb → file_card_creator.rb} +0 -5
- data/lib/card/format/content.rb +5 -7
- data/lib/card/format/error.rb +1 -1
- data/lib/card/format/nest/fetch.rb +1 -1
- data/lib/card/format/render.rb +10 -10
- data/lib/card/format.rb +4 -9
- data/lib/card/lexicon.rb +30 -7
- data/lib/card/model/save_helper/save_arguments.rb +3 -1
- data/lib/card/name/card_class.rb +1 -1
- data/lib/card/name.rb +6 -6
- data/lib/card/reference/all.rb +1 -1
- data/lib/card/set/card_methods.rb +13 -0
- data/lib/card/set/event/skip_and_trigger.rb +8 -0
- data/lib/card/set/format/abstract_format/wrapper.rb +1 -1
- data/lib/card/set/format/abstract_format.rb +2 -1
- data/lib/card/set/format/haml_paths.rb +6 -5
- data/lib/card/set/format.rb +2 -3
- data/lib/card/set/helpers.rb +55 -0
- data/lib/card/set/inheritance.rb +1 -1
- data/lib/card/set/pattern/all.rb +7 -6
- data/lib/card/set/pattern/class_methods.rb +2 -2
- data/lib/card/set/pattern.rb +30 -19
- data/lib/card/set/registrar.rb +8 -2
- data/lib/card/set/type.rb +1 -1
- data/lib/card/set.rb +14 -7
- data/lib/card/view/classy.rb +15 -27
- data/lib/card/view/options/voo_api.rb +3 -1
- data/lib/card/view.rb +1 -0
- data/lib/card.rb +9 -11
- data/lib/cardio/all.rb +1 -0
- data/lib/cardio/application.rb +3 -132
- data/lib/cardio/delaying.rb +3 -3
- data/lib/cardio/generators/class_methods.rb +1 -1
- data/lib/cardio/generators/deck_helper.rb +0 -4
- data/lib/cardio/migration/deck_structure.rb +1 -1
- data/lib/cardio/migration.rb +8 -27
- data/lib/cardio/mod/dirs.rb +41 -41
- data/lib/cardio/mod/load_strategy/eval.rb +1 -1
- data/lib/cardio/mod/load_strategy/pattern_tmp_files.rb +1 -1
- data/lib/cardio/mod/load_strategy/set_binding_magic.rb +1 -1
- data/lib/cardio/mod/load_strategy/set_tmp_files.rb +11 -5
- data/lib/cardio/mod/load_strategy/tmp_files.rb +1 -1
- data/lib/cardio/mod/load_strategy.rb +4 -5
- data/lib/cardio/mod/loader/set_loader.rb +14 -14
- data/lib/cardio/mod/loader/set_pattern_loader.rb +1 -1
- data/lib/cardio/mod/loader/set_template.rb +1 -1
- data/lib/cardio/mod/loader.rb +3 -3
- data/lib/cardio/mod/modfile_api.rb +22 -0
- data/lib/cardio/mod/modfile_loader.rb +18 -0
- data/lib/cardio/mod/module_template.rb +1 -1
- data/lib/cardio/mod.rb +55 -2
- data/lib/cardio/railtie.rb +138 -0
- data/lib/cardio/schema.rb +68 -69
- data/lib/cardio/utils.rb +22 -28
- data/lib/cardio.rb +5 -10
- data/lib/generators/deck/templates/Gemfile.erb +1 -1
- data/lib/generators/deck/templates/Rakefile.erb +6 -2
- data/lib/generators/deck/templates/simplecov.rb.erb +7 -11
- data/lib/generators/migration/migration_generator.rb +1 -1
- data/lib/generators/mod/mod_generator.rb +10 -14
- data/lib/tasks/card/asset.rake +22 -0
- data/lib/{card/tasks → tasks}/card/create.rake +0 -0
- data/lib/{card/tasks → tasks}/card/migrate.rake +7 -7
- data/lib/tasks/card/mod.rake +30 -0
- data/lib/{card/tasks → tasks}/card.rake +0 -18
- data/mod/admin/locales/en.yml +4 -0
- data/mod/admin/set/all/admin.rb +16 -0
- data/mod/admin/set/self/admin.rb +4 -8
- data/mod/admin/set/self/admin_info.rb +2 -5
- data/mod/core/locales/en.yml +29 -0
- data/mod/core/set/all/initialize.rb +5 -1
- data/mod/core/set/all/name_events.rb +2 -2
- data/mod/core/set/all/reference_events.rb +5 -10
- data/mod/core/set/all/trash.rb +2 -3
- data/mod/core/set/all/utils.rb +2 -2
- data/mod/core/spec/set/all/name_events_spec.rb +10 -10
- data/mod/core/spec/set/all/trash_spec.rb +1 -1
- data/tmpsets/set_pattern/100-all.rb +1 -1
- data/tmpsets/set_pattern/101-all_plus.rb +1 -1
- data/tmpsets/set_pattern/102-type.rb +1 -1
- data/tmpsets/set_pattern/103-star.rb +1 -1
- data/tmpsets/set_pattern/104-rstar.rb +1 -1
- data/tmpsets/set_pattern/105-rule.rb +1 -1
- data/tmpsets/set_pattern/106-right.rb +1 -1
- data/tmpsets/set_pattern/107-type_plus_right.rb +1 -1
- data/tmpsets/set_pattern/108-self.rb +1 -1
- metadata +78 -496
- data/lib/card/set/basket.rb +0 -59
- data/lib/cardio/defaults.yml +0 -71
- data/tmpsets/set/mod001-admin/self/admin.rb +0 -155
- data/tmpsets/set/mod001-admin/self/admin_info.rb +0 -52
- data/tmpsets/set/mod001-admin/self/debugger.rb +0 -12
- data/tmpsets/set/mod002-core/all/abort.rb +0 -85
- data/tmpsets/set/mod002-core/all/assign_attributes.rb +0 -119
- data/tmpsets/set/mod002-core/all/autoname.rb +0 -26
- data/tmpsets/set/mod002-core/all/codename.rb +0 -39
- data/tmpsets/set/mod002-core/all/collection.rb +0 -62
- data/tmpsets/set/mod002-core/all/content.rb +0 -74
- data/tmpsets/set/mod002-core/all/debug.rb +0 -29
- data/tmpsets/set/mod002-core/all/initialize.rb +0 -93
- data/tmpsets/set/mod002-core/all/name_events.rb +0 -172
- data/tmpsets/set/mod002-core/all/reference_events.rb +0 -78
- data/tmpsets/set/mod002-core/all/states.rb +0 -93
- data/tmpsets/set/mod002-core/all/subcards.rb +0 -29
- data/tmpsets/set/mod002-core/all/trash.rb +0 -142
- data/tmpsets/set/mod002-core/all/type.rb +0 -70
- data/tmpsets/set/mod002-core/all/utils.rb +0 -104
- data/tmpsets/set/mod002-core/right/autoname.rb +0 -12
- data/tmpsets/set/mod002-core/self/autoname.rb +0 -12
- data/tmpsets/set/mod002-core/self/trash.rb +0 -73
- data/tmpsets/set/mod002-core/self/version.rb +0 -18
- data/tmpsets/set/mod002-core/type/cardtype.rb +0 -37
- data/tmpsets/set/mod004-email/abstract/email_field.rb +0 -49
- data/tmpsets/set/mod004-email/abstract/test_context.rb +0 -36
- data/tmpsets/set/mod004-email/all/email_html.rb +0 -18
- data/tmpsets/set/mod004-email/all/email_text.rb +0 -22
- data/tmpsets/set/mod004-email/right/bcc.rb +0 -10
- data/tmpsets/set/mod004-email/right/cc.rb +0 -10
- data/tmpsets/set/mod004-email/right/from.rb +0 -10
- data/tmpsets/set/mod004-email/right/html_message.rb +0 -23
- data/tmpsets/set/mod004-email/right/subject.rb +0 -10
- data/tmpsets/set/mod004-email/right/text_message.rb +0 -10
- data/tmpsets/set/mod004-email/right/to.rb +0 -10
- data/tmpsets/set/mod004-email/type/email_template/email_config.rb +0 -92
- data/tmpsets/set/mod004-email/type/email_template.rb +0 -101
- data/tmpsets/set/mod005-collection/abstract/items.rb +0 -215
- data/tmpsets/set/mod005-collection/abstract/paging/paging_links.rb +0 -99
- data/tmpsets/set/mod005-collection/abstract/paging/paging_views.rb +0 -121
- data/tmpsets/set/mod005-collection/abstract/paging.rb +0 -74
- data/tmpsets/set/mod005-collection/all/extended.rb +0 -59
- data/tmpsets/set/mod005-collection/all/item.rb +0 -145
- data/tmpsets/set/mod006-content/abstract/00_sources.rb +0 -33
- data/tmpsets/set/mod006-content/abstract/01_code_file.rb +0 -94
- data/tmpsets/set/mod006-content/abstract/asset_file.rb +0 -84
- data/tmpsets/set/mod006-content/abstract/haml_file.rb +0 -32
- data/tmpsets/set/mod006-content/abstract/lock.rb +0 -36
- data/tmpsets/set/mod006-content/abstract/read_only.rb +0 -23
- data/tmpsets/set/mod006-content/abstract/templated_nests.rb +0 -16
- data/tmpsets/set/mod006-content/abstract/vendor_code_file.rb +0 -18
- data/tmpsets/set/mod006-content/all/chunk.rb +0 -151
- data/tmpsets/set/mod006-content/all/contextual_content.rb +0 -29
- data/tmpsets/set/mod006-content/all/templating.rb +0 -79
- data/tmpsets/set/mod006-content/right/default.rb +0 -43
- data/tmpsets/set/mod006-content/right/structure.rb +0 -85
- data/tmpsets/set/mod006-content/self/default.rb +0 -11
- data/tmpsets/set/mod006-content/self/structure.rb +0 -13
- data/tmpsets/set/mod007-format/all/active_card.rb +0 -14
- data/tmpsets/set/mod007-format/all/base.rb +0 -148
- data/tmpsets/set/mod007-format/all/content.rb +0 -77
- data/tmpsets/set/mod007-format/all/css.rb +0 -45
- data/tmpsets/set/mod007-format/all/csv.rb +0 -103
- data/tmpsets/set/mod007-format/all/demo.rb +0 -45
- data/tmpsets/set/mod007-format/all/error.rb +0 -81
- data/tmpsets/set/mod007-format/all/export.rb +0 -79
- data/tmpsets/set/mod007-format/all/file.rb +0 -18
- data/tmpsets/set/mod007-format/all/frame.rb +0 -58
- data/tmpsets/set/mod007-format/all/haml.rb +0 -84
- data/tmpsets/set/mod007-format/all/head.rb +0 -170
- data/tmpsets/set/mod007-format/all/header.rb +0 -71
- data/tmpsets/set/mod007-format/all/html_content.rb +0 -178
- data/tmpsets/set/mod007-format/all/html_error.rb +0 -217
- data/tmpsets/set/mod007-format/all/html_show.rb +0 -62
- data/tmpsets/set/mod007-format/all/html_title.rb +0 -56
- data/tmpsets/set/mod007-format/all/html_wrapper.rb +0 -173
- data/tmpsets/set/mod007-format/all/js.rb +0 -18
- data/tmpsets/set/mod007-format/all/json.rb +0 -174
- data/tmpsets/set/mod007-format/all/links.rb +0 -160
- data/tmpsets/set/mod007-format/all/menu.rb +0 -138
- data/tmpsets/set/mod007-format/all/path.rb +0 -88
- data/tmpsets/set/mod007-format/all/rich_html.rb +0 -25
- data/tmpsets/set/mod007-format/all/rss.rb +0 -86
- data/tmpsets/set/mod007-format/all/text.rb +0 -15
- data/tmpsets/set/mod007-format/self/home.rb +0 -18
- data/tmpsets/set/mod007-format/type/cardtype.rb +0 -98
- data/tmpsets/set/mod007-format/type/html.rb +0 -36
- data/tmpsets/set/mod007-format/type/json.rb +0 -50
- data/tmpsets/set/mod007-format/type/number.rb +0 -33
- data/tmpsets/set/mod007-format/type/phrase.rb +0 -14
- data/tmpsets/set/mod007-format/type/plain_text.rb +0 -18
- data/tmpsets/set/mod007-format/type/toggle.rb +0 -47
- data/tmpsets/set/mod007-format/type/uri.rb +0 -24
- data/tmpsets/set/mod008-list/abstract/01_pointer/events.rb +0 -80
- data/tmpsets/set/mod008-list/abstract/01_pointer/html_views/filter.rb +0 -72
- data/tmpsets/set/mod008-list/abstract/01_pointer/html_views.rb +0 -131
- data/tmpsets/set/mod008-list/abstract/01_pointer/options_api.rb +0 -87
- data/tmpsets/set/mod008-list/abstract/01_pointer/other_views.rb +0 -112
- data/tmpsets/set/mod008-list/abstract/01_pointer.rb +0 -19
- data/tmpsets/set/mod008-list/abstract/code_pointer.rb +0 -44
- data/tmpsets/set/mod008-list/abstract/id_pointer.rb +0 -30
- data/tmpsets/set/mod008-list/all/supports_content_options.rb +0 -16
- data/tmpsets/set/mod008-list/right/content_option_view.rb +0 -19
- data/tmpsets/set/mod008-list/right/content_options.rb +0 -32
- data/tmpsets/set/mod008-list/self/content_option_view.rb +0 -18
- data/tmpsets/set/mod008-list/self/content_options.rb +0 -18
- data/tmpsets/set/mod008-list/self/input_options.rb +0 -23
- data/tmpsets/set/mod008-list/type/link_list.rb +0 -49
- data/tmpsets/set/mod008-list/type/list.rb +0 -25
- data/tmpsets/set/mod008-list/type/nest_list.rb +0 -55
- data/tmpsets/set/mod008-list/type/pointer.rb +0 -19
- data/tmpsets/set/mod009-permissions/abstract/permission.rb +0 -132
- data/tmpsets/set/mod009-permissions/all/permissions.rb +0 -240
- data/tmpsets/set/mod009-permissions/all/update_read_rules.rb +0 -20
- data/tmpsets/set/mod009-permissions/right/create.rb +0 -10
- data/tmpsets/set/mod009-permissions/right/delete.rb +0 -10
- data/tmpsets/set/mod009-permissions/right/read.rb +0 -86
- data/tmpsets/set/mod009-permissions/right/update.rb +0 -10
- data/tmpsets/set/mod009-permissions/self/create.rb +0 -12
- data/tmpsets/set/mod009-permissions/self/delete.rb +0 -12
- data/tmpsets/set/mod009-permissions/self/read.rb +0 -12
- data/tmpsets/set/mod009-permissions/self/update.rb +0 -12
- data/tmpsets/set/mod010-account/abstract/account_field.rb +0 -31
- data/tmpsets/set/mod010-account/abstract/accountable.rb +0 -62
- data/tmpsets/set/mod010-account/all/account.rb +0 -115
- data/tmpsets/set/mod010-account/right/account/events.rb +0 -108
- data/tmpsets/set/mod010-account/right/account/views.rb +0 -74
- data/tmpsets/set/mod010-account/right/account.rb +0 -62
- data/tmpsets/set/mod010-account/right/email.rb +0 -56
- data/tmpsets/set/mod010-account/right/password.rb +0 -61
- data/tmpsets/set/mod010-account/right/roles.rb +0 -36
- data/tmpsets/set/mod010-account/right/salt.rb +0 -22
- data/tmpsets/set/mod010-account/right/status.rb +0 -27
- data/tmpsets/set/mod010-account/self/signin.rb +0 -222
- data/tmpsets/set/mod010-account/type/role.rb +0 -30
- data/tmpsets/set/mod010-account/type/signup/views.rb +0 -107
- data/tmpsets/set/mod010-account/type/signup.rb +0 -63
- data/tmpsets/set/mod010-account/type/user.rb +0 -76
- data/tmpsets/set/mod010-account/type_plus_right/user/email.rb +0 -22
- data/tmpsets/set/mod011-edit/all/bridge/bridge_pills.rb +0 -56
- data/tmpsets/set/mod011-edit/all/bridge/follow_section.rb +0 -46
- data/tmpsets/set/mod011-edit/all/bridge/related_section.rb +0 -43
- data/tmpsets/set/mod011-edit/all/bridge/tab_views.rb +0 -50
- data/tmpsets/set/mod011-edit/all/bridge/tab_visibility.rb +0 -67
- data/tmpsets/set/mod011-edit/all/bridge.rb +0 -73
- data/tmpsets/set/mod011-edit/all/edit_content.rb +0 -69
- data/tmpsets/set/mod011-edit/all/edit_inline.rb +0 -65
- data/tmpsets/set/mod011-edit/all/edit_name.rb +0 -65
- data/tmpsets/set/mod011-edit/all/edit_type.rb +0 -129
- data/tmpsets/set/mod011-edit/all/editing.rb +0 -100
- data/tmpsets/set/mod011-edit/all/editor.rb +0 -63
- data/tmpsets/set/mod011-edit/all/form.rb +0 -257
- data/tmpsets/set/mod011-edit/all/form_buttons.rb +0 -82
- data/tmpsets/set/mod011-edit/all/form_elements.rb +0 -81
- data/tmpsets/set/mod011-edit/all/formgroup.rb +0 -46
- data/tmpsets/set/mod011-edit/all/new.rb +0 -195
- data/tmpsets/set/mod011-edit/all/overlay_guide.rb +0 -18
- data/tmpsets/set/mod011-edit/all/template_nest.rb +0 -51
- data/tmpsets/set/mod011-edit/right/input_type.rb +0 -44
- data/tmpsets/set/mod011-edit/self/input_type.rb +0 -21
- data/tmpsets/set/mod011-edit/type/list.rb +0 -24
- data/tmpsets/set/mod011-edit/type/plain_text.rb +0 -22
- data/tmpsets/set/mod011-edit/type/pointer.rb +0 -20
- data/tmpsets/set/mod012-history/all/history/act_listing.rb +0 -136
- data/tmpsets/set/mod012-history/all/history/actions.rb +0 -137
- data/tmpsets/set/mod012-history/all/history/acts.rb +0 -17
- data/tmpsets/set/mod012-history/all/history/events.rb +0 -109
- data/tmpsets/set/mod012-history/all/history/last.rb +0 -107
- data/tmpsets/set/mod012-history/all/history/revision.rb +0 -74
- data/tmpsets/set/mod012-history/all/history/selected.rb +0 -73
- data/tmpsets/set/mod012-history/all/history/views.rb +0 -75
- data/tmpsets/set/mod012-history/all/history.rb +0 -119
- data/tmpsets/set/mod012-history/all/history_bridge.rb +0 -88
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/cloud.rb +0 -146
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/coded.rb +0 -36
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/local.rb +0 -52
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/paths.rb +0 -68
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/storage_type.rb +0 -180
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/upload_cache.rb +0 -98
- data/tmpsets/set/mod013-carrierwave/abstract/attachment/web.rb +0 -12
- data/tmpsets/set/mod013-carrierwave/abstract/attachment.rb +0 -144
- data/tmpsets/set/mod013-carrierwave/all/file_utils.rb +0 -50
- data/tmpsets/set/mod013-carrierwave/self/admin.rb +0 -32
- data/tmpsets/set/mod013-carrierwave/self/favicon.rb +0 -26
- data/tmpsets/set/mod013-carrierwave/self/new_file.rb +0 -22
- data/tmpsets/set/mod013-carrierwave/self/new_image.rb +0 -22
- data/tmpsets/set/mod013-carrierwave/type/file.rb +0 -144
- data/tmpsets/set/mod013-carrierwave/type/image/html_views.rb +0 -88
- data/tmpsets/set/mod013-carrierwave/type/image.rb +0 -113
- data/tmpsets/set/mod014-virtual/abstract/virtual_cache.rb +0 -52
- data/tmpsets/set/mod015-machines/abstract/machine/output_cache.rb +0 -25
- data/tmpsets/set/mod015-machines/abstract/machine/output_update.rb +0 -84
- data/tmpsets/set/mod015-machines/abstract/machine.rb +0 -230
- data/tmpsets/set/mod015-machines/abstract/machine_input.rb +0 -82
- data/tmpsets/set/mod015-machines/all/reset_machines.rb +0 -31
- data/tmpsets/set/mod015-machines/right/machine_cache.rb +0 -14
- data/tmpsets/set/mod015-machines/right/machine_input.rb +0 -16
- data/tmpsets/set/mod015-machines/right/machine_output.rb +0 -53
- data/tmpsets/set/mod016-script/abstract/01_asset_java_script.rb +0 -32
- data/tmpsets/set/mod016-script/abstract/asset_coffee_script.rb +0 -34
- data/tmpsets/set/mod016-script/abstract/asset_list.rb +0 -98
- data/tmpsets/set/mod016-script/abstract/manifest_group.rb +0 -22
- data/tmpsets/set/mod016-script/abstract/mod_assets.rb +0 -145
- data/tmpsets/set/mod016-script/abstract/script.rb +0 -98
- data/tmpsets/set/mod016-script/right/script.rb +0 -30
- data/tmpsets/set/mod016-script/self/script.rb +0 -10
- data/tmpsets/set/mod016-script/self/script_html5shiv_printshiv.rb +0 -20
- data/tmpsets/set/mod016-script/self/script_mods.rb +0 -10
- data/tmpsets/set/mod016-script/type/01_coffee_script.rb +0 -35
- data/tmpsets/set/mod016-script/type/02_java_script.rb +0 -24
- data/tmpsets/set/mod016-script/type/local_folder_group.rb +0 -30
- data/tmpsets/set/mod016-script/type/local_manifest_group.rb +0 -35
- data/tmpsets/set/mod016-script/type/mod_script_assets.rb +0 -22
- data/tmpsets/set/mod016-script/type/remote_manifest_group.rb +0 -41
- data/tmpsets/set/mod017-ace_editor/all/ace_editor.rb +0 -20
- data/tmpsets/set/mod017-ace_editor/self/ace.rb +0 -16
- data/tmpsets/set/mod017-ace_editor/self/script_ace.rb +0 -12
- data/tmpsets/set/mod017-ace_editor/self/script_ace_config.rb +0 -12
- data/tmpsets/set/mod018-alias/all/alias.rb +0 -30
- data/tmpsets/set/mod018-alias/all_plus/alias.rb +0 -31
- data/tmpsets/set/mod018-alias/type/alias.rb +0 -42
- data/tmpsets/set/mod019-api_key/right/account.rb +0 -18
- data/tmpsets/set/mod019-api_key/right/api_key.rb +0 -103
- data/tmpsets/set/mod020-style/abstract/skin_box.rb +0 -44
- data/tmpsets/set/mod020-style/right/style.rb +0 -65
- data/tmpsets/set/mod020-style/self/style.rb +0 -13
- data/tmpsets/set/mod020-style/self/style_bootstrap_compatible.rb +0 -10
- data/tmpsets/set/mod020-style/self/style_cards.rb +0 -10
- data/tmpsets/set/mod020-style/self/style_jquery_ui_smoothness.rb +0 -10
- data/tmpsets/set/mod020-style/self/style_libraries.rb +0 -10
- data/tmpsets/set/mod020-style/self/style_mods.rb +0 -10
- data/tmpsets/set/mod020-style/type/css.rb +0 -95
- data/tmpsets/set/mod020-style/type/scss.rb +0 -30
- data/tmpsets/set/mod020-style/type/skin.rb +0 -18
- data/tmpsets/set/mod021-bar_and_box/abstract/media.rb +0 -26
- data/tmpsets/set/mod021-bar_and_box/all/bar.rb +0 -112
- data/tmpsets/set/mod021-bar_and_box/all/box.rb +0 -25
- data/tmpsets/set/mod021-bar_and_box/self/style_media.rb +0 -15
- data/tmpsets/set/mod021-bar_and_box/type/image.rb +0 -47
- data/tmpsets/set/mod022-bootstrap/abstract/bootstrap_code_file.rb +0 -65
- data/tmpsets/set/mod022-bootstrap/abstract/bootswatch_theme/html_views.rb +0 -39
- data/tmpsets/set/mod022-bootstrap/abstract/bootswatch_theme.rb +0 -167
- data/tmpsets/set/mod022-bootstrap/abstract/bs_badge.rb +0 -31
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/accordion.rb +0 -72
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/dropdown.rb +0 -93
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/form.rb +0 -44
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/helper.rb +0 -73
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/icon.rb +0 -125
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/navbar.rb +0 -55
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/table.rb +0 -110
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/tabs.rb +0 -49
- data/tmpsets/set/mod022-bootstrap/all/bootstrap/wrapper.rb +0 -27
- data/tmpsets/set/mod022-bootstrap/all/rich_bootstrap.rb +0 -24
- data/tmpsets/set/mod022-bootstrap/self/bootstrap_core.rb +0 -23
- data/tmpsets/set/mod022-bootstrap/self/bootstrap_functions.rb +0 -14
- data/tmpsets/set/mod022-bootstrap/self/font_awesome.rb +0 -11
- data/tmpsets/set/mod022-bootstrap/self/material_icons.rb +0 -11
- data/tmpsets/set/mod022-bootstrap/self/script_load_select2.rb +0 -11
- data/tmpsets/set/mod022-bootstrap/self/smartmenu_css.rb +0 -14
- data/tmpsets/set/mod022-bootstrap/self/smartmenu_js.rb +0 -14
- data/tmpsets/set/mod022-bootstrap/self/style_bootstrap_cards.rb +0 -10
- data/tmpsets/set/mod022-bootstrap/self/style_bootstrap_colorpicker.rb +0 -15
- data/tmpsets/set/mod022-bootstrap/self/style_select2.rb +0 -19
- data/tmpsets/set/mod022-bootstrap/self/style_select2_bootstrap.rb +0 -10
- data/tmpsets/set/mod022-bootstrap/type/bootswatch_skin.rb +0 -24
- data/tmpsets/set/mod022-bootstrap/type/customized_bootswatch_skin/html_views.rb +0 -43
- data/tmpsets/set/mod022-bootstrap/type/customized_bootswatch_skin.rb +0 -129
- data/tmpsets/set/mod022-bootstrap/type_plus_right/customized_bootswatch_skin/colors.rb +0 -123
- data/tmpsets/set/mod023-comment/all/comment.rb +0 -92
- data/tmpsets/set/mod023-comment/right/comment.rb +0 -10
- data/tmpsets/set/mod023-comment/right/discussion.rb +0 -18
- data/tmpsets/set/mod024-date/all/calendar.rb +0 -18
- data/tmpsets/set/mod024-date/right/when_created.rb +0 -16
- data/tmpsets/set/mod024-date/right/when_last_edited.rb +0 -16
- data/tmpsets/set/mod024-date/self/datepicker.rb +0 -15
- data/tmpsets/set/mod024-date/self/now.rb +0 -14
- data/tmpsets/set/mod024-date/self/script_datepicker_config.rb +0 -12
- data/tmpsets/set/mod024-date/self/style_datepicker.rb +0 -20
- data/tmpsets/set/mod024-date/type/date.rb +0 -14
- data/tmpsets/set/mod026-follow/abstract/follow_option.rb +0 -65
- data/tmpsets/set/mod026-follow/all/follow/follow_link.rb +0 -70
- data/tmpsets/set/mod026-follow/all/follow/follow_link_views.rb +0 -38
- data/tmpsets/set/mod026-follow/all/follow/followed_by.rb +0 -79
- data/tmpsets/set/mod026-follow/all/follow/follower_ids.rb +0 -130
- data/tmpsets/set/mod026-follow/all/follow/start_follow_link.rb +0 -19
- data/tmpsets/set/mod026-follow/all/follow/stop_follow_link.rb +0 -20
- data/tmpsets/set/mod026-follow/all/follow.rb +0 -42
- data/tmpsets/set/mod026-follow/all/notify/base_views.rb +0 -137
- data/tmpsets/set/mod026-follow/all/notify/html_views.rb +0 -26
- data/tmpsets/set/mod026-follow/all/notify.rb +0 -91
- data/tmpsets/set/mod026-follow/right/account.rb +0 -24
- data/tmpsets/set/mod026-follow/right/follow.rb +0 -127
- data/tmpsets/set/mod026-follow/right/follow_fields.rb +0 -12
- data/tmpsets/set/mod026-follow/right/followers.rb +0 -32
- data/tmpsets/set/mod026-follow/right/following.rb +0 -59
- data/tmpsets/set/mod026-follow/self/always.rb +0 -22
- data/tmpsets/set/mod026-follow/self/created.rb +0 -28
- data/tmpsets/set/mod026-follow/self/edited.rb +0 -29
- data/tmpsets/set/mod026-follow/self/follow.rb +0 -10
- data/tmpsets/set/mod026-follow/self/follow_defaults.rb +0 -98
- data/tmpsets/set/mod026-follow/self/follow_fields.rb +0 -10
- data/tmpsets/set/mod026-follow/self/never.rb +0 -22
- data/tmpsets/set/mod026-follow/type/cardtype.rb +0 -30
- data/tmpsets/set/mod026-follow/type/notification_template.rb +0 -42
- data/tmpsets/set/mod026-follow/type/set.rb +0 -62
- data/tmpsets/set/mod026-follow/type/user.rb +0 -16
- data/tmpsets/set/mod026-follow/type_plus_right/user/follow/follow_editor_helper.rb +0 -130
- data/tmpsets/set/mod026-follow/type_plus_right/user/follow.rb +0 -87
- data/tmpsets/set/mod027-google_analytics/all/google_analytics.rb +0 -51
- data/tmpsets/set/mod028-help/all/guide.rb +0 -60
- data/tmpsets/set/mod028-help/all/help.rb +0 -58
- data/tmpsets/set/mod028-help/right/guide.rb +0 -17
- data/tmpsets/set/mod028-help/right/help.rb +0 -24
- data/tmpsets/set/mod028-help/self/guide.rb +0 -11
- data/tmpsets/set/mod028-help/self/help.rb +0 -13
- data/tmpsets/set/mod029-integrate/all/observer.rb +0 -31
- data/tmpsets/set/mod029-integrate/self/on_create.rb +0 -11
- data/tmpsets/set/mod029-integrate/self/on_delete.rb +0 -11
- data/tmpsets/set/mod029-integrate/self/on_update.rb +0 -11
- data/tmpsets/set/mod029-integrate/self/thanks.rb +0 -13
- data/tmpsets/set/mod030-session/all/location_history.rb +0 -28
- data/tmpsets/set/mod030-session/type/session.rb +0 -70
- data/tmpsets/set/mod031-layout/abstract/account_dropdown.rb +0 -32
- data/tmpsets/set/mod031-layout/abstract/pointer/html_views.rb +0 -14
- data/tmpsets/set/mod031-layout/all/alert.rb +0 -32
- data/tmpsets/set/mod031-layout/all/layouts.rb +0 -43
- data/tmpsets/set/mod031-layout/all/modal.rb +0 -129
- data/tmpsets/set/mod031-layout/all/navbar_links.rb +0 -77
- data/tmpsets/set/mod031-layout/all/overlay.rb +0 -110
- data/tmpsets/set/mod031-layout/all/process_layout.rb +0 -88
- data/tmpsets/set/mod031-layout/all/tabs.rb +0 -61
- data/tmpsets/set/mod031-layout/right/enabled_roles.rb +0 -70
- data/tmpsets/set/mod031-layout/right/head.rb +0 -26
- data/tmpsets/set/mod031-layout/self/account_links.rb +0 -107
- data/tmpsets/set/mod031-layout/self/alerts.rb +0 -14
- data/tmpsets/set/mod031-layout/self/dropdown_divider.rb +0 -18
- data/tmpsets/set/mod031-layout/self/foot.rb +0 -14
- data/tmpsets/set/mod031-layout/self/head.rb +0 -35
- data/tmpsets/set/mod031-layout/self/layout.rb +0 -12
- data/tmpsets/set/mod031-layout/self/navbox.rb +0 -42
- data/tmpsets/set/mod031-layout/self/sidebar.rb +0 -14
- data/tmpsets/set/mod031-layout/type/html.rb +0 -23
- data/tmpsets/set/mod031-layout/type/layout_type.rb +0 -25
- data/tmpsets/set/mod032-legacy/abstract/table_of_contents.rb +0 -76
- data/tmpsets/set/mod032-legacy/self/csv_structure.rb +0 -10
- data/tmpsets/set/mod032-legacy/self/default_html_view.rb +0 -10
- data/tmpsets/set/mod032-legacy/self/table_of_contents.rb +0 -13
- data/tmpsets/set/mod032-legacy/type/basic.rb +0 -10
- data/tmpsets/set/mod033-markdown/type/markdown.rb +0 -26
- data/tmpsets/set/mod034-prosemirror_editor/all/prosemirror_editor.rb +0 -16
- data/tmpsets/set/mod034-prosemirror_editor/self/script_prosemirror.rb +0 -12
- data/tmpsets/set/mod034-prosemirror_editor/self/script_prosemirror_config.rb +0 -13
- data/tmpsets/set/mod034-prosemirror_editor/self/style_prosemirror.rb +0 -12
- data/tmpsets/set/mod035-recaptcha/all/recaptcha.rb +0 -111
- data/tmpsets/set/mod035-recaptcha/self/admin_info.rb +0 -36
- data/tmpsets/set/mod035-recaptcha/self/captcha.rb +0 -14
- data/tmpsets/set/mod035-recaptcha/self/recaptcha_proxy.rb +0 -12
- data/tmpsets/set/mod035-recaptcha/self/recaptcha_secret_key.rb +0 -18
- data/tmpsets/set/mod035-recaptcha/self/recaptcha_settings.rb +0 -40
- data/tmpsets/set/mod035-recaptcha/self/recaptcha_site_key.rb +0 -18
- data/tmpsets/set/mod036-search/abstract/00_filter_helper.rb +0 -55
- data/tmpsets/set/mod036-search/abstract/02_search_params.rb +0 -59
- data/tmpsets/set/mod036-search/abstract/03_filter/filter_form.rb +0 -110
- data/tmpsets/set/mod036-search/abstract/03_filter/form_helper.rb +0 -114
- data/tmpsets/set/mod036-search/abstract/03_filter/query_construction.rb +0 -47
- data/tmpsets/set/mod036-search/abstract/03_filter.rb +0 -38
- data/tmpsets/set/mod036-search/abstract/04_right_filter_form.rb +0 -35
- data/tmpsets/set/mod036-search/abstract/05_search/views.rb +0 -174
- data/tmpsets/set/mod036-search/abstract/05_search.rb +0 -93
- data/tmpsets/set/mod036-search/abstract/06_cql_search.rb +0 -102
- data/tmpsets/set/mod036-search/abstract/filterable.rb +0 -22
- data/tmpsets/set/mod036-search/abstract/filterable_bar.rb +0 -20
- data/tmpsets/set/mod036-search/right/children.rb +0 -13
- data/tmpsets/set/mod036-search/right/created.rb +0 -12
- data/tmpsets/set/mod036-search/right/edited.rb +0 -12
- data/tmpsets/set/mod036-search/right/editors.rb +0 -12
- data/tmpsets/set/mod036-search/right/follow.rb +0 -12
- data/tmpsets/set/mod036-search/right/linked_to_by.rb +0 -12
- data/tmpsets/set/mod036-search/right/links_to.rb +0 -14
- data/tmpsets/set/mod036-search/right/mates.rb +0 -12
- data/tmpsets/set/mod036-search/right/nested_by.rb +0 -12
- data/tmpsets/set/mod036-search/right/nests.rb +0 -12
- data/tmpsets/set/mod036-search/right/referred_to_by.rb +0 -12
- data/tmpsets/set/mod036-search/right/refers_to.rb +0 -12
- data/tmpsets/set/mod036-search/self/recent.rb +0 -44
- data/tmpsets/set/mod036-search/self/search.rb +0 -104
- data/tmpsets/set/mod036-search/type/cardtype.rb +0 -14
- data/tmpsets/set/mod036-search/type/search_type.rb +0 -90
- data/tmpsets/set/mod037-rules/all/related_sets.rb +0 -34
- data/tmpsets/set/mod037-rules/right/self.rb +0 -12
- data/tmpsets/set/mod037-rules/right/type_plus_right.rb +0 -13
- data/tmpsets/set/mod037-rules/rstar/rule_user.rb +0 -16
- data/tmpsets/set/mod037-rules/rule/bar_view.rb +0 -102
- data/tmpsets/set/mod037-rules/rule/bridge_rules_editor.rb +0 -37
- data/tmpsets/set/mod037-rules/rule/editor.rb +0 -119
- data/tmpsets/set/mod037-rules/rule/html_views.rb +0 -22
- data/tmpsets/set/mod037-rules/rule/quick_editor.rb +0 -48
- data/tmpsets/set/mod037-rules/rule/rule_form/buttons.rb +0 -54
- data/tmpsets/set/mod037-rules/rule/rule_form/form_elements.rb +0 -61
- data/tmpsets/set/mod037-rules/rule/rule_form/rule_set_radio.rb +0 -92
- data/tmpsets/set/mod037-rules/rule/rule_form/set_selection.rb +0 -48
- data/tmpsets/set/mod037-rules/rule/rule_form.rb +0 -65
- data/tmpsets/set/mod037-rules/rule/rules.rb +0 -118
- data/tmpsets/set/mod037-rules/self/cardtype.rb +0 -51
- data/tmpsets/set/mod037-rules/self/recent_settings.rb +0 -16
- data/tmpsets/set/mod037-rules/self/script_rules.rb +0 -12
- data/tmpsets/set/mod037-rules/type/cardtype.rb +0 -14
- data/tmpsets/set/mod037-rules/type/set/html_views/rule_lists.rb +0 -51
- data/tmpsets/set/mod037-rules/type/set/html_views/template.rb +0 -21
- data/tmpsets/set/mod037-rules/type/set/html_views.rb +0 -60
- data/tmpsets/set/mod037-rules/type/set/rules_filter.rb +0 -69
- data/tmpsets/set/mod037-rules/type/set/setting_lists.rb +0 -85
- data/tmpsets/set/mod037-rules/type/set.rb +0 -116
- data/tmpsets/set/mod037-rules/type/setting.rb +0 -86
- data/tmpsets/set/mod038-tinymce_editor/all/reference_editor/link_editor/link_parser.rb +0 -43
- data/tmpsets/set/mod038-tinymce_editor/all/reference_editor/link_editor.rb +0 -42
- data/tmpsets/set/mod038-tinymce_editor/all/reference_editor/nest_editor.rb +0 -184
- data/tmpsets/set/mod038-tinymce_editor/all/reference_editor/nest_image.rb +0 -77
- data/tmpsets/set/mod038-tinymce_editor/all/reference_editor.rb +0 -53
- data/tmpsets/set/mod038-tinymce_editor/all/tinymce_editor.rb +0 -15
- data/tmpsets/set/mod038-tinymce_editor/self/script_tinymce.rb +0 -12
- data/tmpsets/set/mod038-tinymce_editor/self/script_tinymce_config.rb +0 -12
- data/tmpsets/set/mod038-tinymce_editor/self/tiny_mce.rb +0 -16
- data/tmpsets/set/mod040-monkey/all/event_viz.rb +0 -73
- data/tmpsets/set/mod040-monkey/all/view_viz.rb +0 -34
- data/tmpsets/set/mod040-monkey/right/debug.rb +0 -96
@@ -1,180 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Abstract; module Attachment;
|
3
|
-
# Set: Abstract (Attachment, StorageType)
|
4
|
-
#
|
5
|
-
module StorageType;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/storage_type.rb"; end
|
8
|
-
attr_writer :bucket, :storage_type
|
9
|
-
|
10
|
-
event :storage_type_change, :store, on: :update, when: :storage_type_changed? do
|
11
|
-
# carrierwave stores file if @cache_id is not nil
|
12
|
-
attachment.cache_stored_file!
|
13
|
-
# attachment.retrieve_from_cache!(attachment.cache_name)
|
14
|
-
update_storage_attributes
|
15
|
-
# next line might be necessary to move files to cloud
|
16
|
-
|
17
|
-
# make sure that we get the new identifier
|
18
|
-
# otherwise action_id will return wrong id for new identifier
|
19
|
-
db_content_will_change!
|
20
|
-
write_identifier
|
21
|
-
end
|
22
|
-
|
23
|
-
event :validate_storage_type, :validate, on: :save do
|
24
|
-
return if known_storage_type? will_be_stored_as
|
25
|
-
|
26
|
-
errors.add :storage_type, unknown_storage_type(@new_storage_type)
|
27
|
-
end
|
28
|
-
|
29
|
-
def will_be_stored_as
|
30
|
-
@new_storage_type || storage_type
|
31
|
-
end
|
32
|
-
|
33
|
-
def read_only?
|
34
|
-
web? || (cloud? && bucket_config[:read_only])
|
35
|
-
end
|
36
|
-
|
37
|
-
def cloud?
|
38
|
-
storage_type == :cloud
|
39
|
-
end
|
40
|
-
|
41
|
-
def web?
|
42
|
-
storage_type == :web
|
43
|
-
end
|
44
|
-
|
45
|
-
def local?
|
46
|
-
storage_type == :local
|
47
|
-
end
|
48
|
-
|
49
|
-
def coded?
|
50
|
-
storage_type == :coded
|
51
|
-
end
|
52
|
-
|
53
|
-
def remote_storage?
|
54
|
-
cloud? || web?
|
55
|
-
end
|
56
|
-
|
57
|
-
def storage_type
|
58
|
-
@storage_type ||=
|
59
|
-
new_card? ? storage_type_from_config : storage_type_from_content
|
60
|
-
end
|
61
|
-
|
62
|
-
def deprecated_mod_file?
|
63
|
-
content && (lines = content.split("\n")) && lines.size == 4
|
64
|
-
end
|
65
|
-
|
66
|
-
def mod
|
67
|
-
@mod ||= coded? && mod_from_content
|
68
|
-
end
|
69
|
-
|
70
|
-
def mod_from_content
|
71
|
-
if (m = content.match %r{^:[^/]+/([^.]+)})
|
72
|
-
m[1] # current mod_file format
|
73
|
-
else
|
74
|
-
mod_from_deprecated_content
|
75
|
-
end
|
76
|
-
end
|
77
|
-
|
78
|
-
# old format is still used in card_changes
|
79
|
-
def mod_from_deprecated_content
|
80
|
-
return if content.match?(/^~/)
|
81
|
-
return unless (lines = content.split("\n")) && lines.size == 4
|
82
|
-
|
83
|
-
lines.last
|
84
|
-
end
|
85
|
-
|
86
|
-
def storage_type_from_config
|
87
|
-
valid_storage_type ENV["FILE_STORAGE"] || Cardio.config.file_storage
|
88
|
-
end
|
89
|
-
|
90
|
-
def valid_storage_type storage_type
|
91
|
-
storage_type.to_sym.tap do |type|
|
92
|
-
invalid_storage_type! type unless type.in? valid_storage_type_list
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
def valid_storage_type_list
|
97
|
-
CarrierWave::FileCardUploader::STORAGE_TYPES
|
98
|
-
end
|
99
|
-
|
100
|
-
def invalid_storage_type! type
|
101
|
-
raise Card::Error, t(:carrierwave_error_invalid_storage_type, type: type)
|
102
|
-
end
|
103
|
-
|
104
|
-
def storage_type_from_content
|
105
|
-
case content
|
106
|
-
when /^\(/ then :cloud
|
107
|
-
when %r{/^https?:/} then :web
|
108
|
-
when /^~/ then :local
|
109
|
-
when /^:/ then :coded
|
110
|
-
else
|
111
|
-
if deprecated_mod_file?
|
112
|
-
:coded
|
113
|
-
else
|
114
|
-
storage_type_from_config
|
115
|
-
end
|
116
|
-
end
|
117
|
-
end
|
118
|
-
|
119
|
-
def update_storage_attributes
|
120
|
-
@mod = @new_mod if @new_mod
|
121
|
-
@bucket = @new_bucket if @new_bucket
|
122
|
-
@storage_type = @new_storage_type
|
123
|
-
end
|
124
|
-
|
125
|
-
def storage_type_changed?
|
126
|
-
@new_bucket || (@new_storage_type && @new_storage_type != storage_type) || @new_mod
|
127
|
-
end
|
128
|
-
|
129
|
-
def storage_type= value
|
130
|
-
known_storage_type? value
|
131
|
-
if @action == :update # && storage_type != value
|
132
|
-
# we cant update the storage type directly here
|
133
|
-
# if we do then the uploader doesn't find the file we want to update
|
134
|
-
@new_storage_type = value
|
135
|
-
else
|
136
|
-
@storage_type = value
|
137
|
-
end
|
138
|
-
end
|
139
|
-
|
140
|
-
def with_storage_options opts={}
|
141
|
-
old_values = stash_and_set_storage_options opts
|
142
|
-
validate_temporary_storage_type_change opts[:storage_type]
|
143
|
-
@temp_storage_type = true
|
144
|
-
yield
|
145
|
-
ensure
|
146
|
-
@temp_storage_type = false
|
147
|
-
old_values.each { |key, val| instance_variable_set "@#{key}", val }
|
148
|
-
end
|
149
|
-
|
150
|
-
def stash_and_set_storage_options opts
|
151
|
-
%i[storage_type mod bucket].each_with_object({}) do |opt_name, old_values|
|
152
|
-
next unless opts[opt_name]
|
153
|
-
|
154
|
-
old_values[opt_name] = instance_variable_get "@#{opt_name}"
|
155
|
-
instance_variable_set "@#{opt_name}", opts[opt_name]
|
156
|
-
old_values
|
157
|
-
end
|
158
|
-
end
|
159
|
-
|
160
|
-
def temporary_storage_type_change?
|
161
|
-
@temp_storage_type
|
162
|
-
end
|
163
|
-
|
164
|
-
def validate_temporary_storage_type_change type=nil
|
165
|
-
return unless type ||= @new_storage_type
|
166
|
-
raise Error, unknown_storage_type(type) unless known_storage_type? type
|
167
|
-
if type == :coded && codename.blank?
|
168
|
-
raise Error, "codename needed for storage type :coded"
|
169
|
-
end
|
170
|
-
end
|
171
|
-
|
172
|
-
def known_storage_type? type=storage_type
|
173
|
-
type.in? CarrierWave::FileCardUploader::STORAGE_TYPES
|
174
|
-
end
|
175
|
-
|
176
|
-
def unknown_storage_type type
|
177
|
-
t :carrierwave_unknown_storage_type, new_storage_type: type
|
178
|
-
end
|
179
|
-
end;end;end;end;end;
|
180
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/storage_type.rb ~~
|
@@ -1,98 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Abstract; module Attachment;
|
3
|
-
# Set: Abstract (Attachment, UploadCache)
|
4
|
-
#
|
5
|
-
# action id of the cached upload
|
6
|
-
module UploadCache;
|
7
|
-
extend Card::Set
|
8
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/upload_cache.rb"; end
|
9
|
-
attr_accessor :action_id_of_cached_upload
|
10
|
-
|
11
|
-
def actionable?
|
12
|
-
super || preliminary_upload?
|
13
|
-
end
|
14
|
-
|
15
|
-
event :prepare_attachment, :prepare_to_validate, on: :save, when: :preliminary_upload? do
|
16
|
-
save_original_filename # save original filename as comment in action
|
17
|
-
write_identifier # set db_content
|
18
|
-
# (needs original filename to determine extension)
|
19
|
-
store_attachment!
|
20
|
-
store_card_changes
|
21
|
-
# finalize_action # create Card::Change entry for db_content
|
22
|
-
|
23
|
-
card_id = new_card? ? upload_cache_card.id : id
|
24
|
-
@current_action.update! draft: true, card_id: card_id
|
25
|
-
success << {
|
26
|
-
target: (new_card? ? upload_cache_card : self),
|
27
|
-
type: type_name,
|
28
|
-
view: "preview_editor",
|
29
|
-
rev_id: current_action.id
|
30
|
-
}
|
31
|
-
abort :success
|
32
|
-
end
|
33
|
-
|
34
|
-
event :assign_attachment_on_create, :initialize,
|
35
|
-
after: :assign_action, on: :create, when: :save_preliminary_upload? do
|
36
|
-
return unless (action = Card::Action.fetch(@action_id_of_cached_upload))
|
37
|
-
|
38
|
-
upload_cache_card.selected_action_id = action.id
|
39
|
-
upload_cache_card.select_file_revision
|
40
|
-
assign_attachment upload_cache_card.attachment.file, action.comment
|
41
|
-
end
|
42
|
-
|
43
|
-
event :assign_attachment_on_update, :initialize,
|
44
|
-
after: :assign_action, on: :update, when: :save_preliminary_upload? do
|
45
|
-
return unless (action = Card::Action.fetch(@action_id_of_cached_upload))
|
46
|
-
|
47
|
-
uploaded_file = with_selected_action_id(action.id) { attachment.file }
|
48
|
-
assign_attachment uploaded_file, action.comment
|
49
|
-
end
|
50
|
-
|
51
|
-
def assign_attachment file, original_filename
|
52
|
-
send "#{attachment_name}=", file
|
53
|
-
write_identifier
|
54
|
-
@current_action&.update! comment: original_filename
|
55
|
-
end
|
56
|
-
|
57
|
-
event :delete_cached_upload_file_on_create, :integrate,
|
58
|
-
on: :create, when: :save_preliminary_upload? do
|
59
|
-
return unless (action = Card::Action.fetch(@action_id_of_cached_upload))
|
60
|
-
|
61
|
-
upload_cache_card.delete_files_for_action action
|
62
|
-
action.delete
|
63
|
-
end
|
64
|
-
|
65
|
-
# at some point uploaded files of canceled file card creation
|
66
|
-
# should be deleted. We do this when ever an new file is created.
|
67
|
-
event :clear_draft_files, :integrate_with_delay, priority: 100, on: :create do
|
68
|
-
Card.delete_tmp_files_of_cached_uploads
|
69
|
-
end
|
70
|
-
|
71
|
-
event :delete_cached_upload_file_on_update, :integrate,
|
72
|
-
on: :update, when: :save_preliminary_upload? do
|
73
|
-
return unless (action = Card::Action.fetch(@action_id_of_cached_upload))
|
74
|
-
|
75
|
-
delete_files_for_action action
|
76
|
-
action.delete
|
77
|
-
end
|
78
|
-
|
79
|
-
# used for uploads for new cards until the new card is created
|
80
|
-
def upload_cache_card
|
81
|
-
cache_card_codename = "new_#{attachment_name}"
|
82
|
-
@upload_cache_card ||= Card::Codename.card(cache_card_codename) { Card[:new_file] }
|
83
|
-
end
|
84
|
-
|
85
|
-
def preliminary_upload?
|
86
|
-
Card::Env && Card::Env.params[:attachment_upload]
|
87
|
-
end
|
88
|
-
|
89
|
-
def save_preliminary_upload?
|
90
|
-
@action_id_of_cached_upload.present?
|
91
|
-
end
|
92
|
-
|
93
|
-
# place for files if card doesn't have an id yet
|
94
|
-
def tmp_upload_dir _action_id=nil
|
95
|
-
"#{files_base_dir}/#{upload_cache_card.id}"
|
96
|
-
end
|
97
|
-
end;end;end;end;end;
|
98
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/upload_cache.rb ~~
|
@@ -1,12 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Abstract; module Attachment;
|
3
|
-
# Set: Abstract (Attachment, Web)
|
4
|
-
#
|
5
|
-
module Web;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/web.rb"; end
|
8
|
-
def no_upload?
|
9
|
-
web? || storage_type_from_config == :web
|
10
|
-
end
|
11
|
-
end;end;end;end;end;
|
12
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment/web.rb ~~
|
@@ -1,144 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Abstract
|
3
|
-
# Set: Abstract (Attachment)
|
4
|
-
#
|
5
|
-
module Attachment;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment.rb"; end
|
8
|
-
attr_writer :empty_ok
|
9
|
-
|
10
|
-
def self.included host_class
|
11
|
-
host_class.extend CarrierWave::CardMount
|
12
|
-
end
|
13
|
-
|
14
|
-
event :select_file_revision, after: :select_action do
|
15
|
-
attachment.retrieve_from_store!(attachment.identifier)
|
16
|
-
end
|
17
|
-
|
18
|
-
# we need a card id for the path so we have to update db_content when we have
|
19
|
-
# an id
|
20
|
-
event :correct_identifier, :finalize, on: :create, when: proc { |c| !c.web? } do
|
21
|
-
update_column(:db_content, attachment.db_content)
|
22
|
-
expire
|
23
|
-
end
|
24
|
-
|
25
|
-
event :save_original_filename, :prepare_to_store, on: :save, when: :file_ready_to_save? do
|
26
|
-
return unless @current_action
|
27
|
-
|
28
|
-
@current_action.update! comment: original_filename
|
29
|
-
end
|
30
|
-
|
31
|
-
event :validate_file_exist, :validate, on: :create do
|
32
|
-
return if empty_ok?
|
33
|
-
|
34
|
-
if will_be_stored_as == :web
|
35
|
-
errors.add "url is missing" if content.blank?
|
36
|
-
elsif !attachment.file.present?
|
37
|
-
errors.add attachment_name, "is missing"
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
event :write_identifier, after: :save_original_filename, when: proc { |c| !c.web? } do
|
42
|
-
self.content = attachment.db_content
|
43
|
-
end
|
44
|
-
|
45
|
-
def file_ready_to_save?
|
46
|
-
attachment.file.present? &&
|
47
|
-
!preliminary_upload? &&
|
48
|
-
!save_preliminary_upload? &&
|
49
|
-
attachment_is_changing?
|
50
|
-
end
|
51
|
-
|
52
|
-
# needed for flexmail attachments. hacky.
|
53
|
-
def item_names _args={}
|
54
|
-
[name]
|
55
|
-
end
|
56
|
-
|
57
|
-
def original_filename
|
58
|
-
return content.split("/").last if web?
|
59
|
-
|
60
|
-
attachment.original_filename
|
61
|
-
end
|
62
|
-
|
63
|
-
def unfilled?
|
64
|
-
!attachment.present? && !save_preliminary_upload? && !subcards? && blank_content?
|
65
|
-
end
|
66
|
-
|
67
|
-
def attachment_changed?
|
68
|
-
send "#{attachment_name}_changed?"
|
69
|
-
end
|
70
|
-
|
71
|
-
def attachment_is_changing?
|
72
|
-
send "#{attachment_name}_is_changing?"
|
73
|
-
end
|
74
|
-
|
75
|
-
def attachment_before_act
|
76
|
-
send "#{attachment_name}_before_act"
|
77
|
-
end
|
78
|
-
|
79
|
-
def create_versions? _new_file
|
80
|
-
true
|
81
|
-
end
|
82
|
-
|
83
|
-
def empty_ok?
|
84
|
-
@empty_ok
|
85
|
-
end
|
86
|
-
|
87
|
-
def assign_set_specific_attributes
|
88
|
-
# reset content if we really have something to upload
|
89
|
-
self.content = nil if set_specific[attachment_name].present?
|
90
|
-
super
|
91
|
-
end
|
92
|
-
|
93
|
-
def delete_files_for_action action
|
94
|
-
with_selected_action_id(action.id) do
|
95
|
-
attachment.file.delete
|
96
|
-
attachment.versions.each_value do |version|
|
97
|
-
version.file.delete
|
98
|
-
end
|
99
|
-
end
|
100
|
-
end
|
101
|
-
|
102
|
-
def revision action, before_action=false
|
103
|
-
return unless (result = super)
|
104
|
-
|
105
|
-
result[:empty_ok] = true
|
106
|
-
result
|
107
|
-
end
|
108
|
-
|
109
|
-
def attachment_format ext
|
110
|
-
rescuing_extension_issues do
|
111
|
-
return unless ext.present? && original_extension
|
112
|
-
|
113
|
-
confirm_original_extension(ext) || detect_extension(ext)
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
117
|
-
def rescuing_extension_issues
|
118
|
-
yield
|
119
|
-
rescue StandardError => e
|
120
|
-
Rails.logger.info "attachment_format issue: #{e.message}"
|
121
|
-
nil
|
122
|
-
end
|
123
|
-
|
124
|
-
def detect_extension ext
|
125
|
-
return unless (mime_types = MIME::Types[attachment.content_type])
|
126
|
-
|
127
|
-
recognized_extension?(mime_types, ext) ? ext : mime_types[0].extensions[0]
|
128
|
-
end
|
129
|
-
|
130
|
-
def recognized_extension? mime_types, ext
|
131
|
-
mime_types.find { |mt| mt.extensions.member? ext }
|
132
|
-
end
|
133
|
-
|
134
|
-
def confirm_original_extension ext
|
135
|
-
return unless ["file", original_extension].member? ext
|
136
|
-
|
137
|
-
original_extension
|
138
|
-
end
|
139
|
-
|
140
|
-
def original_extension
|
141
|
-
@original_extension ||= attachment&.extension&.sub(/^\./, "")
|
142
|
-
end
|
143
|
-
end;end;end;end;
|
144
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/abstract/attachment.rb ~~
|
@@ -1,50 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class All
|
3
|
-
# Set: All cards (FileUtils)
|
4
|
-
#
|
5
|
-
module FileUtils;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/all/file_utils.rb"; end
|
8
|
-
module ClassMethods
|
9
|
-
def update_all_storage_locations
|
10
|
-
Card.search(type_id: ["in", Card::FileID, Card::ImageID])
|
11
|
-
.each(&:update_storage_location!)
|
12
|
-
end
|
13
|
-
|
14
|
-
def delete_tmp_files_of_cached_uploads
|
15
|
-
cards_with_disposable_attachments do |card, action|
|
16
|
-
card.delete_files_for_action action
|
17
|
-
action.delete
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
def cards_with_disposable_attachments
|
22
|
-
draft_actions_with_attachment.each do |action|
|
23
|
-
# we don't want to delete uploads in progress
|
24
|
-
next unless old_enough?(action.created_at) && (card = action.card)
|
25
|
-
# we can't delete attachments we don't have write access to
|
26
|
-
next if card.read_only?
|
27
|
-
|
28
|
-
yield card, action
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
def old_enough? time, expiration_time=5.day.to_i
|
33
|
-
Time.now - time > expiration_time
|
34
|
-
end
|
35
|
-
|
36
|
-
def draft_actions_with_attachment
|
37
|
-
Card::Action.find_by_sql(
|
38
|
-
"SELECT * FROM card_actions "\
|
39
|
-
"INNER JOIN cards ON card_actions.card_id = cards.id "\
|
40
|
-
"WHERE cards.type_id IN (#{Card::FileID}, #{Card::ImageID}) "\
|
41
|
-
"AND card_actions.draft = true"
|
42
|
-
)
|
43
|
-
end
|
44
|
-
|
45
|
-
def count_cards_with_attachment
|
46
|
-
Card.search type_id: ["in", Card::FileID, Card::ImageID], return: :count
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end;end;end;end;
|
50
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/all/file_utils.rb ~~
|
@@ -1,32 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Self
|
3
|
-
# Set: The card "Admin"
|
4
|
-
#
|
5
|
-
module Admin;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/admin.rb"; end
|
8
|
-
add_to_basket(
|
9
|
-
:tasks,
|
10
|
-
name: :update_file_storage_locations,
|
11
|
-
execute_policy: -> { Card.update_all_storage_locations },
|
12
|
-
stats: {
|
13
|
-
title: "cards with attachment",
|
14
|
-
count: -> { Card.count_cards_with_attachment }
|
15
|
-
# link_text: "update storage locations",
|
16
|
-
# task: "update_file_storage_locations"
|
17
|
-
}
|
18
|
-
)
|
19
|
-
|
20
|
-
add_to_basket(
|
21
|
-
:tasks,
|
22
|
-
name: :delete_upload_tmp_files,
|
23
|
-
execute_policy: -> { Card.delete_tmp_files_of_cached_uploads },
|
24
|
-
stats: {
|
25
|
-
title: "tmp files of canceled uploads",
|
26
|
-
count: -> { ::Card.draft_actions_with_attachment },
|
27
|
-
link_text: "delete tmp files",
|
28
|
-
task: "delete_tmp_files_of_cached_uploads"
|
29
|
-
}
|
30
|
-
)
|
31
|
-
end;end;end;end;
|
32
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/admin.rb ~~
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Self
|
3
|
-
# Set: The card "Favicon"
|
4
|
-
#
|
5
|
-
module Favicon;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/favicon.rb"; end
|
8
|
-
module HtmlFormat; module_parent.send :register_set_format, Card::Format::HtmlFormat, self; extend Card::Set::AbstractFormat
|
9
|
-
view :source do
|
10
|
-
source = card.type_id == Card::ImageID ? super() : nil
|
11
|
-
source.present? ? source : nest(:logo, view: :source, size: voo.size)
|
12
|
-
end
|
13
|
-
|
14
|
-
view :link_tag, perms: :none do
|
15
|
-
return unless (source = render :source, size: :small)
|
16
|
-
|
17
|
-
tag :link, rel: "shortcut icon", href: source
|
18
|
-
end
|
19
|
-
|
20
|
-
def raw_help_text
|
21
|
-
"A favicon (or shortcut icon) is a small image used by browsers to help identify "\
|
22
|
-
"your website. [[http://www.decko.org/favicon|How to customize your favicon]]"
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end;end;end;end;
|
26
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/favicon.rb ~~
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Self
|
3
|
-
# Set: The card "NewFile"
|
4
|
-
#
|
5
|
-
module NewFile;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/new_file.rb"; end
|
8
|
-
module HtmlFormat; module_parent.send :register_set_format, Card::Format::HtmlFormat, self; extend Card::Set::AbstractFormat
|
9
|
-
view :source, cache: :never do
|
10
|
-
super()
|
11
|
-
end
|
12
|
-
|
13
|
-
view :core, cache: :never do
|
14
|
-
super()
|
15
|
-
end
|
16
|
-
|
17
|
-
view :input, cache: :never do
|
18
|
-
super()
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end;end;end;end;
|
22
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/new_file.rb ~~
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# -*- encoding : utf-8 -*-
|
2
|
-
class Card; module Set; class Self
|
3
|
-
# Set: The card "NewImage"
|
4
|
-
#
|
5
|
-
module NewImage;
|
6
|
-
extend Card::Set
|
7
|
-
def self.source_location; "/Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/new_image.rb"; end
|
8
|
-
module HtmlFormat; module_parent.send :register_set_format, Card::Format::HtmlFormat, self; extend Card::Set::AbstractFormat
|
9
|
-
view :source, cache: :never do
|
10
|
-
super()
|
11
|
-
end
|
12
|
-
|
13
|
-
view :core, cache: :never do
|
14
|
-
super()
|
15
|
-
end
|
16
|
-
|
17
|
-
view :input, cache: :never do
|
18
|
-
super()
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end;end;end;end;
|
22
|
-
# ~~ generated from /Users/ezl5238/dev/decko/gem/mod/carrierwave/set/self/new_image.rb ~~
|