Sha256: 4edc313e501b28f99d984100d94286e322abf3cf5b73d95d1cccb973af09bf7a

Contents?: true

Size: 831 Bytes

Versions: 16

Compression:

Stored size: 831 Bytes

Contents

require 'stringex'
require 'digest/md5'

class String
  def filename_to_slug
    s = self.to_url
    if s.blank?
      return Digest::MD5.hexdigest(self)
    end
    s
  end
end
#
# module FilenameToSlug
#   extend ActiveSupport::Concern
#   included do
#     before_post_process :filename_to_slug
#   end
#
#   def filename_to_slug
#     if self.class.attachment_definitions
#       self.class.attachment_definitions.each do |k,v|
#         if self.send(k).file?
#           full_file_name = self.send("#{k}_file_name")
#           extension = File.extname(full_file_name)[1..-1]
#           file_name = full_file_name[0..full_file_name.size-extension.size-1]
#           self.send("#{k}").instance_write(:file_name, "#{file_name.filename_to_slug}.#{extension.filename_to_slug}")
#         end
#       end
#     end
#   end
# end

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
hancock_cms-1.0.1 lib/filename_to_slug.rb
hancock_cms-2.0.0.2 lib/filename_to_slug.rb
hancock_cms-1.0.0.4 lib/filename_to_slug.rb
hancock_cms-1.0.0.3 lib/filename_to_slug.rb
hancock_cms-2.0.0.1 lib/filename_to_slug.rb
hancock_cms-1.0.0.2 lib/filename_to_slug.rb
hancock_cms-2.0.0 lib/filename_to_slug.rb
hancock_cms-1.0.0 lib/filename_to_slug.rb
enjoy_cms-0.4.1 lib/filename_to_slug.rb
enjoy_cms-0.4.0.5 lib/filename_to_slug.rb
enjoy_cms-0.4.0.4 lib/filename_to_slug.rb
enjoy_cms-0.4.0.3 lib/filename_to_slug.rb
enjoy_cms-0.4.0.2 lib/filename_to_slug.rb
enjoy_cms-0.4.0.1 lib/filename_to_slug.rb
enjoy_cms-0.4.0 lib/filename_to_slug.rb
enjoy_cms-0.4.0.beta3 lib/filename_to_slug.rb