Class: Kameleoon::Targeting::TimeElapsedSinceVisitCondition Private
- Inherits:
-
NumberCondition
- Object
- Condition
- NumberCondition
- Kameleoon::Targeting::TimeElapsedSinceVisitCondition
- Defined in:
- lib/kameleoon/targeting/conditions/time_elapsed_since_visit_condition.rb
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Instance Attribute Summary
Attributes inherited from Condition
Instance Method Summary collapse
- #check(data) ⇒ Object private
-
#initialize(json_condition) ⇒ TimeElapsedSinceVisitCondition
constructor
private
A new instance of TimeElapsedSinceVisitCondition.
Constructor Details
#initialize(json_condition) ⇒ TimeElapsedSinceVisitCondition
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of TimeElapsedSinceVisitCondition.
10 11 12 13 14 |
# File 'lib/kameleoon/targeting/conditions/time_elapsed_since_visit_condition.rb', line 10 def initialize(json_condition) count_in_millis = json_condition['countInMillis'] super(json_condition, count_in_millis) @is_first_visit = @type == ConditionType::FIRST_VISIT end |
Instance Method Details
#check(data) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/kameleoon/targeting/conditions/time_elapsed_since_visit_condition.rb', line 16 def check(data) data ||= VisitorVisits.new([]) return false unless data.is_a?(VisitorVisits) && !@condition_value.nil? prev_visits = data.prev_visits if prev_visits.size >= 1 now = (Time.now.to_f * 1000).to_i # ... * 1000 for convert seconds to milliseconds visit_time = prev_visits[@is_first_visit ? prev_visits.size - 1 : 0].time_started return check_targeting(now - visit_time) end false end |