class ApiCanon::DocumentedParam
Attributes
default[RW]
description[RW]
documented_action[RW]
example_values[RW]
multiple[W]
name[RW]
param_type[RW]
required[RW]
type[RW]
values[RW]
Public Class Methods
new(name, documented_action, opts={})
click to toggle source
# File lib/api_canon/documented_param.rb, line 14 def initialize(name, documented_action, opts={}) @name = name @documented_action = documented_action opts.each {|k,v| self.send("#{k}=", v) } end
Public Instance Methods
example_values_field(f, doco_prefix)
click to toggle source
# File lib/api_canon/documented_param.rb, line 35 def example_values_field(f, doco_prefix) if values_for_example.is_a?(Array) if type != :array select_tag :example_value, options_for_select([""] + values_for_example, default), :class => 'input-block-level', :onchange => "jQuery('##{doco_prefix}_#{name}').val(this.value)", :id => "#{doco_prefix}_#{name}_example" end else values_for_example end end
form_values()
click to toggle source
# File lib/api_canon/documented_param.rb, line 19 def form_values values.presence || example_values.presence end
multiple?()
click to toggle source
# File lib/api_canon/documented_param.rb, line 11 def multiple? !!@multiple end
to_field(f, doco_prefix)
click to toggle source
# File lib/api_canon/documented_param.rb, line 22 def to_field(f, doco_prefix) # TODO: This doco_prefix thing sucks. Get rid of it. if type == :array if form_values.nil? raise ArgumentError.new(':values or :example_values must be supplied for :array type params') end f.select name, form_values, {:selected => default, :include_blank => true}, {:multiple => multiple?, :class => 'input-block-level', :id => "#{doco_prefix}_#{name}"} elsif type == :boolean f.select name, [true,false], {:selected => default, :include_blank => true}, :class => 'input-block-level', :id => "#{doco_prefix}_#{name}" else f.text_field name, :value => default, :class => 'input-block-level', :id => "#{doco_prefix}_#{name}" end end
values_for_example()
click to toggle source
# File lib/api_canon/documented_param.rb, line 8 def values_for_example example_values || values || "" end