Sha256: d4033cdcde7718391807a1a34d047af4e09edca9f5b338297b21dcb9b23f7c73
Contents?: true
Size: 768 Bytes
Versions: 28
Compression:
Stored size: 768 Bytes
Contents
require 'rack' require 'rack/request' module Mumukit::Core module Subdominated def first_subdomain_after(domain) subdomain_parts_after(domain)&.first end def subdomain_parts_after(domain) raise 'no host set' unless host raise 'set hostname first!' if /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.match(host) return nil if host == 'localhost' domain_parts = domain.split('.') (host.split('.') - domain_parts) end def subdomain_after(domain) parts = subdomain_parts_after(domain) parts.join('.') unless parts.empty? end def empty_subdomain_after?(domain) first_subdomain_after(domain).blank? end end end module Rack class Request include Mumukit::Core::Subdominated end end
Version data entries
28 entries across 28 versions & 2 rubygems