Class: DeployHoroscope::Collection
- Inherits:
-
Object
- Object
- DeployHoroscope::Collection
- Defined in:
- lib/deploy_horoscope/collection.rb
Instance Attribute Summary collapse
-
#actual_date ⇒ Object
readonly
Returns the value of attribute actual_date.
- #signs ⇒ Array<Sign> readonly
Instance Method Summary collapse
-
#can_deploy_signs(lang = :en) ⇒ Array<Symbols>
Ex: [:aries, :taurus].
-
#initialize(signs, actual_date) ⇒ Collection
constructor
A new instance of Collection.
-
#neutral_today(lang = :en) ⇒ Array<Symbols>
Ex: [:aries, :taurus].
-
#positive_today(lang = :en) ⇒ Array<Symbols>
Ex: [:aries, :taurus].
- #sign(sign = ::DeployHoroscope::SIGNS.firts) ⇒ Sign
-
#unfavorable_today(lang = :en) ⇒ Array<Symbols>
Ex: [:aries, :taurus].
Constructor Details
#initialize(signs, actual_date) ⇒ Collection
Returns a new instance of Collection.
7 8 9 10 |
# File 'lib/deploy_horoscope/collection.rb', line 7 def initialize(signs, actual_date) @signs = signs @actual_date = actual_date end |
Instance Attribute Details
#actual_date ⇒ Object (readonly)
Returns the value of attribute actual_date.
16 |
# File 'lib/deploy_horoscope/collection.rb', line 16 attr_reader :signs, :actual_date |
#signs ⇒ Array<Sign> (readonly)
16 17 18 |
# File 'lib/deploy_horoscope/collection.rb', line 16 def signs @signs end |
Instance Method Details
#can_deploy_signs(lang = :en) ⇒ Array<Symbols>
Returns Ex: [:aries, :taurus].
29 30 31 32 |
# File 'lib/deploy_horoscope/collection.rb', line 29 def can_deploy_signs(lang = :en) items = signs.reject { |i| i.today == :unfavorable } lang == :ru ? items.map(&:sign_ru) : items.map(&:sign) end |
#neutral_today(lang = :en) ⇒ Array<Symbols>
Returns Ex: [:aries, :taurus].
50 51 52 53 |
# File 'lib/deploy_horoscope/collection.rb', line 50 def neutral_today(lang = :en) items = select_by_type(:neutral) lang == :ru ? items.map(&:sign_ru) : items.map(&:sign) end |
#positive_today(lang = :en) ⇒ Array<Symbols>
Returns Ex: [:aries, :taurus].
36 37 38 39 |
# File 'lib/deploy_horoscope/collection.rb', line 36 def positive_today(lang = :en) items = select_by_type(:positive) lang == :ru ? items.map(&:sign_ru) : items.map(&:sign) end |
#sign(sign = ::DeployHoroscope::SIGNS.firts) ⇒ Sign
21 22 23 24 25 |
# File 'lib/deploy_horoscope/collection.rb', line 21 def sign(sign = ::DeployHoroscope::SIGNS.firts) raise ::DeployHoroscope::Error, "Undefined sign '#{sign}'" unless SIGNS.values.include?(sign) signs.find { |i| i.sign == sign } end |
#unfavorable_today(lang = :en) ⇒ Array<Symbols>
Returns Ex: [:aries, :taurus].
43 44 45 46 |
# File 'lib/deploy_horoscope/collection.rb', line 43 def unfavorable_today(lang = :en) items = select_by_type(:unfavorable) lang == :ru ? items.map(&:sign_ru) : items.map(&:sign) end |