6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/arson.rb', line 6
def arson
class_eval " @@arson_validations = {}\n\n def to_arson(class_name=nil)\n @class_name ||= class_name || self.class.to_s\n self.valid?\n ActiveSupport::JSON.encode({@class_name=>instance_values.update(\"arson_validations\"=>@@arson_validations)})\n end\n\n protected\n\n def self.validates_presence_of(*attr_names)\n add_arson_validation(\"presence\",attr_names.clone)\n super\n end\n\n def self.validates_format_of(*attr_names)\n add_arson_validation(\"format\",attr_names.clone)\n super\n end\n\n def self.add_arson_validation(validation, configuration)\n validation_options = configuration.extract_options!\n method = configuration.flatten.to_s\n @@arson_validations[method] ||= []\n @@arson_validations[method] << {validation=>validation_options}\n end\n EOC\nend\n"
|