// Copyright 2000 Adobe Systems Incorporated. All rights reserved. Permission
// to use, modify, distribute, and publicly display this file is hereby
// granted. This file is provided "AS-IS" with absolutely no warranties of any
// kind. Portions (C) Netscape Communications 1999.

// If you modify this file, please share your changes with Adobe and other SVG
// developers at http://www.adobe.com/svg/.

// Version 3/23/00

function getBrowser() {
   var agt=navigator.userAgent.toLowerCase();
   var v_maj=parseInt(navigator.appVersion);
   var v_min=parseFloat(navigator.appVersion);

   is_nav=((agt.indexOf('mozilla')!=-1)&&(agt.indexOf('spoofer')==-1)&&
          (agt.indexOf('compatible')==-1)&&(agt.indexOf('opera')==-1)&&
          (agt.indexOf('webtv')==-1));
   is_op=(agt.indexOf('opera')!=-1);
   is_nav3=(is_nav&&(v_maj==3));
   is_nav4up=(is_nav&&(v_maj>=4));
   is_nav407up=(is_nav&&(v_min>=4.07));
   is_nav408up=(is_nav&&(v_min>=4.08));
   is_nav5up=(is_nav&&(v_min>=5.00));
   is_ie=(agt.indexOf("msie")!=-1);
   is_ie3=(is_ie&&(v_maj<4));
   is_ie4=(is_ie&&(v_maj==4)&&(agt.indexOf("msie 5.")==-1));
   is_ie4up=(is_ie&&(v_maj>=4));
   is_ie5=(is_ie&&(v_maj==4)&&(agt.indexOf("msie 5.")!=-1)); 
   is_ie5up=(is_ie&&!is_ie3&&!is_ie4);
   is_win=((agt.indexOf("win")!=-1)||(agt.indexOf("16bit")!=-1));
   is_win95=((agt.indexOf("win95")!=-1)||(agt.indexOf("windows 95")!=-1));
   is_win98=((agt.indexOf("win98")!=-1)||(agt.indexOf("windows 98")!=-1));
   is_winnt=((agt.indexOf("winnt")!=-1)||(agt.indexOf("windows nt")!=-1));
   is_win32=(is_win95||is_winnt||is_win98||
            ((v_maj>=4)&&(navigator.platform=="Win32"))||
            (agt.indexOf("win32")!=-1)||(agt.indexOf("32bit")!=-1));
    is_mac=(agt.indexOf("mac")!=-1);
    is_linux=(agt.indexOf("linux")!=-1);
    is_saf=(agt.indexOf("safari")!=-1);
    is_macPPC=(is_mac&&((agt.indexOf("ppc")!=-1)||(agt.indexOf("powerpc")!=-1)));
}

var svgInstallBase="http://www.adobe.com/svg/viewer/install/";
//var svgInstallPage=svgInstallBase+"auto/";
var svgInstallPage="http://www.urchin.com/support/svg/index.cgi";
var svgInfoPage="http://www.adobe.com/svg/";
var svgDownloadPage=svgInstallBase;

function getSVGInstallPage() {
   if (lang) return svgInstallPage+"?lang="+lang+"&rurl="+location;
   return svgInstallPage+"?rurl="+location;
}


function isSVGPluginInstalled() {
   return (navigator.mimeTypes["image/svg"]&&navigator.mimeTypes["image/svg"].enabledPlugin!=null)||
          (navigator.mimeTypes["image/svg+xml"]&&navigator.mimeTypes["image/svg+xml"].enabledPlugin!=null)||
          (navigator.mimeTypes["image/svg-xml"]&&navigator.mimeTypes["image/svg-xml"].enabledPlugin!=null);
}

function checkSVGViewer() {
   window.askForSVGViewer=false;
   if(window.svgInstalled) return;
   getBrowser();
   if (is_op) {
      window.svgViewerAvailable=true;
      window.svgInstalled=isSVGPluginInstalled();
      if(!window.svgInstalled&&is_nav408up&&navigator.javaEnabled()) window.askForSVGViewer=true;
   } else if(is_win32 && is_ie4up) {
      window.svgViewerAvailable=true;
      window.svgInstalled=isSVGControlInstalled();
      if(!window.svgInstalled) window.askForSVGViewer=true;
   } else if((is_win32 && is_nav4up) || (is_macPPC && is_nav407up) || (is_linux && is_nav5up)) {
      window.svgViewerAvailable=true;
      window.svgInstalled=isSVGPluginInstalled();
      if(!window.svgInstalled&&is_nav408up&&navigator.javaEnabled()) window.askForSVGViewer=true;
   } else if(is_macPPC && is_ie5up) {
      window.svgViewerAvailable=true;
      window.svgInstalled=isSVGPluginInstalled();
   }
}

function getSVGViewer() {
   var msg = 'The Adobe SVG Viewer is required and is NOT installed. \nDownload now?';
   if (svgemsg) msg = svgemsg;
   if(confirm(msg)) { 
      var mywin = window.open();
      mywin.location.href=getSVGInstallPage();
      mywin.focus();
   }
}

function emitSVG(src,embedAttrs) {
   if(window.svgInstalled) { 
      var nsrc = replace(src,"z=&q=&w="); 

      if ((is_nav5up && is_win32) || (is_linux && is_nav5up)) {
         document.writeln('<iframe  src="'+nsrc+'" '+embedAttrs+' frameborder="0" marginwidth="0"  marginheight="0" width="630" bgcolor="#FFFFFF"></iframe>');
      } else {
         document.write('<embed src="'+nsrc+'" '+embedAttrs+' width="656">');
      }
   }
}
