Revision: 2714
Updated Code
at March 30, 2007 17:52 by drewr
Updated Code
Index: lib/acts_as_state_machine.rb
===================================================================
--- lib/acts_as_state_machine.rb (revision 66)
+++ lib/acts_as_state_machine.rb (working copy)
@@ -146,6 +146,10 @@
self.send(self.class.state_column).to_sym
end
+ def current_state_text
+ self.send("#{current_state}_text")
+ end
+
# Returns what the next state for a given event would be, as a Ruby symbol.
def next_state_for_event(event)
ns = next_states_for_event(event)
@@ -214,10 +218,12 @@
# state :closed, Proc.new { |o| Mailer.send_notice(o) }
# end
def state(name, opts={})
+ text = opts.delete(:text) if opts.is_a?(Hash)
state = SupportingClasses::State.new(name.to_sym, opts)
read_inheritable_attribute(:states)[name.to_sym] = state
define_method("#{state.name}?") { current_state == state.name }
+ define_method("#{state.name}_text") { text || "give me some :text" }
end
# Wraps ActiveRecord::Base.find to conveniently find all records in
@@ -265,4 +271,4 @@
end
end
end
-end
\ No newline at end of file
+end
Revision: 2713
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at March 30, 2007 14:17 by drewr
Initial Code
Index: lib/acts_as_state_machine.rb
===================================================================
--- lib/acts_as_state_machine.rb (revision 66)
+++ lib/acts_as_state_machine.rb (working copy)
@@ -146,6 +146,10 @@
self.send(self.class.state_column).to_sym
end
+ def current_state_text
+ self.send(#{current_state}_text)
+ end
+
# Returns what the next state for a given event would be, as a Ruby symbol.
def next_state_for_event(event)
ns = next_states_for_event(event)
@@ -214,10 +218,12 @@
# state :closed, Proc.new { |o| Mailer.send_notice(o) }
# end
def state(name, opts={})
+ text = opts.delete(:text) if opts.is_a?(Hash)
state = SupportingClasses::State.new(name.to_sym, opts)
read_inheritable_attribute(:states)[name.to_sym] = state
define_method("#{state.name}?") { current_state == state.name }
+ define_method("#{state.name}_text") { text || "give me some :text" }
end
# Wraps ActiveRecord::Base.find to conveniently find all records in
@@ -265,4 +271,4 @@
end
end
end
-end
\ No newline at end of file
+end
Initial URL
Initial Description
Initial Title
Add text to AASM states
Initial Tags
plugin, rails
Initial Language
Diff