end
form.select :edit_tag_style, select_options, :label => :label_display
end
+
+ def select_type_radio_buttons(default_type)
+ if CUSTOM_FIELDS_TABS.none? {|tab| tab[:name] == default_type}
+ default_type = 'IssueCustomField'
+ end
+ custom_field_type_options.map do |name, type|
+ content_tag(:label, :style => 'display:block;') do
+ radio_button_tag('type', type, type == default_type) + name
+ end
+ end.join("\n").html_safe
+ end
end
<div class="contextual">
-<%= link_to l(:label_custom_field_new), new_custom_field_path, :class => 'icon icon-add' %>
+<%= link_to_function l(:label_custom_field_new), "location.href = '#{new_custom_field_path}?tab=' + encodeURIComponent($('.tabs a.selected').attr('id').split('tab-').pop())", :class => 'icon icon-add' %>
</div>
<%= title l(:label_custom_field_plural) %>
<%= custom_field_title @custom_field %>
-<% selected = 0 %>
<%= form_tag new_custom_field_path, :method => 'get' do %>
<div class="box">
<p><%= l(:label_custom_field_select_type) %>:</p>
<p>
- <% custom_field_type_options.each do |name, type| %>
- <label style="display:block;"><%= radio_button_tag 'type', type, 1==selected+=1 %> <%= name %></label>
- <% end %>
+ <%= select_type_radio_buttons(params[:tab]) %>
</p>
</div>
<p><%= submit_tag l(:label_next).html_safe + " »".html_safe, :name => nil %></p>
assert_select_in custom_field_tag('object', value), 'textarea[class=?]', 'text_cf wiki-edit'
end
+
+ def test_select_type_radio_buttons
+ result = select_type_radio_buttons('UserCustomField')
+ assert_select_in result, 'input[type="radio"]', :count => 10
+ assert_select_in result, 'input#type_UserCustomField[checked=?]', 'checked'
+
+ result = select_type_radio_buttons(nil)
+ assert_select_in result, 'input[type="radio"]', :count => 10
+ assert_select_in result, 'input#type_IssueCustomField[checked=?]', 'checked'
+ end
end