﻿//通用Jsscript

//设为首页
function SetHome(object, url){
  if(document.all){
    object.style.behavior = "url(#default#homepage)";
    object.setHomePage(url);
    return false;
  }
}

//加入收藏
function AddFavorite(name){
  if(window.event != null){
    window.external.AddFavorite(document.location, name);
  }else{
    window.sidebar.addPanel(name, document.location, "");
  }
  return false;
}

//选择全部
function SelectAll(src, checkBoxName){
	var elements = src.form.getElementsByName(checkBoxName);
	
	for(var i = 0; i < elements.length; i ++){
		elements[i].checked = src.checked;
	}
}

//去除空格
function Trim(string){
  return string.replace(/(^\s*)|(\s*$)/g, "");
}

//空字符串检查
function NullStringCheck(string){
  return (Trim(string) == "" || string == null);
}

//是否英文字母或数字
function IsString(value){
  var parttern = /[1-9]|[a-z]|[A-Z]/;
  return parttern.test(value);
}

//整数校验
function IsInt(value){
  var parttern = /^(0?|((\+|\-)? ?[1-9]\d*))$/;
  return parttern.test(value);
}

//小数校验
function IsDecimal(value){
  var parttern = /^(0?|((\+|\-)? ?(0?|([1-9]\d*))(\.)?\d*))$/;
  return parttern.test(value);
}

//数量校验
function IsQuantity(value){
  var parttern = /^(0?|([1-9]\d*))(\.)?\d*$/;
  return parttern.test(value);
}

//货币校验
function IsMoney(value){
  var parttern = /^(0?|([1-9]\d*))(\.)?\d*$/;
  return parttern.test(value);
}

//日期校验
function IsDate(value){
  var parttern = /^((\d{2,4})(-)(\d{1,2})(-)(\d{1,2})){1}(){0,1}((\d{1,2}:\d{1,2}:\d{1,2}(\d{4}){0,1}){0,1})$/;
  return parttern.test(value);
}

//颜色校验
function IsColor(string){
  var parttern = /^#([0-9a-fA-F]{3,}$)/;
  return parttern.test(string);
}

//添加样式
function AddClassName(object, className){
  if(object.className.search(new RegExp("\\b" + className + "\\b")) != -1){
    return;
  }
  object.className += (object.className?" ":"") + className;
}

//移除样式
function RemoveClassName(object, className){
  if(object.className.search(new RegExp("\\b" + className + "\\b")) == -1){
    return;
  }
  object.className = object.className.replace(new RegExp("\\s*\\b" + className + "\\b", "g"), "");
}

//ajax返回
function GetAjaxXML(ajax, topNode){
  var xml = ajax.XMLHttp.responseXML;
  if(xml == null){
    return null;
  }else if(xml.getElementsByTagName(topNode).length == 0){
    return null;
  }else{
    return xml;
  }
}

//表单Post提交
function AjaxPost(url, onStatusOk, form){
  var ajax = new Ajax();
  ajax.URL = url;
  ajax.OnStatusOK = onStatusOk;
  ajax.StartRequestPost(ajax.GetPostParameter(form));
  return ajax;
}

//表单Get提交
function AjaxGet(url, onStatusOk, parameter){
  var ajax = new Ajax();
  ajax.URL = url;
  ajax.OnStatusOK = onStatusOk;
  ajax.StartRequestGet(parameter);
  return ajax;
}

//Ajax服务器返回
function GetAjaxResult(ajax, title, topNodeName){
  var xml = GetAjaxXML(ajax, topNodeName);
  var description;
  
  //检查系统错误
  if(xml == null){
    MessageBox.Show(title, MessageBox.Icons.SystemError,
                    ajax.XMLHttp.responseText, MessageBox.Buttons.Close);
  }else if(xml.getElementsByTagName(topNodeName).length == 0){
    MessageBox.Show(title, MessageBox.Icons.SystemError,
                    ajax.XMLHttp.responseText, MessageBox.Buttons.Close);
  }else{
    description = ajax.GetNodeValue(xml, "Description");
    MessageBox.Show(title, MessageBox.Icons.CustomError,
                    description, MessageBox.Buttons.Close);
    return parseInt(ajax.GetNodeValue(xml, "Result"));
  }
}

//得到大小字符串
function GetSizeString(value){
	if(value < 1024){
		return value + "b";
	}else if(value >= 1024 && value < 1048576){
		return (Math.round(value / 1024 * 100) / 100) + "kb";
	}else{
		return (Math.round(value / 1048576 * 100) / 100) + "mb";
	}
}

//打开对话框
function OpenDialog(url, id, width, height){
	var leftMargin = (screen.availWidth - width) / 2;
	var topMargin = (screen.availHeight - height) / 2;
	var propertys = "height=" + height + "px,left=" + leftMargin + "px,"
								+ "location=no,menubar=no,resizable=no,scrollbars=no,"
								+ "status=no,titlebar=no,toolbar=no,"
								+ "top=" + topMargin + "px,width=" + width + "px,";
	if(isIE){
		propertys += "modal=yes";
	}
	
	window.open(url, id, propertys);
}

//设置页面url参数
function SetUrl(url, queryString, parameter, value){
  var position = -1;
  var newUrl = url;
  var newposition = -1;
  
  if(newUrl == ""){
    newUrl = document.location.protocol
					 + document.location.port + "//"
					 + document.location.hostname
					 + document.location.pathname;
  }
	if(queryString == ""){
		queryString = document.location.search;
	}
  if(queryString == null || queryString == ''){
    newUrl += '?' + parameter + '=' + value;
    return newUrl;
  }
  if(queryString.charAt(0) == '?'){
    queryString = queryString.substr(1);
  }
  position = queryString.indexOf(parameter + '=');
  if(position == -1){
    newUrl += '?' + queryString + '&' + parameter + '=' + value;
    return newUrl
  }
  newposition = queryString.indexOf('&', position + 1);
  if(newposition == -1){
    queryString = queryString.replace(queryString.substr(position), parameter + '=' + value);
  }else{
    queryString = queryString.replace(queryString.substring(position, newposition), parameter + '=' + value);
  }
  newUrl += '?' + queryString;
  return newUrl;
}