Class: Project
Constant Summary
Houston::Props::VALID_PROP_NAME
Class Method Summary
collapse
Instance Method Summary
collapse
adapters, has_adapter
#get_prop, #props, #update_prop!, #update_props!, valid_prop_name!, valid_prop_name?
Methods included from Retirement
#retire!, #retired?, #unretire!
Class Method Details
.[](slug) ⇒ Object
26
27
28
|
# File 'app/models/project.rb', line 26
def self.[](slug)
find_by_slug(slug)
end
|
.with_feature(feature) ⇒ Object
Features ————————————————————————- #
35
36
37
|
# File 'app/models/project.rb', line 35
def self.with_feature(feature)
where ["? = ANY(projects.selected_features)", feature]
end
|
Instance Method Details
#color ⇒ Object
20
21
22
|
# File 'app/models/project.rb', line 20
def color
Houston.config.project_colors[color_name]
end
|
#feature?(feature_slug) ⇒ Boolean
47
48
49
|
# File 'app/models/project.rb', line 47
def feature?(feature_slug)
selected_features.member? feature_slug.to_sym
end
|
#features ⇒ Object
39
40
41
|
# File 'app/models/project.rb', line 39
def features
(Houston.config.project_features & selected_features) + [:settings]
end
|
#selected_features ⇒ Object
43
44
45
|
# File 'app/models/project.rb', line 43
def selected_features
Array(super).map(&:to_sym)
end
|
#teammates ⇒ Object
69
70
71
72
|
# File 'app/models/project.rb', line 69
def teammates
return User.none if team.nil?
team.users
end
|
#to_param ⇒ Object
16
17
18
|
# File 'app/models/project.rb', line 16
def to_param
slug
end
|