Module: GdsApi::PartMethods
- Defined in:
- lib/gds_api/part_methods.rb
Instance Method Summary collapse
- #find_part(slug) ⇒ Object
- #has_next_part?(part) ⇒ Boolean
- #has_parts?(part) ⇒ Boolean
- #has_previous_part?(part) ⇒ Boolean
- #part_after(part) ⇒ Object
- #part_before(part) ⇒ Object
- #part_index(slug) ⇒ Object
Instance Method Details
#find_part(slug) ⇒ Object
7 8 9 10 |
# File 'lib/gds_api/part_methods.rb', line 7 def find_part(slug) return nil unless index = part_index(slug) parts[index] end |
#has_next_part?(part) ⇒ Boolean
21 22 23 24 |
# File 'lib/gds_api/part_methods.rb', line 21 def has_next_part?(part) index = part_index(part.slug) !! (index && (index + 1) < parts.length) end |
#has_parts?(part) ⇒ Boolean
12 13 14 |
# File 'lib/gds_api/part_methods.rb', line 12 def has_parts?(part) !! (has_previous_part?(part) || has_next_part?(part)) end |
#has_previous_part?(part) ⇒ Boolean
16 17 18 19 |
# File 'lib/gds_api/part_methods.rb', line 16 def has_previous_part?(part) index = part_index(part.slug) !! (index && index > 0) end |
#part_after(part) ⇒ Object
26 27 28 |
# File 'lib/gds_api/part_methods.rb', line 26 def part_after(part) part_at(part, 1) end |
#part_before(part) ⇒ Object
30 31 32 |
# File 'lib/gds_api/part_methods.rb', line 30 def part_before(part) part_at(part, -1) end |
#part_index(slug) ⇒ Object
3 4 5 |
# File 'lib/gds_api/part_methods.rb', line 3 def part_index(slug) parts.index { |p| p.slug == slug } end |