﻿/*20110512
依赖prototype.1.6
carinfojs.ashx
cityjs.ashx
*/
/*
级联下拉列表父类定义一些公有属性方法
添加一个option
添加一个optgropu等功能
*/
var Ucar_AjaxDomain = 'http://cache.ucar.cn/';
var Ucar_Select = Class.create({
    isUseStyle:false,//是否使用 样式 如选是 testColor和bgColor将管用
	textColor:null,//字体颜色
	bgColor:null,//背景颜色
	optgroupSytle:{},//OptionGroup 样式
	firstOptStyle:{},//第一个option的样式
	isUseDisable:false,//是否使用不可用属性
    $:function(id){return $(id)},//获取对 ID 标签属性为指定值的第一个对象的引用
    loadJS: {  //动态加载JS
		    lock : false, ranks : []
		    ,callback : function (startTime, callback) {		
			    callback && callback(new Date().valueOf() - startTime.valueOf()); 
			    this.lock = false, this.read(); 
		    }
		    ,read : function () {
			    if (!this.lock && this.ranks.length) {
				    var head = document.getElementsByTagName("head")[0];
				    if (!head) {
					    ranks.length = 0, ranks = null;
					    throw new Error('HEAD不存在');
				    }
				    var wc = this, ranks = this.ranks.shift(), startTime = new Date, script = document.createElement('script');
				    this.lock = true;
				    script.onload = script.onreadystatechange = function () {
					    if (script && script.readyState && script.readyState != 'loaded' && script.readyState != 'complete') return;
					    script.onload = script.onreadystatechange = script.onerror = null, script.src = ''
						    , script.parentNode.removeChild(script), script = null; 
					    wc.callback(startTime, ranks.callback), startTime = ranks = null;
				    };
				    script.charset = ranks.charset || 'gb2312';
				    script.src = ranks.src;
				    head.appendChild(script);
			    }
		    }
		    ,push : function (src, charset, callback) {
			    this.ranks.push({ 'src' : src, 'charset' : charset, 'callback' : callback });
			    this.read();
		    }
	},
	clearSelect:function(sel){ //清空一个select
        sel.innerHTML="";
    },
    countOptGroup:function(val){//计算group数量
        var j=1;
        for(i=0;i<val.length-1;++i){
                if(val[i].GroupName!=val[i+1].GroupName){
                    j++;
                }
            }
        return j;
    },
    addOptionToSelectFromJson:function(sel, val){//将Json数组中的元素添加到select中
        var optGroupCount=this.countOptGroup(val);
        if(optGroupCount>1){
            this.addOneOptionGroup(sel,val[0].GroupName,this.optgroupSytle);    
        }
        for(i=0;i<val.length;++i){
           if(optGroupCount>1 && i>0 && val[i-1].GroupName!=val[i].GroupName){
                this.addOneOptionGroup(sel,val[i].GroupName,this.optgroupSytle);        
           }
           this.addOneOption(sel, val[i].Text, val[i].Value);
        }
    },
    addOptionToSelectFromBaseArray:function(sel, val){//将数组中的元素添加到select中
        for(i=0;i<val.length;++i){
           this.addOneOption(sel, val[i], val[++i]);
        }
    },
    addOneOptionGroup:function (sel,text,style){//添加一个optgroup
        var optionGroupObj = document.createElement('optgroup');
        optionGroupObj= Element.extend(optionGroupObj);
        optionGroupObj.setAttribute("label",text);
        optionGroupObj.setStyle(style);
        sel.appendChild(optionGroupObj);
    },
    addOneOption:function(sel, text, value){//为select添加一个选项并设置为选中
        var opt = document.createElement('OPTION');
        opt.setAttribute("value", value);
        opt.appendChild(document.createTextNode(text));  
        sel.appendChild(opt);
        sel.selectedValue=value;
    },
    addOneOptionWithBgColor:function(sel, text, value,style){//为select添加样式
        if(this.isUseStyle){
            var opt = document.createElement('OPTION');
            opt= Element.extend(opt);
            opt.setAttribute("value", value);
            opt.appendChild(document.createTextNode(text));  
            opt.setStyle(this.firstOptStyle);
            sel.appendChild(opt);
            sel.selectedValue=value;
        }
        else{
            this.addOneOption(sel, text, value);
        }
    },
    getIntValue:function(vlu){//从任意值获得一个int结果
        var rtnforthiskey = parseInt(vlu);
        if (isNaN(rtnforthiskey)){
            rtnforthiskey = 0;
        }
        return rtnforthiskey;
    }
});


/*
省份-城市 下拉列表控件
*/
var Ucar_City_Select = Class.create(Ucar_Select,{
	initialize: function(selectProvinceName, selectCityName) {//构造函数
		this.provinceSelect = this.$(selectProvinceName);
		if(!this.selectCityName){
		    this.citySelect = this.$(selectCityName);		  
	    }
	},  
	
	/*************公有属性方法,使用时候只能对以下方法进行操作**************/

	defultProvinceText:"请选择省份",//提示文字 省份
	defultCityText:"请选择城市",//提示文字 城市
	defultProvinceValue:"0",
	defultCityValue:"0",
	setProvince:function(provinceId){//选择省份
	    this.provinceSelectValue=this.getIntValue(provinceId);
	    if(this.provinceHiddenName!=null){
	        this.$(this.provinceHiddenName).value=this.getIntValue(provinceId);
	    }
        this.initProvinceSelect();
	},
	setCity:function(cityId,provinceId){//选择城市
	    if(this.getIntValue(provinceId)==0){
	        this.provinceSelectValue=this.getProvinceIdByCityId(cityId);
	        if(this.provinceHiddenName!=null){
	            this.$(this.provinceHiddenName).value=this.getProvinceIdByCityId(cityId);
	        }
	    }
	    else{
	        this.provinceSelectValue=provinceId;
	        if(this.provinceHiddenName!=null){
	            this.$(this.provinceHiddenName).value=provinceId;
	        }
	    }
	    this.citySelectValue = this.getIntValue(cityId);
	    if(this.cityHiddenName!=null){
	        this.$(this.cityHiddenName).value=this.getIntValue(cityId);
	    }
	    this.initProvinceSelect();
	},
	citySelectValue:0,
	provinceSelectValue:0,
	cityHiddenName:null,//关联的城市hidden名,如果存在则select于hidden值关联  如果关联则可以实现服务器端的调用
	provinceHiddenName:null,//关联的省份hidden名,如果存在则select于hidden值关联 如果关联则可以实现服务器端的调用
	isUseCityInit:false,//是否4个直辖市直接选择城市
	cityInits:[{provinceId:2,cityId:201},{provinceId:24,cityId:2401},{provinceId:26,cityId:2601},{provinceId:31,cityId:3101}],//4个直辖市直接选择城市
	/************公有属性方法结束,使用时候只能对以上方法进行操作*****************/
	classname:"",
	cityList:"",
	provinceList:"",
	citySelect:null,
	provinceSelect:null,
	getProvinceIdByCityId:function(cityId){
	    var provinceId=0;
        if(cityId>=100 && cityId<=999){
            provinceId=cityId.toString().substr(0,1);
        }
        else if(cityId>=1000){
            provinceId=cityId.toString().substr(0,2);
        }
        return provinceId;	
	},
    initCitySelectComplete:function(){
        var val = ucar_citys.split(',');
        this.clearSelect(this.citySelect);
         if(this.cityHiddenName!=null){
            this.$(this.cityHiddenName).value="0";
        }
        this.addOneOptionWithBgColor(this.citySelect, this.defultCityText, this.defultCityValue);
        this.addOptionToSelectFromBaseArray(this.citySelect, val);
        if(this.isUseCityInit){//如果需要根据特殊省份初始化城市
            this.cityInits.each(function(cityInit) { 
                if(this.provinceSelect.value==cityInit.provinceId){
                    this.citySelectValue=cityInit.cityId;
                    if(this.cityHiddenName!=null){
                        this.$(this.cityHiddenName).value=cityInit.cityId;
                    }
                    throw $break; 
                }
            }.bind(this));
        }


        
        if (this.getIntValue(this.citySelectValue) > 0){
            setTimeout(function(){//为了兼容ie6
                this.citySelect.value = this.getIntValue(this.citySelectValue);
                if(this.cityHiddenName!=null){
                    this.$(this.cityHiddenName).value=this.getIntValue(this.citySelectValue);
                }
                this.citySelectValue="";
            }.bind(this),0); 
        }
    },
    initCitySelect:function (){
        var provdId =this.provinceSelect.value;
        if(provdId > 0){
            var url = Ucar_AjaxDomain + "ajax/cityjs.ashx";
            var pars = "provinceid=" + provdId;
            this.loadJS.push(url+"?"+pars,"utf-8",this.initCitySelectComplete.bind(this));
            if(this.isUseDisable){
                this.citySelect.disabled =false;
            }
        }
        else{
            this.clearSelect(this.citySelect);
            if(this.cityHiddenName!=null){
                this.$(this.cityHiddenName).value = 0;
            }
            this.addOneOptionWithBgColor(this.citySelect,this.defultCityText,this.defultCityValue);
            if(this.isUseDisable){
                this.citySelect.disabled =true;
            }
        }
    },
    initProvinceSelectorComplete:function(){
        var val = ucar_provinces.split(',');
        this.clearSelect(this.provinceSelect);
        this.addOneOptionWithBgColor(this.provinceSelect,this.defultProvinceText, this.defultProvinceValue);
        this.addOptionToSelectFromBaseArray(this.provinceSelect, val);;
        if(!!this.citySelect){
            this.addOneOptionWithBgColor(this.citySelect,this.defultCityText,this.defultCityValue);
            Event.observe(this.provinceSelect, 'change', this.initCitySelect.bindAsEventListener(this)); 
            if(this.cityHiddenName!=null){
                Event.observe(this.citySelect, 'change', function(){this.$(this.cityHiddenName).value=this.citySelect.value;}.bindAsEventListener(this)); 
            }
        }
        
        //添加对隐藏域的赋值方便与服务器交互
        if(this.provinceHiddenName!=null){
            Event.observe(this.provinceSelect, 'change', function(){this.$(this.provinceHiddenName).value=this.provinceSelect.value;}.bindAsEventListener(this)); 
        }
       
        if (this.getIntValue(this.provinceSelectValue) > 0){
            setTimeout(function(){//为了兼容ie6
                this.provinceSelect.value = this.getIntValue(this.provinceSelectValue);
                this.provinceSelectValue="";
                if(!!this.citySelect){
                    this.initCitySelect();
                }
             }.bind(this),0); 
        }
        else if(this.isUseDisable && !!this.citySelect){
            this.citySelect.disabled=true;
        }
    },
    initProvinceSelect:function(){
        ///如果定义了hidden就以hidden值为主
        if(this.provinceHiddenName!=null){
            this.provinceSelectValue = $F(this.provinceHiddenName);
		}
		if(this.cityHiddenName!=null){
		    this.citySelectValue= $F(this.cityHiddenName);
        }
        var url = Ucar_AjaxDomain + "ajax/cityjs.ashx";
        var pars = "ProvinceId=0";
        this.loadJS.push(url+"?"+pars,"utf-8",this.initProvinceSelectorComplete.bind(this));
    },
    initHidden:function(provinceHiddenId, cityHiddenId){
        if (!!provinceHiddenId){
            this.provinceHiddenName = provinceHiddenId;
        }
        if (!!cityHiddenId){
            this.cityHiddenName = cityHiddenId;
        }
    }
}); 



/*
主品牌 系列 车型 下拉列表控件
*/
var Ucar_CarBasic_Select = Class.create(Ucar_Select,{
    initialize: function(selectCarBrandName, selectCarSerialName,selectCarBasicName) {//构造函数
		this.carBrandSelect = this.$(selectCarBrandName);
		if(!this.selectCarSerialName){
		    this.carSerialSelect = this.$(selectCarSerialName);
		}
		if(!this.selectCarBasicName){
		    this.carBasicSelect = this.$(selectCarBasicName);
		}
	}, 
	/*************公有属性方法,使用时候只能对以下方法进行操作**********************/
	defultCarBrandText:"请选择品牌",//提示文字 品牌
	defultCarSerialText:"请选择系列",//提示文字 系列
	defultCarBasicText:"请选择车型",//提示文字 车型
	setSelect:function(){//选择省份
	   var len = arguments.length;
	   if(len==3){
	       this.carBrandSelectValue=this.getIntValue(arguments[0]);
           this.carSerialSelectValue=this.getIntValue(arguments[1]);
           this.carBasicSelectValue=this.getIntValue(arguments[2]);
           if(carBrandHiddenName!=null){
                this.$(this.carBrandHiddenName).value=this.getIntValue(arguments[0]);
           }
           if(carSerialHiddenName!=null){
                 this.$(this.carSerialHiddenName).value=this.getIntValue(arguments[1]);
           }
           if(carBasicHiddenName!=null){
                 this.$(this.carBasicHiddenName).value=this.getIntValue(arguments[2]);
           }
	   }
	   else if(len == 2){
	   	   this.carBrandSelectValue=this.getIntValue(arguments[0]);
           this.carSerialSelectValue=this.getIntValue(arguments[1]);
            if(carBrandHiddenName!=null){
                this.$(this.carBrandHiddenName).value=this.getIntValue(arguments[0]);
           }
           if(carSerialHiddenName!=null){
                 this.$(this.carSerialHiddenName).value=this.getIntValue(arguments[1]);
           }
	   }
	   else if(len == 1){
	       this.carBrandSelectValue=this.getIntValue(arguments[0]);
	       if(carBasicHiddenName!=null){
                 this.$(this.carBasicHiddenName).value=this.getIntValue(arguments[2]);
           }
	   }
	   this.initBrandSelect();
	},
	carBrandHiddenName:null,//关联的hidden名
    carSerialHiddenName:null,
    carBasicHiddenName:null,
    carBrandSelectValue:0,
    carSerialSelectValue:0,
    carBasicSelectValue:0,
	/************公有属性方法结束,使用时候只能对以上方法进行操作*****************/
	carBrandSelect:null,
	carSerialSelect:null,
    carBasicSelect:null,
    Disabled:false,
    initCarBasicSelectComplete:function(){
        var val = ucar_carbasicinfo;
        if(!!this.carBasicSelect){
            this.clearSelect(this.carBasicSelect);
             if(this.carBasicHiddenName!=null){
                this.$(this.carBasicHiddenName).value="0";
             }
            this.addOneOptionWithBgColor(this.carBasicSelect, this.defultCarBasicText, '0');
            this.addOptionToSelectFromJson(this.carBasicSelect, val);
        }
        if (this.getIntValue(this.carBasicSelectValue) > 0){
            setTimeout(function(){//为了兼容ie6
                this.carBasicSelect.value = this.getIntValue(this.carBasicSelectValue);
                if(!!this.carBasicHiddenName){
                    this.$(this.carBasicHiddenName).value=this.getIntValue(this.carBasicSelectValue);
                }
                this.carBasicSelectValue="";
                
            
                
            }.bind(this),0); 
        }   
            
        if(this.Disabled){
           if(!!this.carBasicSelect){
               this.carBasicSelect.disabled=true
           }
        }
    },
    initCarBasicSelect:function(){
        var serialid = this.carSerialSelect.value;
        if(this.getIntValue(serialid)>0){
            var url = Ucar_AjaxDomain + "ajax/carinfojs.ashx";
            var pars = "carserialid=" + serialid;
            this.loadJS.push(url+"?"+pars,"utf-8",this.initCarBasicSelectComplete.bind(this));
            if(this.isUseDisable){
                this.carBasicSelect.disabled =false;
            }
        }
        else{
        if(!!this.carBasicSelect){
               this.clearSelect(this.carBasicSelect);
               if(!!this.carBasicHiddenName){
                    this.$(this.carBasicHiddenName).value=0;
               }
               this.addOneOptionWithBgColor(this.carBasicSelect,this.defultCarBasicText,"0");
           }
           if(this.isUseDisable){
                this.carBasicSelect.disabled =true;
           }
        }
    },
    initSerialSelectComplete:function(){
        var val = ucar_carserial;
        if(!!this.carSerialSelect){
            this.clearSelect(this.carSerialSelect);
            if(this.carSerialHiddenName!=null){
                this.$(this.carSerialHiddenName).value="0";
            }
            this.addOneOptionWithBgColor(this.carSerialSelect,this.defultCarSerialText,"0");
            this.addOptionToSelectFromJson(this.carSerialSelect, val);
        }
        if(!!this.carBasicSelect){
            this.clearSelect(this.carBasicSelect);
            if(this.carBasicHiddenName!=null){
               this.$(this.carBasicHiddenName).value="0";
            }
            this.addOneOptionWithBgColor(this.carBasicSelect,this.defultCarBasicText,"0");
        }
        if (this.getIntValue(this.carSerialSelectValue) > 0){
            setTimeout(function(){//为了兼容ie6
                this.carSerialSelect.value = this.getIntValue(this.carSerialSelectValue);
                if(!!this.carSerialHiddenName){
                    this.$(this.carSerialHiddenName).value = this.getIntValue(this.carSerialSelectValue);
                }
                this.carSerialSelectValue = '';
                 if(!!this.carBasicSelect){
                    this.initCarBasicSelect();
                }
            }.bind(this),0); 
        }
        else if(this.isUseDisable && !!this.carBasicSelect){
            this.carBasicSelect.disabled=true;
        }
        
        if(this.Disabled){
           if(!!this.carSerialSelect){
                this.carSerialSelect.disabled=true
           }
        }
    },
    initSerialSelect:function(){
        var brandId = this.carBrandSelect.value;
        if(this.getIntValue(brandId)>0){
            var url = Ucar_AjaxDomain + "ajax/carinfojs.ashx";
            var pars = "carbrandid=" + brandId;
            this.loadJS.push(url+"?"+pars,"utf-8",this.initSerialSelectComplete.bind(this));
            if(this.isUseDisable){
                this.carSerialSelect.disabled =false;
            }
        }
        else{
           if(!!this.carSerialSelect){
                this.clearSelect(this.carSerialSelect);
                if(this.carSerialHiddenName!=null){
                    this.$(this.carSerialHiddenName).value="0";
                }
                this.addOneOptionWithBgColor(this.carSerialSelect,this.defultCarSerialText, '0');
           }
            if(!!this.carBasicSelect){
               this.clearSelect(this.carBasicSelect);
               if(this.carBasicHiddenName!=null){
                    this.$(this.carBasicHiddenName).value="0";
               }
               this.addOneOptionWithBgColor(this.carBasicSelect,this.defultCarBasicText,"0");
           }
           if(this.isUseDisable){
                this.carSerialSelect.disabled =true;
                if(!!this.carBasicSelect){
                    this.carBasicSelect.disabled=true;
                }
           }
           
        }
    },
    initBrandSelectComplete:function(){
        var val = ucar_carbrandinfo.split(',');
        this.clearSelect(this.carBrandSelect);
        
        this.addOneOptionWithBgColor(this.carBrandSelect, this.defultCarBrandText, '0');
        this.addOptionToSelectFromBaseArray(this.carBrandSelect, val);  
        
        if(!!this.carSerialSelect){//如果沒有子品牌
            this.addOneOptionWithBgColor(this.carSerialSelect,this.defultCarSerialText,"0");
            Event.observe(this.carBrandSelect, 'change', this.initSerialSelect.bindAsEventListener(this)); 
            if(this.carSerialHiddenName!=null){
                Event.observe(this.carSerialSelect, 'change', function(){this.$(this.carSerialHiddenName).value=this.carSerialSelect.value;}.bindAsEventListener(this)); 
            }
        }
        if(!!this.carBasicSelect){//如果沒有车型
             this.addOneOptionWithBgColor(this.carBasicSelect,this.defultCarBasicText,"0");
             Event.observe(this.carSerialSelect, 'change', this.initCarBasicSelect.bindAsEventListener(this)); 
             if(this.carSerialHiddenName!=null){
                 Event.observe(this.carBasicSelect, 'change', function(){this.$(this.carBasicHiddenName).value=this.carBasicSelect.value;}.bindAsEventListener(this)); 
             }
        }     
        
         if(this.carBrandHiddenName!=null){
                 Event.observe(this.carBrandSelect, 'change', function(){this.$(this.carBrandHiddenName).value=this.carBrandSelect.value;}.bindAsEventListener(this)); 
         }
         
         
        
        if (this.getIntValue(this.carBrandSelectValue) > 0){
            setTimeout(function(){//为了兼容ie6
                this.carBrandSelect.value=this.getIntValue(this.carBrandSelectValue);
                this.carBrandSelectValue = '';
                if(!!this.carSerialSelect){
                    this.initSerialSelect();
                }
            }.bind(this),0);
            
            
           if(this.Disabled){
               if(!!this.carBrandSelect ){
                    this.carBrandSelect.disabled=true
               }
           }
            
        }
        else if(this.isUseDisable && !!this.carSerialSelect){
            this.carSerialSelect.disabled=true;
            if(!!this.carBasicSelect){ 
                this.carBasicSelect.disabled=true;
            }
        }
    },
    initBrandSelect:function(){
    
        ///如果定义了hidden就以hidden值为主
        if(this.carBrandHiddenName!=null){
            this.carBrandSelectValue = $F(this.carBrandHiddenName);
		}
		if(this.carSerialHiddenName!=null){
		    this.carSerialSelectValue= $F(this.carSerialHiddenName);
        }
        if(this.carBasicHiddenName!=null){
		    this.carBasicSelectValue= $F(this.carBasicHiddenName);
        }
        
        var url = Ucar_AjaxDomain + "ajax/carinfojs.ashx";
        var pars = "";
        this.loadJS.push(url+"?"+pars,"utf-8",this.initBrandSelectComplete.bind(this));

    },
    initHidden:function(brandHiddenId, serialHiddenId, basicHiddenId){
        if (!!brandHiddenId){
            this.carBrandHiddenName = brandHiddenId;
        }
        if (!!serialHiddenId){
            this.carSerialHiddenName = serialHiddenId;
        }
        if (!!basicHiddenId){
            this.carBasicHiddenName = basicHiddenId;
        }
    }
});

/*
绑定ActiveArea
*/

var ActiveArea_Select=Class.create(Ucar_Select,{
initialize: function (areaSelectId){
this.areaSelect=this.$(areaSelectId)},
selectClassName:"",
areaSelect:null,
defaultAreaText:"地区",
areaSelectValue:0,
initAreaSelect:function ()
{
 var url = Ucar_AjaxDomain + "ajax/ActiveAreajs.ashx";
        var pars = "";
        this.loadJS.push(url+"?"+pars,"utf-8",this.initAreaSelectComplete.bind(this));
},
initAreaSelectComplete:function(){
        var val = ucar_areainfo;
        this.clearSelect(this.areaSelect);
        
        this.addOneOptionWithBgColor(this.areaSelect, this.defaultAreaText, '0');
        this.addOptionToSelectFromJson(this.areaSelect, val);  
}
});

/*
绑定全部价格类型
*/

var Price_Select=Class.create(Ucar_Select,{
initialize: function (priceSelectId){
this.priceSelect=this.$(priceSelectId)},
selectClassName:"",
priceSelect:null,
defaultPriceText:"价格",
pirceSelectValue:0,
initPriceSelect:function ()
{
 var url = Ucar_AjaxDomain + "ajax/CarPriceJs.ashx";
        var pars = "";
        this.loadJS.push(url+"?"+pars,"utf-8",this.initPriceSelectComplete.bind(this));
},
initPriceSelectComplete:function(){
        var val = ucar_priceinfo;
        this.clearSelect(this.priceSelect);
        
        this.addOneOptionWithBgColor(this.priceSelect, this.defaultPriceText, '0');
        this.addOptionToSelectFromJson(this.priceSelect, val);  
}
});

/*
绑定全部车龄区间
*/

var UserYear_Select=Class.create(Ucar_Select,{
initialize: function (useryearSelectId){
this.useryearSelect=this.$(useryearSelectId)},
selectClassName:"",
useryearSelect:null,
defaultUserYearText:"车龄",
useryearSelectValue:0,
initUserYearSelect:function ()
{
 var url = Ucar_AjaxDomain + "ajax/CarUserYearJs.ashx";
        var pars = "";
        this.loadJS.push(url+"?"+pars,"utf-8",this.initUserYearSelectComplete.bind(this));
},
initUserYearSelectComplete:function(){
        var val = ucar_useryearinfo;
        this.clearSelect(this.useryearSelect);
        
        this.addOneOptionWithBgColor(this.useryearSelect, this.defaultUserYearText, '0');
        this.addOptionToSelectFromJson(this.useryearSelect, val);  
}
});

/*
日期下拉列表控件
*/
var Ucar_Month_Select = Class.create(Ucar_Select,{
	initialize: function(yearSelectId, monthSelectId) {
		this.yearSelect = this.$(yearSelectId);
		if (!!monthSelectId) {
		    this.monthSelect = this.$(monthSelectId);
		}
	},
	selectClassName:"",
	startYear:0,
	endYear:0,
	defaultYearText:"请选择年份",
	defaultMonthText:"请选择月份",	
	yearSelect:null,
	monthSelect:null,
	dateValueHidden:null,
	yearSelectValue:0,
	monthSelectValue:0,
	initYearSelect:function(){	    
	    this.clearSelect(this.yearSelect);
	    this.addOneOption(this.yearSelect, this.defaultYearText, "0");
	    for (var i = this.endYear; i >= this.startYear; i--)
	    {
	        this.addOneOption(this.yearSelect, i, i);
	    }
	    
	    if (!!this.monthSelect)
	    {
	        this.initMonthSelect();
	    }
	    
	    if (this.yearSelectValue != "0001")
	    {
	        this.yearSelect.value = this.yearSelectValue;
	        if (!!this.monthSelect)
	        {
	            this.monthSelect.value = this.monthSelectValue;
	        }
	    }
	    
	    if (this.dateValueHidden != null)
	    {
	        Event.observe(this.yearSelect, "change", this.setHiddenValue.bindAsEventListener(this)); 
	        if (!!this.monthSelect)
	        {
	            Event.observe(this.monthSelect, "change", this.setHiddenValue.bindAsEventListener(this));
	        }
	    }
	    
	    if (this.selectClassName != "")
	    {
	        this.yearSelect.className = this.selectClassName;
	        if (!!this.monthSelect)
	        {
	            this.monthSelect.className = this.selectClassName;
	        }
	    }
	    
	    if (this.dateValueHidden != null)
	    {
	        this.setSelectValue(this.dateValueHidden.value);
	    }
	},
	initMonthSelect:function(){
	    this.clearSelect(this.monthSelect);
	    this.addOneOption(this.monthSelect, this.defaultMonthText, "0");
        for (var j = 1; j <= 12; j++)
        {
            this.addOneOption(this.monthSelect, j, j);
        }
	},
	setSelectValue:function(dateString){
	    var dateArray = dateString.split('-');
	    if (dateArray.length > 0 && dateArray[0] != "" && dateArray[0] != "0001")
	    {
	        setTimeout(function() {
	            this.yearSelect.value = dateArray[0];
	            if (!!dateArray[1])
	            {
	                this.monthSelect.value = dateArray[1];
	            }
	            else
	            {
	                this.dateValueHidden.value = "";
	            }
	        }.bind(this),0);
	    }
	},
	initHidden:function(hiddenId){
	    this.dateValueHidden = $(hiddenId);
	},
	setHiddenValue:function(){
	    if (!!this.monthSelect)
	    {
	        if (this.yearSelect.value > 0 && this.monthSelect.value > 0){
	            this.dateValueHidden.value = this.yearSelect.value + "-" + this.monthSelect.value + "-1";
	        }
	        else{
	            this.dateValueHidden.value = "";
	        }
	    }
	    else
	    {
	        if (this.yearSelect.value > 0)
	        {
	            this.dateValueHidden.value = this.yearSelect.value;
	        }
	    }
	}
});

///刷新opener页面
var refreshOpenerPage=function(win,pageName){
    if(!!win.opener){
        var ucaropen=win.opener;
        if(ucaropen.location.toString().include(pageName)){
           win.opener.location.href = win.opener.location.href;
        }
        refreshUserUserPage(ucaropen,pageName);
    }
    else
    {
        return;
    }
}

///取得request参数
var $GET = function (){
    var Url=window.location.href;//如果想获取框架顶部的url可以用 top.window.location.href
    var u,g,StrBack='';
    if(arguments[arguments.length-1]=="#"){
        u=Url.split("#");
    }
    else{
       u=Url.split("?");
    }
    if (u.length==1){
        g='';
    }
    else{
        g=u[1];
    }
    if(g!=''){
        gg=g.split("&");
        var MaxI=gg.length;
        str = arguments[0]+"=";
        for(xm=0;xm<MaxI;xm++){
            if(gg[xm].indexOf(str)==0) {
                StrBack=gg[xm].replace(str,"");
                break;
            }
        }
    }
return StrBack;
}
