request.env['HTTP_USER_AGENT'] Chrome out put is below Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16 Safari out put is below Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1 FireFox out put is below Mozilla/5.0 (Windows NT 5.1; rv:2.0) Gecko/20100101 Firefox/4.0 Opera out put is below Opera/9.80 (Windows NT 5.1; U; en) Presto/2.8.131 Version/11.10 Internet Explorer out put is below Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727) if request.env['HTTP_USER_AGENT'] =~ /[^(]*[^)]Chrome// if request.env['HTTP_USER_AGENT'] =~ /[^(]*[^)]*[^t]Firefox// def browser_detection result = request.env['HTTP_USER_AGENT'] browser_compatible = '' if result =~ /Safari/ unless result =~ /Chrome/ version = result.split('Version/')[1].split(' ').first.split('.').first browser_compatible = 'Application is not functional for Safari version's '+version if version.to_i < 5 else version = result.split('Chrome/')[1].split(' ').first.split('.').first browser_compatible = 'Application is not functional for Chrome version's '+version if version.to_i < 10 end elsif result =~ /Firefox/ version = result.split('Firefox/')[1].split('.').first browser_compatible = 'Application is not functional for Firefox version's '+version if version.to_i < 5 elsif result =~ /Opera/ version = result.split('Version/')[1].split('.').first browser_compatible = 'Application is not functional for Opera version's '+version if version.to_i < 11 elsif result =~ /MSIE/ version = result.split('MSIE')[1].split(' ').first browser_compatible = 'Application is not functional for Microsoft Internet Explorer version's '+version if version.to_i < 9 end return browser_compatible end