module Card::Director::All
director-related Card
instance methods
Attributes
Public Instance Methods
Source
# File lib/card/director/all.rb, line 30 def act options={}, &block if act_card add_to_act options, &block else start_new_act(&block) end end
Source
# File lib/card/director/all.rb, line 38 def act_card Card::Director.act_card end
Source
# File lib/card/director/all.rb, line 98 def clear_action_specific_attributes self.class.action_specific_attributes.each do |attr| instance_variable_set "@#{attr}", nil end end
Source
# File lib/card/director/all.rb, line 10 def director @director ||= Director.fetch self end
Source
# File lib/card/director/all.rb, line 19 def identify_action @action = if trash && trash_changed? :delete elsif new_card? :create else :update end end
Source
# File lib/card/director/all.rb, line 14 def prepare_for_phases reset_patterns include_set_modules end
Source
# File lib/card/director/all.rb, line 89 def restore_changes_information # restores changes for integration phase # (rails cleared them in an after_create/after_update hook which is # executed before the integration phase) return unless saved_changes.present? @mutations_from_database = mutations_before_last_save end
Source
# File lib/card/director/all.rb, line 51 def save *_args act { super } end
Calls superclass method
Source
# File lib/card/director/all.rb, line 46 def save! **args as_subcard = args.delete :as_subcard act(as_subcard: as_subcard) { super **args } end
Calls superclass method
Source
# File lib/card/director/all.rb, line 67 def save_if_needed validate save if save_needed? end
Source
# File lib/card/director/all.rb, line 72 def save_if_needed! validate save! if save_needed? end
Source
# File lib/card/director/all.rb, line 77 def save_needed? # ( new? || test_field_changing? || subcards.cards.any?(&:save_needed?) # ).tap do |r| # # binding.pry if r # puts "save needed for #{name}".yellow if r && !new? # end end
Source
# File lib/card/director/all.rb, line 59 def update *_args act { super } end
Calls superclass method
Also aliased as: update_attributes
Source
# File lib/card/director/all.rb, line 63 def update! *_args act { super } end
Calls superclass method
Also aliased as: update_attributes!
Source
# File lib/card/director/all.rb, line 55 def valid? *_args act(validating: true) { super } end
Calls superclass method
Private Instance Methods
Source
# File lib/card/director/all.rb, line 121 def add_to_act options={} director.appoint self unless @director director.head = true unless options[:validating] || options[:as_subcard] yield end
Source
# File lib/card/director/all.rb, line 110 def save_test_fields %i[name db_content trash type_id codename] end
Source
# File lib/card/director/all.rb, line 114 def start_new_act &block self.director = nil Director.run_act(self) do run_callbacks(:act, &block) end end
Source
# File lib/card/director/all.rb, line 106 def test_field_changing? save_test_fields.any? { |fld| send "#{fld}_is_changing?" } end