/*
#VERSIONINFO
*/
// JScript source code

var uagent    = navigator.userAgent.toLowerCase();
var is_safari = ( (uagent.indexOf('safari') != -1) || (navigator.vendor == "Apple Computer, Inc.") );
var is_ie     = ( (uagent.indexOf('msie') != -1) && (!is_opera) && (!is_safari) && (!is_webtv) );
var is_ie4    = ( (is_ie) && (uagent.indexOf("msie 4.") != -1) );
var is_moz    = (navigator.product == 'Gecko');
var is_ns     = ( (uagent.indexOf('compatible') == -1) && (uagent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_safari) );
var is_ns4    = ( (is_ns) && (parseInt(navigator.appVersion) == 4) );
var is_opera  = (uagent.indexOf('opera') != -1);
var is_kon    = (uagent.indexOf('konqueror') != -1);
var is_webtv  = (uagent.indexOf('webtv') != -1); 
//Some Utilities Function
//Check IsEmail ?
//In : email
//Out: true if it's a email,else false
function isemail(email) 
{	
	var pos1,pos2,pos3
	pos1=email.indexOf("@");	
	pos2=email.indexOf(" ");
	pos3=email.indexOf(".");	
	if ((pos1 == -1) || (pos2!= -1) || (pos3 == -1)) return false;
	else return true;
}
//Trim string function
//In : text
//Out: result 
function trim(text)
{
	pos1=0;
	pos2=text.length-1;
	for(i=0;i<=text.length-1;i++)
		if(text.substr(i,1)==" ") pos1=i;
		else break;
	for(i=length-1;i>=0;i--)
		if(text.substr(i,1)==" ") pos2=i;
		else break;
	if (pos2<pos1) return ""
	return text.substr(pos1,pos2-pos1)
}
function IsNumberString(MyString)
{ 
	var checkOK = "0123456789"; 
	var checkStr = MyString ; 
	var allValid = true; 
	var decPoints = 0; 
	var allNum = ""; 
	if (checkStr.length<=0) { return (false); } 
	for (i = 0;  i < checkStr.length;  i++){ 
		ch = checkStr.charAt(i); 
		for (j = 0;  j < checkOK.length;  j++) 
			if (ch == checkOK.charAt(j)) 
				break; 
			if (j == checkOK.length) { 
				allValid = false; 
				break; 
			} 
			if (ch != ",") 
				allNum += ch; 
	} 
	if (!allValid) { return (false);} 
	return true; 
} 
function IsAlphabeString(MyString)
{ 
	var checkStr = MyString ; 	
	if (checkStr.length<=0) { return (false); } 
	for (i = 0;  i < checkStr.length;  i++){ 
		ch = checkStr.charAt(i); 
		//if (!((ch >= 'a' && ch =< 'z')||(ch >= 'A' && ch =< 'Z'))) {
		if (!((ch >= 'a' && ch <= 'z')||(ch >= 'A' && ch <= 'Z'))) {
			return false;			
		}	
	} 	
	return true; 
} 	
function IsSafeString(MyString)
{ 	
	var checkOK = "$%@/\\^&'\"!"; 
	var checkStr = MyString ; 
	var allValid = true; 
	var decPoints = 0; 
	var allNum = ""; 
	if (checkStr.length<=0) { return (false); } 
	for (i = 0;  i < checkStr.length;  i++){ 
		ch = checkStr.charAt(i); 
		for (j = 0;  j < checkOK.length;  j++) 
			if (ch == checkOK.charAt(j)) 
				return false; 			
	}
	return true;
}
function IsDoubleString(MyString)
{ 
	var checkOK = "0123456789."; 
	var checkStr = MyString ; 
	var allValid = true; 
	var decPoints = 0; 
	var allNum = ""; 
	if (checkStr.length<=0) { return (false); } 
	for (i = 0;  i < checkStr.length;  i++){ 
		ch = checkStr.charAt(i); 
		for (j = 0;  j < checkOK.length;  j++) 
			if (ch == checkOK.charAt(j)) 
				break; 
			if (j == checkOK.length) { 
				allValid = false; 
				break; 
			} 
			if (ch != ",") 
				allNum += ch; 
	} 
	if (!allValid) { return (false);} 
	return true; 
} 
	
function isDigit(c) 
{
	if((c=='0')||(c=='1')||(c=='2')||(c=='3')||(c=='4')||(c=='5')||(c=='6')||(c=='7')||(c=='8')||(c=='9'))
		return true;
	else
		return false;
}
	
function isPosInt(s)	
{
	var n;
	n = s.length
	if(n==0) return false;
		for(i=0;i<n;i++)
			if(!isDigit(s.charAt(i))) return false;
		return true;
}

function isPosReal(s)
{
	var dot;
	s = trim(s);
	dot =0;
	for(i=0;i<s.length;i++)
		if(!isDigit(s.charAt(i))) 
		{
			if(s.charAt(i)=='.') 
			{
				dot++;
				if(i==s.length-1) return false;
				if(dot>1) return false;
			}
			else return false;	
		}
	return true;
}
function IsDate(d,m,y)
{
	//alert('d: '+ d + 'm: ' + m + 'y: ' +y );
	var dayinmonth = new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
	if ((y % 4 == 0 && y % 100 != 0)|| (y % 400 == 0)) 
	{
		dayinmonth[2] = 29;
	}
	else
	{
		dayinmonth[2] = 28;
	}	
	if (y < 1900 || y > 2100) { 
		return false;
	}
	if (m < 1 || m > 12) {
		return false;
	}
	if (d < 1 || d > dayinmonth[m] ) {
		return false;
	}
	return true;
}
function IsInteger(x)
{
	return (!isNaN(parseInt(x))) ? true : false;
}
function IsFloat(x)
{
	return (!isNaN(parseFloat(x))) ? true : false;
}
function IsIntLessZero(x)
{	
	if (!IsInteger(x)) {
		return false;
	}
	var tmp = parseInt(x,10);
	if (tmp < 0) {
		return true;
	}
	return false;
}
function IsIntGreaterZero(x)
{
	if (!IsInteger(x)) {
		return false;
	}
	var tmp = parseInt(x,10);
	if (tmp > 0) {
		return true;
	}
	return false;
}
function IsFloatLessZero(x)
{
	if (!IsFloat(x)) {
		return false;
	}
	var tmp = parseFloat(x);
	if (tmp < 0) {
		return true;
	}
	return false;
}
function IsFloatGreaterZero(x)
{
	if (!IsFloat(x)) {
		return false;
	}
	var tmp = parseFloat(x);
	if (tmp > 0) {
		return true;
	}
	return false;
}
function CheckStrLen(str,len1,len2)
{
	if (len1 == 0 && len2 == 0) {
		return true;
	}
	if (str.length >= len1 && str.length <= len2) {
		return true;
	}
	return false;
}
//Url function
function goToUrl(gourl)
{
	var gotourl = gourl;

	if (is_ie && event.shiftKey)
	{
		window.open(gotourl)
	}
	else
	{
		window.location = gotourl;
	}
} 
function confirmURL(msg,url)
{
	if (confirm(msg)) {
		goToUrl(url);
	}
}
function confirmDelCat(name,id)
{
	msg = "Do you really want to delete "+name;
	url = "Admin.php?act=catelogy&CODE=03&id="+id;
	confirmURL(name,url);	
}

//Checking Function
// #############################################################################
// function to check message length before form submission

function validatemessage(messageText, subjectText, minLength, maxLength, ishtml, tForm)
{

	
	// check for completed subject
	if (subjectText.length < 1)
	{
		alert('You must complete the subject field');
		return false;
	}
	// check for minimum message length
	else if (strippedMessage.length < minLength)
	{
		alert('Your message must be at least ' + minLength + ' characters long.');
		return false;
	}
	// everything seems okay
	else
	{
		return true;
	}
}
function DoCheckAll(tForm,do_check,id)
{
	var elts      = document.forms[tForm].elements;//['chosenFieldName[]'];

    var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
    var checkval = typeof(document.forms[tForm].elements[do_check]) != 'undefined'
                                  ? document.forms[tForm].elements[do_check].checked
                                  : ((do_check == true)?true:false);
    if (elts_cnt) {
                for(var i = 0; i < elts_cnt; i++){
                        var tmp = new String(elts[i].name);
                        if (tmp.indexOf(id) > -1) {
                                //alert(tmp);
                                elts[i].checked = checkval;
                        }
                }
    }
    return true;
}
function GetCheckAll(tForm,id)
{
	var elts      = document.forms[tForm].elements;//['chosenFieldName[]'];

    var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
    var tmpresult = false;
    if (elts_cnt) {
                for(var i = 0; i < elts_cnt; i++){
                        var tmp = new String(elts[i].name);
                        if (tmp.indexOf(id) > -1) {
                                tmpresult = tmpresult || elts[i].checked;
                        }
                }
    }
    return tmpresult;
}
function GetYear(s)
{
	if (s.indexOf('-') < 1 ) {
		return '1900';
	}
	var nexti = s.lastIndexOf('-');
	return s.slice(nexti+1);
}
function GetMonth(s)
{
	if (s.indexOf('-') < 1 ) {
		return '1';
	}
	var nexti = s.lastIndexOf('-');
	var nexta = s.indexOf('-');
	return s.slice(nexta+1,nexti);
}
function GetDay(s)
{
	if (s.indexOf('-') < 1 ) {
		return '1';
	}
	var nexti = s.indexOf('-');
	return s.substr(0,nexti);
}
function SetValue(tForm,tName,atValue)
{
    if (typeof(document.forms[tForm]) == 'undefined') {
		return 0;
    }
    if (typeof(document.forms[tForm].elements[tName]) == 'undefined') {
		return 0;
    }
    elm = document.forms[tForm].elements[tName];
	if (elm.tagName == 'INPUT') {
		if (elm.type == 'TEXT' || elm.type == 'PASSWORD') {
			elm.value = tValue;
			return 0;
		}
		if (elm.type == 'CHECKBOX') {
			if (tValue != '') {
				elm.checked = true;
				return 0;
			}
		}
	} // End If Input
	
	if (elm.tagName == 'SELECT') {
		var elts_cnt = elm.options.length;
		for(var i = 0; i < elts_cnt; i++ )
		{
			if (elm.options[i].text == tValue ) {
				elm.selectedIndex = i;
				return 0;
			}
		} // End For
	} // End If Select
	return 1;
}
function wysiwyg(objname)
{
	var config = new Object(); 
		config.width = "100%";
		config.height = "150px";
		config.bodyStyle = 'background-color: white; font-family: "Verdana"; font-size: xx-small;';
		config.debug = 0;
		config.toolbar = [
												 ['fontname'],
												 ['fontsize'],												 												 
												 ['bold','italic','underline'],
												 ['linebreak'],
											     ['strikethrough','subscript','superscript','separator'],
												 ['justifyleft','justifycenter','justifyright','separator'],
												 ['OrderedList','UnOrderedList','Outdent','Indent','separator'],
												 ['forecolor','backcolor','separator'],
												 ['HorizontalRule','Createlink','InsertImage', 'htmlmode', 'separator'],
												 ['popupeditor'],
											];
	
	editor_generate(objname,config);
	return true;
}

function swap(tSelect,aOption,bOption)
{	
	//Plz ! tell me how to swap object :)
	var tmp = tSelect.options[aOption].text;
	tSelect.options[aOption].text = tSelect.options[bOption].text;
	tSelect.options[bOption].text = tmp;

	tmp = tSelect.options[aOption].value;
	tSelect.options[aOption].value = tSelect.options[bOption].value;
	tSelect.options[bOption].value = tmp;
}
function DoMoveUp(tSelect,where)
{
	if(where < 1) // Must be the Top Element
	{
		/*var size = tSelect.options.length -1 ;
		alert(size);
		swap(tSelect,size,where);
		tSelect.selectedIndex = size;
		*/
	}
	else
	{
		swap(tSelect,where-1,where);
		tSelect.selectedIndex = where -1;
	}
	return true;
}
function SelectMoveUp(tSelect)
{
	if(typeof(tSelect) == 'undefined')
		return false;
	if(typeof(tSelect.options) == 'undefined')
		return false;
	var size = tSelect.options.length;
	if(size < 2)
		return false;
	for(var i=0; i < size; i++)
	{
		if(tSelect.options[i].selected)
		{
			DoMoveUp(tSelect,i);
			return true;
		}
	}
	return false;
}

//Do Move Down
function DoMoveDown(tSelect,where)
{
	if(where >= tSelect.options.length -1) // Must be the Top Element
	{
		/*var size = tSelect.options.length -1 ;
		alert(size);
		swap(tSelect,size,where);
		tSelect.selectedIndex = size;
		*/
	}
	else
	{
		swap(tSelect,where + 1,where);
		tSelect.selectedIndex = where + 1;
	}
	return true;
}
function SelectMoveDown(tSelect)
{
	if(typeof(tSelect) == 'undefined')
		return false;
	if(typeof(tSelect.options) == 'undefined')
		return false;
	var size = tSelect.options.length;
	if(size < 2)
		return false;
	for(var i=0; i < size; i++)
	{
		if(tSelect.options[i].selected)
		{
			DoMoveDown(tSelect,i);
			return true;
		}
	}
	return false;
}

function SelectSetVal(tSelect,aValue)
{
	if (typeof(tSelect.tagName) == 'undefined') {
		return 0;
    }
    if (tSelect.tagName.toUpperCase() != 'SELECT') {
		return 0;
    }
	var elts_cnt = tSelect.options.length;
	for(var i = 0; i < elts_cnt; i++ )
	{
		if (tSelect.options[i].value == aValue ) {
			tSelect.selectedIndex = i;
			return 1;
		}
	} // End For
	return 0;
}

// Example:
// alert( readCookie("myCookie") );
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:
// alert( readCookie("myCookie") );
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;
}
