# encoding: utf-8 class DocumentUploader < CarrierWave::Uploader::Base include Rails.application.routes.url_helpers def filename "#{mounted_as}-#{friendly_filename(model.title)}.#{file.extension}" if original_filename.present? end def store_dir "#{Rails.root}/private_medias/documents/#{model.id}/#{mounted_as}" end def extension_white_list %w(pdf) end def url #download_admin_offer_accepted_offer_path(model.offer, model) end def friendly_filename(filename) filename.gsub(/[^\w\s_-]+/, '') .gsub(/(^|\b\s)\s+($|\s?\b)/, '\\1\\2') .gsub(/\s+/, '_') end end