Class: Ddr::Contact
- Inherits:
-
Struct
- Object
- Struct
- Ddr::Contact
- Defined in:
- app/models/ddr/contact.rb
Instance Attribute Summary collapse
-
#ask ⇒ Object
Returns the value of attribute ask.
-
#email ⇒ Object
Returns the value of attribute email.
-
#name ⇒ Object
Returns the value of attribute name.
-
#phone ⇒ Object
Returns the value of attribute phone.
-
#short_name ⇒ Object
Returns the value of attribute short_name.
-
#slug ⇒ Object
Returns the value of attribute slug.
-
#url ⇒ Object
Returns the value of attribute url.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#ask ⇒ Object
Returns the value of attribute ask
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def ask @ask end |
#email ⇒ Object
Returns the value of attribute email
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def email @email end |
#name ⇒ Object
Returns the value of attribute name
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def name @name end |
#phone ⇒ Object
Returns the value of attribute phone
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def phone @phone end |
#short_name ⇒ Object
Returns the value of attribute short_name
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def short_name @short_name end |
#slug ⇒ Object
Returns the value of attribute slug
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def slug @slug end |
#url ⇒ Object
Returns the value of attribute url
2 3 4 |
# File 'app/models/ddr/contact.rb', line 2 def url @url end |
Class Method Details
.all ⇒ Object
12 13 14 |
# File 'app/models/ddr/contact.rb', line 12 def self.all keystore.values end |
.call(slug) ⇒ Object
16 17 18 19 20 21 |
# File 'app/models/ddr/contact.rb', line 16 def self.call(slug) keystore.fetch(slug) rescue KeyError => _ raise Ddr::NotFoundError, "Contact slug '#{slug}' not found." end |
.config ⇒ Object
4 5 6 |
# File 'app/models/ddr/contact.rb', line 4 def self.config @config ||= YAML.load_file(::File.('../../../config/aux/contact.yml', __dir__)) end |
.keys ⇒ Object
23 24 25 |
# File 'app/models/ddr/contact.rb', line 23 def self.keys keystore.keys end |
.keystore ⇒ Object
8 9 10 |
# File 'app/models/ddr/contact.rb', line 8 def self.keystore @keystore ||= Hash[config.map { |entry| [entry['slug'], new(entry).freeze] }].freeze end |
Instance Method Details
#to_s ⇒ Object
27 28 29 |
# File 'app/models/ddr/contact.rb', line 27 def to_s name end |