Class: SpreeCmCommissioner::Transit::TripStopForm

Inherits:
Object
  • Object
show all
Defined in:
lib/spree_cm_commissioner/transit/trip_stop_form.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ TripStopForm

Returns a new instance of TripStopForm.



59
60
61
62
63
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 59

def initialize(options = {})
  options.each do |key, value|
    instance_variable_set("@#{key}", value)
  end
end

Instance Attribute Details

#allow_boardingObject

Returns the value of attribute allow_boarding.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def allow_boarding
  @allow_boarding
end

#allow_bookingObject

Returns the value of attribute allow_booking.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def allow_booking
  @allow_booking
end

#allow_drop_offObject

Returns the value of attribute allow_drop_off.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def allow_drop_off
  @allow_drop_off
end

#allow_seat_selectionObject

Returns the value of attribute allow_seat_selection.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def allow_seat_selection
  @allow_seat_selection
end

#board_to_trip_idObject

Returns the value of attribute board_to_trip_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def board_to_trip_id
  @board_to_trip_id
end

#departure_timeObject

Returns the value of attribute departure_time.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def departure_time
  @departure_time
end

#duration_in_minutesObject

Returns the value of attribute duration_in_minutes.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def duration_in_minutes
  @duration_in_minutes
end

#location_idObject

Returns the value of attribute location_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def location_id
  @location_id
end

#offset_daysObject

Returns the value of attribute offset_days.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def offset_days
  @offset_days
end

#route_typeObject

Returns the value of attribute route_type.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def route_type
  @route_type
end

#sequenceObject

Returns the value of attribute sequence.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def sequence
  @sequence
end

#stop_idObject

Returns the value of attribute stop_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def stop_id
  @stop_id
end

#stop_typeObject

Returns the value of attribute stop_type.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def stop_type
  @stop_type
end

#vehicle_idObject

Returns the value of attribute vehicle_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def vehicle_id
  @vehicle_id
end

#vehicle_type_idObject

Returns the value of attribute vehicle_type_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def vehicle_type_id
  @vehicle_type_id
end

#vendor_idObject

Returns the value of attribute vendor_id.



3
4
5
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 3

def vendor_id
  @vendor_id
end

Instance Method Details

#allow_boarding?Boolean

Returns:

  • (Boolean)


65
66
67
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 65

def allow_boarding?
  ActiveModel::Type::Boolean.new.cast(allow_boarding)
end

#allow_booking?Boolean

Returns:

  • (Boolean)


77
78
79
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 77

def allow_booking?
  ActiveModel::Type::Boolean.new.cast(allow_booking)
end

#allow_drop_off?Boolean

Returns:

  • (Boolean)


69
70
71
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 69

def allow_drop_off?
  ActiveModel::Type::Boolean.new.cast(allow_drop_off)
end

#allow_seat_selection?Boolean

Returns:

  • (Boolean)


73
74
75
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 73

def allow_seat_selection?
  ActiveModel::Type::Boolean.new.cast(allow_seat_selection)
end

#booking_editable?Boolean

Returns:

  • (Boolean)


89
90
91
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 89

def booking_editable?
  branch? && board_to_trip_id.blank?
end

#branch?Boolean

Returns:

  • (Boolean)


81
82
83
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 81

def branch?
  stop_type == 'branch' || stop_type == :branch
end

#duration_in_hoursObject



102
103
104
105
106
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 102

def duration_in_hours
  return nil if duration_in_minutes.blank?

  (duration_in_minutes.to_f / 60).round(2)
end

#duration_in_hours_minutesObject



93
94
95
96
97
98
99
100
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 93

def duration_in_hours_minutes
  return { hours: 0, minutes: 0 } if duration_in_minutes.blank?

  hours = (duration_in_minutes.to_f / 60).floor
  minutes = (duration_in_minutes.to_f % 60).round

  { hours: hours, minutes: minutes }
end

#stop?Boolean

Returns:

  • (Boolean)


85
86
87
# File 'lib/spree_cm_commissioner/transit/trip_stop_form.rb', line 85

def stop?
  stop_type == 'stop' || stop_type == :stop
end