+ errors.add field, "illegal update of field"
+ end
+ end
+ end
+
+ def validate_state_change
+ if self.state_changed?
+ unless state_transitions[self.state_was].andand.include? self.state
+ errors.add :state, "invalid state change from #{self.state_was} to #{self.state}"
+ return false