// add trim method to String object
String.prototype.Trim = function(){
	return this.replace(/(^\s*)|(\s*$)/g, "");
}
// add cancleComma method to String object
String.prototype.cancleComma = function(){
	return this.replace(/\$|\,/g,'');
}

/*************************************************
 分页
layout_currentPage layout_maxPage layout_page_name
需要在页面设定
 *************************************************/
/**
 * 跳转页面函数，根据给定页码跳转页面，遵循以下规则：
 * 输入页码大于总页码时，跳转到最后一页
 * 输入页码小于1时，跳转到首页
 * @param num 跳转页面页码
 */
function info_jumpPage(num){
	var frm = document.common_data_form;
	var dealNum = num;
	if (num > layout_maxPage) {
		dealNum = layout_maxPage;
	} else if (num < 1) {
		dealNum = 1;
	}
	frm.elements[layout_page_name].value = dealNum;
	frm.submit();
}
/**
 * 跳转到 首页
 */
function info_firstPage(){
	if (layout_currentPage != 1) {
		info_jumpPage(1);
	}
}
/**
 * 跳转到 上一页
 */
function info_prevPage(){
	if (layout_currentPage != 1) {
		info_jumpPage(layout_currentPage - 1);
	}
}
/**
 * 跳转到 下一页
 */
function info_nextPage(){
	if (layout_currentPage != layout_maxPage) {
		info_jumpPage(layout_currentPage + 1);
	}
}
/**
 * 跳转到 尾页
 */
function info_lastPage(){
	if (layout_currentPage != layout_maxPage) {
		info_jumpPage(layout_maxPage);
	}
}
/**
 * 跳转到 指定页
 */
function info_gotoPage(){
	var specify_value = document.getElementById("info_specifyPage").value;
	if (isInt(specify_value)) {
		info_jumpPage(parseInt(specify_value));
	} else {
		if (layout_maxPage > 1) {
			alert("请输入 1 － " + layout_maxPage + " 间的整数值！");
		} else {
			alert("无需进行页面跳转！");
		}		
	}
}


/**
 * 内部类
 */
function DataMap(keys,values){
	this.DataMap_keys = keys;
	this.DataMap_values = values;
	this.get = DataMap_get;
}
/**
 * 内部类_方法
 */
function DataMap_get(theKey){
	for(var i=0;i<this.DataMap_keys.length;i++){
		if(this.DataMap_keys[i] == theKey){
			return this.DataMap_values[i];
		}
	}
	return '';
}

function DataTable(keys,values){
	this.DataTable_keys = keys;
	this.DataTable_values = values;
	this.length = values.length;
	this.get = DataTable_get;
	this.array = DataTable_array;
}

function DataTable_get(theKey,rowIndex){
	for(var i=0;i<this.DataTable_keys.length;i++){
		if(this.DataTable_keys[i] == theKey){
			return this.DataTable_values[rowIndex][i];
		}
	}
	return '';
}

function DataTable_array(theKey){
	for(var i=0;i<this.DataTable_keys.length;i++){
		if(this.DataTable_keys[i] == theKey){
			var end  = new Array();
			for(var j=0;j<this.length;j++){
				end.push(this.DataTable_values[j][i]);
			}
			return end;
		}
	}
	return null;
}
/************************************************************************
	以下为弹开窗口的方法

*************************************************************************/
/**
 * 共用的窗口弹出方法，其它方法调用此方法实现即可
 * @param jspUrl 页面路径 
 * @param size 窗口大小如 '15,30'
 */
function common_select(jspUrl,size){
	var w = 40;
	var h = 40;
	if(size!=null){
		var i = size.indexOf(",");
		w = size.substring(0,i);
		if (parseInt(w)<30)	{
			w = 30;
		}
		h = size.substring(i+1);
	}
	if(jspUrl.indexOf("/") == 0){
		jspUrl = layout_page_contextpath+jspUrl;
	}	
	var WinStyle = "help:no;status:no;dialogWidth:"+w+";dialogHeight:"+h;
	return showModalDialog(jspUrl,null,WinStyle);
	
}
/**
 * 共用的单选弹出方法，其它方法调用此方法实现即可
 * @param jspUrl 页面路径 
 * @param size 窗口大小如 '15,30'
 */
function common_single_select(jspUrl,size){
	var end = common_select(jspUrl,size);
	if(end!=null){
		var map = new DataMap(end[0],end[1]);
		return map;
	}else{
		return null;
	}
}
/**
 * 共用的多选弹出方法，其它方法调用此方法实现即可
 * @param jspUrl 页面路径 
 * @param size 窗口大小如 '15,30'
 */
function common_multiple_select(jspUrl,size){
	var end = common_select(jspUrl,size);
	if(end!=null){
		var table = new DataTable(end[0],end[1]);
		return table;
	}else{
		return null;
	}
}
function oa_checkStr(con, title, required, maxlen) {
	if (con.length == null){
		str = con.value;
		if (maxlen != null && checkStrLen(str) > maxlen) {
			alert("[" + title + "]的最大长度不能超过" + (maxlen / 2) + "个汉字！");
			return false;
		} else if (required && str.Trim() == '') {
			alert("[" + title + "]不能为空！");
			return false;
		}
		return true;
	} else {
		alert(title + '对应的第一个参数是一个数组');
		return false;
	}
}

function oa_checkNum(con, title, required) {
	if (con.length == null){
		str = con.value;
		if (!required && str.Trim()=='') {
			return true;
		} else if (isNaN(str.cancleComma())) {
			alert("[" + title + "]必须填写合法的数字！");
			return false;
		}
		return true;
	} else {
		alert(title + '对应的第一个参数是一个数组');
		return false;
	}
}

function checkStrLen(value){
	var str,Num = 0;
	for (var i = 0; i < value.length; i++) {
		str = value.substring(i,i+1);
		if (str <= "~") {//判断是否双字节
			Num+=1;
		} else {
			Num+=2;
		}
	}
	return Num;
}

function isInt(n) {
	var i = parseInt(n);
	if (i == NaN) {
		return false;
	}
	if (i != n){
		return false;
	}
	return true;
}


function isRadioChecked(obj){
	var flag = false;
	for(var i=0;i<obj.length;i++){
		if(obj[i].checked){
			flag = true;
		}
	}
	return flag;
}

function clean_text(id)
{
	if(document.getElementById(id).value == "--请输入查询关键字--" || document.getElementById(id).value == "--请输入您的邮箱--"){
		document.getElementById(id).value = '';	
	}
}

function util_getDateValue(obj){
	var tempX = window.event.screenX;
	var tempY = window.event.screenY;
	var style = "help:yes;status:no;dialogWidth:18;dialogHeight:14;scroll:no;";
	style = style+"dialogTop:"+tempY+";dialogLeft:"+tempX+";";
	var end = showModalDialog(layout_page_contextpath + "/js/NewCalendar.html",obj,style);
	if (end != null) {
		var args_year = end.getFullYear();
		var args_month = insertZero(end.getMonth() + 1);
		var args_date = insertZero(end.getDate());
		obj.value = args_year + "-" + args_month  + "-" + args_date;
	}
}

function util_getTimeValue(obj){
	var tempX = window.event.screenX;
	var tempY = window.event.screenY;
	var style = "help:yes;status:no;dialogWidth:18;dialogHeight:14;scroll:no;";
	style = style+"dialogTop:"+tempY+";dialogLeft:"+tempX+";";
	var end = showModalDialog(layout_page_contextpath + "/js/NewCalendar.html",obj,style);
	if (end != null) {
		var args_year = end.getFullYear();
		var args_month = insertZero(end.getMonth() + 1);
		var args_date = insertZero(end.getDate());
		var args_hour = insertZero(end.getHours());
		var args_minute = insertZero(end.getMinutes());
		var args_second = insertZero(end.getSeconds());
		obj.value = args_year + "-" + args_month  + "-" + args_date
						+ " " + args_hour + ":" + args_minute + ":" + args_second;
	}
}

function insertZero(num) {
	if (num < 10) {
		return "0" + num;
	} else {
		return num;
	}
}

function fenlei(ttypeVO){	
	var form  = document.feiLerForm;
	form.ttype.value = ttypeVO;
	form.submit();
}