Module: Gluttonberg::Content::SlugManagement::InstanceMethods
- Defined in:
- lib/gluttonberg/content/slug_management.rb
Instance Method Summary collapse
Instance Method Details
#get_slug_source ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/gluttonberg/content/slug_management.rb', line 28 def get_slug_source if self.class.slug_source_field_name.blank? if self.respond_to?(:name) self.class.slug_source_field_name= :name elsif self.respond_to?(:title) self.class.slug_source_field_name= :title else self.class.slug_source_field_name= :id end end self.class.slug_source_field_name end |
#slug=(new_slug) ⇒ Object
41 42 43 44 45 46 47 48 49 50 |
# File 'lib/gluttonberg/content/slug_management.rb', line 41 def slug=(new_slug) #if you're changing this regex, make sure to change the one in /javascripts/slug_management.js too # utf-8 special chars are fixed for new ruby 1.9.2 unless new_slug.blank? new_slug = new_slug.downcase.gsub(/\s/, '_').gsub(/[\!\*'"″′‟‛„‚”“”˝\(\)\;\:\.\@\&\=\+\$\,\/?\%\#\[\]]/, '') new_slug = new_slug.gsub('__','_') # remove consective underscores new_slug = new_slug.gsub(/_$/,'') # remove trailing underscore end write_attribute(:slug, new_slug) end |