Sha256: baf6fb8a8dd5fc7f3adf50c013d138fbab2eb37bc4d29e9b007e6a30e6d91871
Contents?: true
Size: 1.11 KB
Versions: 2
Compression:
Stored size: 1.11 KB
Contents
module Vhost::ApplicationControllerExtensions def self.included(base) base.class_eval { prepend_before_filter :redirect_to_primary_site helper_method :primary_site_url def redirect_to_primary_site if VhostExtension.REDIRECT_TO_PRIMARY_SITE site = current_site return if site.nil? || site.hostname.include?("*") primary_host = site.hostnames.first.domain redirect_to(primary_site_url + request.request_uri) if request.host != primary_host end end def primary_site_url site = current_site return nil if site.nil? || site.hostnames.map(&:domain).include?("*") # Rebuild the current URL. Check if it matches the URL of the # primary site and redirect if it does not. prefix = request.ssl? ? "https://" : "http://" host = request.host port = request.port_string # Primary site is the first site primary_host = site.hostnames.first.domain # Return the concatenation prefix+primary_host+port end } end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
radiant-vhost-extension-2.3.1 | lib/vhost/application_controller_extensions.rb |
radiant-vhost-extension-2.3.0 | lib/vhost/application_controller_extensions.rb |