var siteMap = new Hash();
var siteAnnexParamMap = new Hash();
var _form, _name, _pwd;

document.observe("dom:loaded", function() {
	_form = $('myformwsk');
	_name = $('ousername');
	_pwd = $('opassword');
	_apArea = $('annexParamArea');
});

AP = function(id, name, value) {
	this.id = id;
	this.name = name;
	this.value = value;
}

var Site = function (url, username, password) {
	this.url = url;
	this.username = username;
	this.password = password;

	var annexParams = new Array();

	this.pushAnnexParam = function(siteAnnexParam) {
		if(siteAnnexParam instanceof Array) {
			if(annexParams.length > 0) {
				annexParams.clear();
			}

			siteAnnexParam.each(function(element) {
				annexParams.push(element);
			});
		}
	};

	this.generateAnnexParamHidden = function() {
		var inputs = $A(document.getElementsByTagName("input"));
		//删除所有已有hidden
		inputs.each(function(element) {
			if(element.type == 'hidden') {
				element.removeNode(true);
			}
		});

		annexParams.each(function(param) {
			if(param == null) return;
			var node = generateInputTagElement('hidden', param.id, param.name, param.value);
			_apArea.insertBefore(node);
		});
	};
}

var generateInputTagElement = function(type, id, name, value) {
	var tagHTML = '<input type=\'' + type + '\' id=\'' + id + '\''
		+ ' name=\'' + name + '\' value=\'' + value + '\'/>';

	return document.createElement(tagHTML);
}



//网站登录地址和用户名密码集合
siteMap.set('sina', 
	new Site('http://esfang.house.sina.com.cn/yh1/zhuce/login.php','mebname','mbpwd'));
siteMap.set('twosixthree', 
	new Site('http://user.263.com/login/index.aspx','email','pwd'));
siteMap.set('ganji', 
	new Site('http://bj.ganji.com/user/login.php','email','password'));
siteMap.set('hand2hand', 
	new Site('http://my.hand2hand.cn/users/login.aspx','txtusername','txtpassword'));
siteMap.set('soufun', 
	new Site('http://passport.soufun.com/Default.aspx','username','password'));
siteMap.set('edeng', 
	new Site('http://www.edeng.cn/bin/login/login.php','login_id','password'));
siteMap.set('eeju', 
	new Site('http://bj.eeju.com/checklogin.php','username','password'));
siteMap.set('baixing', 
	new Site('http://beijing.baixing.com/wo/denglu','email','password'));
siteMap.set('fiveeight', 
	new Site('http://my.58.com/login.aspx?path=http%3a%2f%2fbj.58.com%2f','skinContainer_Template$username','skinContainer_Template$userpwd'));
siteMap.set('bjzhaofang', 
	new Site('http://www.bjzhaofang.com/checklogin.asp','username','password'));
siteMap.set('bjfang', 
	new Site('http://www.bjfang.com/login.aspx?ReturnUrl=%2fmember%2fDefault.aspx','ctl00$CPH1$UserName','ctl00$CPH1$PassWord'));



//网站登录所需隐藏参数集合
////*******     263     *******////
var singleSiteAP = new Array();
singleSiteAP.push(new AP('__EVENTTARGET', '__EVENTTARGET', ''));
singleSiteAP.push(new AP('__EVENTARGUMENT', '__EVENTARGUMENT', ''));
singleSiteAP.push(new AP('__VIEWSTATE', '__VIEWSTATE', 
	'/wEPDwUKMTU4ODA2MjEzOWQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgIFDWNrYl9BdXRvTG9naW4FA3N1bTHLQ++reKOqbNqL77/q8RStnOw9'));
singleSiteAP.push(new AP('hfUrl', 'hfUrl', 'http://www.263.com/'));
singleSiteAP.push(new AP('__EVENTVALIDATION', '__EVENTVALIDATION', 
	'/wEWBgK+vaGjBwKyzcaDDQLGmdGVDALiyOOBDQKGuYiBBQLDvI7SCuIHikeVMRuzv8v5Za5/fAmcDsFN'));
siteAnnexParamMap.set('twosixthree', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('forward', 'forward', 'http://bj.ganji.com'));
singleSiteAP.push(new AP('login', 'login', ''));
singleSiteAP.push(new AP('Submit1', 'Submit1', '登录'));
singleSiteAP.push(new AP('action', 'action', 'login'));
siteAnnexParamMap.set('ganji', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('__VIEWSTATE', '__VIEWSTATE', 
	'/wEPDwUKLTE4NTk3MzYwMw9kFgICAQ9kFgICBA8PZBYCHgdvbmNsaWNrBRVyZXR1cm4gZG9sb2dpbih0aGlzKTtkGAEFHl9fQ29udHJvbHNSZXF1aXJlUG9zdEJhY2tLZXlfXxYBBQdzYXZlcHdkdoqbdSMkO7cEEZiceuFd41OKSqk='));
singleSiteAP.push(new AP('btnLogin', 'btnLogin', '%E7%99%BB%E5%BD%95%E6%89%8B%E9%80%92%E6%89%8B'));
siteAnnexParamMap.set('hand2hand', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('redirect', 'redirect', 'http://www.edeng.cn/data/china/house/'));
siteAnnexParamMap.set('edeng', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('action', 'action', 'login'));
singleSiteAP.push(new AP('_dest', '_dest', 'http://bj.eeju.com/'));
siteAnnexParamMap.set('eeju', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('action', 'action', 'login'));
singleSiteAP.push(new AP('redirect', 'redirect', 'http://beijing.baixing.com/'));
singleSiteAP.push(new AP('refer', 'refer', 'http://beijing.baixing.com/'));
siteAnnexParamMap.set('baixing', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('__VIEWSTATE', '__VIEWSTATE', 
	'/wEPDwUJNTY0NjM2MDY2D2QWAgIBD2QWAgIBD2QWAmYPZBYEAgIPFgIeB1Zpc2libGVoZAIDDxYCHwBoZGQfpoyB5k0+ciNVCf+gmOi6AEhWJw=='));
singleSiteAP.push(new AP('__EVENTVALIDATION', '__EVENTVALIDATION', 
	'/wEWAwL7lt/MBwKEyf6dCAL8ityVDR51rXHX3jkCgaU1qbhrIDy3G26T'));
singleSiteAP.push(new AP('loginSubmit', 'loginSubmit', '%E7%99%BB%E5%BD%95'));
siteAnnexParamMap.set('fiveeight', singleSiteAP);

singleSiteAP = new Array();


singleSiteAP.push(new AP('__VIEWSTATE', '__VIEWSTATE', 
	'/wEPDwUKMTMyNzk5Mzc3OQ9kFgJmD2QWAgIDD2QWAgIFD2QWAgIRDw8WAh4LTmF2aWdhdGVVcmwFLn4vbWVtYmVyL3JlZ3VzZXIuYXNweD91cmw9L21lbWJlci9EZWZhdWx0LmFzcHhkZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAgUUY3RsMDAkQ1BIMSRDaGVja0JveDEFF2N0bDAwJENQSDEkSW1hZ2VCdXR0b24y0tDfxhyxFOEGTPFfDxRdAOqS1ts='));
siteAnnexParamMap.set('bjfang', singleSiteAP);

singleSiteAP = new Array();



function do_submit(){
	var curSite = siteMap.get(_form.curSiteName);
	if(typeof curSite == 'undefined') {
		return false;
	}
	if(_name.value.blank() || _pwd.value.blank()) {
		return false;
	}

	curSite.generateAnnexParamHidden();

	return _form.action != '';
}

function setLoginSite(obj){
	if(obj.value == 'new') {
		_form.action = '/feedback';
		_form.submit();
		return;
	}

	var curSite = siteMap.get(obj.value);

	if(curSite instanceof Site) {
		curSite.pushAnnexParam(siteAnnexParamMap.get(obj.value));
		_form.curSiteName = obj.value;

		_form.action = eval('\'' + curSite.url + '\'');
		_name.name = curSite.username;
		_name.value = '';
		_pwd.name = curSite.password;
		_pwd.value = '';
	}
}