Class: Fatboy::ViewTracker
- Inherits:
-
Object
- Object
- Fatboy::ViewTracker
- Defined in:
- lib/fatboy/view_tracker.rb
Instance Method Summary collapse
-
#day(time) ⇒ Object
How often the model was viewed in a particular day.
-
#hour(time) ⇒ Object
How often the model was viewed on a particular hour.
-
#initialize(redis, model) ⇒ ViewTracker
constructor
A new instance of ViewTracker.
-
#month(time) ⇒ Object
How often the model was viewed in a particular month.
-
#this_hour ⇒ Object
How often this model was viewed this hour.
-
#this_month ⇒ Object
How often this model was viewed this month.
-
#this_year ⇒ Object
How often this model was viewed this year.
-
#today ⇒ Object
How often this model was viewed today.
-
#year(time) ⇒ Object
How often teh model was viewed in a particular year.
Constructor Details
#initialize(redis, model) ⇒ ViewTracker
Returns a new instance of ViewTracker.
5 6 7 8 9 |
# File 'lib/fatboy/view_tracker.rb', line 5 def initialize(redis, model) @redis = redis @model_name = model.class.to_s @id = model.id end |
Instance Method Details
#day(time) ⇒ Object
How often the model was viewed in a particular day
41 42 43 44 45 |
# File 'lib/fatboy/view_tracker.rb', line 41 def day(time) time = Fatboy::Helpers.day_format(time.utc) store = Fatboy::Helpers.format_store(@model_name, time) get_score(store) end |
#hour(time) ⇒ Object
How often the model was viewed on a particular hour
33 34 35 36 37 |
# File 'lib/fatboy/view_tracker.rb', line 33 def hour(time) time = Fatboy::Helpers.hour_format(time.utc) store = Fatboy::Helpers.format_store(@model_name, time) @redis.zscore(store, @id) end |
#month(time) ⇒ Object
How often the model was viewed in a particular month
48 49 50 51 52 |
# File 'lib/fatboy/view_tracker.rb', line 48 def month(time) time = Fatboy::Helpers.month_format(time.utc) store = Fatboy::Helpers.format_store(@model_name, time) get_score(store) end |
#this_hour ⇒ Object
How often this model was viewed this hour
12 13 14 |
# File 'lib/fatboy/view_tracker.rb', line 12 def this_hour hour(Time.now) end |
#this_month ⇒ Object
How often this model was viewed this month
23 24 25 |
# File 'lib/fatboy/view_tracker.rb', line 23 def this_month day(Time.now) end |
#this_year ⇒ Object
How often this model was viewed this year
28 29 30 |
# File 'lib/fatboy/view_tracker.rb', line 28 def this_year year(Time.now) end |
#today ⇒ Object
How often this model was viewed today
17 18 19 |
# File 'lib/fatboy/view_tracker.rb', line 17 def today day(Time.now) end |
#year(time) ⇒ Object
How often teh model was viewed in a particular year
55 56 57 58 59 |
# File 'lib/fatboy/view_tracker.rb', line 55 def year(time) time = Fatboy::Helpers.month_format(time.utc) store = Fatboy::Helpers.format_store(@model_name, time) get_score(store) end |