module Permalink::InstanceMethods

Private Instance Methods

is_unique(current_permalink) click to toggle source
# File lib/permalink_mongo_mapper.rb, line 78
def is_unique(current_permalink)
  self.class.find_by_permalink(current_permalink)==self || self.class.find_by_permalink(current_permalink)==nil
end
remove_special_chars() click to toggle source
# File lib/permalink_mongo_mapper.rb, line 34
def remove_special_chars
  permalink.gsub!(/[áàảãạAÁÀẢÃẠ]/, 'a')
  permalink.gsub!(/[ăắẵằẳặĂẮẰẲẴẶ]/, 'a')
  permalink.gsub!(/[âấầẩẫậÂẤẦẨẪẬ]/, 'a')
  permalink.gsub!(/[éèẽẻẹÉÈẺẼẸ]/, 'e')
  permalink.gsub!(/[êếềểễệÊẾỀỂỄỆ]/, 'e')
  permalink.gsub!(/[íìỉĩịIÍÌỈĨỊ]/, 'i')
  permalink.gsub!(/[óòỏõọOÓÒỎÕỌ]/, 'o')
  permalink.gsub!(/[ôốồổỗộÔỐỒỔỖỘ]/, 'o')
  permalink.gsub!(/[ơớờởỡợƠỚỜỞỠỢ]/, 'o')
  permalink.gsub!(/[úùủũụUÚÙỦŨỤ]/, 'u')
  permalink.gsub!(/[ưứừửữựƯỨỪỬỮỰ]/, 'u')
  permalink.gsub!(/[ỷỹýỳ]/, 'y')
  permalink.gsub!(/[đĐ]/, 'd')
  permalink.gsub!(/[àáâãäå]/i,'a')
  permalink.gsub!(/[èéêë]/i,'e')
  permalink.gsub!(/[íìîï]/i,'i')
  permalink.gsub!(/[óòôöõ]/i,'o')
  permalink.gsub!(/[úùûü]/i,'u')
  permalink.gsub!(/æ/i,'ae')
  permalink.gsub!(/ç/i, 'c')
  permalink.gsub!(/ñ/i, 'n')
  permalink.gsub!(/[^\x00-\x7F]+/, '') # Remove anything non-ASCII entirely (e.g. diacritics).
  permalink.gsub!(/[^\w_ \-]+/i, '') # Remove unwanted chars.
  permalink.gsub!(/[ \-]+/i, '-') # No more than one of the separator in a row.
  permalink.gsub!(/^\-|\-$/i, '') # Remove leading/trailing separator.
  permalink.downcase!
end