index.api.rsb
42 lines
| 1.3 KiB
| text/plain
|
TextLexer
|
r11935 | api.array :custom_fields do | ||
@custom_fields.each do |field| | ||||
api.custom_field do | ||||
api.id field.id | ||||
api.name field.name | ||||
api.customized_type field.class.customized_class.name.underscore if field.class.customized_class | ||||
api.field_format field.field_format | ||||
api.regexp field.regexp | ||||
api.min_length (field.min_length == 0 ? nil : field.min_length) | ||||
api.max_length (field.max_length == 0 ? nil : field.max_length) | ||||
api.is_required field.is_required? | ||||
api.is_filter field.is_filter? | ||||
api.searchable field.searchable | ||||
api.multiple field.multiple? | ||||
api.default_value field.default_value | ||||
api.visible field.visible? | ||||
if field.field_format == 'list' | ||||
api.array :possible_values do | ||||
field.possible_values.each do |v| | ||||
api.possible_value do | ||||
api.value v | ||||
end | ||||
end | ||||
end | ||||
end | ||||
if field.is_a?(IssueCustomField) | ||||
api.trackers do | ||||
field.trackers.each do |tracker| | ||||
api.tracker :id => tracker.id, :name => tracker.name | ||||
end | ||||
end | ||||
api.roles do | ||||
field.roles.each do |role| | ||||
api.role :id => role.id, :name => role.name | ||||
end | ||||
end | ||||
end | ||||
end | ||||
end | ||||
end | ||||