OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / models / demander.rb
index ef0078c..c1d6fd0 100644 (file)
@@ -2,13 +2,13 @@ class Demander < ActiveRecord::Base
   belongs_to :demand_user
   belongs_to :demander_status
   
-  validates :demand_user_id, :presence => true, :numericality => true, :existence => true
+  validates :demand_user_id, :presence => true, :numericality => true, :existence => {:both => false}
   validates :name, :presence => true, :length => {:maximum => 50}, :uniqueness => true
   validates :caption, :presence => true, :length => {:maximum => 30}
-  validates :url, :presence => true, :length => {:maximum => 200}, :url => true
+  validates :url, :presence => true, :length => {:maximum => 200}, :url => {:message => I18n.t('errors.messages.url')}
   validates :description, :presence => true
-  validates :demander_url, :presence => true, :length => {:maximum => 200}, :url => true
-  validates :demander_status_id, :presence => true, :numericality => true, :existence => true
+  validates :demander_url, :presence => true, :length => {:maximum => 200}, :url => {:message => I18n.t('errors.messages.url')}
+  validates :demander_status_id, :presence => true, :numericality => true, :existence => {:both => false}
   
   def supply_default
   end
@@ -118,4 +118,34 @@ class Demander < ActiveRecord::Base
     self.demander_status.stop
   end
   
+  def licenses_export date = nil
+    raise ActiveRecord::Forbidden unless self.status == 3
+    License.export date
+  end
+  
+  def artists_export date = nil
+    raise ActiveRecord::Forbidden unless self.status == 3
+    Artist.export date
+  end
+  
+  def original_pictures_export date = nil
+    raise ActiveRecord::Forbidden unless self.status == 3
+    OriginalPicture.export date
+  end
+  
+  def pictures_export date = nil
+    raise ActiveRecord::Forbidden unless self.status == 3
+    Picture.export date
+  end
+  
+  def export date
+    raise ActiveRecord::Forbidden unless self.status == 3
+    {
+      :licenses => self.licenses_export(date), 
+      :artists => self.artists_export(date), 
+      :original_pictures => self.original_pictures_export(date), 
+      :pictures => self.pictures_export(date)
+    }
+  end
+  
 end