/**
 * 网易活动相关的 js 库
 * 
 * @author vivimice@163.org
 * @copyright netease (Hangzhou) co. ltd.
 * @since 2007-11-8
 */

/** 
 * DOMREADY 扩展
 */
Object.extend(Event,{_domReady:function(){if(arguments.callee.done){return }arguments.callee.done=true;if(this._timer){clearInterval(this._timer)}this._readyCallbacks.each(function(A){A()});this._readyCallbacks=null},onDOMReady:function(f){if(!this._readyCallbacks){var domReady=this._domReady.bind(this);if(document.addEventListener){document.addEventListener("DOMContentLoaded",domReady,false);/*@cc_on @*//*@if (@_win32)
            document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
            document.getElementById("__ie_onload").onreadystatechange = function() {
                if (this.readyState == "complete") domReady();
            };
        /*@end @*/}if(/WebKit/i.test(navigator.userAgent)){this._timer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){domReady()}},10)}Event.observe(window,"load",domReady);Event._readyCallbacks=[]}Event._readyCallbacks.push(f)}})

/**
 * 活动字符串工具类
 */
register("NetEase.Base.StringUtils");
NetEase.Base.StringUtils = function () {
	/**
	 * 按照指定文本长度截断字符串
	 * 
	 * @param {String} _s
	 *        源字符串
	 * @param {Integer} _l
	 *        指定的长度，一个汉字也记为1
	 * @param {String} _t
	 *        可选，超过长度以后追加在返回值末尾的字符串。
	 *        默认值为 " ..."
	 * @return {String}
	 */
	this.trimStringByTextLength = function (_s, _l, _t) {
			_t = _t ? _t : " ...";
			var _r = new RegExp("([\\x01-\\x7f\\u2E80-\\u9FFF\\uFE30-\\uFFE5]{0," + _l +"}).*");
			_r.test(_s);
			return RegExp.$1 + ((String(RegExp.$1).length < _s.length) ? _t : "");
	};
};
/**
 * 创建一个实例
 */
var stringUtils = new NetEase.Base.StringUtils();
/**
 * modified by wuyingqiang.
 * 
 * @return {}
 */
function getCurUserBeanPath(){
	//return '/' + currentUser.userName + '/dwr';
	return '/pub/activites/user/' + currentUser.userName + '/dwr';
}
/**
 * HomepageSetupBean
 */  
var HomepageSetupBean = {
	getCurUserPageSetup : 
		function(callback) {
			DWREngine._execute(getCurUserBeanPath(), 'HomepageSetupBean', 'getCurUserPageSetup', false, callback);
		},
	savePageSetup : 
		function(p0, callback) {
			DWREngine._execute(getCurUserBeanPath(), 'HomepageSetupBean', 'savePageSetup', p0, false, callback);
		},
	copyUserTheme :
		function(p0, callback) {
			DWREngine._execute(getCurUserBeanPath(), 'HomepageSetupBean', 'copyUserTheme', p0, false, callback);
		},
	updateUserPageTheme :
		function(p0, callback) {
			DWREngine._execute(getCurUserBeanPath(), 'HomepageSetupBean', 'updateUserPageTheme', p0, false, callback);
		}
};

/**
 * CustomHtmlBean
 */
var CustomHtmlBean = {
	addCustomHtml : 
		function(p0, callback) {
    		DWREngine._execute(getCurUserBeanPath(), 'CustomHtmlBean', 'addCustomHtml', p0, callback);
		}
}

/**
 * 拉票类
 */
register("NetEase.Base.Lapiao");
/**
 * 拉票类的构造函数
 * 
 * @param {Object} _bean
 *        实现了拉票相关dwr调用接口的Bean
 */
NetEase.Base.Lapiao = function (_bean) {
	var _this = this;
	var _newModuleId = -1;
	var _modObj = null;
	var _userPageSetup = null;
	var _badding = false;
	/**
	 * 添加自定义模块的复选框的 ID，默认值为 "checkAddModuleLabel"
	 */
	this.addCustomHTMLCheckBoxId = "checkAddModuleLabel";
	/**
	 * 自定义模块的标题
	 */
	this.customHTMLTitle = currentUser.isItemOwner() ? "为我拉票" : "为她拉票";
	/**
	 * 给博客好友发送拉票信息
	 * 
	 * @param {Integer} _itemId
	 *        拉票对象的 itemId
	 */
	this.msgBlogFriend = function (_itemId) {
		if (!currentUser.isLogin()) {
			login();
			return false;
		}
		if (getCookie("msgBlog")){
			page.dwrInfo("感谢你的关注，你已经邀请过你的博客好友了!");
			return;
		}
		if(window.confirm("确认要给你的博客好友发拉票信息吗？")){
			page.dwrInfo("正在给你的博客好友发拉票信息，请稍候...");
			_bean.lpRemindFriend(_itemId, _this.postLpFriend);		
			Cookie.set("msgBlog", 1 ,30, '/', '163.com');
		}
	};
	/**
	 * 给邮箱好友发送拉票信息
	 * 
	 * @param {Integer} _itemId
	 *        拉票对象的 itemId
	 */
	this.msgMailFriend = function (_itemId){
		if (!currentUser.isLogin()) {
			login();
			return false;
		}
		if (getCookie("msgMail")){
			dwrInfo("感谢你的关注，你已经邀请过你的邮箱好友了!");
			return;
		}
		if (!currentUser.isUrs()) {
			page.dwrInfo("很抱歉，该功能仅对163邮箱有效！");return;
		} else {
		  	if (window.confirm("确认要给你的163邮箱好友发拉票信息吗？")) {
				page.dwrInfo("正在给你的邮箱好友发拉票信息，请稍候...");
				_bean.lpEmailFriend(_itemId, _this.postLpFriend);		
				Cookie.set("msgMail", 1 , 30, '/', '163.com');
		    }
		}
	};
	/**
	 * 添加自定义拉票模块
	 * @param {Object} _tmpl
	 *        自定义模块的内容
	 * @param {Object} _title
	 *        可选，自定义模块的标题
	 *        默认为本对象的 customHTMLTitle 公共成员
	 */
	this.addCustomHTML2 = function (_tmpl, _title) {
		if (_newModuleId > 0) {
			return false;
		}
		_title = _title ? _title : _this.customHTMLTitle;
		Cookie.set("addoilNow", 0 , -1, '/', '163.com');
		_title = _title ? _title : _this.customHTMLTitle;
		
		document.getElementById("moduleTitle").value = _title;
		document.getElementById("moduleHtml").value = $("lpTemplate").value;
		document.getElementById("userName").value = currentUser.userName;
		document.lapiaofrom.submit();
	};
/**
	 * 添加自定义拉票模块
	 * @param {Object} _tmpl
	 *        自定义模块的内容
	 * @param {Object} _title
	 *        可选，自定义模块的标题
	 *        默认为本对象的 customHTMLTitle 公共成员
	 */
	this.addCustomHTML = function (_tmpl, _title) {
		if (_newModuleId > 0) {
			return false;
		}
		_title = _title ? _title : _this.customHTMLTitle;
		_modObj = {
		    "chModuleName" : _title,
		    "htmlCode" : _tmpl,			    
		    "id" : 10
		};
		if (_userPageSetup != null) 
			return false;
		if (this._badding){
			page.dwrInfo("正在处理,请稍候..");
			return false;
		}
		this._badding =true;
		HomepageSetupBean.getCurUserPageSetup(_this.postGetCurUserPageSetup);
	};
	/**
	 * 发送拉票信息的结果
	 * 
	 * @param {Boolean} dataFromServer
	 */
	this.postLpFriend = function (_result){
		if (_result == true) {
			page.dwrInfo("拉票信息发送成功!");
		} else {
			page.dwrInfo("因网络错误等原因导致发拉票信息失败，请稍后重试！", "error");	
		}
	};
	/**
	 * 获得当前用户模块，回调函数
	 */
	this.postGetCurUserPageSetup = function (userPageSetup) {
		_userPageSetup = userPageSetup;
		if (userPageSetup.pageModuleStr.split(",").length >= 30){
			this._badding =false;
			page.dwrInfo('您博客首页的模块超过30个啦,无法添加新模块！', 'info');  
			return;
		}
		CustomHtmlBean.addCustomHtml(_modObj, _this.postaddCustomHtml);
	};
	/**
	 * 添加自定义模块的回调函数
	 */
	this.postaddCustomHtml = function (_newMod) {
		if (_newMod) {
			_newModuleId = _newMod.id;
			var userPageSetup = _userPageSetup;
			var pageModuleStr = userPageSetup.pageModuleStr;
			var strLen = pageModuleStr.length;
			if (pageModuleStr[0] == ";")
				pageModuleStr = _newModuleId + pageModuleStr;
			else
				pageModuleStr = _newModuleId + "," + pageModuleStr;
			userPageSetup.pageModuleStr = pageModuleStr;
			HomepageSetupBean.savePageSetup(userPageSetup, _this.postsavePageSetup);		
			if ($(_this.addCustomHTMLCheckBoxId)) {
				$(_this.addCustomHTMLCheckBoxId).style.display = "none";
			}
			page.dwrInfo('添加模块成功！', 'info');  		     
			this._badding =false;
		}
	};
	this.postsavePageSetup = function (dataFromServer) {
		if (dataFromServer) {
			if (getCookie("addoilNow")) {
				Cookie.set("addoilNow", 0 , -1, '/', '163.com');
			}
		}
	};
};

/**
 * 活动页面效果类
 */
register("NetEase.Base.EffectUtils");
NetEase.Base.EffectUtils = function () {
	
	this.fadeTipInfo = function (id, content, totalDuration, fadeInterval, fadeStep){
		if ($(id)){
			var fadeInterval = fadeInterval ? fadeInterval : 100;
			var fadeStep = fadeStep ? fadeStep : 5;
			var fadeDurration = 100 / fadeStep * fadeInterval;
			var totalDuration = totalDuration ?
				(totalDuration > fadeDurration ? totalDuration : fadeDurration) :
				fadeDurration;
			var fullOpacityDuration = totalDuration - fadeDurration;
			$(id).innerHTML = content;
			$(id).style.display = "block";
			$(id).style.visibility = "visible";
			$(id).opacity = 100 + fullOpacityDuration / fadeInterval * fadeStep;
			if (!$(id).timerId) {
				$(id).timerId = window.setInterval(
					function () {
						fadeInfo(id, fadeStep);
					},
					fadeInterval
				);
			}
		}
	}
	
	function fadeInfo(id, fadeStep) {
		setOpacity($(id), $(id).opacity);
		$(id).opacity -= fadeStep;
		if ($(id).opacity <= 0) {
			$(id).opacity = 0;
			window.clearInterval($(id).timerId);
			$(id).timerId = null;
			$(id).style.visibility = "hidden";
			$(id).style.display = "none";
		}
	}
	
	function setOpacity(_o, _v) {
		if (_v > 100) _v = 100;
		if (_v < 0) _v = 0;
		if (_o.filters) {
			try {
				if (!_o.filters["DXImageTransform.Microsoft.Alpha"]) {
					_o.style.filter += "progid:DXImageTransform.Microsoft.Alpha(enabled=1)";
				}
				_o.filters["DXImageTransform.Microsoft.Alpha"].opacity = _v;
			} catch (_e) {}
		} else {
			_o.style.MozOpacity = _v / 100;
		}
	}
}
var effectUtils = new NetEase.Base.EffectUtils();

/**
 * 活动相关的验证工具类
 */
register("NetEase.Base.ValidateUtils");
NetEase.Base.ValidateUtils = function () {
	/**
	 * 验证电话号码
	 * @param {String} _s
	 */
	this.isPhoneNum = 
		function (_s) {
			return /^(((13[0-9]{1})|159|(15[0-9]{1}))+\d{8})$/.test(_s);
		};
	/**
	 * 验证是否为数值的字符串表示
	 * @param {String} _s
	 */
	this.isNumberic = 
		function (_s) {
			return /^(\d*\.)?\d+(e[-+]?\d+)?$/i.test(_s);
		};
	/**
	 * 验证是否为整数
	 * @param {String} _s
	 */
	this.isInteger = 
		function (_s) {
			return /^\d+$/.test(_s);
		};
	/**
	 * 验证是否为汉字
	 * @param {String} _s
	 */
	this.isChinese = 
		function (_s) {
			return /^[\u2E80-\u9FFF\uFE30-\uFFE5]+$/.test(_s);
		};
	/**
	 * 验证是否为e-mail地址
	 * @param {String} _s
	 */
	this.isEmail = 
		function (_s) {
			return /^[a-z0-9\._-]+@([0-9a-z][0-9a-z-]*\.)+[a-z]{2,4}$/i.test(_s);
		};
	/**
	 * 字符串是否超长 
	 * @param {String} _s
	 *        被检查的字符串
	 * @param {Integer} _l
	 *        最大长度
	 * @param {Boolean} _r
	 *        可选参数。
	 *        设置为 true 根据字节长度来判断，否则根据文本长度来判断
	 *        默认为 false
	 */
	this.isOverLength = 
		function (_s, _l, _r) {
			_s = new String(_s);
			if (_r) {
				for (var i = 0; i < _s.length; i++) {
					var _c = _s.substr(i, 1);
					// TODO: substract 1 or 2 from _l per-cycle
				}
			} else {
				return _s.length <= _l;
			}
		};
	
	this.trimStringByLength = function (_s, _l) {
		var _r = new RegExp("([\\x01-\\x7f\\u2E80-\\u9FFF\\uFE30-\\uFFE5]{0," + _l +"}).*");
		_r.test(_s);
		return RegExp.$1 + ((String(RegExp.$1).length < _s.length) ? " ..." : "");
	}
	
	/**
	 * 判断是否为合法的中文姓名
	 * 3088个姓氏
	 * @param {Object} _s
	 */
	this.isChineseName = function (_s) {
		var _fns = "赵,钱,孙,李,周,吴,郑,王,冯,陈,褚,卫,蒋,沈,韩,杨,朱,秦,尤,许,何,吕,施,张,孔,曹,严,华,金,魏,陶,姜,戚,谢,邹,喻,柏,水,窦,章,云,苏,潘,葛,奚,范,彭,郎,鲁,韦,昌,马,苗,凤,花,方,俞,任,袁,柳,酆,鲍,史,唐,费,廉,岑,薛,雷,贺,倪,汤,滕,殷,罗,毕,郝,邬,安,常,乐,于,时,傅,皮,卞,齐,康,伍,余,元,卜,顾,孟,平,黄,和,穆,萧,尹,姚,邵,湛,汪,祁,毛,禹,狄,米,贝,明,臧,计,伏,成,戴,谈,宋,茅,庞,熊,纪,舒,屈,项,祝,董,梁,杜,阮,蓝,闵,席,季,麻,强,贾,路,娄,危,江,童,颜,郭,梅,盛,林,刁,锺,徐,邱,骆,高,夏,蔡,田,樊,胡,凌,霍,虞,万,支,柯,昝,管,卢,莫,经,房,裘,缪,干,解,应,宗,丁,宣,贲,邓,郁,单,杭,洪,包,诸,左,石,崔,吉,钮,龚,程,嵇,邢,滑,裴,陆,荣,翁,荀,羊,於,惠,甄,麴,家,封,芮,羿,储,靳,汲,邴,糜,松,井,段,富,巫,乌,焦,巴,弓,牧,隗,山,谷,车,侯,宓,蓬,全,郗,班,仰,秋,仲,伊,宫,宁,仇,栾,暴,甘,钭,历,戎,祖,武,符,刘,景,詹,束,龙,叶,幸,司,韶,郜,黎,蓟,溥,印,宿,白,怀,蒲,邰,从,鄂,索,咸,籍,赖,卓,蔺,屠,蒙,池,乔,阳,胥,能,苍,双,闻,莘,党,翟,谭,贡,劳,逄,姬,申,扶,堵,冉,宰,郦,雍,却,璩,桑,桂,濮,牛,寿,通,边,扈,燕,冀,僪,浦,尚,农,温,别,庄,晏,柴,瞿,阎,充,慕,连,茹,习,宦,艾,鱼,容,向,古,易,慎,戈,廖,庾,终,暨,居,衡,步,都,耿,满,弘,匡,国,文,寇,广,禄,阙,东,欧,殳,沃,利,蔚,越,夔,隆,师,巩,厍,聂,晁,勾,敖,融,冷,訾,辛,阚,那,简,饶,空,曾,毋,沙,乜,养,鞠,须,丰,巢,关,蒯,相,查,后,荆,红,游,竺,权,逮,盍,益,桓,公,万俟,司马,上官,欧阳,夏侯,诸葛,闻人,东方,赫连,皇甫,尉迟,公羊,澹台,公冶,宗政,濮阳,淳于,单于,太叔,申屠,公孙,仲孙,轩辕,令狐,钟离,宇文,长孙,慕容,司徒,司空,召,有,舜,叶赫那拉,丛,岳,寸,贰,皇,侨,彤,竭,端,赫,实,甫,集,象,翠,狂,辟,典,良,函,芒,苦,其,京,中,夕,之,章佳,那拉,冠,宾,香,果,依尔根觉罗,依尔觉罗,萨嘛喇,赫舍里,额尔德特,萨克达,钮祜禄,他塔喇,喜塔腊,讷殷富察,叶赫那兰,库雅喇,瓜尔佳,舒穆禄,爱新觉罗,索绰络,纳喇,乌雅,范姜,碧鲁,张廖,张简,图门,太史,公叔,乌孙,完颜,马佳,佟佳,富察,费莫,蹇,称,诺,来,多,繁,戊,朴,回,毓,税,荤,靖,绪,愈,硕,牢,买,但,巧,枚,撒,泰,秘,亥,绍,以,壬,森,斋,释,奕,姒,朋,求,羽,用,占,真,穰,翦,闾,漆,贵,代,贯,旁,崇,栋,告,休,褒,谏,锐,皋,闳,在,歧,禾,示,是,委,钊,频,嬴,呼,大,威,昂,律,冒,保,系,抄,定,化,莱,校,么,抗,祢,綦,悟,宏,功,庚,务,敏,捷,拱,兆,丑,丙,畅,苟,随,类,卯,俟,友,答,乙,允,甲,留,尾,佼,玄,乘,裔,延,植,环,矫,赛,昔,侍,度,旷,遇,偶,前,由,咎,塞,敛,受,泷,袭,衅,叔,圣,御,夫,仆,镇,藩,邸,府,掌,首,员,焉,戏,可,智,尔,凭,悉,进,笃,厚,仁,业,肇,资,合,仍,九,衷,哀,刑,俎,仵,圭,夷,徭,蛮,汗,孛,乾,帖,罕,洛,淦,洋,邶,郸,郯,邗,邛,剑,虢,隋,蒿,茆,菅,苌,树,桐,锁,钟,机,盘,铎,斛,玉,线,针,箕,庹,绳,磨,蒉,瓮,弭,刀,疏,牵,浑,恽,势,世,仝,同,蚁,止,戢,睢,冼,种,涂,肖,己,泣,潜,卷,脱,谬,蹉,赧,浮,顿,说,次,错,念,夙,斯,完,丹,表,聊,源,姓,吾,寻,展,出,不,户,闭,才,无,书,学,愚,本,性,雪,霜,烟,寒,少,字,桥,板,斐,独,千,诗,嘉,扬,善,揭,祈,析,赤,紫,青,柔,刚,奇,拜,佛,陀,弥,阿,素,长,僧,隐,仙,隽,宇,祭,酒,淡,塔,琦,闪,始,星,南,天,接,波,碧,速,禚,腾,潮,镜,似,澄,潭,謇,纵,渠,奈,风,春,濯,沐,茂,英,兰,檀,藤,枝,检,生,折,登,驹,骑,貊,虎,肥,鹿,雀,野,禽,飞,节,宜,鲜,粟,栗,豆,帛,官,布,衣,藏,宝,钞,银,门,盈,庆,喜,及,普,建,营,巨,望,希,道,载,声,漫,犁,力,贸,勤,革,改,兴,亓,睦,修,信,闽,北,守,坚,勇,汉,练,尉,士,旅,五,令,将,旗,军,行,奉,敬,恭,仪,母,堂,丘,义,礼,慈,孝,理,伦,卿,问,永,辉,位,让,尧,依,犹,介,承,市,所,苑,杞,剧,第,零,谌,招,续,达,忻,六,鄞,战,迟,候,宛,励,粘,萨,邝,覃,辜,初,楼,城,区,局,台,原,考,妫,纳,泉,老,清,德,卑,过,麦,曲,竹,百,福,言,第五,佟,爱,年,笪,谯,哈,墨,南宫,赏,伯,佴,佘,牟,商,西门,东门,左丘,梁丘,琴,况,亢,缑,帅,微生,羊舌,海,归,呼延,南门,东郭,百里,钦,鄢,汝,法,闫,楚,晋,谷梁,宰父,夹谷,拓跋,壤驷,乐正,漆雕,公西,巫马,端木,颛孙,子车,督,仉,司寇,亓官,鲜于,锺离,盖,逯,库,郏,逢,阴,薄,厉,稽,闾丘,公良,段干,开,光,操,瑞,眭,泥,运,摩,伟,铁,迮,禤,主,付,哀牢,艾山,岸然,铵,岸,安陵,安阳,安国,卬,盎,凹,奥屯,澳,熬,奥,奧,傲,隞,奥敦,突厥阿史那,巼,灞,捌,笆,霸,仈,把,八,摆,白岳,白马,把利,巴林,巴邻,般,坂,办,昄,邦,傍,蒡,抱,雹,报,豹,北堂,北烈,貝,北冥,悲,北泽,北海,北羽,北野,北里,北鄙,北殷,北宫,北唐,北门,奔,甏,薜,俾,鄙,闭珊,碧咸,赑,毴,比,必,邲,笔,比干,蔽,鼻,弊,扁,标,彪,婊,標,杓,別,膑,髌,宾牟,彬,兵,冰,并,炳,秉,博罕岱,莽努特,博鲁特,伯父,伯里,波瓦,铂,播,泊,博,伯比,伯常,伯牙吾台,钵,伯高,伯昏,博尔济吉特,博尔济锦,孛尔只斤,孛儿只斤,孛术鲁,布兰科,卟,步大汗,布仁玺黑格,部,补,步禄孤,步六孤,材,蔡林,才旦,菜,采,彩,财,剼,参,仓,苍梧,草蒺,草,漕,鄵,册,策,恻,侧,厕,茶,察,插,姹,察哈尔,茬,岔,侪,虿,产,镡,禅,缠,阐,唱,厂,场,敞,长鱼,长沙,长兴,鬯,菖,常夏,鼂,鈔,朝,超,彻,车非,衬,陈林,臣,陈观,闵陈,郴,晨,沉,陳,陈没,尘,陈梁,成吉思汗,橙,成王,呈,晟,城父,赤小豆,赤松,墀,迟尉,赤翟,茌,持,斥,齿,叱,赤张,匙,蚩,叱干,虫,宠,舂,犨,瘳,仇由,侴,臭,厨人,厨,处,除,楮,鉏,出大汗,滁,矗,碝,触,啜,揣,啜剌,町川,舛,巛,串,穿封,传,钏,川,歂,昶,闯,床,吹,炊,淳,椿,春日,褚师,此,慈禧,刺,枞,葱,苁,醋,爨,毳,催,存,村,措,厝,错木,达奚,达瓦买提,大荔,大食,大孙,打,大季,大叔,耷,大狐,答禄,妲,大连,达薄,大罗布次,達,禇,黛,歹,胆,澹,旦,萏,當,荡,当涂,岛,稻,鄧,邓李,旳,厍狄,棣,第九,第十,迪安,荻,氐,低,敌,祗,弟五,底,迪,地,第伍,第八,第二,第六,第七,第三,第四,第一,嗲,琠,佃,滇,点,电,店,貂,调,鸟,雕,秳,迭,牒,鼎,丢,动,洞,侗,峒,东里,东阳,冬,董鄂,苳,东篱,东条,冻,东鄙,东宫,冬日,东野,斗,兜,鬭,陡,豆卢,毒,堵师,独吉,芏,騳,独狐,蠹,独孤,锻,断,瑖,队,兑,堆山,趸,盾,敦,朵,堕,多兰葛,朵豁,剁,蛾,鹅,兹,娥,俄,额尔德雨,额勒图特,恩,耳,耳东,儿,二,洱,穣,尔朱,发,阀,伐,发克,帆,梵,饭,反,凡,蕃,放,防,邡,鲂,坊,芳,房当,菲梅尔,菲,费也头,濷,废,非,淝,奜,棐,分,粉,奋,坟,峰,丰将,封县,凤翔,馮,讽,俸,枫,凤翕,凤翥,凤翱,枫香,封父,封人,冯龚,缶,服,附,父,辅,抚,釜,阜,郛,复姓,涪,苻,复,妇,洑,伕,敷,劉付,负,扶芳,菔,茯,芙,福图,本帖最后由,奕辰,编辑,鎵,尕,该,垓,赣,干段,赣娄,绀,魐,橄,澉,岗,钢,纲,罡,港,冈,冮,半,高堂,杲,高尔尨,镐,睾,糕,高侯,高祁,高阳,高上,高车,窠,仡,各,歌逻,阁,哥,格,歌舒,鸽,閤,蛤蟆,舸,鬲,恪,哥舒,格尔尼,艮,根,耕,赓,庚桑,亘,更,纥石烈,高濑,龔,公延,公衍,公保,公沙,公丘,工精,公绪,宫堂,公伯,供,共叔,公义,公文,弓耀,共,工,公肩,公孟,公输,公皙,公祖,狗,沟,构,芶,笱,缑亢,句,鼓,股,孤,姑,固,骨,顧,谷利,頋,纥古鲁,孤竹,谷粱,嫴,崓,荻古鲁,骨力,沽,古里甲,骨仑廑骨思,古野,谷会,估,刮,瓜,索额图,索淖罗,瓜尔加,瓜田,怪,夬,官上,观,莞,灌,贯丘,毌丘,犷,丨,鬼,龟,诡,昋,诡诸,归海,炅,炔,郐,鬼谷,嶲,榖梁,穀梁,滚,郭曩,郭尔里,郭尔佳,郭尔罗,郭尔罗特,郭尔罗斯,郭佳,郭络罗,郭布勒,郭传罗,郭勒本,郭贝尔,郭啰噶,郭啰罗,郭儿刺思,呙,锅,过泉,郭王,郭李,簡,哈什纳,铪,張簡,哈尔努特,篅,哈尼,海拉苏,撖,憨,喊,函冶,函井,菡,邯郸,灏,皓,豪,号,浩,浩生,浩星,郝松,佫,好,何乌日娜,荷丘,菏,贺赖,贺楼,贺若,鹤,貉,荷,贺兰,河,黑,纥干,纥奚,黑豆,黑齿,很,横,恒,亨,八旗,韓,鸿,红格沁,虹,轰,宏远,後,郈,吼,猴,侯莫陈,壶,忽,狐,沪,胡宇,弧,胡毋,斛斯,轷,胡杨,胡同,胡仰,胡雅,籮,戲,呼落,斛律,胡母,逼,话,華,画,淮,槐,覃怀,欢,还,寰,奂,浣,幻,黃,黄豆,晃,黄陆,扈地干,慧,卉,会,混,魂,緍,婚,活,火,货,祸,鄗,或,豁,获,斛瑟罗,鹘提奚补野,婧,伋,姞,极,吉库和,洎,岌,戟,楫,赍,齑,济,荠,笈,笄,蕺,蒺,芰,芨,棘,佶,既,即,积,辑,脊,饥,伎,乩,疾,悸,墼,玑,霽,蕀,技,激,讥,际,几,基,紀,吉胡,继,记,稷,即墨,鸡,忌,寂,丌,羁,荚,佳尔关,佳,架,加,賈,夹,剪,见,鉴,肩吾,雋,寋,健,尖,箭,间,监,肩,荐,减,缄,鑑,奸,姦,絡,江戶川,疆,茳,薑,酱,奖,降,绛,教,缴,角,胶,姣,徼,角里,敫,皎,郊尹,郊,交,蕉,楶,杰恩,芥川,戒,姐,结,洁,杰,截,丌官,妗,晋楚,津,近,禁,巾,卺,缙,荩,緒,今,維,金城,練,井田,竞,井上,京兆,京相,精纵,精,京城,经孙,静,竟,晶,净,璟甌,玖,旧,鹫,九百,久,韭,臼,阄,桕,舅,纠,九方,就,氿,沮,苴,苣,举,沮渠,雎,具,俱,琚,菊,車,簏句,具封,句龙,巨剑,娟,堀,觉,觉尔察,君,菌,峻,俊,郡,骏马,竣,均,巨毋,咖,喀尔喀,卡,凯,堪,看,霭,侃,勘,坎,邟,伉,坑,靠,柯熙,科,克,可朱浑,空同,空桑,口,蔻,寇丘,窟贺,哭,枯,苦成,块,宽,鄺,逵,駒,繼,奎,魁,葵,繻,髡,宮,桰,蛞,廓,阔,腊,剌,拉,辣,賴,巴佳剌,郲,來,蓝馨,婪,拦,篮,兰顿,岚,蓝雨,稂,琅琊,琅,朗,狼,浪,曩,兰帕尔,姥,勞,醪,嫪,拉万,乐王,勒,累,磊,蕾,离,里,劦,理想,立,狸,里安,荔,俪,俚,李黄,叱李,溧,丽,隶,绮里,立如,厲,羅,荔非,骊,醴丞,栎,炼,連,联,楝,莲,綦连,恋,梁林,粱,谅,了,寥,辽,列御,叱列,烈,劣,列,吝,淋,琳,临丘,廪,伶,伶舟,伶州,岭,於陵,酃,苓,陵,泠,灵,令孤,上令下狐,酃丘,林业,刘俊,斿,遛,柳林,刘根百里,溜,流,劉,浏,刘谭,刘傅,刘付,聶,翬,陇,龍,耑,龍陽,漏,露,潞,芦,盧,陸,樂,路里,露兜,庐,录,漉,叱卢,窦卢,屡,甪,爐,渌,彔,陆费,甪里,孪,峦,卵,娈,略阳,论,倫,裸,鸁,捋,鑼,螺,濼,玀,曪,雒,駱,络,落下,洛下,驴,呂,叱吕,绿,绿小豆,率,马帅,馬,马矢,马服,杩,马司,马徐,祃,麥,賣,迈,缦,满红,曼,满丘,蔄,邙,莽,忙,貌,猫,鄮,美,眉,郿,没路真,美日,叱门,黾门,梦,糸,麋,芈,密,米女,面,棉,淼,苗君,妙,庙,繆,秒,蔑里乞,蔑,民,皿,黾,旻,閩,缗,名,茗,糸系,莫折,莫那娄,抹燃,莫多娄,木村,蘑,摩西,末,麿,魔,磨阝,默,抹撚,木,目,幕,畝,慕蓉,姆,母将,母邱,牧野,那金,迺,乃,耐,纳兰,南郭,南荣,楠,难,難,南野,男,南里,南鄙,内史,兒,逆,伲,匿,尼玛察哈拉,霓,尼,娘,嬲,涅,蘖,孽,臬,舊,舃,宁尔佳,佞,甯,狃,钮轱辘,纽,纽咕禄,钮钴禄,纽咕噜,浓,侬,農,弄,耨,叱奴,虐,傩,诺里埃加,诺沃阿,女,殴,藕,區,欧文,歐,歐陽,爬,怕,拍,牌,排,潘葛,泮,盤,厐,胖,耪,龐,咆,佩吉,沛,喷,湓,盆,鹏,邳,甓,匹,偏,片,骈,飘,嫖,品,萍,婆,坡,攴,番,破六韩,裒,普陋茹,普六茹,普弥,菩提,莆,蒲姑,谱,仆散,仆固,扑,企,期,岂,棋,岐,锜,启,七,柒,乞伏,棨,乞,起,妻,欺,齐藤,旗木,淇,麒,齐默特,泣伏利,耆,其格,萋,乞连,器,綦毋,莊,莮,钤,钳,千金,钱王,浅,茜,骞,黔,錢,谦,羌,墙,强梁,樵,喬,乔达摩,伽,怯,郄,妾,客,茄,且末,且,骎,芹,芩,青阳,倾,苘,琼,酋,球,求伯,遒,楸,丘目陵,秋日,湫,邱张,艽,瑕丘,闾邱,丘穆陵,葉,去疾,去,趣马,蘧,屈突,葀,麹,萬,蕖,衢,泉上,犬,拳,圈,全黄,群,瞿昙,阕,燃,绕,热,人,扔,日,日律,蓉,肜,柔然,茹华,濡,如,入,软,如花,闰,润,若,若干,若口引,萨蛮,恺撒,洒,撒哈拉,三,散,三台,三川,叁,伞,三闾,蓋,三乌,扫,色,涩,傻,杀,沙门,煞,莎,擅,鄯,杉,閷,珊竹,汕,剡,陕,扇,鳣,鄯善,上,尚书,商丘,商泽,哨,他他拉,沓,她,它,他,蘭,太,太皇,大澤,坦,坛,湯,烫,汤穆,唐山,棠,倘,糖,王吴,涛,桃,饕餮,特,藤原,题,遆,提,甜,田章,天其,添,田佳,鯈,铁伐,铁木,庭,廷,听,同蹄,统万,瞳,酮,痛,偷,头,兔,突,土,涂山,凃,荼,屠岸,屠门,塗,秃发,徒,图,吐伏卢,吐谷浑,凸,吐奚,土皋,吐卢,吐万,徒萨,团,吐火罗,推罗,退,屯,佗,其其格,托忒克,拓略,拓拔,托,妥,拓,瓦,弯,湾,晚,宛丘,皖,碗,婉,万刘,王孙,王父,王官,王人,王史,王叔,王周,王子,望李,王李,忘,未,蔚迟,为,威王,薇,厃,威梁,贴,巍,维,慰,惟,韋,嵬名,稳,聞,汶,佀,溫,叱温,文昌,閻,渥,我,五赵,五兆,吴刘,吴和,吴滕,屋引,乌苏,芜,芜丘,乌拉纳喇,乌古伦,乌落兰,屋兰,乌拉那拉,乌那罗,乌喇那拉,武陵,乌拉纳拉,浯,舞,乌尔扎,巫馬,屋,鄔,五鹿,毋丘,乌济根觉罗,乌济耶特,五王,五谷,勿忸于,吳,忤,午,兀,万忸于,兀颜,兀良哈,小泉,喜塔喇,喜塔剌,西伯,舄,夕姑,西野,西鄙,西里,西马洛,西风,西河,醯,葸,西贝,西林觉罗,西宫,西郭,西方,犀,西闾,西王,亩心,稀,郤,西,锡,息,羲,隰,卻,樨,下,霞,夏日,厦,贤,先,宪,现,羡,县,苋,姺,弦,闲齐,缐,闲,伭,鲜卑,献,咸丘,洗,霰,瞯,祥,翔,乡,湘,襄,相里,彡姐,衛,消,小田,晓,笑,效,小王,霄,校师,嚣,袛,箫,小,袓,肖巫,効,枭,蛸,筱,歇,鞋,谐,蟹,偰,泄,写,颉,謝,挟跌,燮,勰,薤,辛格,新楚特,忻都,新,欣,新垣,信都,歆,辛垣,心,星野,行人,星尘,形,形成,杏,荥,邢莫,雄,修鱼,岫,飍,徐章,盱,婿,徐吾,徐程,俆,顼,嘘,徐离,胥元,轩,褌,裵,玹,选,儇,谖,炫,旋,萱,璇,铉,軒轅,穴,踅,鄩,郇,盱眙,爱心觉罗,牙,鸭,芽,鸦,崖,亚,雅,山丘,衙,娅,雅典娜,琊,上山下丘,艳,筵,檐,沿,偃,啖,演,阉,顔,淹,衍,延陵,嚴,眼,砚,琰,盐,炎,彦,兖,郾,宴,雁,焱,顏,岩,楊,漾,央,鞅,阳城,样,羊角,杨柳,偃师,耀,夭,腰,幺,要,药,铫,饒,喇,咬,姚晏,叶和那拉,爷,也,冶,耶,夜,邺,曳,邪,揶,页,椰,耶律,叶赫纳拉,葉赫納拉,刈,伊林,矣,乙弗,伊娄,乙速孤,一那娄,夷丘,乙旃,颐,扆,怡,弋,伊能,壹那蒌,邑,移,已,医,翼,沂,彝,艺,异,懿,抑,壹,倚,毅,一,义渠,伊尔根觉罗,依尔觉悟罗,伊雨根觉罗,寅,訚,音,因,淫,樱木,茵,瀛,萦,迎,营丘,莹,婴,颖,郢,赢,樱,殷勤,伊祁,鄘,永贝里,右公,右宰,右师,佑,尢,悠,由章,攸,右,蚩尤,油,酉,幽,宥,兀有,又,幽泉,由吾,阏,誉,許,与,裕,豫,雨,渝,语,禺,鬱,予,预,余王,郁久闾,瑜,臾,吁,鬻,郁都甄,余丘,虞丘,狱,芋,萸,圉,远,爰,渊,园,圆,辕轩,院,辕,援,垣,园丁,苑曰,鸢,龠,钺,粤,月,悦,月野,雲,貟,妘,韵,郓,郧,贠,吾丘,杂,再,甾,赞,錾,趱,奘,弉,牂牁,唕,皂,灶,早,造,枣,藻,遭,棗,则,泽,昃,笮,贼,增,甑,缯,曽,“讠工白”,闸,讠工白,诈,扎,轧,札拉楚特,札哈齐特,寨,宅,债,窄,砦,詹伯,辗迟,瞻,詹世,绽,蘸,旃,張,丈,鄣,张包,獐,颢,瘴,彰,漳,黨,仉督,昭,照,兆昆,诏,趙,者,浙,哲,柘,折兰,折娄,阵,箴,枕,斟灌,真田,鄭,症,郑金,蒸,政,争,郑丘,征,争登,正,对,挚,郅,纸,职,陟,直古鲁,芷,致,脂,制,直,只,指,志,芝,彘,执,秩,知,徵,仲叔,中山,中华,鍾,重,众,鐘,中田,中叔,仲长,中行,皱,鄒,州,纣,舟,住,邾,渚,翥,猪,烛,譚,蓍,柱,竹里,竹内,主父,筑,朱陈,朱文,茱,朱邪,爪雨佳,颛,专,顓孫,妆,壮,庄上,颛顼,墜,追命,惇,卓张,桌,术要甲,辎,子丰,子革,子国,子罕,子孔,子宽,子强,子然,子人,子如,子师,子驷,子哲,子轩,子濯,資,孜,觜,子,子雅,自,梓,宗杨,踪,综,宗圣,宗正,驺,鄹,奏,租,足,卒,尊,芥,柞,佐,左人,左伯,左公,士孙";
		return ((_fns.indexOf(_s.substring(0, 1) + ",") != -1 && /^[\u2E80-\u9FFF]{2,6}$/.test(_s)) ||
			(_fns.indexOf(_s.substring(0, 2) + ",") != -1 && /^[\u2E80-\u9FFF]{3,5}$/.test(_s)));
	}
}

var validateUtils = new NetEase.Base.ValidateUtils();

/**
 * 活动轮询工具类
 */
register("NetEase.Base.Poll");
NetEase.Base.Poll = function () {
	/**
	 * 启动一次轮询操作，直到轮询的回调函数返回 false
	 * @param {Function} _callback
	 *        执行的回调函数，如果这个函数返回 false，则轮询终止
	 * @param {Integer} _interval
	 *        可选参数，轮询的间隔时间。默认为 500 毫秒
	 * @return {Integer}
	 *         对应的 Interval Id
	 */
	this.start = 
		function (_callback, _interval) {
			var _interval = _interval ? _interval : 500;
			var _iId = window.setInterval(
				function () {
					if (!_callback()) {
						window.clearInterval(_iId);
					}
				},
				_interval
			);
			return _iId;
		};
	/**
	 * 停止一个已经启动的轮询操作
	 * @param {integer} _iId
	 *        由 start 方法返回的 Interval Id
	 */
	this.stop = 
		function (_iId) {
			window.clearInterval(_iId);
		};
}
var poll = new NetEase.Base.Poll();

/**
 * 返回页码显示的html内容， 以javascript String的形式返回
 * @param  _bShowAll
 * 		   是否显示全部页码，或者只显示前页/后台
 * @param _totalCount
 *        返回记录总数目
 * @param _pageLimit
 *        每页显示多少条记录
 * @return _curPage
 *         当前的页码数
 */
function genPageNavs(_noNumbers,_totalCount, _pageSize,_pageNumLength,_currentPage,_searchFunName) {
	    var _pagePrevNext_total = _totalCount;
		var _pagePrevNext_currentPageNum = _currentPage;
		var _pagePrevNext_pagesize = _pageNumLength;
		var _pagePrevNext_length = 10 ;
		var  _pagePrevNext_pageNumMax = 0;
		var  _pagePrevNext_pageNumStart = 1;
		if (_pagePrevNext_total > 0)
		   _pagePrevNext_pageNumMax = parseInt((_pagePrevNext_total - 1) / _pagePrevNext_pagesize) + 1 ;			
		if (_pagePrevNext_currentPageNum > _pagePrevNext_length / 2)
			 _pagePrevNext_pageNumStart = _pagePrevNext_currentPageNum - _pagePrevNext_length / 2 + 1;
		
		var	_pagePrevNext_pageNumEnd = _pagePrevNext_pageNumMax ;
		if (_pagePrevNext_currentPageNum < _pagePrevNext_pageNumMax - _pagePrevNext_length / 2)
			 _pagePrevNext_pageNumEnd = _pagePrevNext_currentPageNum + _pagePrevNext_length / 2 ;
		
		if (_pagePrevNext_pageNumStart==1 && _pagePrevNext_pageNumEnd < _pagePrevNext_pageNumMax)
		    _pagePrevNext_pageNumEnd = _pagePrevNext_length;
		
		
		if (_pagePrevNext_pageNumEnd==_pagePrevNext_pageNumMax ){
		   _pagePrevNext_pageNumStart = _pagePrevNext_pageNumMax-_pagePrevNext_length;
		if (_pagePrevNext_pageNumStart < 1) 
		       _pagePrevNext_pageNumStart = 1 ;
		}

		var _items = [];
		if (_pagePrevNext_total != 0){
				for(_i=_pagePrevNext_pageNumStart;_i<=_pagePrevNext_pageNumEnd;_i++)
				{
					if (_pagePrevNext_currentPageNum != _i)
						_items.push({"pageNum" : _i, "selected" : false});
					else
						_items.push({"pageNum" : _i, "selected" : true});
				}
	    }
	    var _pageNavScript_JST='\
			<div class="a_ftl_pagenav"> \
				{var _n = _items.length} \
				{var _selitm_index = _pagePrevNext_currentPageNum-_pagePrevNext_pageNumStart+1}\
				{if _n >= 1} \
						{if !_items[0].selected  && (_selitm_index > 0) } \
						     {if !_noNumbers} <a href="#" onclick="${_searchFunName}(1);return false;" class="itm" hidefocus="true" target="_self">首页 </a> {/if}\
						     <a href="#"  onclick="${_searchFunName}(${parseInt(_pagePrevNext_currentPageNum-1)});return false;" class="itm" hidefocus="true" target="_self">上一页</a>\
						{/if}\
						{if !_noNumbers}\
							{for _item in _items}\
								<a href="#" hidefocus="true" onclick="${_searchFunName}(${_item.pageNum});return false;" class="itm{if _item.selected} selitm{/if}"  target="_self">${_item.pageNum}</a>\
							{/for}\
						{/if}\
						{if !_items[_n - 1].selected && (_selitm_index < _n)}<a href="#" onclick="${_searchFunName}(${parseInt(_pagePrevNext_currentPageNum+1)});return false;" class="itm" hidefocus="true" target="_self">下一页</a>\
						   {if !_noNumbers}<a href="#" onclick="${_searchFunName}(${_pagePrevNext_pageNumMax});return false;" class="itm" hidefocus="true" target="_self">尾页</a>{/if}\
						{/if}\
						<div style="clear:both;"></div>\
					{/if}\
			</div>\
			';	
		try{
			var _pageNavScript_template = createJSTAndParse("_pageNavScript_JST",_pageNavScript_JST);
		}catch(e){
			alert(e);
		}
		var _result = _pageNavScript_template.process({"_items":_items,"_searchFunName":_searchFunName,"_noNumbers":_noNumbers,"_pagePrevNext_pageNumMax":_pagePrevNext_pageNumMax,"_pagePrevNext_pageNumStart":_pagePrevNext_pageNumStart,"_pagePrevNext_currentPageNum":_pagePrevNext_currentPageNum});	
		return _result;
};	



/**
 * 实例化一个 jsWindowManager
 */
var jsWindowManager = new NetEase.JSWindowManager();

/**
 * PlainEditor 控件
 */
NetEase.PlainEditor = Class.create();
NetEase.PlainEditor.prototype = {
	initialize: function(parentId, editorElemId) {
		this.options = Object.extend({
			disabled: false,
			escapeHtml: true,//是否把输入的内容eacape掉，及把<转成&lt;等。
			width: 0,//传入０表示自动获取宽度，非０正值表示设置的宽度	
			height: 280,//默认高度，px
			maxlen: 65535//最多输入字数
		}, arguments[2] || {});			
		this.parentId = parentId;
		this.editorElemId = editorElemId;
		this.isExceedMaxLen = false;
		this.editor = null;
		this._load();
		return this;
	},
	focus: function(){
		this.editor.focus();
	},
	
	_load: function(){
		var editorElem;
		if ((editorElem = $(this.editorElemId)) != null) {
			var widthStr = "width:99%;";
			if (this.options.width > 0)
				widthStr = "width:" + this.options.width + "px;";
			var disabledStr = "";
			if (this.options.disabled)
				disabledStr = ' disabled=\'disabled\' '; 
			editorElem.innerHTML = '<div id="plainDiv' + this.parentId + '" ><textarea class="comment_plaineditor" id="plainEditor' + this.parentId + '" style="' + widthStr + 'height:' + this.options.height + 'px;" ' + disabledStr + '></textarea></div>';

			this.editor = $("plainEditor" + this.parentId);
			
		}
	},
	
	_exceedMaxLen: function(content) {
		if (content.length > this.options.maxlen) {
			return true;
		} else
			return false;
	},
	
	getContent: function(){
	    var sourceEditor = $("plainEditor" + this.parentId);
	    if (sourceEditor != null) {
	   		var content = sourceEditor.value;
	   		this.isExceedMaxLen = this._exceedMaxLen(content);
	   		if (this.options.escapeHtml == true) {
	   			content = toDHTML(content);
	   			//content = content.escapeHTML();	   			
	   		}	    	
	    	return content;
	    } else
	    	return '';
	},
	
	IsExceedMaxLen: function() {
		return this.isExceedMaxLen;
	},
	
	emptyContent: function() {
		var sourceEditor = $("plainEditor" + this.parentId);
	    if (sourceEditor != null) {
	    	sourceEditor.value = '';
	    }
	}
}

/**
 * 省份城市
 */
 
var otherCounty="其他";var provinceArray=[["未设置","-区域-"],["label","-直辖市-"],["北京市","北京"],["上海市","上海"],["天津市","天津"],["重庆市","重庆"],["label","-省份-"],["浙江省","浙江"],["江苏省","江苏"],["广东省","广东"],["福建省","福建"],["湖南省","湖南"],["湖北省","湖北"],["辽宁省","辽宁"],["吉林省","吉林"],["黑龙江省","黑龙江"],["河北省","河北"],["河南省","河南"],["山东省","山东"],["陕西省","陕西"],["甘肃省","甘肃"],["青海省","青海"],["新疆维吾尔自治区","新疆"],["山西省","山西"],["四川省","四川"],["贵州省","贵州"],["安徽省","安徽"],["江西省","江西"],["云南省","云南"],["内蒙古自治区","内蒙古"],["广西壮族自治区","广西"],["西藏自治区","西藏"],["宁夏回族自治区","宁夏"],["海南省","海南"],["label","-港澳台-"],["香港特别行政区","香港"],["澳门特别行政区","澳门"],["台湾省","台湾"],["label","-其 他-"],["海外","海外"],["其他","其他"]];var cc=0;function change_area(province,city){var countrySelect=document.getElementById(province);var cg=countrySelect.options[countrySelect.selectedIndex].value;var citySelect=document.getElementById(city);citySelect.style.display='';citySelect.options[0]=new Option("-城市-","");var j=1;for(var i=0;i<coutryAndCity.length;i++){if(coutryAndCity[i].country==cg){citySelect.options[j]=new Option(coutryAndCity[i].cityValue,coutryAndCity[i].cityText);j++;}}if(cc>j){for(var ii=cc;ii>=j;ii--){citySelect.options[ii]=null;}}cc=j;}function CityObject(aData,aValue,aText){this.country=aData;this.cityValue=aValue;this.cityText=aText;}var coutryAndCity=new Array(new CityObject('未设置','-城市-','未设置'),new CityObject('北京市','东城区','东城区'),new CityObject('北京市','西城区','西城区'),new CityObject('北京市','崇文区','崇文区'),new CityObject('北京市','宣武区','宣武区'),new CityObject('北京市','朝阳区','朝阳区'),new CityObject('北京市','丰台区','丰台区'),new CityObject('北京市','石景山区','石景山区'),new CityObject('北京市','海淀区','海淀区'),new CityObject('北京市','门头沟区','门头沟区'),new CityObject('北京市','房山区','房山区'),new CityObject('北京市','通州区','通州区'),new CityObject('北京市','顺义区','顺义区'),new CityObject('北京市','昌平区','昌平区'),new CityObject('北京市','大兴区','大兴区'),new CityObject('北京市','怀柔区','怀柔区'),new CityObject('北京市','平谷区','平谷区'),new CityObject('北京市','密云县','密云县'),new CityObject('北京市','延庆县','延庆县'),new CityObject('天津市','和平区','和平区'),new CityObject('天津市','河东区','河东区'),new CityObject('天津市','河西区','河西区'),new CityObject('天津市','南开区','南开区'),new CityObject('天津市','河北区','河北区'),new CityObject('天津市','红桥区','红桥区'),new CityObject('天津市','塘沽区','塘沽区'),new CityObject('天津市','汉沽区','汉沽区'),new CityObject('天津市','大港区','大港区'),new CityObject('天津市','东丽区','东丽区'),new CityObject('天津市','西青区','西青区'),new CityObject('天津市','津南区','津南区'),new CityObject('天津市','北辰区','北辰区'),new CityObject('天津市','武清区','武清区'),new CityObject('天津市','宝坻区','宝坻区'),new CityObject('天津市','宁河县','宁河县'),new CityObject('天津市','静海县','静海县'),new CityObject('天津市','蓟县','蓟县'),new CityObject('河北省','石家庄市','石家庄市'),new CityObject('河北省','唐山市','唐山市'),new CityObject('河北省','秦皇岛市','秦皇岛市'),new CityObject('河北省','邯郸市','邯郸市'),new CityObject('河北省','邢台市','邢台市'),new CityObject('河北省','保定市','保定市'),new CityObject('河北省','张家口市','张家口市'),new CityObject('河北省','承德市','承德市'),new CityObject('河北省','沧州市','沧州市'),new CityObject('河北省','廊坊市','廊坊市'),new CityObject('河北省','衡水市','衡水市'),new CityObject('山西省','太原市','太原市'),new CityObject('山西省','大同市','大同市'),new CityObject('山西省','阳泉市','阳泉市'),new CityObject('山西省','长治市','长治市'),new CityObject('山西省','晋城市','晋城市'),new CityObject('山西省','朔州市','朔州市'),new CityObject('山西省','晋中市','晋中市'),new CityObject('山西省','运城市','运城市'),new CityObject('山西省','忻州市','忻州市'),new CityObject('山西省','临汾市','临汾市'),new CityObject('山西省','吕梁市','吕梁市'),new CityObject('内蒙古自治区','呼和浩特市','呼和浩特市'),new CityObject('内蒙古自治区','包头市','包头市'),new CityObject('内蒙古自治区','乌海市','乌海市'),new CityObject('内蒙古自治区','赤峰市','赤峰市'),new CityObject('内蒙古自治区','通辽市','通辽市'),new CityObject('内蒙古自治区','鄂尔多斯市','鄂尔多斯市'),new CityObject('内蒙古自治区','呼伦贝尔市','呼伦贝尔市'),new CityObject('内蒙古自治区','巴彦淖尔市','巴彦淖尔市'),new CityObject('内蒙古自治区','乌兰察布市','乌兰察布市'),new CityObject('内蒙古自治区','兴安盟','兴安盟'),new CityObject('内蒙古自治区','锡林郭勒盟','锡林郭勒盟'),new CityObject('内蒙古自治区','阿拉善盟','阿拉善盟'),new CityObject('辽宁省','沈阳市','沈阳市'),new CityObject('辽宁省','大连市','大连市'),new CityObject('辽宁省','鞍山市','鞍山市'),new CityObject('辽宁省','抚顺市','抚顺市'),new CityObject('辽宁省','本溪市','本溪市'),new CityObject('辽宁省','丹东市','丹东市'),new CityObject('辽宁省','锦州市','锦州市'),new CityObject('辽宁省','营口市','营口市'),new CityObject('辽宁省','阜新市','阜新市'),new CityObject('辽宁省','辽阳市','辽阳市'),new CityObject('辽宁省','盘锦市','盘锦市'),new CityObject('辽宁省','铁岭市','铁岭市'),new CityObject('辽宁省','朝阳市','朝阳市'),new CityObject('辽宁省','葫芦岛市','葫芦岛市'),new CityObject('吉林省','长春市','长春市'),new CityObject('吉林省','吉林市','吉林市'),new CityObject('吉林省','四平市','四平市'),new CityObject('吉林省','辽源市','辽源市'),new CityObject('吉林省','通化市','通化市'),new CityObject('吉林省','白山市','白山市'),new CityObject('吉林省','松原市','松原市'),new CityObject('吉林省','白城市','白城市'),new CityObject('吉林省','延边朝鲜族自治州','延边朝鲜族自治州'),new CityObject('黑龙江省','哈尔滨市','哈尔滨市'),new CityObject('黑龙江省','齐齐哈尔市','齐齐哈尔市'),new CityObject('黑龙江省','鸡西市','鸡西市'),new CityObject('黑龙江省','鹤岗市','鹤岗市'),new CityObject('黑龙江省','双鸭山市','双鸭山市'),new CityObject('黑龙江省','大庆市','大庆市'),new CityObject('黑龙江省','伊春市','伊春市'),new CityObject('黑龙江省','佳木斯市','佳木斯市'),new CityObject('黑龙江省','七台河市','七台河市'),new CityObject('黑龙江省','牡丹江市','牡丹江市'),new CityObject('黑龙江省','黑河市','黑河市'),new CityObject('黑龙江省','绥化市','绥化市'),new CityObject('黑龙江省','大兴安岭地区','大兴安岭地区'),new CityObject('上海市','黄浦区','黄浦区'),new CityObject('上海市','卢湾区','卢湾区'),new CityObject('上海市','徐汇区','徐汇区'),new CityObject('上海市','长宁区','长宁区'),new CityObject('上海市','静安区','静安区'),new CityObject('上海市','普陀区','普陀区'),new CityObject('上海市','闸北区','闸北区'),new CityObject('上海市','虹口区','虹口区'),new CityObject('上海市','杨浦区','杨浦区'),new CityObject('上海市','闵行区','闵行区'),new CityObject('上海市','宝山区','宝山区'),new CityObject('上海市','嘉定区','嘉定区'),new CityObject('上海市','浦东新区','浦东新区'),new CityObject('上海市','金山区','金山区'),new CityObject('上海市','松江区','松江区'),new CityObject('上海市','青浦区','青浦区'),new CityObject('上海市','南汇区','南汇区'),new CityObject('上海市','奉贤区','奉贤区'),new CityObject('上海市','崇明县','崇明县'),new CityObject('江苏省','南京市','南京市'),new CityObject('江苏省','无锡市','无锡市'),new CityObject('江苏省','徐州市','徐州市'),new CityObject('江苏省','常州市','常州市'),new CityObject('江苏省','苏州市','苏州市'),new CityObject('江苏省','南通市','南通市'),new CityObject('江苏省','连云港市','连云港市'),new CityObject('江苏省','淮安市','淮安市'),new CityObject('江苏省','盐城市','盐城市'),new CityObject('江苏省','扬州市','扬州市'),new CityObject('江苏省','镇江市','镇江市'),new CityObject('江苏省','泰州市','泰州市'),new CityObject('江苏省','宿迁市','宿迁市'),new CityObject('浙江省','杭州市','杭州市'),new CityObject('浙江省','宁波市','宁波市'),new CityObject('浙江省','温州市','温州市'),new CityObject('浙江省','嘉兴市','嘉兴市'),new CityObject('浙江省','湖州市','湖州市'),new CityObject('浙江省','绍兴市','绍兴市'),new CityObject('浙江省','金华市','金华市'),new CityObject('浙江省','衢州市','衢州市'),new CityObject('浙江省','舟山市','舟山市'),new CityObject('浙江省','台州市','台州市'),new CityObject('浙江省','丽水市','丽水市'),new CityObject('安徽省','合肥市','合肥市'),new CityObject('安徽省','芜湖市','芜湖市'),new CityObject('安徽省','蚌埠市','蚌埠市'),new CityObject('安徽省','淮南市','淮南市'),new CityObject('安徽省','马鞍山市','马鞍山市'),new CityObject('安徽省','淮北市','淮北市'),new CityObject('安徽省','铜陵市','铜陵市'),new CityObject('安徽省','安庆市','安庆市'),new CityObject('安徽省','黄山市','黄山市'),new CityObject('安徽省','滁州市','滁州市'),new CityObject('安徽省','阜阳市','阜阳市'),new CityObject('安徽省','宿州市','宿州市'),new CityObject('安徽省','巢湖市','巢湖市'),new CityObject('安徽省','六安市','六安市'),new CityObject('安徽省','亳州市','亳州市'),new CityObject('安徽省','池州市','池州市'),new CityObject('安徽省','宣城市','宣城市'),new CityObject('福建省','福州市','福州市'),new CityObject('福建省','厦门市','厦门市'),new CityObject('福建省','莆田市','莆田市'),new CityObject('福建省','三明市','三明市'),new CityObject('福建省','泉州市','泉州市'),new CityObject('福建省','漳州市','漳州市'),new CityObject('福建省','南平市','南平市'),new CityObject('福建省','龙岩市','龙岩市'),new CityObject('福建省','宁德市','宁德市'),new CityObject('江西省','南昌市','南昌市'),new CityObject('江西省','景德镇市','景德镇市'),new CityObject('江西省','萍乡市','萍乡市'),new CityObject('江西省','九江市','九江市'),new CityObject('江西省','新余市','新余市'),new CityObject('江西省','鹰潭市','鹰潭市'),new CityObject('江西省','赣州市','赣州市'),new CityObject('江西省','吉安市','吉安市'),new CityObject('江西省','宜春市','宜春市'),new CityObject('江西省','抚州市','抚州市'),new CityObject('江西省','上饶市','上饶市'),new CityObject('山东省','济南市','济南市'),new CityObject('山东省','青岛市','青岛市'),new CityObject('山东省','淄博市','淄博市'),new CityObject('山东省','枣庄市','枣庄市'),new CityObject('山东省','东营市','东营市'),new CityObject('山东省','烟台市','烟台市'),new CityObject('山东省','潍坊市','潍坊市'),new CityObject('山东省','济宁市','济宁市'),new CityObject('山东省','泰安市','泰安市'),new CityObject('山东省','威海市','威海市'),new CityObject('山东省','日照市','日照市'),new CityObject('山东省','莱芜市','莱芜市'),new CityObject('山东省','临沂市','临沂市'),new CityObject('山东省','德州市','德州市'),new CityObject('山东省','聊城市','聊城市'),new CityObject('山东省','滨州市','滨州市'),new CityObject('山东省','菏泽市','菏泽市'),new CityObject('河南省','郑州市','郑州市'),new CityObject('河南省','开封市','开封市'),new CityObject('河南省','洛阳市','洛阳市'),new CityObject('河南省','平顶山市','平顶山市'),new CityObject('河南省','安阳市','安阳市'),new CityObject('河南省','鹤壁市','鹤壁市'),new CityObject('河南省','新乡市','新乡市'),new CityObject('河南省','焦作市','焦作市'),new CityObject('河南省','濮阳市','濮阳市'),new CityObject('河南省','许昌市','许昌市'),new CityObject('河南省','漯河市','漯河市'),new CityObject('河南省','三门峡市','三门峡市'),new CityObject('河南省','南阳市','南阳市'),new CityObject('河南省','商丘市','商丘市'),new CityObject('河南省','信阳市','信阳市'),new CityObject('河南省','周口市','周口市'),new CityObject('河南省','驻马店市','驻马店市'),new CityObject('河南省','济源市','济源市'),new CityObject('湖北省','武汉市','武汉市'),new CityObject('湖北省','黄石市','黄石市'),new CityObject('湖北省','十堰市','十堰市'),new CityObject('湖北省','宜昌市','宜昌市'),new CityObject('湖北省','襄樊市','襄樊市'),new CityObject('湖北省','鄂州市','鄂州市'),new CityObject('湖北省','荆门市','荆门市'),new CityObject('湖北省','孝感市','孝感市'),new CityObject('湖北省','荆州市','荆州市'),new CityObject('湖北省','黄冈市','黄冈市'),new CityObject('湖北省','咸宁市','咸宁市'),new CityObject('湖北省','随州市','随州市'),new CityObject('湖北省','恩施土家族苗族自治州','恩施土家族苗族自治州'),new CityObject('湖北省','仙桃市','仙桃市'),new CityObject('湖北省','潜江市','潜江市'),new CityObject('湖北省','天门市','天门市'),new CityObject('湖北省','神农架林区','神农架林区'),new CityObject('湖南省','长沙市','长沙市'),new CityObject('湖南省','株洲市','株洲市'),new CityObject('湖南省','湘潭市','湘潭市'),new CityObject('湖南省','衡阳市','衡阳市'),new CityObject('湖南省','邵阳市','邵阳市'),new CityObject('湖南省','岳阳市','岳阳市'),new CityObject('湖南省','常德市','常德市'),new CityObject('湖南省','张家界市','张家界市'),new CityObject('湖南省','益阳市','益阳市'),new CityObject('湖南省','郴州市','郴州市'),new CityObject('湖南省','永州市','永州市'),new CityObject('湖南省','怀化市','怀化市'),new CityObject('湖南省','娄底市','娄底市'),new CityObject('湖南省','湘西土家族苗族自治州','湘西土家族苗族自治州'),new CityObject('广东省','广州市','广州市'),new CityObject('广东省','韶关市','韶关市'),new CityObject('广东省','深圳市','深圳市'),new CityObject('广东省','珠海市','珠海市'),new CityObject('广东省','汕头市','汕头市'),new CityObject('广东省','佛山市','佛山市'),new CityObject('广东省','江门市','江门市'),new CityObject('广东省','湛江市','湛江市'),new CityObject('广东省','茂名市','茂名市'),new CityObject('广东省','肇庆市','肇庆市'),new CityObject('广东省','惠州市','惠州市'),new CityObject('广东省','梅州市','梅州市'),new CityObject('广东省','汕尾市','汕尾市'),new CityObject('广东省','河源市','河源市'),new CityObject('广东省','阳江市','阳江市'),new CityObject('广东省','清远市','清远市'),new CityObject('广东省','东莞市','东莞市'),new CityObject('广东省','中山市','中山市'),new CityObject('广东省','潮州市','潮州市'),new CityObject('广东省','揭阳市','揭阳市'),new CityObject('广东省','云浮市','云浮市'),new CityObject('广西壮族自治区','南宁市','南宁市'),new CityObject('广西壮族自治区','柳州市','柳州市'),new CityObject('广西壮族自治区','桂林市','桂林市'),new CityObject('广西壮族自治区','梧州市','梧州市'),new CityObject('广西壮族自治区','北海市','北海市'),new CityObject('广西壮族自治区','防城港市','防城港市'),new CityObject('广西壮族自治区','钦州市','钦州市'),new CityObject('广西壮族自治区','贵港市','贵港市'),new CityObject('广西壮族自治区','玉林市','玉林市'),new CityObject('广西壮族自治区','百色市','百色市'),new CityObject('广西壮族自治区','贺州市','贺州市'),new CityObject('广西壮族自治区','河池市','河池市'),new CityObject('广西壮族自治区','来宾市','来宾市'),new CityObject('广西壮族自治区','崇左市','崇左市'),new CityObject('海南省','海口市','海口市'),new CityObject('海南省','三亚市','三亚市'),new CityObject('海南省','五指山市','五指山市'),new CityObject('海南省','琼海市','琼海市'),new CityObject('海南省','儋州市','儋州市'),new CityObject('海南省','文昌市','文昌市'),new CityObject('海南省','万宁市','万宁市'),new CityObject('海南省','东方市','东方市'),new CityObject('海南省','定安县','定安县'),new CityObject('海南省','屯昌县','屯昌县'),new CityObject('海南省','澄迈县','澄迈县'),new CityObject('海南省','临高县','临高县'),new CityObject('海南省','白沙黎族自治县','白沙黎族自治县'),new CityObject('海南省','昌江黎族自治县','昌江黎族自治县'),new CityObject('海南省','乐东黎族自治县','乐东黎族自治县'),new CityObject('海南省','陵水黎族自治县','陵水黎族自治县'),new CityObject('海南省','保亭黎族苗族自治县','保亭黎族苗族自治县'),new CityObject('海南省','琼中黎族苗族自治县','琼中黎族苗族自治县'),new CityObject('海南省','西沙群岛','西沙群岛'),new CityObject('海南省','南沙群岛','南沙群岛'),new CityObject('海南省','中沙群岛的岛礁及其海域','中沙群岛的岛礁及其海域'),new CityObject('重庆市','万州区','万州区'),new CityObject('重庆市','涪陵区','涪陵区'),new CityObject('重庆市','渝中区','渝中区'),new CityObject('重庆市','大渡口区','大渡口区'),new CityObject('重庆市','江北区','江北区'),new CityObject('重庆市','沙坪坝区','沙坪坝区'),new CityObject('重庆市','九龙坡区','九龙坡区'),new CityObject('重庆市','南岸区','南岸区'),new CityObject('重庆市','北碚区','北碚区'),new CityObject('重庆市','万盛区','万盛区'),new CityObject('重庆市','双桥区','双桥区'),new CityObject('重庆市','渝北区','渝北区'),new CityObject('重庆市','巴南区','巴南区'),new CityObject('重庆市','黔江区','黔江区'),new CityObject('重庆市','长寿区','长寿区'),new CityObject('重庆市','綦江县','綦江县'),new CityObject('重庆市','潼南县','潼南县'),new CityObject('重庆市','铜梁县','铜梁县'),new CityObject('重庆市','大足县','大足县'),new CityObject('重庆市','荣昌县','荣昌县'),new CityObject('重庆市','璧山县','璧山县'),new CityObject('重庆市','梁平县','梁平县'),new CityObject('重庆市','城口县','城口县'),new CityObject('重庆市','丰都县','丰都县'),new CityObject('重庆市','垫江县','垫江县'),new CityObject('重庆市','武隆县','武隆县'),new CityObject('重庆市','忠县','忠县'),new CityObject('重庆市','开县','开县'),new CityObject('重庆市','云阳县','云阳县'),new CityObject('重庆市','奉节县','奉节县'),new CityObject('重庆市','巫山县','巫山县'),new CityObject('重庆市','巫溪县','巫溪县'),new CityObject('重庆市','石柱土家族自治县','石柱土家族自治县'),new CityObject('重庆市','秀山土家族苗族自治县','秀山土家族苗族自治县'),new CityObject('重庆市','酉阳土家族苗族自治县','酉阳土家族苗族自治县'),new CityObject('重庆市','彭水苗族土家族自治县','彭水苗族土家族自治县'),new CityObject('重庆市','江津市','江津市'),new CityObject('重庆市','合川市','合川市'),new CityObject('重庆市','永川市','永川市'),new CityObject('重庆市','南川市','南川市'),new CityObject('四川省','成都市','成都市'),new CityObject('四川省','自贡市','自贡市'),new CityObject('四川省','攀枝花市','攀枝花市'),new CityObject('四川省','泸州市','泸州市'),new CityObject('四川省','德阳市','德阳市'),new CityObject('四川省','绵阳市','绵阳市'),new CityObject('四川省','广元市','广元市'),new CityObject('四川省','遂宁市','遂宁市'),new CityObject('四川省','内江市','内江市'),new CityObject('四川省','乐山市','乐山市'),new CityObject('四川省','南充市','南充市'),new CityObject('四川省','眉山市','眉山市'),new CityObject('四川省','宜宾市','宜宾市'),new CityObject('四川省','广安市','广安市'),new CityObject('四川省','达州市','达州市'),new CityObject('四川省','雅安市','雅安市'),new CityObject('四川省','巴中市','巴中市'),new CityObject('四川省','资阳市','资阳市'),new CityObject('四川省','阿坝藏族羌族自治州','阿坝藏族羌族自治州'),new CityObject('四川省','甘孜藏族自治州','甘孜藏族自治州'),new CityObject('四川省','凉山彝族自治州','凉山彝族自治州'),new CityObject('贵州省','贵阳市','贵阳市'),new CityObject('贵州省','六盘水市','六盘水市'),new CityObject('贵州省','遵义市','遵义市'),new CityObject('贵州省','安顺市','安顺市'),new CityObject('贵州省','铜仁地区','铜仁地区'),new CityObject('贵州省','黔西南布依族苗族自治州','黔西南布依族苗族自治州'),new CityObject('贵州省','毕节地区','毕节地区'),new CityObject('贵州省','黔东南苗族侗族自治州','黔东南苗族侗族自治州'),new CityObject('贵州省','黔南布依族苗族自治州','黔南布依族苗族自治州'),new CityObject('云南省','昆明市','昆明市'),new CityObject('云南省','曲靖市','曲靖市'),new CityObject('云南省','玉溪市','玉溪市'),new CityObject('云南省','保山市','保山市'),new CityObject('云南省','昭通市','昭通市'),new CityObject('云南省','丽江市','丽江市'),new CityObject('云南省','思茅市','思茅市'),new CityObject('云南省','临沧市','临沧市'),new CityObject('云南省','楚雄彝族自治州','楚雄彝族自治州'),new CityObject('云南省','红河哈尼族彝族自治州','红河哈尼族彝族自治州'),new CityObject('云南省','文山壮族苗族自治州','文山壮族苗族自治州'),new CityObject('云南省','西双版纳傣族自治州','西双版纳傣族自治州'),new CityObject('云南省','大理白族自治州','大理白族自治州'),new CityObject('云南省','德宏傣族景颇族自治州','德宏傣族景颇族自治州'),new CityObject('云南省','怒江傈僳族自治州','怒江傈僳族自治州'),new CityObject('云南省','迪庆藏族自治州','迪庆藏族自治州'),new CityObject('西藏自治区','拉萨市','拉萨市'),new CityObject('西藏自治区','昌都地区','昌都地区'),new CityObject('西藏自治区','山南地区','山南地区'),new CityObject('西藏自治区','日喀则地区','日喀则地区'),new CityObject('西藏自治区','那曲地区','那曲地区'),new CityObject('西藏自治区','阿里地区','阿里地区'),new CityObject('西藏自治区','林芝地区','林芝地区'),new CityObject('陕西省','西安市','西安市'),new CityObject('陕西省','铜川市','铜川市'),new CityObject('陕西省','宝鸡市','宝鸡市'),new CityObject('陕西省','咸阳市','咸阳市'),new CityObject('陕西省','渭南市','渭南市'),new CityObject('陕西省','延安市','延安市'),new CityObject('陕西省','汉中市','汉中市'),new CityObject('陕西省','榆林市','榆林市'),new CityObject('陕西省','安康市','安康市'),new CityObject('陕西省','商洛市','商洛市'),new CityObject('甘肃省','兰州市','兰州市'),new CityObject('甘肃省','嘉峪关市','嘉峪关市'),new CityObject('甘肃省','金昌市','金昌市'),new CityObject('甘肃省','白银市','白银市'),new CityObject('甘肃省','天水市','天水市'),new CityObject('甘肃省','武威市','武威市'),new CityObject('甘肃省','张掖市','张掖市'),new CityObject('甘肃省','平凉市','平凉市'),new CityObject('甘肃省','酒泉市','酒泉市'),new CityObject('甘肃省','庆阳市','庆阳市'),new CityObject('甘肃省','定西市','定西市'),new CityObject('甘肃省','陇南市','陇南市'),new CityObject('甘肃省','临夏回族自治州','临夏回族自治州'),new CityObject('甘肃省','甘南藏族自治州','甘南藏族自治州'),new CityObject('青海省','西宁市','西宁市'),new CityObject('青海省','海东地区','海东地区'),new CityObject('青海省','海北藏族自治州','海北藏族自治州'),new CityObject('青海省','黄南藏族自治州','黄南藏族自治州'),new CityObject('青海省','海南藏族自治州','海南藏族自治州'),new CityObject('青海省','果洛藏族自治州','果洛藏族自治州'),new CityObject('青海省','玉树藏族自治州','玉树藏族自治州'),new CityObject('青海省','海西蒙古族藏族自治州','海西蒙古族藏族自治州'),new CityObject('宁夏回族自治区','银川市','银川市'),new CityObject('宁夏回族自治区','石嘴山市','石嘴山市'),new CityObject('宁夏回族自治区','吴忠市','吴忠市'),new CityObject('宁夏回族自治区','固原市','固原市'),new CityObject('宁夏回族自治区','中卫市','中卫市'),new CityObject('新疆维吾尔自治区','乌鲁木齐市','乌鲁木齐市'),new CityObject('新疆维吾尔自治区','克拉玛依市','克拉玛依市'),new CityObject('新疆维吾尔自治区','吐鲁番地区','吐鲁番地区'),new CityObject('新疆维吾尔自治区','哈密地区','哈密地区'),new CityObject('新疆维吾尔自治区','昌吉回族自治州','昌吉回族自治州'),new CityObject('新疆维吾尔自治区','博尔塔拉蒙古自治州','博尔塔拉蒙古自治州'),new CityObject('新疆维吾尔自治区','巴音郭楞蒙古自治州','巴音郭楞蒙古自治州'),new CityObject('新疆维吾尔自治区','阿克苏地区','阿克苏地区'),new CityObject('新疆维吾尔自治区','克孜勒苏柯尔克孜自治州','克孜勒苏柯尔克孜自治州'),new CityObject('新疆维吾尔自治区','喀什地区','喀什地区'),new CityObject('新疆维吾尔自治区','和田地区','和田地区'),new CityObject('新疆维吾尔自治区','伊犁哈萨克自治州','伊犁哈萨克自治州'),new CityObject('新疆维吾尔自治区','塔城地区','塔城地区'),new CityObject('新疆维吾尔自治区','阿勒泰地区','阿勒泰地区'),new CityObject('新疆维吾尔自治区','石河子市','石河子市'),new CityObject('新疆维吾尔自治区','阿拉尔市','阿拉尔市'),new CityObject('新疆维吾尔自治区','图木舒克市','图木舒克市'),new CityObject('新疆维吾尔自治区','五家渠市','五家渠市'),new CityObject('香港特别行政区','香港','香港'),new CityObject('澳门特别行政区','澳门','澳门'),new CityObject('台湾省','台湾','台湾'),new CityObject('海外','海外','海外'),new CityObject('其他','其他','其他'),new CityObject('End','End','End'));

/**
 * 视频拍照相关代码，默认回调函数为： postUploadCamaraPic
 * function postUploadCamaraPic(photo){}
 */
function setResult(photoId){
	var tempImageUrl = "http://blog.163.com/"+currentUser.userName+"/album/prevPhDownload.do?host="+currentUser.userName+"&photoId="+photoId;;
	$_ActBean.uploadCamaraPic($_itemId,tempImageUrl,postUploadCamaraPic);
}
/**
 * AboutMeBean
 */
if (AboutMeBean == null) var AboutMeBean = {};
AboutMeBean._path = '/public/dwr';
if ( typeof currentUser != 'undefined' && currentUser.userName) AboutMeBean._path = '/'+currentUser.userName+'/dwr';
AboutMeBean.getCityHighSchools = function(p0, callback) {
  dwr.engine._execute(AboutMeBean._path, 'AboutMeBean', 'getCityHighSchools', p0, callback);
}
AboutMeBean.getProColleges = function(p0, callback) {
  dwr.engine._execute(AboutMeBean._path, 'AboutMeBean', 'getProColleges', p0, callback);
}



/*********************************活动公用JS函数库  *********************************************/
/**
 * 登录网易博客
 */ 
function login(loginedUrl,bRefresh){
	login163();
	/**
	if (typeof	bRefresh =="undefined") bRefresh = true;
	if (!loginedUrl)
		loginedUrl = window.location.href;
	
	if (loginedUrl.indexOf("http://") <0){		
		var curUrl = window.location.href;
		var index = curUrl.lastIndexOf("/");		
		loginedUrl = curUrl.substring(0,index+1)+loginedUrl;
	}
	if (currentUser.userId ==0)
		showLoginDlg('http://blog.163.com',loginedUrl);
	else{
		if ((bRefresh==false) && window.location.href==loginedUrl) dwrInfo('已登录！', 'info');	else
		window.location.href=loginedUrl;
		return false;
	}*/
}
/**
 * 退出网易博客
 */
function logout(){
	window.location.href="http://blog.163.com/exit.do?target="+encodeURIComponent(window.location.href);
	return false;
}

/**
 * 生成.do的URL
 */
function makeDoUrl(action){
	var url = window.location.href;
	var index = url.indexOf(".do")
	return url.substring(0,index)+".do?action="+action;
}

/**
 * 填充找朋友的年龄范围，默认为18-25岁
 */
function initAgeSelectOps(ageFromId,ageToId){
	var ageFrom = document.getElementById(ageFromId);
	var ageTo = document.getElementById(ageToId);
	ageFrom.options[0] = new Option('不限', '0');
	ageTo.options[0] = new Option('不限', '101');
	for(var i = 1; i < 101; i++){
		ageFrom.options[i] = new Option(i,i);
		ageTo.options[i] = new Option(i,i);
	}	
}
function setDefaultAgeSelect(ageFromId,ageToId){
	var ageFrom = document.getElementById(ageFromId);
	var ageTo = document.getElementById(ageToId);
	ageFrom.options[18].selected = true;
	ageTo.options[25].selected = true;
}
if (BlogUserBean == null) var BlogUserBean = {};
BlogUserBean.getProvinceAndCity = function(callback) {dwr.engine._execute('http://blog.163.com/dwr', 'UserBean', 'getProvinceAndCity', false, false, callback);}
function getProvinceAndCity(_callBack){
	var pac = Cookie.get("PAC");
	if(pac == null){
		BlogUserBean.getProvinceAndCity({callback:function(pac){
			var offset = pac.indexOf(' ');
			var province = pac.substring(0, offset);
			var city = pac.substring(offset + 1, pac.length);
			_callBack(province,city);			
			Cookie.set("PAC", pac, 10, null,null);
		} });	
	}else{	
		var offset = pac.indexOf(' ');
		var province = pac.substring(0, offset);
		var city = pac.substring(offset + 1, pac.length);
		_callBack(province,city);		
	}
}

/**
 * 清除textarea/input中的默认值
 */
function clearDefault(id,defaultValue){	  
	if ($(id).value==defaultValue)
		$(id).value ="";	       
	else if ($(id).value=="")
	    $(id).value =defaultValue;
	return false;
}


/**
 * select填充相关函数
 */
function clearSelectOptions(nodeString){
	var node = $(nodeString);
    var len = node.options.length;
    for(var i=0; i<len; i++){
    	node.remove(0);
    }
}

/**
 * 初始化select默认值
 * id: select的id
 * value： 需设置的默认值
 */
function firstSelect(id,value) {
	if(value == null || value == '' || value == 'any') return;
	var sTmp = $(id);
	for (var i=0; i < sTmp.length; i++){
		if(sTmp.options[i].value == value || sTmp.options[i].value.indexOf(value) == 0) {
			sTmp.options[i].selected = true;
			return;
		}
	}
}
 /**
  * 初始化option list
  */
function fillSelectWithArray(nodeString,array,defaultValue) {

	var node = $(nodeString);
	clearSelectOptions(node);
	var nodelen = node.length;
	if (defaultValue) node.options[nodelen++] = new Option(defaultValue,"");	
			;
	array.each(
		function(obj){						
			node.options[nodelen] = new Option(obj,obj);	
			nodelen++;
		}
	);
}

/**
 * 初始化school相关option list
 */
function fillSchoolSelect(nodeString,array) {
	var node = $(nodeString);
	var optGroup;
	var option;
	var len = array.length;
	
	if(nodeString == 'hsprovince' || nodeString == 'collegepro')
		len = len - 7;
	for(var i=0;i<len;i++){
		if(array[i][0]=='label'){
			if(optGroup){
				node.appendChild(optGroup);
			}
			optGroup = document.createElement('optgroup');
			optGroup.label = array[i][1];
		}else{
			option=document.createElement("option");
			option.innerHTML= array[i][1];
			option.value = array[i][0];
			if(optGroup){
				optGroup.appendChild(option);
			}else{
				node.appendChild(option);
			}
		}
	}
	if(optGroup){
		node.appendChild(optGroup);
	}
}

/**
 * 初始化option list
 */
function fillSelect(nodeString,array) {
	var node = $(nodeString);
	var nodelen = node.length;
	var optGroup;
	var option;
	for(var i=nodelen,j=0;i<array.length+nodelen;i++,j++){	
		if(array[j][0]=='label'){
			if(optGroup){
				node.appendChild(optGroup);
			}
			optGroup = document.createElement('optgroup');
			optGroup.label = array[j][1];
		}else{
			option=document.createElement("option");
			option.innerHTML= array[j][1];
			option.value = array[j][0];
			if(optGroup){
				optGroup.appendChild(option);
			}else{
				node.appendChild(option);
			}
		}
	}
	if(optGroup){
		node.appendChild(optGroup);
	}
}

/**
 * 根据传入的photo对象，获得原图地址
 */
function  getOriginalImageUrl(photo){
		var url="http://"+DomainMap.getParentDomain(photo.userName)+"/prevPhDownload.do?host="+photo.userName+"&photoId="+photo.id;
		return url;
}
function callback(){}

/**
 * 切换页面元素的显示和隐藏
 */
function toggle(elementId){
  var element=$(elementId);
  if (element.style.display || element.style.display=="none")element.style.display="";
  else element.style.display="none";
}

/**
 * 刷新当前页面
 */
function postReloadWin(){
	window.location.reload();
}


function stripJSessionId(){
	    var aa = window.location.href;
	    var i = aa.indexOf(";jsessionid")
	    if (i<=0) return;
	    var j = aa.indexOf("?")
	    var newHref = aa.substring(0,i);
	    if (j>0) newHref+=aa.substring(j)
	    window.location.href =newHref
}

/*****
 * findFriend.js
 */

//添加好友，发送消息

function showSendMsg(friendId, friendName,friendNickname){
	if(UD.visitorName == null || UD.visitorName == ""){
		showLoginDlg('blog.163.com');
		return;
	}
	msgTo(friendId, friendName,friendNickname);
}

function showLoginDlg(serverName){
	if(jsWindowManager == null)
		jsWindowManager = new NetEase.JSWindowManager();
	if(g_quickLoginCon == null){
		g_quickLoginCon = new NetEase.QuickLogin("qLoginDiv", serverName, false, {err:false, jsWindowManager:jsWindowManager});
    }else{
		g_quickLoginCon.showWindow();
    }
   	$("$_qLoginDiv").style.display = "";
}

var messageWindow;
var _toNickName; //防止js引号造成HTML未闭合的bug
function msgTo(toId, toName, toNickName){
	if(jsWindowManager == null)
		jsWindowManager = new NetEase.JSWindowManager();	
	if(!messageWindow){
		messageWindow = jsWindowManager.createWindow('remind_message',{
				className:"g_win_6",width: 400, height:230,onTop:true,notKeepPos: true,title:"发送新消息"
			}
		);
	}
	_toNickName = toNickName;
	var s = [];
	s.push('<div>');
	s.push(toNickName.escape());
	s.push('</div>');
	s.push('<div><textarea id="remind_msg" class="g_h_105 g_w_90" onpropertychange="textareaLimit(this, 250)"></textarea></div>');
	s.push('<div class="g_h_30 g_t_center">');
	s.push('<div id="ne_frame_submit"><input type="button" class="btncm btnok" value="确　定" onclick="submitMsg(');
	s.push(toId);
	s.push(', \'' + toName + '\'');
	s.push(');" />');
	s.push('<span>&nbsp;&nbsp;&nbsp;&nbsp;</span>');
	s.push('<input type="button" class="btncm btncc" value="取　消" onclick="closeMsg();" />');
	s.push('</div><div id="ne_frame_info_msg" style="display:none;">处理中...</div>');
	s.push('</div>');
		
	messageWindow.panel.innerHTML= s.join('');
	messageWindow.showWindow();		
	$('remind_msg').focus();
}
	
function submitMsg(toId, toName){
	var _msg = $F("remind_msg").trim(); 
	if(_msg.length==0){alert("消息内容不能为空");return;};					
	if(_msg.length>250){alert("消息长度不能超过250!");return;};
	$("ne_frame_submit").style.display='none';
	$("ne_frame_info_msg").style.display='';		
	
	RemindBean.sendUserMsg( toId, toName, _msg, {
			callback: function(s){
				_afterSubmit(s, toId);
			},
			errorHandler: function(errorString, ex) {
				this._afterSubmit(-1, toId);
				filterWarning(ex, false);;
			}.bind(this)
		});
}
	
function _afterSubmit(s,id){
	if(s >0){
		$('msg_'+id).innerHTML = "发送消息成功!";
		closeMsg();
	}else{
		var _msg;
		switch(s){
			case -3:	_msg = "发送的好友不存在!"; break;
			case -4:	_msg = "消息内容中包含敏感关键字"; break;
			case -5:	_msg = "消息接受者在您的黑名单中，发送失败!"; break;
			case -7:	_msg = "不能给自己发送消息!"; break;
			default:	_msg = "发送消息失败!"; break;
		}
		$('msg_'+id).innerHTML = _msg;
		$("ne_frame_submit").style.display='';
		$("ne_frame_info_msg").style.display='none';				
	}
}

	
function closeMsg(){
	messageWindow.hiddenWindow();		
}

var visitorGroupList;
var inviteWindow;
function showAddFriend(visitorId, childId){
	if(UD.visitorName == null || UD.visitorName == ""){
		showLoginDlg('blog.163.com');
		return;
	}
//	if(this.options.invitedRank == 2){
//		dwrlog("对方拒绝任何添加好友请求","error");
//		return;
//	}
	if(visitorGroupList == null){
		UserBean.getVisitorGroups({callback:function(dataList){
			_initAddFriendHtml(dataList, childId);
		}});
	}else{
		_initAddFriendHtml(visitorGroupList, childId);
	}
}

function _initAddFriendHtml(dataList,childId){
	if(dataList == null){
		dwrlog("对方不允许你加为好友","error");
		return;
	}
	visitorGroupList = dataList;
	if(jsWindowManager == null)
		jsWindowManager = new NetEase.JSWindowManager();	
	if(inviteWindow == null){
		inviteWindow = jsWindowManager.createWindow('invite_friend',{
					className:"g_win_6", width: 400, height:100, notKeepPos: true,onTop:true,title:"加为好友"
				}
			);		
	}
	inviteWindow.panel.innerHTML=
		'<table class="g_c_mvdn" border="0" cellspacing="0" cellpadding="0">\
			   <tr><td class="g_w_20 g_t_right g_t_top">附　　言：</td><td><textarea class="g_h_105 g_w_90" id="ne_friend_msg" onpropertychange="textareaLimit(this, 50)"></textarea></td></tr>\
			   <tr><td class="g_t_top g_t_right">选择分组：</td><td><select nohide="true" style="width:97%;" id="ne_friend_groupid">'+_getSelectOptionForFriend(visitorGroupList)+'</select></td></tr>\
				 <tr><td colspan="2" class="g_t_center">\
						<div id="ne_frame_submit">\
						<input type="button" class="btncm btnok" value="发送请求" onclick="submitAddFriend('+childId+');return false;"/>\
						<span>&nbsp;&nbsp;&nbsp;&nbsp;</span>\
						<input type="button" class="btncm btncc" value="取　消" onclick="closeFocusFrame();return false;"/>\
						</div><div id="ne_frame_info" style="display:none;">处理中...</div>\
				 </td></tr>\
		</table>';
	inviteWindow.showWindow();	
	$('ne_friend_msg').focus();	
}

function _getSelectOptionForFriend(dataList){
	var html='';
	for(var i=0;i<dataList.length;i++){
		html+='<option value="'+dataList[i].id+'">'+dataList[i].groupName.escape()+'</option>';	
	}
	return html;
}
	
function submitAddFriend(childId){
    $('ne_frame_submit').style.display='none';
    $('ne_frame_info').style.display='';
	var msg = $F('ne_friend_msg').trim();
	if(msg.length > 50)
		msg = msg.substr(0, 50);	
	var groupid = $F('ne_friend_groupid');
	UserBean.inviteFriendById(childId, msg, groupid,{
		  callback:function(returnData) {
		  	var message;
			var type;
			if(returnData >= 0){
				message = '已经发送邀请';
				type = "ok";
			}else if(returnData <= -10){
				message="添加好友成功";
				type = "ok";
			}else switch(returnData){
				case -1:
					message="添加失败";
					type = "error";
					break;
				case -2:
					message="已经是你的好友";
					type = "error";
					break;
				case -3:
					message="不能添加自己";
					type = "error";
					break;
				case -4:
					message="匿名用户不能执行此操作";
					type = "error";
					break;	
				case -5:
					message="对方拒绝任何添加好友请求";
					type = "error";
					break;			
				default:
					message="添加失败";
					type = "error";
			}
			inviteWindow.hiddenWindow();
				$('invite_'+childId).innerHTML = message;
		  },
		  errorHandler:function(errorString, ex) {		  	
		  	if(ex=="ExceedFriendsLimit")
		  		$('invite_'+childId).innerHTML = '超过好友总数上限限制';
		  	if(ex.type=="KeyWordRuntimeException")	
		  		alert("你发表的内容包含敏感关键字，不允许发布！");
			inviteWindow.hiddenWindow();
		  }
	});
}

function closeFocusFrame(){
	inviteWindow.hiddenWindow();
}

function textareaLimit(field, maxlen){
	if (field.value.length > maxlen) {		
		field.value = field.value.substring(0, maxlen);
		alert("超过最大字数限制" + maxlen +"个! ");
	}
}

String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"");};
if (UserBean == null) var UserBean = {};
UserBean.inviteFriendById=function(p1,p2,p3,callback){DWREngine._execute('/'+UD.visitorName+'/dwr','UserBean','inviteFriendById',false,false,p1,p2,p3,callback);}
UserBean.getVisitorGroups=function(callback){DWREngine._execute('/'+UD.visitorName+'/dwr','UserBean','getVisitorGroups',false,callback);}
function RemindBean(){}
RemindBean.sendUserMsg = function(p0, p1, p2, callback) {
  dwr.engine._execute('/'+UD.visitorName+'/dwr', 'RemindBean', 'sendUserMsg', p0, p1, p2, false, callback);
}

/**
 * Pager.js
 */
NetEase.Base.Pager = Class.create();

/**
 * sObjName : 对象的引用名
 * totalSize : 总共的个数
 * pageSize : 每页显示的数目
 * presentFunc : 翻页之后展示当前页面的函数
 * elementDiv : 页码所在的div
 */
NetEase.Base.Pager.prototype = {
	
	initialize: function(sObjName, totalSize, pageSize, presentFunc, elementDiv){
		this.sObjName = sObjName;
		this.totalSize = totalSize;
		this.pageSize = pageSize;
		this.presentFunc = presentFunc;
		this.elementDiv = elementDiv;
		// 当前页
		this.curPage = 0;
	},
	
	setTotalSize : function(_totalSize) {
		this.totalSize = _totalSize > 0 ? _totalSize : 0;
	},
	
	setCurPage : function(_curPage) {
		this.curPage = _curPage > 0 ? _curPage : 0;
	},
	
	/**
	 * 刷新当前页
	 */
	refreshCurPage : function(){
		var totalPageSize = (this.totalSize > 0) ? Math.floor((this.totalSize + this.pageSize - 1) / this.pageSize) : 0;
		var data = {
			"sObjName" : this.sObjName,
			"totalPageSize" : totalPageSize,
			"curPage" : this.curPage
		};
		if($(this.elementDiv))
			$(this.elementDiv).innerHTML=TrimPath.processDOMTemplate("pager_jst", data);
		// 回调
		this.presentFunc(this.pageSize, this.curPage * this.pageSize);
	},
	
	prevPage : function(){
		if(this.curPage > 0)
			this.curPage --;
		this.refreshCurPage();
	},
	
	nextPage : function(){
		if((this.curPage + 1) * this.pageSize < this.totalSize)
			this.curPage ++;
		this.refreshCurPage();
	}
}

/**
 * 二叉树的Map实现
 * @author: vivimice
 */
register("NetEase.Base.BinaryTreeMap");
NetEase.Base.BinaryTreeMap = function () {
	var _Node = function () {
		this.key = null;
		this.value = null;
		this.left = null;
		this.right = null;
	}
	var _root = null;
	var _this = this;
	var _size = 0;
	
	this.put = function (_key, _value) {
		if (_key == null) return;
		var _old_node = _this.get(_key);
		if (_old_node) {
			var _old_value = _old_node.value;
			_old_node.value = _value;
			return _old_value;
		} else {
			var _node = _root;
			var _parent = _root;
			while (_node != null) {
				_parent = _node;
				_node = (_key > _node.key) ? _node.right : _node.left;
			}
			_node = new _Node();
			_node.key = _key;
			_node.value = _value;
			if (_parent) {
				if (_key > _parent.key) {
					_parent.right = _node;
				} else {
					_parent.left = _node;
				}
			} else {
				_root = _node;
			}
			_size++;
			return null;
		}
	};
	this.get = function (_key) {
		var _node = _root;
		if (_key == null) return null;
		while (_node != null) {
			if (_node.key == _key) {
				return _node.value;
			} else {
				_node = (_key > _node.key) ? _node.right : _node.left;
			}
		}
		return null;
	};
	this.remove = function (_key) {
		var _node = _this.get(_key);
		var _old_node = _node;
		if (!_node || !_root) return null;
		var _parent = _root;
		while (_parent.left != _node && _parent.right != _node) {
			_parent = (_parent._key > _node.key) ? _parent.right : _parent.left;
		}
		if (_parent.left == _node) {
			_parent.left = _node.right;
		} else {
			_parent.right = _node.right; 
		}
		var _node_left = _node.left;
		_node = _node.right;
		while (_node.left != null) {
			_node = _node.left;
		}
		_node.left = _node_left;
		_size--;
		return _node;
	};
	this.clear = function () {
		_root = null;
	};
	this.size = function () {
		return _size;
	}
}

/**
 * 可控并发数的函数调用管理器
 * @author: vivimice
 */
register("NetEase.Base.ExclusiveCallManager");
NetEase.Base.ExclusiveCallManager = function () {
	var _this = this;
	var _map = new NetEase.Base.BinaryTreeMap();
	
	this.intercept = function(_func, _permits, _callback) {
		var _param = [];
		for (var _i = 3; _i < arguments.length; _i++) {
			_param.push(arguments[_i]);
		}
		_put(_func, {
			permits : _permits, 
			limit : _permits, 
			callback : _callback, 
			param : _param});
		var _f = function () {
			var _o = _get(_func);
			if (_o != null) {
				if (_o.permits > 0) {
					_update(_func, _o.permits - 1); 
					_func.apply(_func, arguments);
				} else {
					if (typeof _o.callback == "function") {
						_o.callback.apply(_o.callback, _o.param);
					}
				}
			} else if (_o == null) {
				_func.apply(_func, arguments);
			}
		};
		_f.key = _getKey(_func);
		return _f;
	};
	
	this.releaseFor = function(_func, _func_rel) {
		return function () {
			var _o = _get(_func);
			var _r = _func_rel.apply(_func_rel, arguments);
			if (_o != null && _o.permits < _o.limit) {
				_update(_func, _o.permits + 1); 
			}
			return _r;
		};
	};
	
	this.remove = function (_func) {
		_map.remove(_func);
	}
	
	function _getKey(_func) {
		return _func.key ? _func.key : _func.toString();
	}
	
	function _get(_func) {
		return _map.get(_getKey(_func));
	}
	
	function _put(_func, _o) {
		return _map.put(_getKey(_func), _o);
	}
	
	function _update(_func, _permits) {
		var _o = _get(_func);
		_o.permits = _permits;
		return _map.put(_getKey(_func), _o);
	}
}
var callexManager = new NetEase.Base.ExclusiveCallManager();

/**
 * 杂项工具类
 */
register("NetEase.Base.Utils");
NetEase.Base.Utils = function() {
	this.getBigHeadImageUrl = function (_u) {
		var _o = new NetEase.Base.SimpleUser();
		_o.userName = _u;
		return _o.getBigHeadImageUrl();
	};
	this.getSmallHeadImageUrl = function (_u) {
		var _o = new NetEase.Base.SimpleUser();
		_o.userName = _u;
		return _o.getSmallHeadImageUrl();
	};
	this.makeBlogUrl =  function (_u) {
		return "http://"+DomainMap.getParentDomain(_u);
	};
	this.makePCPrevUrl =  function (_uId) {
		return 'href="#" onclick="top.tg.g.a(\'#tid=9997&prv=true&uid='+_uId+'\');return false;"';
	};
	this.getRadioValue = function(name){
		var radioes = document.getElementsByName(name);	
		for(var i=0;i<radioes.length;i++){	
		    if(radioes[i].checked){	
			 return radioes[i].value;	
		    }	
		}	
		return "";
	};
	this.getChildNodesByTagName =function(ele,tagName){
		var nodes=$(ele).childNodes;
		var result=[];
		for(var i =0;i<nodes.length;i++){
		  if (nodes[i].tagName &&nodes[i].tagName.toLowerCase()==tagName.toLowerCase())
			result.push(nodes[i]);
		}
		return result;
	},
	this.getCrossDomainCallBack=function(callBackFunc){
			return {callback:callBackFunc,rpcType:dwr.engine.ScriptTag} ;
	},	
	this.getShowTime=function(mills){
		if (mills<0)mills=0-mills;
		var oneMiute=60*1000;
		var str="";
		var hours = Math.floor(mills/(oneMiute*60));
		if ( hours>=1 ) str=hours+"小时";
		var minutes = Math.floor((mills-hours*oneMiute*60)/oneMiute);
		str+=minutes+"分钟";
		if (minutes==0){
			var seconds =Math.floor((mills-hours*oneMiute*60)*60/oneMiute);
			if (seconds<=0) seconds=1;
			str = seconds+"秒";
		}
		return str;
	},
    this.getObjectList=function(secondList,fields){
	    	var result=[];
	    	var fieldArray = fields.split(",");
	    	for(var i = 0;i<secondList.length;i++){
	    		var subList = secondList[i];
	    		var obj={};
	    		for(var j =0 ;j <subList.length;j++){
	    			obj[fieldArray[j]]=subList[j];
	    		}
	    		result.push(obj);
	    	}
	    	return result;
	 },
	 this.replaceAll=function (text, src, rep) {
			offset = text.toLowerCase().indexOf(src.toLowerCase());
			while(offset != -1) {
				text = text.substring(0, offset) + rep + text.substring(offset + src.length ,text.length);
				offset = text.indexOf( src, offset + rep.length + 1);
			}
			return text;
	 }
};
var utils = new NetEase.Base.Utils();

/**
 * 覆盖博客顶部的登录，使用登录浮层
 */
function blogTop_login(){	
	login(false,false);
}

/* 后加载的js内容 */
NetEase.Base.SimpleUser.prototype.isLogin = function () {
	return this.userId > 0;
};
NetEase.Base.SimpleUser.prototype.is126 = function () {
	return this.userName.match(/@126/);
};
NetEase.Base.SimpleUser.prototype.is188 = function () {
	return this.userName.match(/@188/);
};
NetEase.Base.SimpleUser.prototype.isPopo = function () {
	return this.userName.match(/\.popo/i);
};
NetEase.Base.SimpleUser.prototype.isVip = function () {
	return this.userName.match(/\.vip/i);
};
NetEase.Base.SimpleUser.prototype.isUrs = function () {
	return this.is126() && !this.is188() && !this.isPopo() && !this.isVip();
};
NetEase.Base.SimpleUser.prototype.isItemOwner = function () {
	return this.itemOwnerId && this.itemOwnerId == this.userId;
};
NetEase.Base.SimpleUser.prototype.getBigHeadImageUrl = function () {
	return "http://os.blog.163.com/common/ava.s?host=" + encodeURI(this.userName) + "&b=1";
};
NetEase.Base.SimpleUser.prototype.getSmallHeadImageUrl = function () {
	return "http://os.blog.163.com/common/ava.s?host=" + encodeURI(this.userName) + "&b=0";
};
