// JavaScript Document
//加入列表框查找工能
//07.68.6 加入当没show的时候该控件不判断
//07.8.6加入对在线编辑器的支持
/*
使用例子
var F = Js_Form;
F.tabName = "show"
F.check(obj)  //赋给提交按钮 (如果点击是图片要加表单ID否则,不须) 
F.reset()  //赋给重置按钮
F.clear(id)  //设置表单项的自动清除,id为控件的id或控件对象(选填在控件内调用不填,控件外要填)
F.CreateSelect(this.value,"objId","sql") 注:sql中,空格用@代替如: "select@cid,model,id@from@product" 在下拉的onchange事件中调用
*/
function Js_Form()
{
	this.tabName = "show";
	this.language = "chinese"         //确定语言(默认为中文)
	var f = true;                    //变量(用于this.clear)
	var selid = ""                    //存储二级下拉ID
	var selvalue = ""                 //存储一级下拉值 
	var _this = this;
	
	this.check = function(obj)   
	{
	    var info = "";
		var obj;
        //var obj = $(this.formName);
		if(obj==undefined){
			var obj = window.event.srcElement.form;
		}else{
		    obj = $(obj)
		}
		
		//alert(obj)
		//if(obj==undefined){obj = document.getElementsByTagName("form")[0]};

        for(var i = 0;i<obj.elements.length;i++){
         if(obj.elements[i].type=="text"||obj.elements[i].type=="textarea"||obj.elements[i].type=="password"){
		   if(obj.elements[i].style.display!='none'){	  //对小编辑的支持
             if(obj.elements[i].value==""&&obj.elements[i].getAttribute(this.tabName)!=null){
			   if(_this.language=="chinese"){
                info = "请填写好你的"+obj.elements[i].getAttribute(this.tabName);
			   }else{
                info = "Please an importation "+obj.elements[i].getAttribute(this.tabName);
			   }
			   alert(info)
               obj.elements[i].focus();
               return false;
             }
		   }//结束dispaly判断
         }//结束控件类型判断
        }//结束FOR
		//var et
		
		try{                    //对小编辑器的支持
		      et.save();
            }catch(e){
	          
	      }
        obj.submit();	
	}
	this.reset = function(Fid)
	{
		//var obj = $(this.formName);
		var obj = window.event.srcElement.form;
		if(obj==undefined&&Fid!=undefined){obj = $(Fid)};
		//alert(obj.method)
		obj.reset();
	}
	this.FV = function(id)
	{
		vObj = $(id);
		return vObj.value;
	}
	this.clear = function(id)
	{
	   if(f==true){
		   if(id==undefined){
	           var obj = window.event.srcElement;
		   }else{
		       var obj = $(id)
		   }
	      var show = obj.value
	      obj.onblur = function(){if(obj.value=='')obj.value=show;f=false;}
	      obj.onclick = function(){if(obj.value==show)obj.value='';}
	   }else{
	      return false;
	   }
	}
	
	this.selected = function(id,name)
	{
	   var obj = $(id)
 	   for(var i=0;i<=obj.options.length-1;i++)
	   {
		   if(obj.options[i].text.indexOf(name)>-1)
		   {
			   obj.selectedIndex = i;
		   }
	   }
	}
	
	//列表框查值
    var LFSUID        = 0
    var curSelIndex = -1   //定位已找到的选项
    var found       = false//找到与否
    var oldUsr
	this.FindUSR = function(id,userName)
	{
 	  if(userName==""){return true;}
 	  var sel = $(id);
 	  for(var i=curSelIndex+1;i<=sel.options.length-1;i++)
 	  {
 		  if(sel.options[i].text.indexOf(userName)>-1){
 			sel.options[i].scrollIntoView();
 			sel.selectedIndex       = i
 			curSelIndex             = i
 			found                   = true
 			return true;
 	      }
      }
	  
      if(found){
        try{
          curSelIndex = -1
          _this.FindUSR(userName)
          }catch(e){
	   
	      }
      }
	}
	//1.cid 2.text 3.value
	//sql = "select sortid,typename,typeid from class_2"
	//在第一个下拉菜单ONCHANGE事件中调用(传入参数,this.value)
	this.CreateSelect = function(actionPath,first_value,second_id,sql)
	{
        var aja = new Js_Ajax();
		selid = second_id;
		selvalue = first_value;
	    aja.PostUrl = actionPath+'action.asp?sql='+sql
	    aja.Treat = _this.handle;   
		aja.DataType = 0;     //返回的数据类型0 responseHTML \ responseText 1
	    aja.Creat(); 
		//alert(aja.Treat)
		//aja = "";
		//delete aja;
	}
	
	this.handle = function(xmlData)
	{
	    var sel = selid;
		var selv = selvalue;
		sel = $(sel)
		selid = "";
		selvalue = "";
		sel = $(sel);
		var array = XmlToArray(xmlData)    //数组
		sel.length = 0;
		sel.options[sel.length] = new Option("请选择","");
		for(var i=0;i<array.length;i++){
			if(array[i][0]==selv){
                sel.options[sel.length] = new Option(array[i][1], array[i][2]);
			}
		}
	}
}
var F = new Js_Form;
F.tabName = "show";

//暂进放在这以后在放入XML.JS文件里

//输入xml对象,返回数组
function XmlToArray(xml)
{
	//var xml = xml;
	var cid,model,value
	var subcat = new Array();
	var book = xml.documentElement; 
	var record = xml.getElementsByTagName('record'); 
	//alert(xml.length)
	for(var i=0;i<record.length;i++){
	     cid = echoxml(book,'cid',i);
		 model = echoxml(book,'model',i);
		 value = echoxml(book,'value',i);
         subcat[i]  = new Array(cid,model,value);
	}
	return subcat;
}
function echoxml(book,name,i){
	if(book.getElementsByTagName(name)[i].childNodes[0]){
		name = book.getElementsByTagName(name)[i].childNodes[0].nodeValue;
	}else{
		name = '';	
	}
	return name;
}
