Redo splay handling to be per update type
This commit is contained in:
parent
9a3cad4293
commit
a91b52ea83
1 changed files with 12 additions and 12 deletions
|
|
@ -155,9 +155,8 @@ module FicTracker::Models
|
||||||
def ensure_fully_loaded
|
def ensure_fully_loaded
|
||||||
return backend.load_full_story(self) unless id
|
return backend.load_full_story(self) unless id
|
||||||
|
|
||||||
refresh_content
|
refresh_content(splay: true)
|
||||||
refresh_metadata
|
refresh_metadata(splay: true)
|
||||||
apply_splay!
|
|
||||||
|
|
||||||
full_load = true
|
full_load = true
|
||||||
if chapters && chapters.size > 0
|
if chapters && chapters.size > 0
|
||||||
|
|
@ -208,8 +207,11 @@ module FicTracker::Models
|
||||||
[backend_name, slug, name].join('_').downcase.gsub(/[^[[:alnum:]]-_]/, '_').gsub(/__+/, '_').gsub(/^_|_$/, '')
|
[backend_name, slug, name].join('_').downcase.gsub(/[^[[:alnum:]]-_]/, '_').gsub(/__+/, '_').gsub(/^_|_$/, '')
|
||||||
end
|
end
|
||||||
|
|
||||||
def refresh_metadata
|
def refresh_metadata(splay: false)
|
||||||
refresh_metadata! if backend && needs_metadata_refresh?
|
return unless backend && needs_metadata_refresh?
|
||||||
|
|
||||||
|
self.last_metadata_refresh += rand(0..METADATA_REFRESH_INTERVAL) / 10 if splay
|
||||||
|
refresh_metadata!
|
||||||
end
|
end
|
||||||
|
|
||||||
def refresh_metadata!
|
def refresh_metadata!
|
||||||
|
|
@ -217,8 +219,11 @@ module FicTracker::Models
|
||||||
backend.load_story(self)
|
backend.load_story(self)
|
||||||
end
|
end
|
||||||
|
|
||||||
def refresh_content
|
def refresh_content(splay: false)
|
||||||
refresh_content! if backend && needs_content_refresh?
|
return unless backend && needs_content_refresh?
|
||||||
|
|
||||||
|
self.last_content_refresh += rand(0..CONTENT_REFRESH_INTERVAL) / 10 if splay
|
||||||
|
refresh_content!
|
||||||
# chapters.each(&:refresh_content)
|
# chapters.each(&:refresh_content)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -228,11 +233,6 @@ module FicTracker::Models
|
||||||
# chapters.each(&:refresh_content!)
|
# chapters.each(&:refresh_content!)
|
||||||
end
|
end
|
||||||
|
|
||||||
def apply_splay!(max: CONTENT_REFRESH_INTERVAL / 10)
|
|
||||||
self.last_metadata_refresh += rand(0..max)
|
|
||||||
self.last_content_refresh += rand(0..max)
|
|
||||||
end
|
|
||||||
|
|
||||||
def needs_metadata_refresh?
|
def needs_metadata_refresh?
|
||||||
# return true if id && authors.empty?
|
# return true if id && authors.empty?
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue