From 8df53b7e7371e4fd74a8de949eff2e70c8ea0cfb Mon Sep 17 00:00:00 2001 From: Rodrigo Souto Date: Mon, 27 Aug 2012 19:38:32 +0000 Subject: [PATCH] [tolerance-time] Refactoring and adding ActionTracker exception --- plugins/tolerance_time/lib/tolerance_time_plugin.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/tolerance_time/lib/tolerance_time_plugin.rb b/plugins/tolerance_time/lib/tolerance_time_plugin.rb index 3bc8504..b115cf9 100644 --- a/plugins/tolerance_time/lib/tolerance_time_plugin.rb +++ b/plugins/tolerance_time/lib/tolerance_time_plugin.rb @@ -12,9 +12,14 @@ class ToleranceTimePlugin < Noosfero::Plugin end def self.expired?(content) + return false if content.kind_of?(Comment) && !content.article.kind_of?(Article) + + expirable = content.kind_of?(Comment) || (!content.folder? && content.published?) publication = ToleranceTimePlugin::Publication.find_by_target(content) - (content.kind_of?(Comment) || (!content.folder? && content.published?)) && - ((!publication.present? && !content.profile.kind_of?(Person)) || (publication.present? && publication.expired?)) + publication = ToleranceTimePlugin::Publication.create!(:target => content) if expirable && publication.nil? + person_article = content.kind_of?(Article) && content.profile.kind_of?(Person) + + !person_article && expirable && publication.expired? end def control_panel_buttons -- libgit2 0.21.2