• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Browser Version Detection
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Browser Version Detection


  • Subject: Browser Version Detection
  • From: "Jonathan Fleming" <email@hidden>
  • Date: Wed, 03 Sep 2003 10:58:01 +0100

I've found some archived code that I've only slightly updated but it seems that when I'm using Netscape 3.0, 4.79 or 6.2 the browser version always reads out as version 5.0 or 5.5...
Can anyone tell me if I have something wrong in this class.
The validation of Internet Explorer seems to be fine however.


Here's the code:

import com.webobjects.foundation.*;
import com.webobjects.appserver.*;
import com.webobjects.eocontrol.*;
import com.webobjects.eoaccess.*;


public class BrowserDetector extends WOSession { protected boolean isIE; protected boolean isNetscape; protected boolean isICab; protected boolean isMac; protected boolean isWindows; protected boolean isLinux; protected boolean isVersion3; protected boolean isVersion4; protected boolean isVersion5; protected boolean isVersion6; protected boolean isVersion7; protected String plattform; protected String version; protected String browser; protected boolean browserVerOveride;


/* * constructor */ public BrowserDetector() { super(); } /*--------------------------------------------------*/

   public void awake() {
       super.awake();
       WORequest r = context().request();
       String userAgent = r.headerForKey("User-Agent");

       if (userAgent.indexOf("Mozilla")!=-1) {
           isNetscape=true;
           isICab=isIE=false;
           browser="Netscape";
       }
       if (userAgent.indexOf("iCab")!=-1) {
           isICab=true;
           isIE=isNetscape=false;
           browser="iCab";
       }
       if (userAgent.indexOf("MSIE")!=-1) {
           isIE=true;
           isICab=isNetscape=false;
           browser="MSIE";
       }

       if (userAgent.indexOf("Win")!=-1) {
           isMac=isLinux=false;
           isWindows=true;
           plattform="Windows";
       } else if (userAgent.indexOf("Mac")!=-1) {
           isWindows=isLinux=false;
           isMac=true;
           plattform="Mac";
       } else if (userAgent.indexOf("Linux")!=-1) {
           isWindows=isMac=false;
           isLinux=true;
           plattform="Linux";
       }

if (userAgent.indexOf("7.0")!=-1 || userAgent.indexOf("7.1")!=-1) {
isVersion6=isVersion5=isVersion4=isVersion3=false;
isVersion7=true;
version="7.0 or 7.1";
} else if (userAgent.indexOf("6.0")!=-1) {
isVersion5=isVersion4=isVersion3=isVersion7=false;
isVersion5=true;
version="6.0";
} else if (userAgent.indexOf("5.0")!=-1 || userAgent.indexOf("5.5")!=-1) {
isVersion4=isVersion3=isVersion6=isVersion7=false;
isVersion5=true;
version="5.0 or 5.5";
} else if (userAgent.indexOf("4.0")!=-1 ||
userAgent.indexOf("4.5")!=-1 ||
userAgent.indexOf("4.7")!=-1) {
isVersion3=isVersion5=isVersion6=isVersion7=false;
isVersion4=true;
version="4.0, 4.6, 4.7";
} else if (userAgent.indexOf("3.0")!=-1) {
isVersion4=isVersion5=isVersion6=isVersion7=false;
isVersion3=true;
version="3.0";
}


System.out.println("\r======================================================\r Browser="+browser+" Plattform="+plattform+" Version="+version+"...\r");
}
/*-------------------------------------------*/


   public String getVersion() {
     return version;
   }

   public void setVersion(String value) {
     version = value;
   }
   /*-------------------------------------------*/

   public String getBrowser() {
     return browser;
   }

   public void setBrowser(String value) {
     browser = value;
   }
   /*-------------------------------------------*/

   public boolean getBrowserVerOveride() {
     return browserVerOveride;
   }

   public void setBrowserVerOveride(boolean value) {
       browserVerOveride = value;
   }
   /*-------------------------------------------*/

public boolean isValidBrowser() {
if (browserVerOveride==false){
return false;
}
else if ((getBrowser().equals("Netscape")) && (getVersion().equals("7.0")) ||
(getBrowser().equals("MSIE")) && (getVersion().equals("6.0") ||
getVersion().equals("7.0")))
{
return true;
}
else
{
return false;
}
}


}
Kind regards
Jonathan :^)

_________________________________________________________________
Sign-up for a FREE BT Broadband connection today! http://www.msn.co.uk/specials/btbroadband
_______________________________________________
webobjects-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/webobjects-dev
Do not post admin requests to the list. They will be ignored.

  • Follow-Ups:
    • Re: Browser Version Detection
      • From: David Teran <email@hidden>
  • Prev by Date: Re: Why meetup
  • Next by Date: Re: Browser Version Detection
  • Previous by thread: Re: Why meetup
  • Next by thread: Re: Browser Version Detection
  • Index(es):
    • Date
    • Thread