Sha256: 2385528e46f45496306cd003a5de84aa25895af2c9ac3d71ba1074484f87ba7c

Contents?: true

Size: 971 Bytes

Versions: 4

Compression:

Stored size: 971 Bytes

Contents

# -*- encoding : utf-8 -*-
class Card
  class Revision < ActiveRecord::Base
    before_save :set_stamper

    class << self
      def cache
        Wagn::Cache[Card::Revision]
      end
    
      def delete_old
        where( Card.where( :current_revision_id=>arel_table[:id] ).exists.not ).delete_all
      end
    
      def delete_cardless
        where( Card.where( :id=>arel_table[:card_id] ).exists.not ).delete_all
      end
    end

    def set_stamper
      self.creator_id = Auth.current_id
    end

    def creator
      Card[ creator_id ]
    end

    def card
      Card[ card_id ]
    end

    def title #ENGLISH
      current_id = card.current_revision_id
      if id == current_id
        'Current Revision'
      elsif id > current_id
        'AutoSave'
      else
        card.revisions.each_with_index do |rev, index|
          return "Revision ##{index + 1}" if rev.id == id
        end
        '[Revisions Missing]'
      end
    end
    
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
wagn-1.13.0 lib/card/revision.rb
wagn-1.13.0.pre2 lib/card/revision.rb
wagn-1.13.0.pre1 lib/card/revision.rb
wagn-1.13.0.pre lib/card/revision.rb