Module | PickerHelper |
In: |
app/helpers/picker_helper.rb
|
選択部品の helper を与える。
選択肢の集合に対するリンクを返す。
# File app/helpers/picker_helper.rb, line 89 89: def li_branch_link(model_name, it, selected_id, options) 90: if it.id == selected_id 91: css_class = "tree_icon pick selected" 92: tree_icon = tree_icon_open 93: name = '<span class="selected">' + h(it.name_with_in) + '</span>' 94: else 95: css_class = "tree_icon pick" 96: tree_icon = tree_icon_close 97: name = h(it.name_with_in) 98: end 99: return [ 100: "<li>", 101: link_to_view_motion(tree_icon, 102: @current_view, "#{model_name}#{it.id}", {}, 103: @pass_params_link.merge(options), :class => css_class), 104: name, 105: "</li>", 106: ].join(" ") 107: end
一括選択について選択肢の集合に対するリンクを返す。
# File app/helpers/picker_helper.rb, line 122 122: def li_branch_links_for_lump(model_name, it, selected_id, options) 123: if it.id == selected_id 124: css_class = "pick selected" 125: tree_icon = tree_icon_open 126: else 127: css_class = "pick" 128: tree_icon = tree_icon_close 129: end 130: options = @pass_params_link.merge(options) 131: return [ 132: "<li>", 133: link_to_view_motion(tree_icon, 134: @current_view, "#{model_name}#{it.id}", {}, 135: options.merge({:action => "lump"}), :class => "tree_icon "+css_class), 136: link_to_view_motion(h(it.name_with_in), 137: @current_view, "#{model_name}#{it.id}pick", {}, 138: options.merge({:action => "pick", :lump_pick => model_name}), :class => css_class), 139: "</li>", 140: ].join(" ") 141: end
その選択肢から分岐した子への submit を返す。
# File app/helpers/picker_helper.rb, line 156 156: def li_branch_submit_tags(model_name, it, selected_id) 157: if it.id == selected_id 158: css_class = "pick selected" 159: tree_icon = tree_icon_open_without_tag 160: else 161: css_class = "pick" 162: tree_icon = tree_icon_close_without_tag 163: end 164: return [ 165: "<li>", 166: submit_tag("&tree_icon;", :name => "#{model_name}[open#{it.id}]", :class => "tree_icon "+css_class).sub(/&tree_icon;/) { tree_icon }, 167: submit_tag(h(it.name_with_in), :name => "#{model_name}[pick#{it.id}]", :class => css_class), 168: "</li>", 169: ].join("") 170: end
選択肢のリンクを返す。
# File app/helpers/picker_helper.rb, line 32 32: def li_leaf_link(model_name, it, options) 33: return [ 34: "<li>", 35: tree_icon_leaf, 36: link_to_view_motion(h(it.name_with_in), 37: @current_view, "#{model_name}#{it.id}", {}, 38: @pass_params_link.merge(options), :class => "pick"), 39: "</li>", 40: ].join(" ") 41: end
メールアドレス選択画面のボタン群を返す。
# File app/helpers/picker_helper.rb, line 12 12: def mail_picker_button_box 13: @picker_button_box ||= lcr_button_box({ 14: :left => link_to_close({"_" => "&suffix;"}, @return_to_url, :class => "button"), 15: :right => submit_tag(h(s_("Mail Picker|OK")), :name => "pick", :id => nil), 16: }) 17: return @picker_button_box 18: end
選択画面のボタン群を返す。
# File app/helpers/picker_helper.rb, line 4 4: def picker_button_box 5: @picker_button_box ||= lcr_button_box({ 6: :left => link_to_close({"_" => "&suffix;"}, @return_to_url, :class => "button"), 7: }) 8: return @picker_button_box 9: end
選択肢の集合に対するリンクの一覧を返す。
# File app/helpers/picker_helper.rb, line 76 76: def picker_list_branch_link(model_name, list) 77: unless list.blank? 78: key = "#{model_name}_id".to_sym 79: selected_id = params[key] 80: action = params[:action] 81: list = list.map do |it| 82: li_branch_link(model_name, it, selected_id, :action => action, key => it.id) 83: end 84: return '<ul class="picker_list">' + list.join("") + '</ul>' 85: end 86: end
一括選択について選択肢の集合に対するリンクの一覧を返す。
# File app/helpers/picker_helper.rb, line 110 110: def picker_list_branch_links_for_lump(model_name, list) 111: unless list.blank? 112: key = "#{model_name}_id".to_sym 113: selected_id = params[key] 114: list = list.map do |it| 115: li_branch_links_for_lump(model_name, it, selected_id, key => it.id) 116: end 117: return '<ul class="picker_list">' + list.join("") + '</ul>' 118: end 119: end
その選択肢から分岐した子への submit 群を返す。
# File app/helpers/picker_helper.rb, line 144 144: def picker_list_branch_submit_tags(model_name, list) 145: unless list.blank? 146: key = "#{model_name}_id".to_sym 147: selected_id = params[key] 148: list = list.map do |it| 149: li_branch_submit_tags(model_name, it, selected_id) 150: end 151: return '<ul class="picker_list">' + list.join("") + '</ul>' 152: end 153: end
選択肢のリンクの一覧を返す。
# File app/helpers/picker_helper.rb, line 21 21: def picker_list_leaf(model_name, list, options={}) 22: unless list.blank? 23: key = "#{model_name}_id".to_sym 24: list = list.map do |it| 25: li_leaf_link(model_name, it, options.merge(:action => "pick", key => it.id)) 26: end 27: return '<ul class="picker_list">' + list.join("") + '</ul>' 28: end 29: end
選択肢のリンクの一覧を返す。
# File app/helpers/picker_helper.rb, line 44 44: def picker_table_leaf(model_name, records) 45: if records.blank? 46: contents = [] 47: else 48: contents = records.map do |record| 49: tr_leaf_link(model_name, record, @pass_params_form) 50: end 51: end 52: contents.unshift(content_tag(:tr, [s_("Picker|Code"), s_("Picker|Name")].map {|x| content_tag(:th, h(x))}.join)) 53: return content_tag(:table, contents.join, :class => "picker_list", :border => 1) 54: end
選択肢のリンクを返す。
# File app/helpers/picker_helper.rb, line 57 57: def tr_leaf_link(model_name, record, options) 58: contents = [] 59: [@record_code, @record_name].each do |m| 60: if m 61: record_options = { 62: "#{@record_id}".to_sym => record.__send__(@record_id), 63: "#{@record_name}".to_sym => record.__send__(@record_name), 64: "#{@record_code}".to_sym => record.__send__(@record_code), 65: } 66: x = link_to_view_motion(h(record.__send__(m)), 67: @current_view, "#{model_name}#{record.id}__#{m}", {}, 68: options.merge(record_options), :class => "pick") 69: contents << content_tag(:td, x) 70: end 71: end 72: return content_tag(:tr, contents.join, :class => "pick") 73: end