diff options
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/refinery/blog/category.rb | 4 | ||||
-rw-r--r-- | app/models/refinery/blog/post.rb | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/app/models/refinery/blog/category.rb b/app/models/refinery/blog/category.rb index 5cf4ea5..ca3824e 100644 --- a/app/models/refinery/blog/category.rb +++ b/app/models/refinery/blog/category.rb @@ -12,6 +12,10 @@ module Refinery validates :title, :presence => true, :uniqueness => true + def self.by_title(title) + joins(:translations).find_by(title: title) + end + def self.translated with_translations(::Globalize.locale) end diff --git a/app/models/refinery/blog/post.rb b/app/models/refinery/blog/post.rb index f80a939..c64c8f2 100644 --- a/app/models/refinery/blog/post.rb +++ b/app/models/refinery/blog/post.rb @@ -78,7 +78,7 @@ module Refinery def find_by_slug_or_id(slug_or_id) if slug_or_id.friendly_id? - find_by_slug(slug_or_id) + friendly.find(slug_or_id) else find(slug_or_id) end @@ -92,6 +92,10 @@ module Refinery newest_first.where(:published_at => date.beginning_of_year..date.end_of_year).with_globalize end + def by_title(title) + joins(:translations).find_by(:title => title) + end + def newest_first order("published_at DESC") end |