[#3942] Added a controller to handle JavaScript requests for a CustomField options.

* Added OverheadTimeEntryActivityController which requires administrator access
* Added a partial which will render the HTML options for a select field
* Added some RSpec examples
This commit is contained in:
Eric Davis
2009-04-21 12:17:42 -07:00
parent 631a43392d
commit bcba8262b3
3 changed files with 142 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
class OverheadTimeEntryActivityController < ApplicationController
unloadable
before_filter :require_admin
def index
if params[:custom_field]
@field = TimeEntryActivityCustomField.find(params[:custom_field])
@values = select_values_for_field(@field)
end
@values ||= []
render :partial => 'values'
end
private
def select_values_for_field(field)
if field.field_format == 'list'
returning [] do |r|
field.possible_values.each do |item|
if item == 'Nil'
r << [l(:label_none), item] # Nil should use the none label
else
r << [item, item]
end
end
r
end
elsif field.field_format == 'bool'
return [[true,true],[false,false]]
end
end
end

View File

@@ -0,0 +1 @@
<%= options_for_select(@values) %>