Class: ThemeSettingsManager::Upload
Instance Attribute Summary
#name, #theme
Instance Method Summary
collapse
create, #create_record!, #db_record, #description, #ensure_is_valid_value!, #has_max?, #has_min?, #has_record?, #initialize, #invalid_value_error_message, #is_valid_value?, #requests_refresh?, #type, #type_name, types
Instance Method Details
#default ⇒ Object
190
191
192
193
194
195
|
# File 'lib/theme_settings_manager.rb', line 190
def default
upload_id = default_upload_id
return if upload_id.blank?
cdn_url(upload_id)
end
|
#value ⇒ Object
186
187
188
|
# File 'lib/theme_settings_manager.rb', line 186
def value
has_record? ? cdn_url(db_record.value) : default
end
|
#value=(new_value) ⇒ Object
197
198
199
200
201
202
203
204
205
206
207
208
|
# File 'lib/theme_settings_manager.rb', line 197
def value=(new_value)
if new_value.present?
if new_value == default
new_value = default_upload_id
else
upload = ::Upload.find_by(url: new_value)
new_value = upload.id if upload.present?
end
end
super(new_value)
end
|