class UpdateAttachmentPublicAttr < ActiveRecord::Migration
  def up
    # 更新资源文件的is_public属性
    Attachment.all.each do |res|
      if res.is_public
        if(res.container.nil? ||
            (res.container.class.to_s=="Project" && res.container.is_public == false) ||
            (res.container.has_attribute?(:project) && res.container.project && res.container.project.is_public == false) ||
            (res.container.class.to_s=="HomeworkAttach" && res.container.bid.reward_type == 3) ||
            (res.container.class.to_s=="Course" && res.container.is_public == false) ||
            (res.container.has_attribute?(:course) && res.container.course && res.container.course.is_public == false)
        )
          res.is_public = false
          res.save
        end
      end
    end
  end

  def down
  end
end
