Revision 1298:4f746d8966dd lib/plugins/acts_as_versioned

View differences:

lib/plugins/acts_as_versioned/lib/acts_as_versioned.rb
216 216
            has_many :versions, version_association_options do
217 217
              # finds earliest version of this record
218 218
              def earliest
219
                @earliest ||= find(:first, :order => 'version')
219
                @earliest ||= order('version').first
220 220
              end
221 221

  
222 222
              # find latest version of this record
223 223
              def latest
224
                @latest ||= find(:first, :order => 'version desc')
224
                @latest ||= order('version desc').first
225 225
              end
226 226
            end
227 227
            before_save  :set_new_version
......
248 248
            def self.reloadable? ; false ; end
249 249
            # find first version before the given version
250 250
            def self.before(version)
251
              find :first, :order => 'version desc',
252
                :conditions => ["#{original_class.versioned_foreign_key} = ? and version < ?", version.send(original_class.versioned_foreign_key), version.version]
251
              order('version desc').
252
                where("#{original_class.versioned_foreign_key} = ? and version < ?", version.send(original_class.versioned_foreign_key), version.version).
253
                first
253 254
            end
254 255

  
255 256
            # find first version after the given version.
256 257
            def self.after(version)
257
              find :first, :order => 'version',
258
                :conditions => ["#{original_class.versioned_foreign_key} = ? and version > ?", version.send(original_class.versioned_foreign_key), version.version]
258
              order('version').
259
                where("#{original_class.versioned_foreign_key} = ? and version > ?", version.send(original_class.versioned_foreign_key), version.version).
260
                first
259 261
            end
260 262

  
261 263
            def previous
......
467 469

  
468 470
          # Finds versions of a specific model.  Takes an options hash like <tt>find</tt>
469 471
          def find_versions(id, options = {})
470
            versioned_class.find :all, {
472
            versioned_class.all({
471 473
              :conditions => ["#{versioned_foreign_key} = ?", id],
472
              :order      => 'version' }.merge(options)
474
              :order      => 'version' }.merge(options))
473 475
          end
474 476

  
475 477
          # Returns an array of columns that are versioned.  See non_versioned_columns

Also available in: Unified diff