class Parlez::FormBuilder
Public Instance Methods
errors_on(method)
click to toggle source
# File lib/parlez/form_builder.rb, line 48 def errors_on(method) if object and object.respond_to?(:errors) if object.errors[method].present? errors = object.errors[method] "<div class='error_message'>#{errors.is_a?(Array) ? errors.first : errors}</div>" end end end
label_for(field, options)
click to toggle source
# File lib/parlez/form_builder.rb, line 33 def label_for(field, options) label = options.delete(:label) || field.to_s.titleize "<label for=\"#{object_name}_#{field}\">#{label}</label>".html_safe end
rich_area(field, options = {})
click to toggle source
# File lib/parlez/form_builder.rb, line 18 def rich_area(field, options = {}) options.merge!({:class => 'rich_text'}) structured_field 'text_area', field, options do text_area(field, options) end end
structured_field(type, field, options = {}, &block)
click to toggle source
# File lib/parlez/form_builder.rb, line 25 def structured_field(type, field, options = {}, &block) out = "<div class='form_field #{type}'>" out << "<div class='label'>#{label_for(field, options)}</div>" if !options[:omit_label] out << "<div class='field'>#{errors_on(field)}#{yield}</div>" out << "</div>" out.html_safe end
submit(value, options = {}, &block)
click to toggle source
# File lib/parlez/form_builder.rb, line 38 def submit(value, options = {}, &block) extra_content = @template.capture(&block) if block_given? cancel_link ||= options[:cancel_url] ? ' or ' + options.delete(:cancel_url) : '' %( <div class='form_element submit_element'> #{super(value, options)} #{extra_content} #{cancel_link} </div> ).html_safe end