You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.api.rsb 1.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. api.array :custom_fields do
  2. @custom_fields.each do |field|
  3. api.custom_field do
  4. api.id field.id
  5. api.name field.name
  6. api.customized_type field.class.customized_class.name.underscore if field.class.customized_class
  7. api.field_format field.field_format
  8. api.regexp field.regexp
  9. api.min_length field.min_length
  10. api.max_length field.max_length
  11. api.is_required field.is_required?
  12. api.is_filter field.is_filter?
  13. api.searchable field.searchable
  14. api.multiple field.multiple?
  15. api.default_value field.default_value
  16. api.visible field.visible?
  17. values = field.possible_values_options
  18. if values.present?
  19. api.array :possible_values do
  20. values.each do |label, value|
  21. api.possible_value do
  22. api.value value || label
  23. api.label label
  24. end
  25. end
  26. end
  27. end
  28. if field.is_a?(IssueCustomField)
  29. api.array :trackers do
  30. field.trackers.each do |tracker|
  31. api.tracker :id => tracker.id, :name => tracker.name
  32. end
  33. end
  34. api.array :roles do
  35. field.roles.each do |role|
  36. api.role :id => role.id, :name => role.name
  37. end
  38. end
  39. end
  40. end
  41. end
  42. end