﻿function padLChar(s, n, c) {
   var r = "";
   for (i = s.length; i < n; i++) r += c
   return r + s;
}

function padRChar(s, n, c) {
   var r = "";
   for (i = s.length; i < n; i++) r += c
   return s + r;
}

function lTrim(strValue) {
   return strValue.replace(/^ {1,}/, "");
}

function rTrim(strValue) {
   return strValue.replace(/ {1,}$/, "");
}

function trim(strValue) {
   return rTrim(lTrim(strValue));
}

function rmRtnChar(strValue) {
   return strValue.replace(/\x0d/g, "");
}

function rpRtnChar(strValue, strChar) {
   var strTemp = strValue.replace(/\x0d/g, "");
   return strTemp.replace(/\x0a/g, strChar);
}

// rounds number to X decimal places, defaults to 2
function round(number, x) {
   x = (!x ? 2 : x);
   return Math.round(number * Math.pow(10, X)) / Math.pow(10, X);
}

function y2k(number) { return (number < 1000) ? number + 1900 : number; }
function isDate(day, month, year) {
// checks if date passed is valid
// will accept dates in following format:
// isDate(dd,mm,ccyy), or
// isDate(dd,mm) - which defaults to the current year, or
// isDate(dd) - which defaults to the current month and year.
// Note, if passed the month must be between 1 and 12, and the
// year in ccyy format.

   var today = new Date();
   year = ((!year) ? y2k(today.getYear()) : year);
   month = ((!month) ? today.getMonth() : month - 1);
   if (!day) return false

   var test = new Date(year, month, day);
   if ((y2k(test.getYear()) == year) &&
       (month == test.getMonth()) &&
       (day == test.getDate()))
      return true;
   else
      return false;
}

function isAlphabet (InString)  {
   if(InString.length==0)
      return (false);

   var RefString="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

   for (Count=0; Count < InString.length; Count++)  {

      TempChar = InString.substring (Count, Count+1);
      if (RefString.indexOf (TempChar, 0)==-1)
         return (false);
   }
   return (true);
}

function isAlphanumeric (InString) {
   if(InString.length==0)
      return (false);

   var RefString = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefghijklmnopqrstuvwxyz";
   for (Count=0; Count < InString.length; Count++)  {

      TempChar= InString.substring (Count, Count+1);

      if (RefString.indexOf (TempChar, 0)==-1)
         return (false);
   }

   return (true);
}

function isNumber (InString) {
   if(InString.length==0)
      return (false);

   var RefString = "1234567890.";
   for (Count=0; Count < InString.length; Count++)  {

      TempChar= InString.substring (Count, Count+1);

      if (RefString.indexOf (TempChar, 0)==-1)
         return (false);
   }

   return (true);
}

function isNumeric (InString) {
   if(InString.length==0)
      return (false);

   var RefString = "1234567890";
   for (Count=0; Count < InString.length; Count++)  {

      TempChar= InString.substring (Count, Count+1);

      if (RefString.indexOf (TempChar, 0)==-1)
         return (false);
   }

   return (true);
}

function isCurrency (InString) {
   if(InString.length==0)
      return (false);

   var RefString = "1234567890.";

   var isDotAppeared = 0;
   for (Count=0; Count < InString.length; Count++)  {

      TempChar= InString.substring (Count, Count+1);

      if (RefString.indexOf (TempChar, 0)==-1)
         return (false);
   }

   var dotPos;

   dotPos = InString.indexOf(".");

   if (dotPos>0){
      if (InString.indexOf(".", dotPos+1)>0){
         return (false);
      }
   }

   return (true);
}

function isValidEmail(strEmail) {
   var at  = false;
   var dot = false;
   var i   = 0;

   // if the email address has a "@" character
   if (strEmail.indexOf("@") != -1)
      at = true;

   // if the email address has a "." character
   else if (strEmail.indexOf(".") != -1)
      dot = true;

   // parse remainder of the string
   for(i = 0; i < strEmail.length; i++)
   {
      ch = strEmail.substring(i, i + 1)
      if((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z")
         || (ch == "@") || (ch == ".") || (ch == "_")
         || (ch == "-") || (ch >= "0" && ch <= "9"))
      {
         if(ch == "@")
            at = true;
         if(ch == ".")
            dot = true;
      }
   }

   if ((at == true) && (dot == true))
      return true;
   else
      return false;
}



function JustSoPicWindow(imageName,imageWidth,imageHeight,alt,bgcolor,hugger,hugMargin) {
// by E Michael Brandt of ValleyWebDesigns.com - Please leave these comments intact.
// version 3.0.4  

	if (bgcolor=="") {
		bgcolor="#FFFFFF";
	}
	var adj=10
	var w = screen.width;
	var h = screen.height;
	var byFactor=1;

	if(w<740){
	  var lift=0.90;
	}
	if(w>=740 & w<835){
	  var lift=0.91;
	}
	if(w>=835){
	  var lift=0.93;
	}
	if (imageWidth>w){	
	  byFactor = w / imageWidth;			
	  imageWidth = w;
	  imageHeight = imageHeight * byFactor;
	}
	if (imageHeight>h-adj){
	  byFactor = h / imageHeight;
	  imageWidth = (imageWidth * byFactor);
	  imageHeight = h; 
	}
	   
	var scrWidth = w-adj;
	var scrHeight = (h*lift)-adj;

	if (imageHeight>scrHeight){
  	  imageHeight=imageHeight*lift;
	  imageWidth=imageWidth*lift;
	}

	var posLeft=0;
	var posTop=0;

	if (hugger == "hug image"){
	  if (hugMargin == ""){
	    hugMargin = 0;
	  }
	  var scrHeightTemp = imageHeight - 0 + 2*hugMargin;
	  if (scrHeightTemp < scrHeight) {
		scrHeight = scrHeightTemp;
	  } 
	  var scrWidthTemp = imageWidth - 0 + 2*hugMargin;
	  if (scrWidthTemp < scrWidth) {
		scrWidth = scrWidthTemp;
	  }
	  
	  if (scrHeight<100){scrHeight=100;}
	  if (scrWidth<100){scrWidth=100;}

	  posTop =  ((h-(scrHeight/lift)-adj)/2);
	  posLeft = ((w-(scrWidth)-adj)/2);
 	}

	if (imageHeight > (h*lift)-adj || imageWidth > w-adj){
		imageHeight=imageHeight-adj;
		imageWidth=imageWidth-adj;
	}
	posTop = parseInt(posTop);
	posLeft = parseInt(posLeft);		
	scrWidth = parseInt(scrWidth); 
	scrHeight = parseInt(scrHeight);
	
	var agt=navigator.userAgent.toLowerCase();
	if (agt.indexOf("opera") != -1){
	  var args= new Array();
	  args[0]='parent';
	  args[1]=imageName;
	  var i ; document.MM_returnValue = false;
	  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
	} else {
	newWindow = window.open("vwd_justso.htm","newWindow","width="+scrWidth+",height="+scrHeight+",left="+posLeft+",top="+posTop);
	newWindow.document.open();
	newWindow.document.write('<html><title>'+alt+'</title><body leftmargin="0" topmargin="0" marginheight="0" marginwidth="0" bgcolor='+bgcolor+' onBlur="self.close()" onClick="self.close()">');  
	newWindow.document.write('<table width='+imageWidth+' border="0" cellspacing="0" cellpadding="0" align="center" height='+scrHeight+' ><tr><td>');
	newWindow.document.write('<img src="'+imageName+'" width='+imageWidth+' height='+imageHeight+' alt="Click screen to close" >'); 
	newWindow.document.write('</td></tr></table></body></html>');
	newWindow.document.close();
	newWindow.focus();
	}
}

function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0	
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function Autofocus()
{
var inputCollection = document.getElementsByTagName("input");
for(var i = 0; i < inputCollection.length; i++)
{
var controlType = inputCollection[i].getAttribute('type');
if(controlType.toLowerCase() == 'text') 
{ 
inputCollection[i].focus();
return;
}
}
}

function querySt(ji) {
hu = window.location.search.substring(1);
if (hu.length>0 ){
	hu=hu.toLowerCase();
	gy = hu.split("&");
	for (i=0;i<gy.length;i++) {
	ft = gy[i].split("=");
	if (ft[0] == ji) {
	return ft[1];
	}
	}
}
}


var expires = new Date();
expires.setTime(expires.getTime()+(365*24*60*60*1000));

function createCookie(name,value) {
  var argv = createCookie.arguments;
  var argc = createCookie.arguments.length;
  var path = (argc > 3) ? argv[3] : "/";
  var domain = (argc > 4) ? argv[4] : null;
  var secure = (argc > 5) ? argv[5] : false;

  var exp = new Date();
  exp.setTime (exp.getTime() - 1);

  document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + exp.toGMTString())) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
	//modify by yin 2010 03 10
	
  document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
    /*
	alert(name +' '+ value);
	alert(expires.toGMTString());*/
}


function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return unescape(c.substring(nameEQ.length,c.length));
  }
  return null;
}

//----------------XML Data ------------------------------------

//使FIREFOX支持selectNodes()、selectSingleNode()
//代码出处：http://km0ti0n.blunted.co.uk/mozXPath.xap
// check for XPath implementation
if( document.implementation.hasFeature("XPath", "3.0") )
{
// prototying the XMLDocument
XMLDocument.prototype.selectNodes = function(cXPathString, xNode)
{
if( !xNode ) { xNode = this; } 
var oNSResolver = document.createNSResolver(document.documentElement)
var aItems = this.evaluate(cXPathString, xNode, oNSResolver, 
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
var aResult = [];
for( var i = 0; i < aItems.snapshotLength; i++)
{
aResult[i] = aItems.snapshotItem(i);
}
return aResult;
}

// prototying the Element
Element.prototype.selectNodes = function(cXPathString)
{
if(this.ownerDocument.selectNodes)
{
   return this.ownerDocument.selectNodes(cXPathString, this);
}
else{throw "For XML Elements Only";}
}
}

// check for XPath implementation
if( document.implementation.hasFeature("XPath", "3.0") )
{
// prototying the XMLDocument
XMLDocument.prototype.selectSingleNode = function(cXPathString, xNode)
{
if( !xNode ) { xNode = this; } 
var xItems = this.selectNodes(cXPathString, xNode);
if( xItems.length > 0 )
{
return xItems[0];
}
else
{
return null;
}
}

// prototying the Element
Element.prototype.selectSingleNode = function(cXPathString)
{ 
if(this.ownerDocument.selectSingleNode)
{
return this.ownerDocument.selectSingleNode(cXPathString, this);
}
else{throw "For XML Elements Only";}
}
}

function loadXML(file){
	var objGetNavigatorType = new claGetNavigatorType();
	var tempNavType = objGetNavigatorType.getNavigatorName();
	var txmlDoc;
	switch(tempNavType)
	{
		case objGetNavigatorType.appNameIE:
			txmlDoc   =   new    ActiveXObject("Microsoft.XMLDOM");  
			txmlDoc.async   =   false;   
			while(txmlDoc.readyState   !=   4)   {};   
			txmlDoc.load(file);   
			return txmlDoc;
			break;
		case objGetNavigatorType.appNameNetsacpe:
			var txmlDoc;
			txmlDoc   =   document.implementation.createDocument("","",null);   
			txmlDoc.async=false;
			txmlDoc.load(file);   
			return txmlDoc;
			break;
		default:break;
	
	}

}

function readXML(tField, tNodeCode, tCodeValue, tNodeField, txmlDoc){
	try {
		
		var objGetNavigatorType = new claGetNavigatorType();
		var tempNavType = objGetNavigatorType.getNavigatorName();
		var txmlDoc;
		switch(tempNavType)
		{
			case objGetNavigatorType.appNameIE:
				var searchnode;
				var x, y;
				var tmpValue;
				
				eval( "x=txmlDoc.getElementsByTagName(\"" +tNodeCode+"\")");
				eval( "y=txmlDoc.getElementsByTagName(\"" +tNodeField+"\")");
				tCodeValue= trim(tCodeValue.toUpperCase());
				for (i=0;i<x.length;i++)  {
					//if  (trim(x[i].childNodes[0].nodeValue.toUpperCase()) == trim(tCodeValue.toUpperCase()) ){
					tmpValue = trim(x[i].childNodes[0].nodeValue.toUpperCase());
					if  (tmpValue==tCodeValue ){
						tmpYear =trim(y[i].childNodes[0].nodeValue.toUpperCase());
						eval( tField+".innerHTML = trim(y[i].childNodes[0].nodeValue.toString())");
						break;
					}
				}				
				
				
				//eval( tField+".innerHTML = txmlDoc.selectSingleNode(\""+ tNode+"\").text");	//Okay for Node value


				break;
			case objGetNavigatorType.appNameNetsacpe:
				//eval( "document.getElementById(\""+tField+"\").innerHTML = txmlDoc.selectSingleNode(\""+ tNode+"/text()\").nodeValue;");	//Okay for Firefox

				var searchnode;
				var x, y;
				var tmpValue;

				eval( "x=txmlDoc.getElementsByTagName(\"" +tNodeCode+"\")");
				eval( "y=txmlDoc.getElementsByTagName(\"" +tNodeField+"\")");
				tCodeValue= trim(tCodeValue.toUpperCase());
				for (i=0;i<x.length;i++)  {
					//if  (trim(x[i].childNodes[0].nodeValue.toUpperCase()) == trim(tCodeValue.toUpperCase()) ){
					tmpValue = trim(x[i].childNodes[0].nodeValue.toUpperCase());
					if  (tmpValue==tCodeValue ){
						tmpYear =trim(y[i].childNodes[0].nodeValue.toUpperCase());
						eval( "document.getElementById(\""+tField+"\").innerHTML= trim(y[i].childNodes[0].nodeValue)");
						break;
					}
				}				
				

				
				break;
				
			default:break;
		
		}
			
	} catch(e) {
			document.writeln (e.toString());
	}	

}


function readXMLRetValue( tNodeCode, tCodeValue, tNodeField, txmlDoc){
	try {
		
		var objGetNavigatorType = new claGetNavigatorType();
		var tempNavType = objGetNavigatorType.getNavigatorName();
		var txmlDoc;
		var tmpCodeValue;
		var tmpValue1;
		switch(tempNavType)
		{
			case objGetNavigatorType.appNameIE:
				var searchnode;
				var x, y;
				var tmpValue;
				
				tmpCodeValue= trim(tCodeValue.toString().toUpperCase());
				eval( "x=txmlDoc.getElementsByTagName(\"" +tNodeCode.toString()+"\")");
				eval( "y=txmlDoc.getElementsByTagName(\"" +tNodeField.toString()+"\")");
				for (var i=0;i<x.length;i++)  {
					//if  (trim(x[i].childNodes[0].nodeValue.toUpperCase()) == trim(tCodeValue.toUpperCase()) ){
					tmpValue = trim(x[i].childNodes[0].nodeValue.toUpperCase());
					tmpValue1= tmpValue.toString();
					if  (tmpValue1==tmpCodeValue ){						
						tmpYear =trim(y[i].childNodes[0].nodeValue.toString());
						return  tmpYear.toString();
					}
				}				
				
				
				//eval( tField+".innerHTML = txmlDoc.selectSingleNode(\""+ tNode+"\").text");	//Okay for Node value


				break;
			case objGetNavigatorType.appNameNetsacpe:
				//eval( "document.getElementById(\""+tField+"\").innerHTML = txmlDoc.selectSingleNode(\""+ tNode+"/text()\").nodeValue;");	//Okay for Firefox
				
				var searchnode;
				var x, y;
				var tmpValue;
				tmpCodeValue= trim(tCodeValue.toString());
				tmpCodeValue = tmpCodeValue.toUpperCase();
				eval( "x=txmlDoc.getElementsByTagName(\"" +tNodeCode+"\")");
				eval( "y=txmlDoc.getElementsByTagName(\"" +tNodeField+"\")");
				tCodeValue= trim(tCodeValue.toString().toUpperCase());
				for (i=0;i<x.length;i++)  {
					//if  (trim(x[i].childNodes[0].nodeValue.toUpperCase()) == trim(tCodeValue.toUpperCase()) ){
					tmpValue = trim(x[i].childNodes[0].nodeValue.toUpperCase());
					tmpValue1= tmpValue.toString();
					if  (tmpValue1==tCodeValue ){
						tmpYear =trim(y[i].childNodes[0].nodeValue.toString());
						return  tmpYear.toString();
					}
				}				
				

				
				break;
				
			default:break;
		
		}
			
	} catch(e) {
			document.writeln (e.toString());
	}	

}



//----------------XML Data ------------------------------------


function footer(){
	  
	tlang = readCookie("lang");
	tlang=tlang.toLowerCase();
	_isTextVers= readCookie("displayVerCookies");
	if (_isTextVers == null  ){
		_isTextVers= 0;
		createCookie("displayVerCookies","0");
	
	}
	if ( _isTextVers==0){
		switch (tlang){
			case "tchi": 
			/*
			| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">重要通知</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">醫管局附例</a><br/>
			*/
				document.write ("<img src=\"images/"+tlang+"/footer/logo.jpg\" width=\"49\" height=\"54\" alt=\"ha logo\" class=\"floatleft\" />");
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">醫院管理局</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">免責聲明</a> | <a href=\"sitemap.aspx\" class=\"footer1\">網站地圖</a> <br/>");
				document.write ("醫院管理局版權所有，不得轉載。<br />");
				document.write ("中華人民共和國香港特別行政區，九龍亞皆老街147B。<br/>");
				break;
			case "schi":
			/*
			| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">重要通知</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">医管局附例</a><br/>
			*/
				document.write ("<img src=\"images/"+tlang+"/footer/logo.jpg\" width=\"49\" height=\"54\" alt=\"ha logo\" class=\"floatleft\" />");
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">医院管理局</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">免责声明</a> | <a href=\"sitemap.aspx\"  class=\"footer1\">网站地图</a> <br/>");
				document.write ("医院管理局版权所有，不得转载。<br />");
				document.write ("中华人民共和国香港特别行政区，九龙亚皆老街147B。<br/>");
				break;
			
			case "eng": 
			/*| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Important Notice</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">HA By-laws</a> <br/>*/
			
				//document.write ("<img src=\"images/"+tlang+"/footer/logo.jpg\" width=\"49\" height=\"54\" alt=\"ha logo\" class=\"floatleft\" />");
				//document.write ("<a href=\"http://www.ha.org.hk\" class=\"footer1\">Hospital Authority</a> | <a href=\"http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\" class=\"footer1\">Disclaimer</a> | ");
				//document.write ("Copyright &copy;2009 Hospital Authority. All rights reserved.<br />");
				//document.write ("147B Argyle Street, Kowloon, Hong Kong Special Administrative Region, PRC.	");

				document.write ("<img src=\"images/"+tlang+"/footer/logo.jpg\" width=\"49\" height=\"54\" alt=\"ha logo\" class=\"floatleft\" />");
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">Hospital Authority</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Disclaimer</a> | <a href=\"sitemap.aspx\" class=\"footer1\">Site Map</a> <br/>");
				document.write ("Copyright &copy;2010 Hospital Authority. All rights reserved.<br />");
				document.write ("147B Argyle Street, Kowloon, Hong Kong Special Administrative Region, PRC.	<br/>");
				break;
	
			default : 
			/*
			| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Important Notice</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">HA By-laws</a> <br/>
			*/
				document.write ("<img src=\"images/"+tlang+"/footer/logo.jpg\" width=\"49\" height=\"54\" alt=\"ha logo\" class=\"floatleft\" />");
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">Hospital Authority</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Disclaimer</a> | <a href=\"sitemap.aspx\" class=\"footer1\">Site Map</a><br/> ");
				document.write ("Copyright &copy;2010 Hospital Authority. All rights reserved.<br />");
				document.write ("147B Argyle Street, Kowloon, Hong Kong Special Administrative Region, PRC.	<br/>");
				break;
			
		}
		}else{

			switch (tlang){
				/*
				| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">重要通知</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">醫管局附例</a><br/><br/>
				*/
				case "tchi": 
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">醫院管理局</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">免責聲明</a> | <a href=\"sitemap.aspx\" class=\"footer1\">網站地圖</a> <br/>");
					document.write ("醫院管理局版權所有，不得轉載。<br />");
					document.write ("中華人民共和國香港特別行政區，九龍亞皆老街147B。");
					document.write ("<p>本頁完<p> ");
					break;
				case "schi":
				/*
				| <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">重要通知</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">医管局附例</a> <br/><br/>
				*/
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">医院管理局</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?Parent_ID=null&Content_ID=102157&Dimension=100&Lang=CHIB5\', '', '')\" class=\"footer1\">免责声明</a> | <a href=\"sitemap.aspx\" class=\"footer1\">网站地图</a><br/> ");
					document.write ("医院管理局版权所有，不得转载。<br />");
					document.write ("中华人民共和国香港特别行政区，九龙亚皆老街147B。");
					document.write ("<p>本页完 </p>");
					break;
				
				case "eng": 
				/*
				 | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Important Notice</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">HA By-laws</a> <br/><br/>
				*/
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">Hospital Authority</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Disclaimer</a> | <a href=\"sitemap.aspx\" class=\"footer1\">Site Map</a><br/>");
					document.write ("Copyright &copy;2010 Hospital Authority. All rights reserved.<br />");
					document.write ("147B Argyle Street, Kowloon, Hong Kong Special Administrative Region, PRC.	");
					document.write ("<p>End of Page </p> ");
					break;
		
				default : 
				/*
				 | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Important Notice</a> |  <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">HA By-laws</a> <br/><br/>
				*/
				document.write ("<a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk', '', '')\" class=\"footer1\">Hospital Authority</a> | <a href=\"Javascript:void(0);\" Onclick=\"window.open('http://www.ha.org.hk/visitor/ha_visitor_index.asp?content_id=102157&lang=ENG\', '', '')\" class=\"footer1\">Disclaimer</a> | <a href=\"sitemap.aspx\" class=\"footer1\">Site Map</a><br/>");
					document.write ("Copyright &copy;2010 Hospital Authority. All rights reserved.<br />");
					document.write ("147B Argyle Street, Kowloon, Hong Kong Special Administrative Region, PRC.	");
					document.write ("<p>End of Page </p> ");
					break;
				
			}
	}
	genDisplayVersion();
	changeColVersion();
setFontSize(_fontsize);
	//genColorVersionMenu();
	

}

function backToTop(){
tlang = readCookie("lang");
	tlang=tlang.toLowerCase();
	_isTextVers = readCookie("displayVerCookies");
	
	if (_isTextVers == null  ){
		_isTextVers= 1;
		createCookie("displayVerCookies","1");
	
	}	
	if (_isTextVers==0){
		switch (tlang){
			case "tchi": 
				document.write ("<img src=\"images/"+tlang +"/icons/icon_back_to_top.jpg\" width=\"8\" height=\"9\" alt=\"返回頁首\" /> <a href=\"#\">返回頁首</a>");
				break;
			case "schi":
				document.write ("<img src=\"images/"+ tlang +"/icons/icon_back_to_top.jpg\" width=\"8\" height=\"9\" alt=\"返回页首\" /> <a href=\"#\">返回页首</a>");
				break;
			case "eng":
				document.write ("<img src=\"images/"+ tlang +"/icons/icon_back_to_top.jpg\" width=\"8\" height=\"9\" alt=\"Back to Top\" /> <a href=\"#\">Back to Top</a>");
				break;
			default :
				document.write ("<img src=\"images/"+ tlang +"/icons/icon_back_to_top.jpg\" width=\"8\" height=\"9\" alt=\"Back to Top\" /> <a href=\"#\">Back to Top</a>");
				break;
			
		}
		
	}else{
		switch (tlang){
			case "tchi": 
				document.write ("<a href=\"#\">返回頁首</a>");
				break;
			case "schi":
				document.write ("<a href=\"#\">返回页首</a>");
				break;
			case "eng":
				document.write ("<a href=\"#\">Back to Top</a>");
				break;
			default :
				document.write ("<a href=\"#\">Back to Top</a>");
				break;
			
		}
	}
}
//--------Event Form Checking

        function checkForm() {
            var errMsg = "";
			var tlang;
			tlang = readCookie("lang");
			tlang=tlang.toLowerCase();
            var menEvent     = trim(document.getElementById('menEvent').value);
            var menDateTime  = trim(document.getElementById('menDateTime').value);
            var menLocation  = trim(document.getElementById('menLocation').value);
            var txtName      = trim(document.getElementById('txtName').value);
            var menNoOfParti = trim(document.getElementById('menNoOfParti').value);
            var txtContact   = trim(document.getElementById('txtContact').value);
            var txtEmail     = trim(document.getElementById('txtEmail').value);
            var txtCompany   = trim(document.getElementById('txtCompany').value);


            if (menEvent == -1) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入活動 \n";
					break;
				case "schi":
					errMsg += "请输入活动 \n";
					break;
				case "eng":
					errMsg += "Please enter Event \n";
					break;
				default :
					errMsg += "Please enter Event \n";
					break;
				
				}		
            }
            if (menDateTime == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入日期及時間 \n";
					break;
				case "schi":
					errMsg += "请输入日期及时间 \n";
					break;
				case "eng":
					errMsg += "Please enter Date &Time \n";
					break;
				default :
					errMsg += "Please enter Date &Time \n";
					break;
				
				}		
            }
            if (menLocation == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入地點 \n";
					break;
				case "schi":
					errMsg += "请输入地点 \n";
					break;
				case "eng":
					errMsg += "Please enter Location  \n";
					break;
				default :
					errMsg += "Please enter Location \n";
					break;
				
				}		
            }
            if (txtName == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入名稱 \n";
					break;
				case "schi":
					errMsg += "请输入名称 \n";
					break;
				case "eng":
					errMsg += "Please enter Name  \n";
					break;
				default :
					errMsg += "Please enter Name \n";
					break;
				
				}		
                
            }
            /*else if (isAlphabet(txtName) == false) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入有效的名稱 \n";
					break;
				case "schi":
					errMsg += "请输入有效的名称 \n";
					break;
				case "eng":
					errMsg += "Please enter a valid Name \n";
					break;
				default :
					errMsg += "Please enter a valid Name \n";
					break;
				
				}	

            }*/
            if (menNoOfParti == -1) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入出席人數 \n";
					break;
				case "schi":
					errMsg += "请输入出席人数 \n";
					break;
				case "eng":
					errMsg += "Please enter Number of participant \n";
					break;
				default :
					errMsg += "Please enter Number of participant \n";
					break;
				
				}	
            }
            if (txtContact == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入聯絡電話 \n";
					break;
				case "schi":
					errMsg += "请输入联络电话 \n";
					break;
				case "eng":
              	     errMsg += "Please enter Contact number\n";
					break;
				default :
                	 errMsg += "Please enter Contact number\n";
					break;
				
				}	
            }
			/*
			modify by yin 20100320 no checking for the phone number now
			
            else if (isNumeric(txtContact) == false) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入有效的聯絡電話 \n";
					break;
				case "schi":
					errMsg += "请输入有效的联络电话 \n";
					break;
				case "eng":
					errMsg += "Please enter a valid Contact number \n";
					break;
				default :
					errMsg += "Please enter a valid Contact number \n";
					break;
				
				}	
            }*/
            if (txtEmail == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入電郵地址 \n";
					break;
				case "schi":
					errMsg += "请输入电邮地址 \n";
					break;
				case "eng":
    	            errMsg += "Please enter Email address \n";
					break;
				default :
    	            errMsg += "Please enter Email address \n";
					break;
				
				}	
            }
            else if (isValidEmail(txtEmail) == false) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入有效的電郵地址 \n";
					break;
				case "schi":
					errMsg += "请输入有效的电邮地址 \n";
					break;
				case "eng":
     		         errMsg += "Please enter a valid Email address \n";
					break;
				default :
        	        errMsg += "Please enter a valid Email address \n";
					break;
				
				}	

            }
			//--------modify by yin 2010 03 08 company is optional-------
			/*
            if (txtCompany == "") {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入公司 \n";
					break;
				case "schi":
					errMsg += "请输入公司 \n";
					break;
				case "eng":
        	        errMsg += "Please enter Company \n";
					break;
				default :
        	        errMsg += "Please enter Company \n";
					break;
				
				}	
            }
			
			
            else if (isAlphanumeric(txtCompany) == false) {
				switch (tlang){
				case "tchi": 
					errMsg += "請輸入有效的公司 \n";
					break;
				case "schi":
					errMsg += "请输入有效的公司 \n";
					break;
				case "eng":
            	    errMsg += "Please enter a valid Company \n";
					break;
				default :
            	    errMsg += "Please enter a valid Company \n";
					break;
				
				}	
            }
			*/
            //--------modify by yin 2010 03 08 company is optional-------
            if (errMsg.length <= 0) {
                
              
                document.forms[0].submit();
                
            }
            else {
                alert(errMsg);
            }
        }
        //--------Event Form Checking
        //---search menu()
       
        function showsearchmenu() {
            document.getElementById("searchpullmenu").style.left = 0;
            if (document.getElementById("searchpullmenu").style.display == "block") {
                document.getElementById("searchpullmenu").style.display = "none";
            } else {
              document.getElementById("searchpullmenu").style.display = "block";
            }
        }
        function hiddensearchmenu2() {
            document.getElementById("searchpullmenu").style.display = "none";
            
        }

        //---search menu()
        //---search return()
        function returnsearch(o) {
            document.getElementById("SearchSelect").selectedIndex = o;
            hiddensearchmenu2();
        }
        
        //---search return()
        	
        	
function utf8(wide) {
  var c, s;
  var enc = "";
  var i = 0;
  while(i<wide.length) {
    c= wide.charCodeAt(i++);
    // handle UTF-16 surrogates
    if (c>=0xDC00 && c<0xE000) continue;
    if (c>=0xD800 && c<0xDC00) {
      if (i>=wide.length) continue;
      s= wide.charCodeAt(i++);
      if (s<0xDC00 || c>=0xDE00) continue;
      c= ((c-0xD800)<<10)+(s-0xDC00)+0x10000;
    }
    // output value
    if (c<0x80) enc += String.fromCharCode(c);
    else if (c<0x800) enc += String.fromCharCode(0xC0+(c>>6),0x80+(c&0x3F));
    else if (c<0x10000) enc += String.fromCharCode(0xE0+(c>>12),0x80+(c>>6&0x3F),0x80+(c&0x3F));
    else enc += String.fromCharCode(0xF0+(c>>18),0x80+(c>>12&0x3F),0x80+(c>>6&0x3F),0x80+(c&0x3F));
  }
  return enc;
}

var hexchars = "0123456789ABCDEF";

function toHex(n) {
  return hexchars.charAt(n>>4)+hexchars.charAt(n & 0xF);
}

var okURIchars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-";

function encodeURIComponentNew(s) {
  var s = utf8(s);
  var c;
  var enc = "";
  for (var i= 0; i<s.length; i++) {
    if (okURIchars.indexOf(s.charAt(i))==-1)
      enc += "%"+toHex(s.charCodeAt(i));
    else
      enc += s.charAt(i);
  }
  return enc;
}

function buildURL(fld)
{
	if (fld == "") return false;
	var encodedField = "";
	var s = fld;
	if (typeof encodeURIComponent == "function")
	{
		// Use JavaScript built-in function
		// IE 5.5+ and Netscape 6+ and Mozilla
		encodedField = encodeURIComponent(s);
	}
	else 
	{
		// Need to mimic the JavaScript version
		// Netscape 4 and IE 4 and IE 5.0
		encodedField = encodeURIComponentNew(s);
	}
	alert ("New encoding: " + encodeURIComponentNew(fld) +
		 "\n           escape(): " + escape(fld));
	return true;
}
// -->
        	
   //---search redirect()
        function gotosearch() {
            //check null
            var errmsg ="";
            var tlang;
			tlang = readCookie("lang");
			tlang=tlang.toLowerCase();
			
			//--------------------------modify by yin 2010 03 05 no longer need search type------------------------------
			/*
            if (document.getElementById("SearchSelect").selectedIndex == 0)
				switch (tlang){
				case "tchi": 
					 errmsg += "請選擇搜索類型 \n";
					break;
				case "schi":
					 errmsg += "请选择搜索类型 \n";
					break;
				case "eng":
            	     errmsg += "please select search type \n";
					break;
				default :
            	     errmsg += "please select search type \n";
					break;
				
				}
               */
            if (trim(document.getElementById('Searchtext').value) == "")
								switch (tlang){
				case "tchi": 
					 errmsg += "請輸入搜索文本 \n";
					break;
				case "schi":
					 errmsg += "请输入搜索文本 \n";
					break;
				case "eng":
            	    errmsg += "please enter search text \n";
					break;
				default :
            	    errmsg += "please enter search text \n";
					break;
				
				}
            if (errmsg == "") {
               // var selindex = document.getElementById("SearchSelect").selectedIndex;
                //----20100225
                //location.href = "search.aspx?wtext=" + trim(document.getElementById('Searchtext').value) + ' ' + document.getElementById("SearchSelect").options[selindex].text;
                //var tmpStr=trim(document.getElementById('Searchtext').value) + ' ' + document.getElementById("SearchSelect").options[selindex].text;
                var tmpStr=trim(document.getElementById('Searchtext').value) ;
               location.href = "search.aspx?wtext=" +  escape( tmpStr );
                //----20100225
            } else {
             alert(errmsg);
            }

            //--------------------------modify by yin 2010 03 05 no longer need search type------------------------------
        }
   //--search redirect()
   	   
   	          function MM_jumpMenu(items,key) {
            var sthref = window.location;
            sthref = String(sthref);
            if (sthref.indexOf("?") > 0) {
                sthref = sthref.substring(0, sthref.indexOf("?"));
            }
            window.location = sthref + "?" + key + "=" + items.value;
        }
		
		function gup( name )
		{
		  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
		  var regexS = "[\\?&]"+name+"=([^&#]*)";
		  var regex = new RegExp( regexS );
		  var results = regex.exec( window.location.href );
		  if( results == null )
			return "";
		  else
			return results[1];
		}
		function changeeventitem(){
			var id
			id = document.getElementById('menEvent').value 
			//modify by yin 20100320 add checking
			if (parseInt(id) >= 0){
				document.getElementById('menDateTime').value  =  document.getElementById('hid_menDateTime'+id ).value 
				document.getElementById('menLocation').value  =  document.getElementById('hid_menLocation'+id ).value 
			}else{
				document.getElementById('menDateTime').value  =  ""
				document.getElementById('menLocation').value  =  ""
				}
				//modify by yin 20100320 add checking
		}
