// UI 通用函数
// @author bingfeng zhang


//刷新关联列表数据
//参数：
//		parentId  父ID
//		dataArray  关联数组
//     childSelect 关联的子 select 对象
function AssociateSelect(parentId,dataArray,childSelect)
{
		
        childSelect.length = 1;
		var i;
		for (i=1;i <dataArray.length; i++)
		{
			if (dataArray[i][1] == parentId && dataArray[i][1].length>0)
			{
				childSelect.options[childSelect.length]= new Option(dataArray[i][0], dataArray[i][2]);
			}
		}
}
//刷新关联列表数据，默认长度为0
//参数：
//		parentId  父ID
//		dataArray  关联数组
//     childSelect 关联的子 select 对象
function AssociateSelectZero(parentId,dataArray,childSelect,orgArray)
{
        childSelect.length = 0;
		var i;
		if( parentId=="all")
		{
			for (i=0;i <orgArray.length; i++)
			{
				childSelect.options[childSelect.length]= new Option(orgArray[i][0], orgArray[i][1]);
			}
		}else
		{
			for (i=0;i <dataArray.length; i++)
			{
				if ((dataArray[i][1] == parentId && dataArray[i][1].length>0))
				{
					childSelect.options[childSelect.length]= new Option(dataArray[i][0], dataArray[i][2]);
				}
			}
		}
}
//限制输入框的字数
function textCounter(field, countfield, maxlimit) {
	if (field.value.length > maxlimit) 
		field.value = field.value.substring(0,maxlimit);
	else 
		countfield.value = maxlimit - field.value.length;
}
//内容隐藏、显示
function turnit(ss,ss1)
{
//ss = eval("document.getElementById('"+ss+"')");
 if (document.getElementById(ss).style.display=="none") 			// 当ss.style.display为隐藏时
  {	
	 document.getElementById(ss).style.display="";				// 显示ss.style.display的对象
	 //ss1.className="adminleft2";
  }
 else
  {
	 document.getElementById(ss).style.display="none";			// 隐藏
	 //ss1.className="adminleft1";
  }
}
//显示转换
function display_turn(ss) {
 if (ss.style.display=="none") 			// 当ss.style.display为隐藏时
  {	
	 ss.style.display="";				// 显示ss.style.display的对象
  }
 else
  {
	 ss.style.display="none";			// 隐藏
  }
}
//限制输入框的类型

 function regInput(obj, reg, inputStr)
 {
  var docSel = document.selection.createRange();
  if (docSel.parentElement().tagName != "INPUT") return false;
  oSel = docSel.duplicate();
  oSel.text = "";
  var srcRange = obj.createTextRange();
  oSel.setEndPoint("StartToStart", srcRange);
  var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length);
  return reg.test(str)
 }

 
//集成BIM消息发送
function send_message(send_user_id,send_bim_id,incept_bim_id,url_down,send_user_pwd){
	if(incept_bim_id!=""){
		if(send_bim_id!="" && send_bim_id!="0"){
			try{
				var obj = new ActiveXObject("BIM4VB.Handler");
				if(obj){ 
					//alert(obj);
					//obj.LoginByDefUser(send_bim_id,true);
					//obj.Login(send_bim_id,send_user_pwd,true);
					//if(!obj.IsLogin(send_bim_id)){
						obj.LoginEx(send_user_id,send_user_pwd,true,0);
					//}

					obj.SendMessage (incept_bim_id,"",true);
				}
			}
			catch(ex){
				var speer = confirm("没能成功启动BIM，可能您还没有安装“金算盘即时通讯”客户端软件，是否要下载安装？");	
				if(speer){
					//alert(url_down);
					window.open(url_down);
				}
			}
		}
		else{
			//alert("您还没有登录网站！");
			var speer = confirm("您还没有登录网站！是否现在登录？");
			if(speer){
				window.open('?q=userlogin/login');
			}
		}
	}
	else{
		alert("该商家还没有注册BIM帐号，您暂时还无法与其洽谈！");
	}
}
//maps
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
//设置指定文本框为空
function set_empty(input_id){
	input_id.value="";
}
//根据不同情况设置搜索关键字文本框的值
function set_keywords_empty(){
	if(document.getElementById("keyword").value=="请输入搜索关键字"){
		document.getElementById("keyword").value="";
	}
}

//搜索框是否为空校验
function _is_empty_keywords(form_item,message){
	if(form_item.value.length == 0 || form_item.value=="请输入搜索关键字" || form_item.value==message){
		alert(message);
		return false;
	}
	return true;
}
function is_invalid_code(text) {
	var filter = "exec,xp_,sp_,declare,Union,cmd,+,//,..,;,',--,%,0x";
	var arr_filter = filter.split(",");
	for(i=0; i < arr_filter.length; i++) {
		if (text.indexOf(arr_filter[i]) >=0) {
			return true;
		}
	}
	return false;
}

//滚动 yuqun
function marque(width,height,marqueName,marqueCName,blnscroll,objm){
	try{
	  objm.marqueesHeight = height;
	  objm.stopscroll     = false;

	  objm.scrollElem = document.getElementById(marqueName);
	  with(objm.scrollElem){
		style.width     = width;
		style.height    = objm.marqueesHeight;
		style.overflow  = 'hidden';
		noWrap          = true;
	  }
	  
	  var a=new Function("objm","stopscr","objm.stopscroll = stopscr;");
	  objm.scrollElem.onmouseover = function(){a(objm,true);};
	  objm.scrollElem.onmouseout = function(){a(objm,false);};

	  objm.preTop     = 0; 
	  objm.currentTop = 0; 
	  objm.stoptime   = 0;

	  objm.leftElem = document.getElementById(marqueCName);
	  if(blnscroll==true){
	  objm.scrollElem.appendChild(objm.leftElem.cloneNode(true));
	  }
	  init_srolltext(objm);

	}catch(e) {}
}
function init_srolltext(objm){
  objm.scrollElem.scrollTop = 0;
  setInterval(function(){scrollUp(objm);}, 19);
}

function scrollUp(objm){
  if(objm.stopscroll) return;
  objm.currentTop += 1;
  if(objm.currentTop == objm.marqueesHeight+1) {
    objm.stoptime += 1;
    objm.currentTop -= 1;
    if(objm.stoptime == (objm.marqueesHeight)*4) {//停顿时间
      objm.currentTop = 0;
      objm.stoptime = 0;
    }
  }else{

    objm.preTop = objm.scrollElem.scrollTop;
    objm.scrollElem.scrollTop += 1;
    if(objm.preTop == objm.scrollElem.scrollTop){
      objm.scrollElem.scrollTop = objm.marqueesHeight;
      objm.scrollElem.scrollTop += 1;
    }
  }
}

//

//调9i AtiveX
function include_fetch_9i(type,url_down,user_name,user_pwd){
	try{
		var obj = new ActiveXObject("WindowsMessage.Message");
		if(obj){
			obj.SendWindowsMessage(type,user_name,user_pwd);
		}
	}
	catch(ex){
		var speer = confirm("你选择的功能需要安装或升级金算盘全程供应链管理系统9i，安装过程安全快捷，是否继续？");	
		if(speer){
			//alert(url_down);
			window.open(url_down);
		}
	}
}
//调9i AtiveX - 客户关系
function include_fetch_9i_relationship(type,url_down,user_name,user_pwd,org_id_from){
	//alert(org_id_from);
	var type_name = '';
	if(type == '9006')
		type_name = '客户';
	else if(type == '9007')
		type_name = '供应商';
	try{
		var obj = new ActiveXObject("WindowsMessage.Message");
		if(obj){
			obj.SendWindowsMessage(type,user_name,user_pwd,org_id_from);
			//alert("在9i中添加为我的" + type_name + "成功");
		}
	}
	catch(ex){
		/*
		var speer = confirm("你选择的功能需要安装或升级金算盘全程供应链管理系统9i，安装过程安全快捷，是否继续？");	
		if(speer){
			//alert(url_down);
			window.open(url_down);
		}
		*/
		//alert("在9i中添加为我的" + type_name + "失败，可能您没有安装9i");
	}
}
//登录BIM
function bim_login(user_id,user_pwd,url_down,bim_id){
	try{
		var obj = new ActiveXObject("BIM4VB.Handler");
		if(obj){
			if (obj.islogin(user_id))
			{
			    obj.showmain(user_id);
			}
		        else
		        {
			    if(user_id != "" && user_id != "0" && bim_id!='')
			    {
				obj.LoginEx(user_id,user_pwd,true,1);
			    }else
			    {
				obj.LoginByDefUser("",true);
			    }						
			}
		}
	}
	catch(ex){
		var speer = confirm("你选择的功能需要安装或升级金算盘商用即时通，安装过程安全快捷，是否继续？");	
		if(speer){
			//alert(url_down);
			window.open(url_down);
		}
	}
}
//获取BIM在线状态
function get_bim_status(bim_id_from,bim_id_to,pwd){
	try{
		var status = '';
		var obj = new ActiveXObject("BIM4VB.Handler");
		if(obj){
			if(obj.IsLogin(bim_id_from)){
				obj.LoginByDefUser(bim_id_from,false);
				status = obj.GetUserStatus(bim_id_to);
				return status;
			}
			/*
			OnLine	在线
			OffLine	离线
			Invalid	无效的用户名
			*/
		}
	}
	catch(ex){
		status = "unknown";
	}
	return status;
}
//在BIM中加客户或供应商
function bim_relationship(send_user_id,send_bim_id,incept_bim_id,url_down,send_user_pwd,type){
	if(incept_bim_id!=""){
		if(send_bim_id!="" && send_bim_id!="0"){
			try{
				var obj = new ActiveXObject("BIM4VB.Handler");
				if(obj){
					obj.LoginEx(send_user_id,send_user_pwd,true,1);
					if(obj.AddBizContact(incept_bim_id,type,"0",false,'')){
						if(type=='0'){
							alert("已添加至BIM的‘我的客户’");
						}else if(type=='1'){
							alert("已添加至BIM的‘我的供应商’");
						}
					}else{
						alert("添加至BIM失败");
					}
				}
			}
			catch(ex){
				var speer = confirm("没能成功启动BIM，可能您还没有安装“金算盘即时通讯”客户端软件，是否要下载安装？");	
				if(speer){
					window.open(url_down);
				}
			}
		}
		else{
			//alert("您还没有登录网站！");
			var speer = confirm("您还没有登录网站！是否现在登录？");
			if(speer){
				window.open('?q=userlogin/login');
			}
		}
	}
	else{
		alert("该商家还没有注册BIM帐号，您暂时还无法在BIM中添加！");
	}
}

function select_company(company)
{
	window.opener.setCompanyInfo(company);
	window.close();
	return false;
}
function select_product(product)
{
	
	window.opener.setProductInfo(product);
	window.close();
	return false;
}
//文件类型检查 
function check_upload_file_type(obj_id){
	var string;
	var ss;
	var count;
	var ff;
	var pp;
	var filetypes;
	string=document.getElementById(obj_id).value;
	if(string != ""){
		ss=string.split("\\");
		count=ss.length;
		count=count-1;
		ff=ss[count];
		pp=ff.split(".");
		count=pp.length;
		count=count-1;
		filetypes=pp[count];
		if (!(filetypes=="txt" || filetypes=="TXT" ||
			  filetypes=="rar" || filetypes=="RAR" ||
			  filetypes=="pdf" || filetypes=="PDF" ||  
			  filetypes=="doc" || filetypes=="DOC" ||
			  filetypes=="xls" || filetypes=="XLS" ||  
			  filetypes=="ppt" || filetypes=="PPT" ||
			  filetypes=="pps" || filetypes=="PPS" ||
			  filetypes=="zip" || filetypes=="ZIP" ||
			  filetypes=="gif" || filetypes=="GIF" ||
			  filetypes=="jpg" || filetypes=="JPG" ||
			  filetypes=="jpeg" || filetypes=="JPEG" ||
			  filetypes=="png" || filetypes=="PNG" ||
			  filetypes=="bmp" || filetypes=="BMP")){
			
			//alert("对不起，系统不允许上传“"+filetypes+"”文件格式！");
			var msg = "对不起，系统不允许上传“."+filetypes+"”文件格式！";
			alert(msg);
			return false;
		}else{
			return true;
		}
	}else{
		return true;
	}
}
