//private
function __get2Digits(n) {
  return ((n<10)?"0":"")+n;
}

function __getFirstDayOfLastMonth()
{
	var dToday = new Date();
	var currentMonth=dToday.getMonth()-1;
	var currentYear=dToday.getFullYear();
  	if (currentMonth<0) 
  	{ 
  		currentMonth=11;
  		currentYear--; 
  	}
  	var newDate=new Date(currentYear,currentMonth,1);
  	return newDate;
}

function __getMonth(d)
{
	return __get2Digits(d.getMonth()+1);
}

function __getDate(d)
{
	return __get2Digits(d.getDate());
}

function __getLastDay(d) {
  var yy=d.getFullYear(), mm=d.getMonth();
  for (var i=31; i>=28; i--) {
    var nd=new Date(yy,mm,i);
    if (mm == nd.getMonth()) {
      return __get2Digits(i);
    }
  }
}

//public

function getTotalMinute()
{
}

function myOpenWindow(theURL)
{
	var calWidth = 400;
	var calHeight = 600;
	var winX=0, winY=0;
	calOffsetX=200, calOffsetY=100;
	//window.open(theURL, "theOne","toolbar=0,width="+calWidth+",height="+calHeight+",left="+(winX+calOffsetX)+",top="+(winY+calOffsetY));	
	window.open(theURL,"theOne","top=0,left=150,width=700,height=500,fullscreen=no,scrollbars=yes,resizable=no,toolbar=yes,statusbar=yes");
}

function myAlert(msg, focusItem)
{
	var calWidth = 300;
	var calHeight = 200;
	var winX=0, winY=0;
	calOffsetX=400, calOffsetY=100;
	window.open("utility/msg.asp?f_msg="+msg+"&f_focusItem="+focusItem, "message","toolbar=0,width="+calWidth+",height="+calHeight+",left="+(winX+calOffsetX)+",top="+(winY+calOffsetY));	
}

function myAlert2(msg, focusItem)
{
	var calWidth = 300;
	var calHeight = 200;
	var winX=0, winY=0;
	calOffsetX=400, calOffsetY=100;
	window.open("../utility/msg.asp?f_msg="+msg+"&f_focusItem="+focusItem, "message","toolbar=0,width="+calWidth+",height="+calHeight+",left="+(winX+calOffsetX)+",top="+(winY+calOffsetY));	
}

function myAlert3(msg, targetID, focusItem)
{
	eval("this."+targetID).innerText = msg;
	if(focusItem != "")
		eval(focusItem).focus();
}

function clearErr(targetID)
{
	eval("this."+targetID).innerText = "";
}

function myAlert4(msg)
{
	location="../layer2/msg.asp?msg="+msg;
}

function myGetHourValue()
{
	var dtNow = new Date();
	return (__get2Digits(dtNow.getHours()));
}

function myGetMinuteValue()
{
	var dtNow = new Date();
	return (__get2Digits(dtNow.getMinutes()));
}

function myGetTodayValue()
{
	var dToday = new Date();
	return (dToday.getFullYear()+"/"+__getMonth(dToday)+"/"+__getDate(dToday));
}

function myGetToday(field)
{
	var dToday = new Date();
	eval(field).value = dToday.getFullYear()+"/"+__getMonth(dToday)+"/"+__getDate(dToday);
}

function myGetFirstDayOfMonth(field)
{
	var dToday = new Date();
	eval(field).value = dToday.getFullYear()+"/"+__getMonth(dToday)+"/01";
}


function myGetFirstDayOfLastMonth(field)
{
	var dFirstDayOfLastMonth = __getFirstDayOfLastMonth();
	eval(field).value = dFirstDayOfLastMonth.getFullYear()+"/"+__getMonth(dFirstDayOfLastMonth)+"/"+__getDate(dFirstDayOfLastMonth);
}

function myGetLastDayOfLastMonth(field)
{
	var dFirstDayOfLastMonth = __getFirstDayOfLastMonth();	
	eval(field).value = dFirstDayOfLastMonth.getFullYear()+"/"+__getMonth(dFirstDayOfLastMonth)+"/"+__getLastDay(dFirstDayOfLastMonth);
}

function checkCompanyID(field)
{
	if(isNaN(field.value))
		return false;
		
	if(field.value.length!=8)
		return false;		

	return true;		
}

function checkID(field)
{
	var varFirstLetter = field.value.substring(0,1).toUpperCase();
	var var9Digit = field.value.substring(1,10);
	var var2DigitString = "";
	var varResult = "0";
	if(field.value.substring(1,2) != "1" && field.value.substring(1,2) != "2")
		return false;
	if(varFirstLetter > 'Z' || varFirstLetter < 'A')
		return false;

	if(isNaN(var9Digit))
		return false;
		
	if(varFirstLetter == 'A')
		var2DigitString = "10";
	else if(varFirstLetter == 'B')
		var2DigitString = "11";
	else if(varFirstLetter == 'C')
		var2DigitString = "12";
	else if(varFirstLetter == 'D')
		var2DigitString = "13";
	else if(varFirstLetter == 'E')
		var2DigitString = "14";		
	else if(varFirstLetter == 'F')
		var2DigitString = "15";
	else if(varFirstLetter == 'G')
		var2DigitString = "16";
	else if(varFirstLetter == 'H')
		var2DigitString = "17";
	else if(varFirstLetter == 'I')
		var2DigitString = "34";
	else if(varFirstLetter == 'J')
		var2DigitString = "18";
	else if(varFirstLetter == 'K')
		var2DigitString = "19";
	else if(varFirstLetter == 'L')
		var2DigitString = "20";
	else if(varFirstLetter == 'M')
		var2DigitString = "21";		
	else if(varFirstLetter == 'N')
		var2DigitString = "22";
	else if(varFirstLetter == 'O')
		var2DigitString = "35";
	else if(varFirstLetter == 'P')
		var2DigitString = "23";
	else if(varFirstLetter == 'Q')
		var2DigitString = "24";
	else if(varFirstLetter == 'R')
		var2DigitString = "25";
	else if(varFirstLetter == 'S')
		var2DigitString = "26";
	else if(varFirstLetter == 'T')
		var2DigitString = "27";
	else if(varFirstLetter == 'U')
		var2DigitString = "28";		
	else if(varFirstLetter == 'V')
		var2DigitString = "29";
	else if(varFirstLetter == 'W')
		var2DigitString = "32";
	else if(varFirstLetter == 'X')
		var2DigitString = "30";
	else if(varFirstLetter == 'Y')
		var2DigitString = "31";
	else if(varFirstLetter == 'Z')
		var2DigitString = "33";
			
	varResult = parseInt(var2DigitString.substring(0,1))+parseInt(var2DigitString.substring(1,2))*9;	
	for(var i =0;i<8;i++)
	{
		varResult += parseInt(var9Digit.substring(i,i+1))*(8-i);
	}
	varResult += parseInt(var9Digit.substring(8,9));
	varResult /= 10;
	varResult = "" + varResult;
	if(varResult.indexOf(".") != -1)
		return false;
	return true;		
}

function readCookie(name)
{
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)
  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)
    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}
// Example:
// writeCookie("myCookie", "my name", 24);
// Stores the string "my name" in the cookie "myCookie" which expires after 24 hours.
function writeCookie(name, value, hours)
{
  var expire = "";
  if(hours != null)
  {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire;
}

function __checkFirstSection(theSec)
{
	return (theSec > 0 && theSec < 255)
}

function __checkSection(theSec)
{
	return (theSec >= 0 && theSec < 255)
}

function check_ip(theIP)
{
	var I1, I2, I3, I4;
	var theStartIndex = 0;
	var theEndIndex = 0;
	
	if(theIP.length < 7 || theIP.length > 15)
		return false;
	if(theIP.indexOf(".", 0) < 0)
		return false;
		
	theEndIndex = theIP.indexOf(".", theStartIndex);
	I1 = theIP.substring(theStartIndex,	theEndIndex);
	theStartIndex = theEndIndex + 1;
	theEndIndex = theIP.indexOf(".", theStartIndex);
	I2 = theIP.substring(theStartIndex,	theEndIndex);
	theStartIndex = theEndIndex + 1;
	theEndIndex = theIP.indexOf(".", theStartIndex);
	I3 = theIP.substring(theStartIndex,	theEndIndex);
	theStartIndex = theEndIndex + 1;
	I4 = theIP.substring(theStartIndex,	theIP.length);
	if(theIP.indexOf(".", theStartIndex) > theStartIndex)
		return false;
	
	if(isNaN(I1) || isNaN(I2) || isNaN(I3) || isNaN(I4))
	{
		return false;
	}
	
	if(!__checkFirstSection(I1) || !__checkSection(I2) || !__checkSection(I3) || !__checkSection(I4))
	{		
		return false;
	}
	return true;
}

function isExtCorrect(theFile, theExt)
{
	str= theFile
	strs=str.toLowerCase();
	lens=strs.length;
	extname=strs.substring(lens-4,lens);
	if(extname!=theExt)
	{
		return false;
	}
	return true;
}

function hasEnglishChar(str)
{
	var i;
	var theChar;
	str = str.toUpperCase();
	if( str.length > 0 )
	{
		for(i=0; i<str.length; i++) 
		{
			theChar = '';
			theChar = escape(str.charAt(i));
			if( (theChar.charAt(0) <='Z') && (theChar.charAt(0) >= 'A')) 
			{
				return true;
    		}
    	}
  		return false;
	}
}