Sha256: f00069679593ea0f5b62884bf15a77a9e5bbfb45098564769bf3cfd28593b947

Contents?: true

Size: 738 Bytes

Versions: 3

Compression:

Stored size: 738 Bytes

Contents

module Enjoy::Goto
  module Controllers
    module Transfers
      extend ActiveSupport::Concern

      def index
        url = Addressable::URI.heuristic_parse(params[:url]) rescue nil
        referer = (request.referer ? Addressable::URI.parse(request.referer) : nil) rescue nil

        @transfer = transfer_class.new
        @transfer.recieved_url = params[:url]
        @transfer.url = url.to_s
        @transfer.host = url.host.to_s if url
        @transfer.referer = referer.to_s
        @transfer.source_ip = request.env['HTTP_X_FORWARDED_FOR'] || request.remote_ip
        @transfer.save

        redirect_to @transfer.url, code: 303
      end

      def transfer_class
        Enjoy::Goto::Transfer
      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
enjoy_cms_goto-0.4.1 lib/enjoy/goto/controllers/transfers.rb
enjoy_cms_goto-0.4.0 lib/enjoy/goto/controllers/transfers.rb
enjoy_cms_goto-0.4.0.beta3 lib/enjoy/goto/controllers/transfers.rb