﻿var common={

bind:function(o,ev,fn){
	if (document.all){
		o.attachEvent('on'+ev,fn);////////////IE绑定上但是fn里this指向window
	}
	else{
		o.addEventListener(ev,fn,false);
	}
	return o;
},

addClass:function (el,cls){
	var arrCls=cls.split(/[ ]+/);
	if(el.className){
		for(var i=0;i<arrCls.length;i++){
			if(el.className.indexOf(arrCls[i])>=0){
				cls=cls.replace(new RegExp('[ ]*'+arrCls[i]+'[ ]*'),' ');////////有缺陷
			}
		}
		el.className=[el.className].concat(cls).join(' ');
	}
	else{
		el.className=cls;
	}
},

removeClass:function (el,cls){
	if(el.className){
		if(el.className.indexOf(cls)>=0){
			el.className=el.className.replace(new RegExp('[ ]*'+cls+'[ ]*','g'),' ');
		}
	}
}

};

function init(){
	var drag1=document.getElementById('addnew');
	var drag1bar=drag1.getElementsByTagName('h3')[0];
	new DragObject({module:drag1,handle:drag1bar});
	
	var addnewPop=new Popup({module:drag1,background:document.getElementById('transparent')});
	document.getElementById('addnew_btnclz').onclick=addnewPop.hide;
	document.getElementById('switch').onclick=addnewPop.show;
	document.getElementById('confirmplace').onclick=addnewPop.done;
	document.getElementById('allcity').onclick=addnewPop.allcity;	
	document.getElementById('beijing').onclick=addnewPop.beijing;
	document.getElementById('shanghai').onclick=addnewPop.shanghai;
	document.getElementById('tianjin').onclick=addnewPop.tianjin;
	document.getElementById('wenzhou').onclick=addnewPop.wenzhou;
	document.getElementById('guangzhou').onclick=addnewPop.guangzhou;
	document.getElementById('ningbo').onclick=addnewPop.ningbo;
	document.getElementById('shenzhen').onclick=addnewPop.shenzhen;
	document.getElementById('hangzhou').onclick=addnewPop.hangzhou;
	document.getElementById('chengdu').onclick=addnewPop.chengdu;
	document.getElementById('chongqing').onclick=addnewPop.chongqing;
}

common.bind(window,'load',init);


function DragObject(args){
	var module=typeof(args.module)=='string'?document.getElementById(args.module):args.module;
	var handle=typeof(args.handle)=='string'?document.getElementById(args.handle):args.handle;
	
	function startDrag(e){
		var e=e||window.event;
		//var elem=e.target||e.srcElement;
		
		document.onmousemove=onDrag;
		document.onmouseup=stopDrag;
		
		//储存当前坐标差值参数
		module.subX=module.offsetLeft-e.clientX;
		module.subY=module.offsetTop-e.clientY;
		
		return false;
	}
	
	function onDrag(e){
		e=e||window.event;
		
		module.style.left=module.subX+e.clientX+'px';
		module.style.top=module.subY+e.clientY+'px';
		
		return false;
	}
	
	function stopDrag(){
		document.onmousemove=null;
		document.onmouseup=null;
	}
	
	handle.onmousedown=startDrag;
	
}

function Popup(args){
	var module=typeof(args.module)=='string'?document.getElementById(args.module):args.module;
	var background=args.background?(typeof(args.background)=='string'?document.getElementById(args.background):args.background):null;
	
	this.show=function(){
		common.addClass(module,'box_active');
		if(background){
			common.addClass(background,'box_active');
		}
	};
	
	this.hide=function(){
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
	};

	this.done=function(){
		var province = document.getElementById('province');
		var city = document.getElementById('city');	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		if (city.value == ""){
			alert("请选择城市");
			return;
		}
		p.value=province.value;
		c.value=city.value;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city.value;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province.value, city.value);
	};

	this.allcity=function(){			
		var province = "所有地区";
		var city = "所有地区";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.beijing=function(){			
		var province = "北京";
		var city = "北京";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.shanghai=function(){			
		var province = "上海";
		var city = "上海";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.tianjin=function(){			
		var province = "天津";
		var city = "天津";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.chongqing=function(){			
		var province = "重庆";
		var city = "重庆";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.wenzhou=function(){			
		var province = "浙江";
		var city = "温州";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.guangzhou=function(){			
		var province = "广东";
		var city = "广州";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.ningbo=function(){			
		var province = "浙江";
		var city = "宁波";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.shenzhen=function(){			
		var province = "广东";
		var city = "深圳";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.hangzhou=function(){			
		var province = "浙江";
		var city = "杭州";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

	this.chengdu=function(){			
		var province = "四川";
		var city = "成都";	
		var p = document.getElementById('p');
		var c = document.getElementById('c');
		p.value=province;
		c.value=city;
		var showplace = document.getElementById('showplace');
		showplace.innerHTML = city;
		common.removeClass(module,'box_active');
		if(background){
			common.removeClass(background,'box_active');
		}
		changeplace(province, city);
	}

}
