Class: UserPreference
Constant Summary
collapse
- NOTES_FILTERS =
We could use enums, but Rails 4 doesn’t support multiple enum options with same name for multiple fields, also it creates extra methods that aren’t really needed here.
{ all_notes: 0, only_comments: 1, only_activity: 2 }.freeze
ApplicationRecord::MAX_PLUCK
ResetOnUnionError::MAX_RESET_PERIOD
Class Method Summary
collapse
Instance Method Summary
collapse
cached_column_list, #create_or_load_association, declarative_enum, default_select_columns, id_in, id_not_in, iid_in, pluck_primary_key, primary_key_in, #readable_by?, safe_ensure_unique, safe_find_or_create_by, safe_find_or_create_by!, #to_ability_name, underscore, where_exists, where_not_exists, with_fast_read_statement_timeout, without_order
#serializable_hash
Class Method Details
.notes_filters ⇒ Object
43
44
45
46
47
48
49
|
# File 'app/models/user_preference.rb', line 43
def notes_filters
{
s_('Notes|Show all activity') => NOTES_FILTERS[:all_notes],
s_('Notes|Show comments only') => NOTES_FILTERS[:only_comments],
s_('Notes|Show history only') => NOTES_FILTERS[:only_activity]
}
end
|
Instance Method Details
#notes_filter_for(resource) ⇒ Object
Returns the current discussion filter for a given issuable or issuable type.
66
67
68
|
# File 'app/models/user_preference.rb', line 66
def notes_filter_for(resource)
self[notes_filter_field_for(resource)]
end
|
#render_whitespace_in_code ⇒ Object
99
100
101
102
103
104
|
# File 'app/models/user_preference.rb', line 99
def render_whitespace_in_code
value = read_attribute(:render_whitespace_in_code)
return value unless value.nil?
self.class.column_defaults['render_whitespace_in_code']
end
|
#render_whitespace_in_code=(value) ⇒ Object
106
107
108
109
110
111
112
113
|
# File 'app/models/user_preference.rb', line 106
def render_whitespace_in_code=(value)
if value.nil?
default = self.class.column_defaults['render_whitespace_in_code']
super(default)
else
super(value)
end
end
|
#set_notes_filter(filter_id, issuable) ⇒ Object
52
53
54
55
56
57
58
59
60
61
62
|
# File 'app/models/user_preference.rb', line 52
def set_notes_filter(filter_id, issuable)
if filter_id && NOTES_FILTERS.value?(filter_id)
field = notes_filter_field_for(issuable)
self[field] = filter_id
save if attribute_changed?(field)
end
notes_filter_for(issuable)
end
|
#tab_width ⇒ Object
70
71
72
|
# File 'app/models/user_preference.rb', line 70
def tab_width
read_attribute(:tab_width) || self.class.column_defaults['tab_width']
end
|
#tab_width=(value) ⇒ Object
74
75
76
77
78
79
80
81
|
# File 'app/models/user_preference.rb', line 74
def tab_width=(value)
if value.nil?
default = self.class.column_defaults['tab_width']
super(default)
else
super(value)
end
end
|
#time_display_relative ⇒ Object
83
84
85
86
87
88
|
# File 'app/models/user_preference.rb', line 83
def time_display_relative
value = read_attribute(:time_display_relative)
return value unless value.nil?
self.class.column_defaults['time_display_relative']
end
|
#time_display_relative=(value) ⇒ Object
90
91
92
93
94
95
96
97
|
# File 'app/models/user_preference.rb', line 90
def time_display_relative=(value)
if value.nil?
default = self.class.column_defaults['time_display_relative']
super(default)
else
super(value)
end
end
|