//scriptlib.js library file

function addNetscapePanel() { 
      if ((typeof window.sidebar == "object") && (typeof window.sidebar.addPanel == "function")) 
      { 
         window.sidebar.addPanel ("New at DC's Page", "http://www.dcjt.demon.co.uk/dc/sidebar/news.html",""); 
      } 
      else 
      { 
         var rv = window.confirm ("This page is enhanced for use with Netscape 6.  " + "Would you like to upgrade now?"); 
         if (rv) 
            document.location.href = "http://home.netscape.com/download/";
      } 
   }

function statMsg(mStr) {
	window.status = mStr;
}


		function styleFixN() {
			
				var navNam;
				var fixStr;
				
				navNam = navigator.appName;
				navVer = parseFloat(navigator.appVersion);
				navAg = navigator.userAgent;
				fStr="style/old.css";
				
				if (navNam.indexOf('Netscape') == -1) {
					fixStr = '<link rel="stylesheet" media="screen" type="text/css" href="http://www.dcjt.demon.co.uk/dc/style/old.css" />';
					document.writeln(fixStr);
				}
			}

			
function bustFrames() {
	if (top != self)
	{
		top.location = location
	}
}

function moveLoc(locStr) {

var locStr;

	top.location = locStr;

}

function layerVisChange(objectStr,visStr) {
              
	var changeStr;
	var theObj;
              
if (document.all) {
	if (visStr == "show") {
		visStr = "visible";
	} else if (visStr == "hide") {
		visStr = "hidden";
	}
	changeStr = "document.all['" + objectStr + "']";
	theObj = eval(changeStr);
	if (theObj) {
		theObj.style.visibility = visStr;
	}
} else if (document.layers) {
	changeStr = "document.layers['" + objectStr + "']";
	theObj = eval(changeStr);
	if (theObj) {
		theObj.visibility = visStr;
	}
} else if (document.getElementById) {
	if (visStr == "show") {
		visStr = "visible";
	} else if (visStr == "hide") {
		visStr = "hidden";
	}
	changeStr = "document.getElementById('" + objectStr + "')";
	theObj = eval(changeStr);
	if (theObj) {
		theObj.style.visibility = visStr;
	}
}
}



function varDisp(ident,vStr) {

	var changeStr;
	var theObj;
	var dispStr;
	
	if (document.getElementById) {
		changeStr = "document.getElementById('" + ident + "')";	
		theObj = eval(changeStr);
		if (theObj) {
			theObj.style.display = vStr;
		}
	} else if (document.all) {
		changeStr = "document.all['" + ident + "']";
		theObj = eval(changeStr);
		if (theObj) {
			theObj.style.display = vStr;
		}	
	} 
}




function styleFix(fStr) {
	var navNam;
	var navVer;
	var navAg;
	var fixStr;
	var stStr;
	var fnStr;
	
	fixStr = fStr;
	
	navNam = navigator.appName;
	navVer = parseFloat(navigator.appVersion);
	navAg = navigator.userAgent;

		if ((navNam.indexOf('Microsoft') != -1) && (navAg.indexOf('Mac') != -1)) {
			//ie for Mac
			if (navAg.indexOf('MSIE 5') != -1) {
				//ie5
				fixStr = fStr + 'style/ie5m.css';
			} else {
				fixStr = fStr + 'style/ie4m.css';
			}
		} else if ((navAg.indexOf('MSIE 6') != -1) && (navAg.indexOf('Mac') == -1)) {
			//ie 6 for Win
			fixStr = fStr + 'style/ie6w.css';
		} else if ((navNam.indexOf('Microsoft') != -1) && (navAg.indexOf('Mac') == -1) && (navVer <= 5)) {
			//ie for Win
			fixStr = fStr + 'style/ie5w.css';
		} else if ((navNam.indexOf('Netscape') != -1) && (navVer >= 5) && (navAg.indexOf('Netscape') != -1)) {
			//n6
			fixStr = fStr + 'style/n6.css';
		} else if ((navNam.indexOf('Netscape') != -1) && (navVer < 5)) {
			//n4 and lower
			fixStr = fStr + 'style/n4.css';	
		} else if (navNam.indexOf('iCab') != -1) {
			//iCab
			fixStr = fStr + 'style/icab.css';	
		} else if (navNam.indexOf('Opera') != -1) {
			//Opera
			fixStr = fStr + 'style/opera.css';	
		} else if ((navNam.indexOf('Netscape') != -1) && (navVer >= 5) && (navAg.indexOf('Netscape') == -1)){
			//Mozilla, not ns6
			fixStr = fStr + 'style/moz.css';
		}
	
	stStr = '<link rel="stylesheet" title=" " media="screen" type="text/css"  href="';
	fnStr = '" />';
	
	if (fixStr != fStr) {
		fixStr = stStr + fixStr + fnStr;
	
		document.writeln(fixStr);
	}
}

function styleFixB(fStr) {
	var navNam;
	var navVer;
	var navAg;
	var fixStr;
	var stStr;
	var fnStr;
	
	fixStr = fStr;
	
	navNam = navigator.appName;
	navVer = parseFloat(navigator.appVersion);
	navAg = navigator.userAgent;

		if ((navNam.indexOf('Netscape') != -1) && (navVer < 5)) {
			//n4 and lower
			fixStr = fStr + 'style/indxn4.css';
			stStr = '<link rel="stylesheet" media="screen" type="text/css" href="';
			fnStr = '" />';
			if (fixStr != fStr) {
				fixStr = stStr + fixStr + fnStr;
				document.writeln(fixStr);
			}
		} 
}

function styleFixC(fStr) {
	var navNam;
	var navVer;
	var navAg;
	var fixStr;
	var stStr;
	var fnStr;
	
	fixStr = fStr;
	
	navNam = navigator.appName;
	navVer = parseFloat(navigator.appVersion);
	navAg = navigator.userAgent;

		if ((navNam.indexOf('Microsoft') != -1) && (navAg.indexOf('Mac') == -1) && (navVer <= 5)) {
			//ie for Win
			fixStr = fStr + 'style/ie5w.css';
			stStr = '<link rel="stylesheet" media="screen" type="text/css" href="';
			fnStr = '" />';
			if (fixStr != fStr) {
				fixStr = stStr + fixStr + fnStr;
				document.writeln(fixStr);
			}
		} 
}

function styleFixOpera(fStr) {
	var navNam;
	var fixStr;
	var stStr;
	var fnStr;
	var navAg;

	navAg = navigator.userAgent;
	
	fixStr = fStr;
	
	navNam = navigator.appName;


		if ((navNam.indexOf('Opera') != -1) || (navNam.indexOf('Microsoft') != -1) && (navAg.indexOf('Mac') == -1)){
			//ID'ed as Opera or MSIE Win
			fixStr = fStr + 'style/opera.css';
			stStr = '<link rel="stylesheet" media="screen" type="text/css" href="';
			fnStr = '" />';
			if (fixStr != fStr) {
				fixStr = stStr + fixStr + fnStr;
				document.writeln(fixStr);
			}
		} 
}

function WM_netscapeCssFix() {
  /*
    Source: Webmonkey Code Library
    (http://www.hotwired.com/webmonkey/javascript/code_library/)

    Author: Taylor
    Author Email: taylor@wired.com
    Author URL: http://www.taylor.org/
    */

  // This part was inspired by Matthew_Baird@wayfarer.com
  // It gets around another unfortunate bug whereby Netscape 
  // fires a resize event when the scrollbars pop up. This 
  // checks to make sure that the window's available size 
  // has actually changed.
  if (document.WM.WM_netscapeCssFix.initWindowWidth != window.innerWidth || document.WM.WM_netscapeCssFix.initWindowHeight != window.innerHeight) {
    document.location = document.location;
  }
}

function WM_netscapeCssFixCheckIn() {
  // This function checks to make sure the version of Netscape 
  // in use contains the bug; if so, it records the window's 
  // width and height and sets all resize events to be handled 
  // by the WM_netscapeCssFix() function.
  if ((navigator.appName == 'Netscape') && (parseInt(navigator.appVersion) == 4)) {
    if (typeof document.WM == 'undefined'){
      document.WM = new Object;
    }
    if (typeof document.WM.WM_scaleFont == 'undefined') {
      document.WM.WM_netscapeCssFix = new Object;
      document.WM.WM_netscapeCssFix.initWindowWidth = window.innerWidth;
      document.WM.WM_netscapeCssFix.initWindowHeight = window.innerHeight;
    }
    window.onresize = WM_netscapeCssFix;
  }
}

function MM_swapImgRestore() {
  if (document.MM_swapImgData != null)
    for (var i=0; i<(document.MM_swapImgData.length-1); i+=2)
      document.MM_swapImgData[i].src = document.MM_swapImgData[i+1];
}

function MM_preloadImages() {
  if (document.images) {
    var imgFiles = MM_preloadImages.arguments;
    if (document.preloadArray==null) document.preloadArray = new Array();
    var i = document.preloadArray.length;
    with (document) for (var j=0; j<imgFiles.length; j++) if (imgFiles[j].charAt(0)!="#"){
      preloadArray[i] = new Image;
      preloadArray[i++].src = imgFiles[j];
  } }
}

function MM_swapImage() {
  var i,j=0,objStr,obj,swapArray=new Array,oldArray=document.MM_swapImgData;
  for (i=0; i < (mm_swapimage.arguments.length-2); i+=3) {
    objstr = MM_swapImage.arguments[(navigator.appName == 'Netscape')?i:i+1];
    if ((objStr.indexOf('document.layers[')==0 && document.layers==null) ||
        (objStr.indexOf('document.all[')   ==0 && document.all   ==null))
      objStr = 'document'+objStr.substring(objStr.lastIndexOf('.'),objStr.length);
    obj = eval(objStr);
    if (obj != null) {
      swapArray[j++] = obj;
      swapArray[j++] = (oldArray==null || oldArray[j-1]!=obj)?obj.src:oldArray[j];
      obj.src = MM_swapImage.arguments[i+2];
  } }
  document.MM_swapImgData = swapArray; //used for restore
}


