_form.rhtml
98 lines
| 3.5 KiB
| text/html+ruby
|
RhtmlLexer
|
r2 | <%= error_messages_for 'custom_field' %> | ||
|
r220 | <script type="text/javascript"> | ||
//<![CDATA[ | ||||
|
r97 | function toggle_custom_field_format() { | ||
format = $("custom_field_field_format"); | ||||
p_length = $("custom_field_min_length"); | ||||
p_regexp = $("custom_field_regexp"); | ||||
p_values = $("custom_field_possible_values"); | ||||
|
r981 | p_searchable = $("custom_field_searchable"); | ||
|
r1076 | p_default = $("custom_field_default_value"); | ||
p_default.setAttribute('type','text'); | ||||
Element.show(p_default.parentNode); | ||||
|
r97 | switch (format.value) { | ||
case "list": | ||||
Element.hide(p_length.parentNode); | ||||
Element.hide(p_regexp.parentNode); | ||||
|
r1076 | if (p_searchable) Element.show(p_searchable.parentNode); | ||
|
r220 | Element.show(p_values); | ||
|
r97 | break; | ||
case "bool": | ||||
|
r1076 | p_default.setAttribute('type','checkbox'); | ||
Element.hide(p_length.parentNode); | ||||
Element.hide(p_regexp.parentNode); | ||||
if (p_searchable) Element.hide(p_searchable.parentNode); | ||||
Element.hide(p_values); | ||||
break; | ||||
case "date": | ||||
|
r97 | Element.hide(p_length.parentNode); | ||
Element.hide(p_regexp.parentNode); | ||||
|
r1076 | if (p_searchable) Element.hide(p_searchable.parentNode); | ||
|
r981 | Element.hide(p_values); | ||
break; | ||||
case "float": | ||||
case "int": | ||||
Element.show(p_length.parentNode); | ||||
Element.show(p_regexp.parentNode); | ||||
|
r1076 | if (p_searchable) Element.hide(p_searchable.parentNode); | ||
|
r220 | Element.hide(p_values); | ||
|
r97 | break; | ||
default: | ||||
Element.show(p_length.parentNode); | ||||
Element.show(p_regexp.parentNode); | ||||
|
r1076 | if (p_searchable) Element.show(p_searchable.parentNode); | ||
|
r857 | Element.hide(p_values); | ||
|
r97 | break; | ||
} | ||||
} | ||||
|
r220 | |||
//]]> | ||||
|
r97 | </script> | ||
|
r10 | <div class="box"> | ||
|
r97 | <p><%= f.text_field :name, :required => true %></p> | ||
|
r2414 | <p><%= f.select :field_format, custom_field_formats_for_select, {}, :onchange => "toggle_custom_field_format();", | ||
:disabled => !@custom_field.new_record? %></p> | ||||
|
r19 | <p><label for="custom_field_min_length"><%=l(:label_min_max_length)%></label> | ||
|
r97 | <%= f.text_field :min_length, :size => 5, :no_label => true %> - | ||
<%= f.text_field :max_length, :size => 5, :no_label => true %><br>(<%=l(:text_min_max_length_info)%>)</p> | ||||
|
r330 | <p><%= f.text_field :regexp, :size => 50 %><br>(<%=l(:text_regexp_info)%>)</p> | ||
|
r2265 | <p id="custom_field_possible_values"><%= f.text_area :possible_values, :value => @custom_field.possible_values.to_a.join("\n"), | ||
:cols => 20, | ||||
:rows => 15 %> | ||||
<br /><em><%= l(:text_custom_field_possible_values_info) %></em></p> | ||||
|
r1076 | <p><%= @custom_field.field_format == 'bool' ? f.check_box(:default_value) : f.text_field(:default_value) %></p> | ||
|
r330 | </div> | ||
|
r2 | |||
|
r10 | <div class="box"> | ||
|
r2270 | <% case @custom_field.class.name | ||
|
r330 | when "IssueCustomField" %> | ||
<fieldset><legend><%=l(:label_tracker_plural)%></legend> | ||||
|
r97 | <% for tracker in @trackers %> | ||
|
r2270 | <%= check_box_tag "custom_field[tracker_ids][]", tracker.id, (@custom_field.trackers.include? tracker) %> <%= tracker.name %> | ||
|
r97 | <% end %> | ||
|
r2270 | <%= hidden_field_tag "custom_field[tracker_ids][]", '' %> | ||
|
r330 | </fieldset> | ||
|
r97 | | ||
<p><%= f.check_box :is_required %></p> | ||||
<p><%= f.check_box :is_for_all %></p> | ||||
|
r444 | <p><%= f.check_box :is_filter %></p> | ||
|
r981 | <p><%= f.check_box :searchable %></p> | ||
|
r97 | |||
<% when "UserCustomField" %> | ||||
<p><%= f.check_box :is_required %></p> | ||||
|
r2274 | <p><%= f.check_box :editable %></p> | ||
|
r10 | |||
|
r97 | <% when "ProjectCustomField" %> | ||
<p><%= f.check_box :is_required %></p> | ||||
|
r10 | |||
|
r1672 | <% when "TimeEntryCustomField" %> | ||
<p><%= f.check_box :is_required %></p> | ||||
|
r10 | <% end %> | ||
</div> | ||||
|
r981 | <%= javascript_tag "toggle_custom_field_format();" %> | ||