Skip to content
Extraits de code Groupes Projets
post.rb 1002 octets
Newer Older
  • Learn to ignore specific revisions
  •   require 'lib/common'
    
    maxwell's avatar
    maxwell a validé
      include ApplicationHelper 
    
    maxwell's avatar
    maxwell a validé
      include MongoMapper::Document
    
      include Diaspora::Webhooks
    
    ilya's avatar
    ilya a validé
      xml_accessor :_id
    
      xml_accessor :person, :as => Person
    
    maxwell's avatar
    maxwell a validé
      key :person_id, ObjectId
    
      
      many :comments, :class_name => 'Comment', :foreign_key => :post_id
    
      belongs_to :person, :class_name => 'Person'
    
    maxwell's avatar
    maxwell a validé
      
      cattr_reader :per_page
      @@per_page = 10
        
    
    maxwell's avatar
    maxwell a validé
      timestamps!
    
    maxwell's avatar
    maxwell a validé
      after_save :send_to_view
    
    maxwell's avatar
    maxwell a validé
      after_save :notify_friends
    
     
      before_destroy :propagate_delete 
    
    
    maxwell's avatar
    maxwell a validé
      def self.stream
        Post.sort(:created_at.desc).all
      end
    
     def self.newest(person = nil)
        return self.last if person.nil?
    
    
        self.first(:person_id => person.id, :order => '_id desc')
    
    ilya's avatar
    ilya a validé
     def self.my_newest
       self.newest(User.first)
     end
    
        self.newest(Person.first(:email => email))
    
      def propagate_delete
        Retraction.for(self).notify_friends
      end
    
    maxwell's avatar
    maxwell a validé
      def send_to_view
    
          WebSocket.update_clients(self)
    
    maxwell's avatar
    maxwell a validé
      end
    
    maxwell's avatar
    maxwell a validé
      
    
    maxwell's avatar
    maxwell a validé