Guest User

Untitled

a guest
Feb 19th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. def optgroups_with_options(groups, options, selected = nil, prompt = nil)
  2. return "<option>Error: Sizes don't match.</option>" if groups.size != options.size
  3. str = String.new
  4. unless prompt.nil?
  5. if prompt.is_a? String
  6. str += content_tag :option, prompt, :value => ""
  7. elsif prompt.is_a? Array
  8. str += content_tag( :option, prompt[0], :value => prompt[1])
  9. end
  10. end
  11. (0..groups.size-1).each do |i|
  12. str += content_tag :optgroup, options_for_select(options[i], selected), :label => groups[i]
  13. end
  14. str
  15. end
  16.  
  17. # How it's called...
  18. def position_options(selected = nil, prompt = nil)
  19. groups = ["Front Tshirt", "Back Tshirt", "Other"]
  20. options = [
  21. ["Full Front","Center Chest","Left Breast","Right Breast", "Lower Left", "Lower Right", "Lower Center"],
  22. ["Full Back","Upper Back","Lower Back","Left Shoulder", "Right Shoulder"],
  23. ["Left Sleeve","Right Sleeve","Left Side", "Right Side", ["Other (Explain in notes)", "Other"] ]
  24. ]
  25. optgroups_with_options(groups, options, selected, prompt)
  26. end
Add Comment
Please, Sign In to add comment