Sha256: 4e6d3ac73665103fa86fc6213f64dde8625c78324e1a30fb1c613e2d6428b855

Contents?: true

Size: 736 Bytes

Versions: 749

Compression:

Stored size: 736 Bytes

Contents

class Caboose::PermanentRedirect < ActiveRecord::Base
  self.table_name = "permanent_redirects"
  
  attr_accessible :id,
    :site_id,
    :priority,
    :is_regex,
    :old_url,
    :new_url
  
  validates :old_url, :presence => { :message => 'The old URL is required.' }
  validates :new_url, :presence => { :message => 'The new URL is required.' }
  
  def self.match(site_id, uri)    
    Caboose::PermanentRedirect.where(:site_id => site_id).reorder(:priority).all.each do |pr|      
      if pr.is_regex
        return uri.gsub(/#{pr.old_url}/, pr.new_url) if uri =~ /#{pr.old_url}/ 
      else                
        return pr.new_url if uri == pr.old_url
      end
    end
    return false
  end                      
  
end

Version data entries

749 entries across 749 versions & 1 rubygems

Version Path
caboose-cms-0.9.229 app/models/caboose/permanent_redirect.rb
caboose-cms-1.0.2 app/models/caboose/permanent_redirect.rb
caboose-cms-1.0.1 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.228 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.227 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.226 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.225 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.224 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.223 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.222 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.221 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.220 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.219 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.218 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.217 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.216 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.215 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.214 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.213 app/models/caboose/permanent_redirect.rb
caboose-cms-0.9.212 app/models/caboose/permanent_redirect.rb