var currentLanguage="EN";


var dateFormat="NNN dd HH:mm, yyyy";

var dateFormat1="NNN d, yyyy";
//
//Common function define
//

//
Number.prototype.rate=function(){ 
	var oStr=this.toString();
	if(oStr.indexOf(".")==-1) {
		return 1;
	} 
	else {
		return Math.pow(10, parseInt(oStr.length-oStr.indexOf(".")-1));
	}
}

//
function tran(){
	args=tran.arguments;
	var temp=1;
	for(i=0;i<args.length;i++) {
		temp*=args[i]*args[i].rate();
	}
	for(i=0;i<args.length;i++)  {
		temp/=args[i].rate();
	}
	 var nf=new NumberFormat();
      nf.applyPattern("0000.0");
      return nf.format(temp);
} 

//Select All | Cancel All Select item
var flagSelect = false;
function selectall1(){
	var a = document.getElementsByTagName("input");
	for (var i=0; i<a.length; i++)
		if (a[i].type == "checkbox" && a[i].disabled != true) a[i].checked =!flagSelect;
	flagSelect = !flagSelect;
};

//select all checkbox
function selectAllCheckbox() {
	var a = document.getElementsByTagName("input");
	for (var i=0; i<a.length; i++)
		if (a[i].type == "checkbox" && a[i].disabled != true) a[i].checked =true;	
}

//cancel all checkbox
function cancelAllCheckbox() {
	var a = document.getElementsByTagName("input");
	for (var i=0; i<a.length; i++)
		if (a[i].type == "checkbox" && a[i].disabled != true) a[i].checked =false;		
}

function disableAllButton() {
	var a = document.getElementsByTagName("input");
	for (var i=0; i<a.length; i++)
	if (a[i].type == "button") a[i].disabled =true;
}

function enableAllButton() {
	var a = document.getElementsByTagName("input");
	for (var i=0; i<a.length; i++)
	if (a[i].type == "button") a[i].disabled =false;
}

//get a array of checkbox by it's name
function getAllCheckboxByName(nameVal) {
	var a = document.getElementsByTagName("input");
	var returnVal = new Array();
	for (i=0; i<a.length; i++) {
		if (a[i].type == "checkbox" && a[i].name == nameVal) {
			returnVal.push(a[i]);
		}
	}
	return returnVal;
}

//get function name
Function.prototype.getName   =   function()   {  
    var   s   =   Function.prototype.getName.caller.toString();  
    return   /function\s+([^\s\(]+)/i.test(s)?RegExp.$1:"anonymous";  
}

//print String without null
function printStr(data) {
	if(data===null) {
		return "";
	}
	return data;
}

//print Number without null
function printNum(data) {
	if(data===null) {
		return 0;
	}
	return data;
}

//get the Radio element which is checked
function getRadioVal(objTmp){
	if(objTmp===null||objTmp===undefined||objTmp.length<=0) {
		return null;
	}
	for(i=0;i<objTmp.length;i++) {
		if(objTmp[i].checked===true) {
			return objTmp[i].value;
		}
	}
	return null;
}

//get the array of Checkbox elements which are checked
function getCheckboxVal(obj) {
	if(obj===null||obj===undefined||obj.length<=0) {
		return null;
	}
	var returnVal=new Array();
	for(i=0;i<obj.length;i++) {
		if(obj[i].checked===true) {
			returnVal.push(obj[i].value);
		}
	}
	return returnVal.length==0?null:returnVal;	
}

//get Select text by value
function getSelectTextByValue(obj, val) {
	for(i=0;i<obj.options.length;i++) {
		if(val==obj.options[i].value) {
			return obj.options[i].text;
		}
	}
}

//is the input String not empty
function isNotEmpty(data) {
	return data!==null&&data.replace(/(^\s*)|(\s*$)/g, "")!=""&&data!==undefined;
}

//add the given event
function addEventForEle(obj, eventName, funcEvent) {
	if(document.attachEvent){
	//alert("ie");
		obj.attachEvent(eventName, funcEvent);
	}
	else if(document.addEventListener) {
		//alert("ff");
		obj.addEventListener(eventName, funcEvent, false);
	}
}

//check checkbox must be one checked at least
function checkCheckBox(objs) {
	var flag=false;
	for(i=0;i<objs.length;i++) {
		if(objs[i].checked) {
			flag=true;
		}
	}
	if(!flag) {
		alert("must select one at least.");
		//objs[0].checked=true;
		objs[0].focus();
	}
	return flag;
}

//is number
function checkIsNum(objId) {
if(objId=="true") {
	return true;
}
	var val=dwr.util.getValue(objId);
	if(isNaN(val) || val<=0 || val==="") {
		alert("please input positive number");
		//dwr.util.setValue(objId,0);
		dwr.util.byId(objId).focus();
		return false;
	}
	return true;
}

//is number num can == 0
function checkIsNum1(objId) {
if(objId=="true") {
	return true;
}
	var val=dwr.util.getValue(objId);
	if(isNaN(val) || val<0 || val==="") {
		alert("please input positive number");
		//dwr.util.setValue(objId,0);
		dwr.util.byId(objId).focus();
		return false;
	}
	return true;
}

//is number no alert
function checkIsNum2(objId) {
if(objId=="true") {
	return true;
}
	var val=dwr.util.getValue(objId);
	if(isNaN(val) || val<=0 || val==="") {
		dwr.util.byId(objId).focus();
		return false;
	}
	return true;
}

//get Object from List by Id
function getObjectFromList(objList, id) {
	for(i=0;i<objList.length;i++) {
		var obj = objList[i];
		if(obj.id==id) {
			return obj;
		}
	}
}

function confrimOperation() {
	
	return confirm("Are you sure?");
}

//get Date Object by the string of date, such as "yyyy/mm/dd"
function getDateByString(dateString) {
	
	var d = new Date();	
	var dates = dateString.split("/");
	d.setFullYear(dates[0]);
	d.setMonth(dates[1]-1);
	d.setDate(dates[2]);
	d.setHours(0);
	d.setMinutes(0);
	d.setSeconds(0);
	return d;
}

function setTotalRecordsView(totalVal) {
	dwr.util.setValue("totalSize", totalVal);	
	if(totalVal > 1) {
		dwr.util.setValue("record", "Records");
	}
	else {
		dwr.util.setValue("record", "Record");
	}
}

function setSelectChecked(objName, value) {
	var a = document.getElementsByName(objName);
	for(i=0;i<a[0].options.length;i++) {
		if(a[0].options[i].value==value) {
			a[0].options[i].selected=true;
			break;
		}
	}
}

function setRadioChecked(objName, value) {
	var a = document.getElementsByName(objName);
	for(i=0;i<a.length;i++) {
		if(a[i].value==value) {
			a[i].checked=true;
			break;
		}
	}	
}

function setCheckboxChecked(objName, values) {
	var a = document.getElementsByName(objName);
	for(i=0;i<a.length;i++) {
		for(k=0;k<values.length;k++) {
			if(a[i].value==values[k]) {
				a[i].checked=true;
				continue;
			}			
		}
	}	
}

function checkTextLegth(str, maxLength) {
	if(strlen(str) > maxLength) {
		return false;
	}
	return true;
}

function strlen(str)
{
	if(str==undefined) return 0;
	var i;
	var len = 0;
	for (i=0;i<str.length;i++)
	{
		if (str.charCodeAt(i)>255) len+=3; else len++;
	}
	return len;
}
function DBC2SBC(str)
{
	var result = '';
	for(var i=0;i<str.length;i++){
		code = str.charCodeAt(i);
		if (code >= 65281 && code <= 65373)
			result += String.fromCharCode(str.charCodeAt(i) - 65248);
		else if (code == 12288)
			result += String.fromCharCode(str.charCodeAt(i) - 12288 + 32);
		else
			result += str.charAt(i);
	}
	return result;
}