Class: Card
- Inherits:
-
ApplicationRecord
show all
- Extended by:
- CarrierWave::Mount
- Defined in:
- lib/card.rb,
lib/card/env.rb,
lib/card/mod.rb,
lib/card/set.rb,
lib/card/auth.rb,
lib/card/name.rb,
lib/card/view.rb,
lib/card/cache.rb,
lib/card/error.rb,
lib/card/query.rb,
lib/card/format.rb,
lib/card/mailer.rb,
lib/card/content.rb,
lib/card/codename.rb,
lib/card/mod/dirs.rb,
lib/card/subcards.rb,
lib/card/reference.rb,
lib/card/set/event.rb,
lib/card/set/trait.rb,
lib/card/view/stub.rb,
lib/card/auth/proxy.rb,
lib/card/auth/setup.rb,
lib/card/mod/loader.rb,
lib/card/query/join.rb,
lib/card/set/basket.rb,
lib/card/set/format.rb,
lib/card/set/loader.rb,
lib/card/view/cache.rb,
lib/generators/card.rb,
lib/card/act_manager.rb,
lib/card/env/success.rb,
lib/card/format/nest.rb,
lib/card/query/value.rb,
lib/card/set/helpers.rb,
lib/card/set_pattern.rb,
lib/card/auth/current.rb,
lib/card/content/diff.rb,
lib/card/env/location.rb,
lib/card/format/error.rb,
lib/card/view/options.rb,
lib/card/content/chunk.rb,
lib/card/content/clean.rb,
lib/card/format/render.rb,
lib/card/query/helpers.rb,
lib/card/query/sorting.rb,
lib/card/content/parser.rb,
lib/card/format/content.rb,
lib/card/migration/core.rb,
lib/card/name/view_name.rb,
lib/card/set/i18n_scope.rb,
lib/card/cache/temporary.rb,
lib/card/set/inheritance.rb,
lib/card/view/visibility.rb,
lib/card/auth/permissions.rb,
lib/card/cache/persistent.rb,
lib/card/content/diff/lcs.rb,
lib/card/content/truncate.rb,
lib/card/format/nest/main.rb,
lib/card/format/nest/mode.rb,
lib/card/migration/import.rb,
lib/card/query/attributes.rb,
lib/card/set/advanced_api.rb,
lib/card/set/i18n_scanner.rb,
lib/card/act_manager/stage.rb,
lib/card/cache/prepopulate.rb,
lib/card/format/nest/fetch.rb,
lib/card/format/permission.rb,
lib/card/mod/load_strategy.rb,
lib/card/model/save_helper.rb,
lib/card/view/cache_action.rb,
lib/card/name/name_variants.rb,
lib/card/query/conjunctions.rb,
lib/card/content/diff/result.rb,
lib/card/format/registration.rb,
lib/card/mod/module_template.rb,
lib/card/query/sql_statement.rb,
lib/card/env/location_history.rb,
lib/card/format/context_names.rb,
lib/card/query/interpretation.rb,
lib/card/format/nest/subformat.rb,
lib/card/mod/loader/set_loader.rb,
lib/card/set/format/haml_views.rb,
lib/card/content/diff/processor.rb,
lib/card/mod/load_strategy/eval.rb,
lib/card/name/fields_and_traits.rb,
lib/card/migration/import/merger.rb,
lib/card/act_manager/stage_director.rb,
lib/card/mod/load_strategy/tmp_files.rb,
lib/card/query/relational_attributes.rb,
lib/card/migration/import/import_data.rb,
lib/generators/card/set/set_generator.rb,
lib/card/act_manager/subdirector_array.rb,
lib/card/mod/loader/set_pattern_loader.rb,
lib/card/mod/load_strategy/set_tmp_files.rb,
lib/card/act_manager/stage_director/phases.rb,
lib/generators/card/format/format_generator.rb,
lib/card/mod/load_strategy/pattern_tmp_files.rb,
lib/card/mod/load_strategy/set_binding_magic.rb,
lib/generators/card/template/template_generator.rb,
lib/generators/card/migration/migration_generator.rb,
lib/card/migration/import/import_data/card_content.rb,
lib/card/migration/import/import_data/card_attributes.rb,
mod/core/format/data_format.rb,
mod/core/format/html_format.rb,
mod/core/format/text_format.rb,
mod/basic_formats/format/js_format.rb,
mod/basic_formats/format/css_format.rb,
mod/basic_formats/format/csv_format.rb,
mod/basic_formats/format/rss_format.rb,
mod/basic_formats/format/xml_format.rb,
mod/basic_formats/format/file_format.rb,
mod/basic_formats/format/json_format.rb,
mod/notifications/format/email_html_format.rb,
mod/notifications/format/email_text_format.rb,
mod/core/chunk/nest.rb,
mod/core/chunk/literal.rb,
mod/core/chunk/reference.rb,
mod/core/chunk/view_stub.rb,
mod/history/lib/card/act.rb,
mod/history/lib/card/action.rb,
mod/history/lib/card/change.rb,
mod/machines/lib/card/machine.rb,
mod/settings/lib/card/setting.rb,
mod/history/lib/card/action/admin.rb,
mod/history/lib/card/action/differ.rb,
mod/history/lib/card/act/act_renderer.rb,
mod/notifications/lib/card/follow_option.rb,
mod/history/lib/card/action/action_renderer.rb,
mod/history/lib/card/act/act_renderer/absolute_act_renderer.rb,
mod/history/lib/card/act/act_renderer/relative_act_renderer.rb,
tmpsets/set/mod002-core/all/erb.rb,
tmpsets/set/mod002-core/all/haml.rb,
tmpsets/set/mod002-core/all/name.rb,
tmpsets/set/mod002-core/all/type.rb,
tmpsets/set/mod002-core/all/debug.rb,
tmpsets/set/mod002-core/all/event.rb,
tmpsets/set/mod002-core/all/fetch.rb,
tmpsets/set/mod002-core/all/rules.rb,
tmpsets/set/mod002-core/all/trash.rb,
tmpsets/set/mod002-core/all/utils.rb,
tmpsets/set/mod013-email/right/cc.rb,
tmpsets/set/mod013-email/right/to.rb,
tmpsets/set/mod002-core/all/actify.rb,
tmpsets/set/mod002-core/all/export.rb,
tmpsets/set/mod002-core/all/phases.rb,
tmpsets/set/mod002-core/all/stages.rb,
tmpsets/set/mod002-core/all/states.rb,
tmpsets/set/mod013-email/right/bcc.rb,
tmpsets/set/mod001-admin/self/admin.rb,
tmpsets/set/mod002-core/all/content.rb,
tmpsets/set/mod002-core/all/pattern.rb,
tmpsets/set/mod013-email/all/follow.rb,
tmpsets/set/mod013-email/all/notify.rb,
tmpsets/set/mod013-email/right/from.rb,
tmpsets/set/mod013-email/self/never.rb,
tmpsets/set/mod002-core/all/subcards.rb,
tmpsets/set/mod011-machines/type/css.rb,
tmpsets/set/mod013-email/self/always.rb,
tmpsets/set/mod013-email/self/edited.rb,
tmpsets/set/mod013-email/self/follow.rb,
tmpsets/set/mod016-standard/self/now.rb,
tmpsets/set/mod016-standard/type/set.rb,
tmpsets/set/mod016-standard/type/uri.rb,
tmpsets/set/mod017-account/type/user.rb,
tmpsets/set/mod001-admin/self/version.rb,
tmpsets/set/mod011-machines/type/scss.rb,
tmpsets/set/mod011-machines/type/skin.rb,
tmpsets/set/mod012-settings/self/help.rb,
tmpsets/set/mod012-settings/self/read.rb,
tmpsets/set/mod013-email/all/observer.rb,
tmpsets/set/mod013-email/right/follow.rb,
tmpsets/set/mod013-email/self/created.rb,
tmpsets/set/mod016-standard/all/error.rb,
tmpsets/set/mod016-standard/all/links.rb,
tmpsets/set/mod016-standard/self/foot.rb,
tmpsets/set/mod016-standard/type/date.rb,
tmpsets/set/mod016-standard/type/list.rb,
tmpsets/set/mod017-account/right/salt.rb,
tmpsets/set/mod002-core/all/collection.rb,
tmpsets/set/mod002-core/all/initialize.rb,
tmpsets/set/mod002-core/all/references.rb,
tmpsets/set/mod002-core/all/templating.rb,
tmpsets/set/mod002-core/all/view_cache.rb,
tmpsets/set/mod003-history/all/actions.rb,
tmpsets/set/mod003-history/all/history.rb,
tmpsets/set/mod012-settings/right/help.rb,
tmpsets/set/mod012-settings/right/read.rb,
tmpsets/set/mod012-settings/self/input.rb,
tmpsets/set/mod012-settings/self/style.rb,
tmpsets/set/mod016-standard/type/basic.rb,
tmpsets/set/mod017-account/all/account.rb,
tmpsets/set/mod017-account/right/email.rb,
tmpsets/set/mod017-account/right/token.rb,
tmpsets/set/mod017-account/self/signin.rb,
tmpsets/set/mod017-account/type/signup.rb,
tmpsets/set/mod002-core/all/active_card.rb,
tmpsets/set/mod002-core/all/permissions.rb,
tmpsets/set/mod005-pointer/type/pointer.rb,
tmpsets/set/mod012-settings/right/style.rb,
tmpsets/set/mod012-settings/self/create.rb,
tmpsets/set/mod012-settings/self/delete.rb,
tmpsets/set/mod012-settings/self/layout.rb,
tmpsets/set/mod012-settings/self/script.rb,
tmpsets/set/mod012-settings/self/thanks.rb,
tmpsets/set/mod012-settings/self/update.rb,
tmpsets/set/mod013-email/all/email_html.rb,
tmpsets/set/mod013-email/all/email_text.rb,
tmpsets/set/mod016-standard/all/comment.rb,
tmpsets/set/mod016-standard/rstar/rules.rb,
tmpsets/set/mod016-standard/self/alerts.rb,
tmpsets/set/mod016-standard/self/navbox.rb,
tmpsets/set/mod016-standard/self/recent.rb,
tmpsets/set/mod016-standard/self/search.rb,
tmpsets/set/mod016-standard/type/number.rb,
tmpsets/set/mod016-standard/type/phrase.rb,
tmpsets/set/mod016-standard/type/toggle.rb,
tmpsets/set/mod017-account/right/status.rb,
tmpsets/set/mod001-admin/self/admin_info.rb,
tmpsets/set/mod004-basic_formats/all/rss.rb,
tmpsets/set/mod010-basic_types/type/html.rb,
tmpsets/set/mod012-settings/right/create.rb,
tmpsets/set/mod012-settings/right/delete.rb,
tmpsets/set/mod012-settings/right/script.rb,
tmpsets/set/mod012-settings/right/update.rb,
tmpsets/set/mod012-settings/self/captcha.rb,
tmpsets/set/mod012-settings/self/default.rb,
tmpsets/set/mod012-settings/self/options.rb,
tmpsets/set/mod012-settings/type/setting.rb,
tmpsets/set/mod013-email/right/followers.rb,
tmpsets/set/mod013-email/right/following.rb,
tmpsets/set/mod014-developer/right/debug.rb,
tmpsets/set/mod015-carrierwave/type/file.rb,
tmpsets/set/mod016-standard/type/session.rb,
tmpsets/set/mod017-account/right/account.rb,
tmpsets/set/mod004-basic_formats/all/base.rb,
tmpsets/set/mod004-basic_formats/all/file.rb,
tmpsets/set/mod004-basic_formats/all/json.rb,
tmpsets/set/mod004-basic_formats/all/text.rb,
tmpsets/set/mod012-settings/right/comment.rb,
tmpsets/set/mod012-settings/right/default.rb,
tmpsets/set/mod012-settings/self/add_help.rb,
tmpsets/set/mod012-settings/self/autoname.rb,
tmpsets/set/mod014-developer/all/view_viz.rb,
tmpsets/set/mod015-carrierwave/self/admin.rb,
tmpsets/set/mod015-carrierwave/type/image.rb,
tmpsets/set/mod016-standard/type/cardtype.rb,
tmpsets/set/mod017-account/right/password.rb,
tmpsets/set/mod002-core/abstract/code_file.rb,
tmpsets/set/mod004-basic_formats/self/head.rb,
tmpsets/set/mod012-settings/right/add_help.rb,
tmpsets/set/mod012-settings/self/on_create.rb,
tmpsets/set/mod012-settings/self/on_delete.rb,
tmpsets/set/mod012-settings/self/on_update.rb,
tmpsets/set/mod012-settings/self/structure.rb,
tmpsets/set/mod014-developer/all/event_viz.rb,
tmpsets/set/mod016-standard/self/codenames.rb,
tmpsets/set/mod016-standard/type/listed_by.rb,
tmpsets/set/mod004-basic_formats/all/all_js.rb,
tmpsets/set/mod005-pointer/self/script_mods.rb,
tmpsets/set/mod011-machines/abstract/script.rb,
tmpsets/set/mod012-settings/right/structure.rb,
tmpsets/set/mod013-email/right/html_message.rb,
tmpsets/set/mod002-core/all/location_history.rb,
tmpsets/set/mod002-core/all/name_validations.rb,
tmpsets/set/mod004-basic_formats/all/all_css.rb,
tmpsets/set/mod004-basic_formats/all/all_csv.rb,
tmpsets/set/mod011-machines/abstract/machine.rb,
tmpsets/set/mod011-machines/self/script_slot.rb,
tmpsets/set/mod011-machines/self/style_cards.rb,
tmpsets/set/mod011-machines/type/java_script.rb,
tmpsets/set/mod012-settings/self/accountable.rb,
tmpsets/set/mod013-email/right/follow_fields.rb,
tmpsets/set/mod013-email/type/email_template.rb,
tmpsets/set/mod016-standard/all/list_changes.rb,
tmpsets/set/mod016-standard/right/discussion.rb,
tmpsets/set/mod016-standard/type/layout_type.rb,
tmpsets/set/mod016-standard/type/search_type.rb,
tmpsets/set/mod002-core/all/update_read_rules.rb,
tmpsets/set/mod006-ace_editor/self/script_ace.rb,
tmpsets/set/mod013-email/self/follow_defaults.rb,
tmpsets/set/mod015-carrierwave/all/file_utils.rb,
tmpsets/set/mod017-account/self/account_links.rb,
tmpsets/set/mod018-bootstrap/self/script_mods.rb,
tmpsets/set/mod002-core/all/tracked_attributes.rb,
tmpsets/set/mod003-history/all/content_history.rb,
tmpsets/set/mod005-pointer/abstract/01_pointer.rb,
tmpsets/set/mod005-pointer/self/script_editors.rb,
tmpsets/set/mod009-solid_cache/all/solid_cache.rb,
tmpsets/set/mod010-basic_types/type/plain_text.rb,
tmpsets/set/mod011-machines/all/reset_machines.rb,
tmpsets/set/mod011-machines/self/script_jquery.rb,
tmpsets/set/mod011-machines/type/coffee_script.rb,
tmpsets/set/mod012-settings/self/follow_fields.rb,
tmpsets/set/mod012-settings/self/options_label.rb,
tmpsets/set/mod016-standard/all/rich_html/form.rb,
tmpsets/set/mod016-standard/all/rich_html/menu.rb,
tmpsets/set/mod016-standard/right/when_created.rb,
tmpsets/set/mod016-standard/rstar/rules_editor.rb,
tmpsets/set/mod018-bootstrap/self/bootstrap_js.rb,
tmpsets/set/mod018-bootstrap/self/smartmenu_js.rb,
tmpsets/set/mod011-machines/right/machine_cache.rb,
tmpsets/set/mod011-machines/right/machine_input.rb,
tmpsets/set/mod012-settings/abstract/permission.rb,
tmpsets/set/mod016-standard/all/rich_html/modal.rb,
tmpsets/set/mod018-bootstrap/all/bootstrap/form.rb,
tmpsets/set/mod018-bootstrap/all/bootstrap/tabs.rb,
tmpsets/set/mod018-bootstrap/all/rich_bootstrap.rb,
tmpsets/set/mod018-bootstrap/self/smartmenu_css.rb,
tmpsets/set/mod005-pointer/abstract/code_pointer.rb,
tmpsets/set/mod009-solid_cache/right/solid_cache.rb,
tmpsets/set/mod011-machines/right/machine_output.rb,
tmpsets/set/mod012-settings/self/recent_settings.rb,
tmpsets/set/mod016-standard/all/rich_html/header.rb,
tmpsets/set/mod018-bootstrap/all/bootstrap/table.rb,
tmpsets/set/mod006-ace_editor/abstract/ace_editor.rb,
tmpsets/set/mod011-machines/self/script_card_menu.rb,
tmpsets/set/mod016-standard/all/rich_html/content.rb,
tmpsets/set/mod016-standard/all/rich_html/editing.rb,
tmpsets/set/mod016-standard/all/rich_html/toolbar.rb,
tmpsets/set/mod016-standard/all/rich_html/wrapper.rb,
tmpsets/set/mod018-bootstrap/all/bootstrap/helper.rb,
tmpsets/set/mod018-bootstrap/self/bootstrap_cards.rb,
tmpsets/set/mod011-machines/abstract/machine_input.rb,
tmpsets/set/mod012-settings/self/default_html_view.rb,
tmpsets/set/mod012-settings/self/table_of_contents.rb,
tmpsets/set/mod015-carrierwave/abstract/attachment.rb,
tmpsets/set/mod016-standard/right/when_last_edited.rb,
tmpsets/set/mod018-bootstrap/all/bootstrap/wrapper.rb,
tmpsets/set/mod005-pointer/abstract/01_pointer/edit.rb,
tmpsets/set/mod009-solid_cache/abstract/solid_cache.rb,
tmpsets/set/mod018-bootstrap/self/bootswatch_shared.rb,
tmpsets/set/mod006-ace_editor/self/script_ace_config.rb,
tmpsets/set/mod013-email/type_plus_right/user/follow.rb,
tmpsets/set/mod005-pointer/self/script_pointer_config.rb,
tmpsets/set/mod011-machines/self/script_jquery_helper.rb,
tmpsets/set/mod004-basic_formats/self/01_head/javascript.rb,
tmpsets/set/mod015-carrierwave/abstract/attachment/paths.rb,
tmpsets/set/mod011-machines/self/script_html5shiv_printshiv.rb,
tmpsets/set/mod011-machines/self/style_bootstrap_compatible.rb,
tmpsets/set/mod011-machines/self/style_jquery_ui_smoothness.rb,
tmpsets/set/mod007-prosemirror_editor/self/script_prosemirror.rb,
tmpsets/set/mod015-carrierwave/abstract/attachment/storage_type.rb,
tmpsets/set/mod015-carrierwave/abstract/attachment/upload_cache.rb,
tmpsets/set/mod007-prosemirror_editor/abstract/prosemirror_editor.rb,
tmpsets/set/mod007-prosemirror_editor/self/script_prosemirror_config.rb
Overview
API to create/update/delete additional cards together with the main card.
The most common case is for fields but subcards don't have to be descendants.
Subcards can be added as card objects or attribute hashes.
Use the methods defined in core/set/all/subcards.rb
Example
Together with "my address" you want to create the subcards
"my address+name", "my address+street", etc.
Defined Under Namespace
Modules: Auth, Env, FollowOption, Generators, Machine, Mod, Model, Set, Setting, Version
Classes: Act, ActManager, Action, Cache, Change, Codename, Content, Error, Format, Mailer, Migration, Name, Query, Reference, Subcards, View
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Instance Attribute Details
#follower_stash ⇒ Object
Returns the value of attribute follower_stash.
130
131
132
|
# File 'lib/card.rb', line 130
def follower_stash
@follower_stash
end
|
Class Method Details
.cache ⇒ Object
5
6
7
|
# File 'lib/card/cache.rb', line 5
def cache
Card::Cache[Card]
end
|
.config ⇒ Object
4
5
6
|
# File 'lib/card/mod/dirs.rb', line 4
def config
Cardio.config
end
|
.const_missing(const) ⇒ Integer
If a card has the codename example, then Card::ExampleID should
return the id for that card. This method makes that help.
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# File 'lib/card/codename.rb', line 88
def self.const_missing const
if const.to_s =~ /^([A-Z]\S*)ID$/ &&
(code = Regexp.last_match(1).underscore.to_sym)
if (card_id = Codename[code])
const_set const, card_id
else
raise I18n.t(:exception_missing_codename, scope: "lib.card.codename",
code: code, const: const)
end
else
super
end
end
|
.expire(name) ⇒ Object
24
25
26
27
28
|
# File 'lib/card/cache.rb', line 24
def expire name
key = name.to_name.key
return unless (card = Card.cache.read key)
card.expire
end
|
.paths ⇒ Object
8
9
10
|
# File 'lib/card/mod/dirs.rb', line 8
def paths
Cardio.paths
end
|
.serializable_attr_accessor(*args) ⇒ Object
attributes that ActiveJob can handle
108
109
110
111
|
# File 'lib/card.rb', line 108
def self.serializable_attr_accessor *args
self.serializable_attributes = args
attr_accessor(*args)
end
|
.write_to_cache(card, opts) ⇒ Object
9
10
11
12
13
14
15
16
|
# File 'lib/card/cache.rb', line 9
def write_to_cache card, opts
if opts[:local_only]
write_to_soft_cache card
elsif Card.cache
Card.cache.write card.key, card
Card.cache.write "~#{card.id}", card.key if card.id.to_i.nonzero?
end
end
|
.write_to_soft_cache(card) ⇒ Object
18
19
20
21
22
|
# File 'lib/card/cache.rb', line 18
def write_to_soft_cache card
return unless Card.cache
Card.cache.soft.write card.key, card
Card.cache.soft.write "~#{card.id}", card.key if card.id.to_i.nonzero?
end
|
Instance Method Details
#clean_after_stage_fail ⇒ Object
8
9
10
11
12
|
# File 'lib/card/act_manager/stage_director.rb', line 8
def clean_after_stage_fail
@action = nil
expire_pieces
subcards.each(&:expire_pieces)
end
|
#deserialize_for_active_job!(attr) ⇒ Object
2
3
4
5
6
7
8
|
# File 'lib/card/set/event.rb', line 2
def deserialize_for_active_job! attr
attr.each do |attname, val|
instance_variable_set("@#{attname}", val)
end
include_set_modules
end
|
#deserialize_value(val, type) ⇒ Object
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# File 'lib/card/set/event.rb', line 50
def deserialize_value val, type
case type
when "symbol"
val.to_sym
when "time"
DateTime.parse val
when "hash"
val.each_with_object({}) do |(k, v), h|
h[k] = deserialize_value v[:value], v[:type]
end
else
val
end
end
|
#expire_subcards ⇒ Object
17
18
19
|
# File 'lib/card/subcards.rb', line 17
def expire_subcards
subcards.clear
end
|
#left_id=(card_or_id) ⇒ Object
293
294
295
|
# File 'lib/card/subcards.rb', line 293
def left_id= card_or_id
write_card_or_id :left_id, card_or_id
end
|
#log_event_call(event) ⇒ Object
65
66
67
68
69
|
# File 'lib/card/set/event.rb', line 65
def log_event_call event
Rails.logger.debug "#{name}: #{event}"
end
|
3
4
5
6
|
# File 'lib/card/act_manager/stage_director.rb', line 3
def restore_changes_information
return unless saved_changes.present?
@changed_attributes = previous_mutation_tracker.changed_values
end
|
#right_id=(card_or_id) ⇒ Object
289
290
291
|
# File 'lib/card/subcards.rb', line 289
def right_id= card_or_id
write_card_or_id :right_id, card_or_id
end
|
#serializable_attributes ⇒ Object
126
127
128
|
# File 'lib/card.rb', line 126
def serializable_attributes
self.class.serializable_attributes + set_specific.keys
end
|
#serialize_for_active_job ⇒ Object
25
26
27
28
29
|
# File 'lib/card/set/event.rb', line 25
def serialize_for_active_job
serializable_attributes.each_with_object({}) do |name, hash|
hash[name] = instance_variable_get("@#{name}")
end
end
|
#serialize_value(value) ⇒ Object
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
# File 'lib/card/set/event.rb', line 31
def serialize_value value
case value
when Symbol
{ value: value.to_s, type: "symbol" }
when Time
{ value: value.to_s, type: "time" }
when Hash
{
value: value.each_with_object({}) { |(k, v), h| h[k] = serialize_value(v) },
type: "hash"
}
when ActionController::Parameters
serialize_value value.to_unsafe_h
else
{ value: value }
end
end
|
#subcards ⇒ Object
13
14
15
|
# File 'lib/card/subcards.rb', line 13
def subcards
@subcards ||= Subcards.new(self)
end
|
#type_id=(card_or_id) ⇒ Object
297
298
299
|
# File 'lib/card/subcards.rb', line 297
def type_id= card_or_id
write_card_or_id :type_id, card_or_id
end
|
#with_env_and_auth(env, auth) ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/card/set/event.rb', line 10
def with_env_and_auth env, auth
return yield if Decko.config.active_job.queue_adapter == :inline
Card::Auth.with auth do
Card::Env.with env do
yield
end
end
end
|
#with_id_when_exists(card, &block) ⇒ Object
318
319
320
|
# File 'lib/card/subcards.rb', line 318
def with_id_when_exists card, &block
card.director.call_after_store(&block)
end
|
#write_card_or_id(attribute, card_or_id) ⇒ Object
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
|
# File 'lib/card/subcards.rb', line 301
def write_card_or_id attribute, card_or_id
if card_or_id.is_a? Card
card = card_or_id
if card.id
write_attribute attribute, card.id
else
add_subcard card
card.director.prior_store = true
with_id_when_exists(card) do |id|
write_attribute attribute, id
end
end
else
write_attribute attribute, card_or_id
end
end
|