var EditorManager = {
	// 临时变量
	rightSettingResult : [],

	_setMode : function(mode) {
		if(!!getParameter("focustag")) {
			mode = parent.BlogEditMode["ADVANCE"]; // 新写日志后返回编辑标签，强制
		}

		if(mode == parent.BlogEditMode["SIMPLE"]) {
			QZFL.editor.config.editorOptions.toolbarList = ["html_simple", "html_mini", "html_full", "text"];
		}
		PageScheduler.buildEditor();

		var _checkFunc = QZONE.event.bind(this, function() {
			if(!PageScheduler.editorObj || !PageScheduler.editorObj.bReadyState) {
				setTimeout(_checkFunc, 50);
				return;
			}

			if(mode == parent.BlogEditMode["SIMPLE"]) {
				$("switchModeHref").innerHTML = "切换到精简编辑页";
			}
			else if(mode == parent.BlogEditMode["ADVANCE"]) {
				$("switchModeHref").innerHTML = "切换到普通编辑页";
			}
			this.switchMode($("switchModeHref"));
		});
		_checkFunc();
	},

	// 设置写日志为私密日志或日志
	setPrivateModeBlog : function(bPrivate){
		this._isPrivateBlog = bPrivate;
		this._switchPrivateWriteMode();
	},
	
	_isPrivateBlog : getParameter("isPrivate") == "true",

	_switchPrivateWriteMode : function(){
		$("categoryDiv").style.display = this._isPrivateBlog ? "none" : "";
		$("submitBlogArea").style.display = this._isPrivateBlog ? "none" : "";
		$("moreSettingDiv").style.display = this._isPrivateBlog ? "none" : "";
		$("submitPrivateBlogArea").style.display = this._isPrivateBlog ? "" : "none";
		$("topBar").innerHTML = this._isPrivateBlog ? "写私密记事" : "写日志";
	},

	switchMode : function(ele, bSaveFlag) {
		if(!PageScheduler.editorObj || !PageScheduler.editorObj.bReadyState) {
			QZBlog.Util.showMsgbox("日志编辑器正在初始化，请稍候...", 1, QZBlog.Util.MSG_LIFTTIME.HIGH);
			return;
		}

		function succCallback() {
			var bSimpleMode = false;
			if(ele.innerHTML == "切换到精简编辑页") {
				ele.innerHTML = "切换到普通编辑页";
				bSimpleMode = true;
			}
			else {
				ele.innerHTML = "切换到精简编辑页";
				bSimpleMode = false;
			}

			if(!!bSimpleMode) {
				if(!PageScheduler.editorObj.isHTMLMode()) {
					PageScheduler.editorObj.switchEditor("html");
				}
			}
			else {
				PageScheduler.showLetterPaperPanel();
			}
			
			PageScheduler.editorObj.switchToolbar(bSimpleMode ? "html_simple" : "html_mini");
			$("paperPanel").style.display = (bSimpleMode ? "none" : "");
			$("moreSettingDiv").style.display = (bSimpleMode || EditorManager._isPrivateBlog ? "none" : "");

			if(!!bSimpleMode && !parent.QZONE.dataCenter.get("BlogEditModeHint_"+QZBlog.Logic.SpaceHostInfo.getLoginUin(), "soflash")) {
				parent.QZONE.dataCenter.save("BlogEditModeHint_"+QZBlog.Logic.SpaceHostInfo.getLoginUin(), 1, "soflash");
				$("editModeHint").style.display = "";
			}
		}
		
		if(!bSaveFlag) {
			succCallback();
			return;
		}

		var bSimpleMode = false;
		if(ele.innerHTML == "切换到精简编辑页") {
			bSimpleMode = true;
		}

		var param = "edittype=" + (bSimpleMode ? 2 : 1);
		QZBlog.Logic.setBlogSetting(param, function() {
			parent.g_oBlogSettingInfoMgr.setEditMode(QZBlog.Logic.SpaceHostInfo.getLoginUin(), 
				(bSimpleMode ? parent.BlogEditMode["SIMPLE"] : parent.BlogEditMode["ADVANCE"]));
			succCallback();
		});
	},

	// 选择信纸
	_selectLPFromePanel : function(dataIndex) {
		if(!window.bPaperInterfaceLoaded) {
			QZBlog.Util.showMsgbox("正在响应您的请求，请稍候...", 0);
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this._selectLPFromePanel, dataIndex), 50);
			return;
		}
		QZBlog.Util.hideMsgbox();

		if(!window.oLetterPaperData || dataIndex < 0 || dataIndex >= window.oLetterPaperData.length) {
			return;
		}

		var paperData = window.oLetterPaperData[dataIndex];
		if(!paperData) {
			return;
		}

		if(QZBlog.Logic.SpaceHostInfo.getVipLevel() < 0) {
			QZBlog.Util.showMsgbox("正在获取您的黄钻等级信息，请稍候...", 0);
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this._selectLPFromePanel, dataIndex), 50);
			return;
		}		
		QZBlog.Util.hideMsgbox();

		parent._tempQFCallback = QZONE.event.bind(this, this._changePaperletter);
		blogCallLetter(QZBlog.Logic.SpaceHostInfo.getUin(), QZBlog.Logic.SpaceHostInfo.isVipUser(), 
			QZBlog.Logic.SpaceHostInfo.getVipLevel(), paperData.type, paperData.id, paperData.style);
	},

	// 检查投票选项的合法性
	_checkVoteLegality : function() {
		if(PageScheduler.getState()==2 || PageScheduler.getState()==3) { //  编辑日志时候不检查
			return true;
		}

		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		for(var index=0; index<arrInput.length; ++index) {
			if(arrInput[index].value.trim().length == 0) {
				arrInput[index].parentNode.parentNode.removeChild(arrInput[index].parentNode);
				return this._checkVoteLegality();
			}
		}

		if(arrInput.length < 2) {
			for(var index=0; index<Math.abs(arrInput.length-2); ++index) {
				this.addVoteOption();
			}
			alert("对不起, 投票选项最少需要两个");
			return false;
		}		

		for(var index=0; index<arrInput.length; ++index) {
			var optionLen = arrInput[index].value.trim().getRealLength();
			if(optionLen<parent.MIN_VOTE_OPTION_LENGTH || optionLen>parent.MAX_VOTE_OPTION_LENGTH){
				alert("对不起,每个投票选项的长度最少需要2个字符，最多100个字符");
				arrInput[index].select();
				return false;
			}
		}

		return true;
	},

	_checkTitleLegality : function() {
		var title = $("titleInput").value.trim("R");
		if(title.trim("L").length == 0) {
			alert("您还没有书写日志标题");
			$("titleInput").focus();
			return false;
		}
		
		if(title.getRealLength() > MAX_BLOG_TITLE_LEN){
			alert("您输入的标题长度超出限制");
			$("titleInput").focus();
			return false;
		}

		return true;
	},

	_checkContentLegality : function() {
		if(!PageScheduler.editorObj) {
			alert("初始化日志编辑器失败，请刷新空间重试");
			return false;
		}

		var editor = PageScheduler.editorObj;
		var content = editor.getContent();
		if(content.ltrim().length == 0  || !editor.isEdited()) {
			alert("您还没有书写任何日志正文内容");
			editor.focus();
			return false;
		}

		if(content.getRealLength() > MAX_BLOG_LEN) {
			alert("您输入的日志正文长度超出限制");
			editor.getCurrentEditor().focus();
			return false;
		}

		return true;
	},
	
	_checkBlogRightLegality : function() {
		if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"]) {
			if(this.rightSettingResult.length == 0) {
				alert("您还没选择该篇日志对哪些好友可见");
				if(window.bPreviewState) {
					this.cancelPreview();
				}
				return false;
			}
		}

		return true;
	},

	_checkBlogLegality : function(bPreview) {
		if(!this._checkTitleLegality()) {
			return false;
		}

		if(!this._checkContentLegality()) {
			return false;
		}

		if($("voteCheckInput").checked && !bPreview && !this._checkVoteLegality()) {
			return false;
		}

		if(!bPreview && !this._checkBlogRightLegality()) {
			return false;
		}

		return true;
	},

	_getRightSettingParams : function() {
		var strData = "";
		if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["FRIEND"]) { // 公开给qq好友
			strData += "rc=1&rg=2";
			strData += "&is_ic=" + ($("noticeInfoCheckInput").checked ? "1" : "0");
		}
		else if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"]) { // 指定好友
			for(var index=0; index<this.rightSettingResult.length; ++index) {
				strData += "&rc=128&rg=" + this.rightSettingResult[index].data;
			}
			
			strData = strData.substr(1);
			strData += "&is_tip=0";
		}
		else if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["PRIVATE"]) { // 私有
			strData += "rc=4&rg=4&is_tip=0";
		}
		else {
			strData += "needfeed=" + ($("updateFeedCheckInput").checked ? "1" : "0");
		}
		
		return strData;
	},

	_getTagStringParams : function() {
		var tags = $("tagInput").value.trim();
		if(!!$("tagInput").focused && tags.trim().getRealLength()>0) {
			tags = tags.replace(/(\s|,|;|\||\\|，|；|、)+/gi, "|");
			return QZONE.lang.uniqueArray(tags.split("|")).splice(0, 5).join("|");
		}
		
		return "";
	},

	_getExternalImages : function(html) {
		var arr = [];
		html = html.replace(/<img([^>]+)>/ig,function(){
			try {
				// 表情符号处理
				var em = /em\/e(\d{1,3}).gif/i.exec(arguments[1]);
				if(em) {
					return;
				}

				var src = /orgSrc="([^"]+)"/i.exec(arguments[1]);
				if(!src) {
					src = /src="([^"]+)"/i.exec(arguments[1]);
				}
				
				if(!/^http:\/\/[^\s]*photo.store.qq.com/i.test(src[1])) {
					arr.push(src[1]);
				}
			}
			catch(err) {
			}

			return arguments[0];
		});

		return QZONE.lang.uniqueArray(arr);
	},
	
	_getBlogParams : function(bModifyFlag, verifycode) {
		var content = PageScheduler.editorObj.getConvertedUBBContent();
		var strHTML = PageScheduler.editorObj.getConvertedHTMLContent();
		if(!PageScheduler.editorObj.isEdited()) { // 选用信纸后还没有编辑的情况
			content = "";
			strHTML = "";
		}

		if(QZBlog.Logic.SpaceHostInfo.isFamousUser()) {
			content = content.replace(/(\[url=https?:\/\/anchor[^\s^#]+[$|\/|\\]\])(#)(\[\/url\])/gi, function() {
				return arguments[1] + arguments[3];
			});
		}

		var category = ($("voteCheckInput").checked ? parent.BLOG_VOTE_CATENAME : $("blogCateSelect").value.trim());
		var title = $("titleInput").value.trim("R");

		var ppFlag = false;
		if(/\[qqshow,(\d{1,3}),(\d{1,3}),(\d{1,3}),(\d{1,3})(,.*?|)\]http:\/\/[^\s]*photo.store.qq.com\/[^\[]*\[\/qqshow\]/ig.test(content)) {
			ppFlag = true;
		}
		
		category = encodeURIComponent(category);
		title = encodeURIComponent(title);
		content = encodeURIComponent(content);		

		var data = ["uin=" + QZBlog.Logic.SpaceHostInfo.getUin(), "category=" + category, "title=" + title, "content=" + content];
		
		if(strHTML.length > 0) {
			data.push("html="+encodeURIComponent(strHTML));
			var arr = PageScheduler.editorObj.getSpecialFontNameList(strHTML);
			if(arr && arr.length > 0) {
				data.push("sfont="+arr.join(",").replace("豆豆体","dou").replace("桃心体","tao").replace("小花体","xiaohua").replace("清秀体","qingxiu"));
			}

			data["externImgArr"] = this._getExternalImages(strHTML);
		}

		if(bModifyFlag || PageScheduler.getState()==2 || PageScheduler.getState()==3) {
			data.push("blogid="+PageScheduler.blogInfo.getID()); // 修改日志
			if(PageScheduler.blogInfo.getVoteInfo()) {
				data.push("r=s");
			}
		}
		else {
			if(/*!PageScheduler.blogInfo && */$("voteCheckInput").checked) {
				var arrInput = $("voteOptionArea").getElementsByTagName("input");
				var arrContent = [];
				var tmpValue = "";
				for(var index=0; index<arrInput.length; ++index) {
					tmpValue = arrInput[index].value.trim("R");
					arrContent.push("vtitle=" + encodeURIComponent(tmpValue));
				}
				data.push(arrContent.join("&"));
				data.push("day=" + $("voteTimeSelect").value);
				if($("multiVoteCheck").checked) {
					data.push("cb_multi=1");
				}
			}
		}

		if($("quoteCheck").checked) {
			data.push("forbidquote=1");
		}
		if($("signatureCheck").checked) {
			data.push("cb_autograph=1");
		}
		if($("highLightCheck").checked && !$("highLightCheck").disabled) {
			data.push("cb_xmd=1");
		}
		data.push("topflag=" + ($("setTopCheck").checked ? 1 : 0));

		var strRightUrl = this._getRightSettingParams();
		if(strRightUrl.length > 0) {
			data.push(strRightUrl);
		}
		
		//选用信纸
		var oData = PageScheduler.editorObj.getPaperLetterData();
		if(!!oData.style && !!oData.id) {
			data.push("lp_id=" + oData.id);
			data.push("lp_style=" + oData.style);
		}
		
		if(ppFlag) {
			data.push("pp=1");
		}
		
		var tagData = this._getTagStringParams();
		if(tagData.length > 0) {
			data.push("tags=" + tagData.URLencode());
		}
		if(PageScheduler.draftid > 0) {
			data.push("draftid=" + PageScheduler.draftid);
		}
		if(!!verifycode) {
			data.push("verifycode=" + verifycode);
		}
		
		return data;
	},

	_postProcSubmitBlog : function(data, blogParam) {
		var msg = data.tip;
		if(!!msg) {
			QZBlog.Util.showMsgbox(msg, 0, QZBlog.Util.MSG_LIFTTIME.HIGH);
		}

		if(PageScheduler.getState()==4 || PageScheduler.getState()==5) { // 发表草稿时候
			parent.g_oCateInfoMgr.setDraftCount(parent.g_oCateInfoMgr.getDraftCount()-1);
			//parent.g_oDraftListInfoMgr.removeDraft(PageScheduler.draftid);
			parent.g_oDraftListInfoMgr.clear();
			parent.g_oBlogInfoMgr.removeBlogInfo(PageScheduler.draftid);
		}

		if(PageScheduler.blogid >= 0) {
			parent.g_oBlogInfoMgr.removeBlogInfo(PageScheduler.blogid);
		}
		
		QZBlog.Logic.refreshTopData();
		parent.g_oCateInfoMgr.clear();
		parent.BlogListNavigator.clear();
		parent.BlogListNavigator.removePageData();
		DraftLogicManager.setManualDraftState(false);
		DraftLogicManager.setAutoDraftID(-1);

		// jump
		var bid = parseInt(data.blogid, 10);
		if(EditorManager._isPrivateBlog){
			top.g_XDoc["privateblogRoot"] = null;
			top.PrivateBlogNavigator = null;
		}
		top.BlogNavigator = null; //清除日志标题缓存
		if(bid >= 0) {
			if(!QZBlog.Logic.SpaceHostInfo.isFamousUser() && (PageScheduler.getState()==1 || PageScheduler.getState()==4 || PageScheduler.getState()==6)) {
				if(!parent.g_XDoc) {
					parent.g_XDoc = {};
				}
				parent.g_XDoc["blogSubmit"] = data; // 兼容
				if(blogParam["externImgArr"] && blogParam["externImgArr"].length > 0) {
					parent.g_XDoc["blogSubmit"]["externImgArr"] = QZFL.lang.objectClone(blogParam["externImgArr"]);
				}				
				setTimeout('location.href="'+IMGCACHE_BLOG_V5_PATH + (EditorManager._isPrivateBlog ? "/private/" : "/") + 'success.html";QZBlog.Util.jumpTop();', 500);
			}
			else {
				setTimeout('location.href="'+this.getContentCGIUrl(QZBlog.Logic.SpaceHostInfo.getUin(), bid, Math.random())+'";QZBlog.Util.jumpTop();', 500);
			}
		}
	},

	doSubmitBlog : function(verifycode, bModifyFlag, plusParams) {
		var data = this._getBlogParams(bModifyFlag, verifycode);
		if(plusParams) {
			data.push(plusParams);
		}
		
		var url = "http://" + CGI_BLOG_DOMAIN + (this._isPrivateBlog ? CGI_PRIVATEBLOG_PATH : CGI_BLOG_PATH);
		if(bModifyFlag || PageScheduler.getState()==2 || PageScheduler.getState()==3/* || PageScheduler.getState()==5 || PageScheduler.getState()==7*/) {
			url += "/" + (this._isPrivateBlog ? "private" : "") + "blog_modify";
		}
		else {
			if($("voteCheckInput").checked && !this._isPrivateBlog) { // deprecated logic
				url += "/blog_add_vote";
			}
			else {
				url += "/" + (this._isPrivateBlog ? "private" : "") + "blog_add";	
			}
		}
		url += "?" + data.join("&");
	
		DraftLogicManager.stopAutoSaveDraft();
		this._bSubmittingFlag = true;
		var netProcessor = QZBlog.Util.NetProcessor.create(url, "post", QZONE.event.bind(this, function(responseData) {
			this._postProcSubmitBlog(responseData, data);
		}),	(function(mgr) {
				return function() {
					clearTimeout(mgr._nSubmittingTimer);
					mgr._bSubmittingFlag = false;
					DraftLogicManager.startAutoSaveDraft();
				}
			})(this), 
		"GB2312", false);
		if(!netProcessor) {
			this._bSubmittingFlag = false;
			return;
		}
		netProcessor.setPostType("JSON");
		
		netProcessor.verifyHandler = QZONE.event.bind(this, function(verify) {
			this._bSubmittingFlag = false;
			this.doSubmitBlog(verify, bModifyFlag, plusParams);
		});
		netProcessor.loginHandler = QZONE.event.bind(this, function() {
			this._bSubmittingFlag = false;
			blogLoginFnList.splice(0, blogLoginFnList.length);
			blogLoginFnList.push(QZONE.event.bind(this, this.doSubmitBlog, null, bModifyFlag, plusParams));
			QZBlog.Util.showLoginBox("ownerOperation", null, true);
		});
		netProcessor.confirmHandler = QZONE.event.bind(this, function(msg) {
			this._bSubmittingFlag = false;
			if(!!confirm(msg)){				
				this.doSubmitBlog(verify, bModifyFlag, "confirm=1");
			}
		});
		netProcessor.excute();

		this._nSubmittingTimer = setTimeout(QZONE.event.bind(this, function() {
			this._bSubmittingFlag = false;
		}), 5000);
	},
	
	/**
	 * 妥协的解决FF下的setContents失败问题
	 */
	switchToRTEMode : function(){
		var _tb = PageScheduler.editorObj.getCurrentToolbar();
		var _btn = _tb.getButton('goback');
		if(_btn){
			_btn.execute();
			return true;
		}
		return false;
	},

	// 提交日志
	submitBlog : function() {
		if(!ua.ie)EditorManager.switchToRTEMode();
		if(!this._checkBlogLegality()) {
			return false;
		}

		var nLen = PageScheduler.editorObj.getConvertedHTMLContent().getRealLength();
		if(nLen > MAX_BLOG_HTML_LEN) {
			alert("您输入的日志正文长度超出"+(nLen-MAX_BLOG_HTML_LEN)+"字节");
			PageScheduler.editorObj.getCurrentEditor().focus();
			return false;
		}

		if(!QZBlog.Logic.SpaceHostInfo.isOwnerMode()) {
			QZBlog.Util.showMsgbox("您无权在他人空间里发表日志", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
			return false; 
		}

		if(this._bSubmittingFlag) {
			return false;
		}

		// 编辑草稿(手动和自动) ,若是对应有blogid, 则弹窗口询问
		if(PageScheduler.getState()==5 || PageScheduler.getState()==7) {
			this._showDraftConfirmDlg();
		}
		else {
			this.doSubmitBlog();
		}
		return false;
	},

	_postProcSaveDraft : function(data) {
		if(window.tmpDraftInfo) { // 手动保存
			DraftLogicManager.startAutoSaveDraft();

			if(window.tmpDraftInfo.getDraftID() <= 0) { // 新保存草稿
				parent.g_oCateInfoMgr.setDraftCount(parent.g_oCateInfoMgr.getDraftCount()+1);
				window.tmpDraftInfo.setPubTime(data.pubtime);
				window.tmpDraftInfo.setEffect(data.effect);
				window.tmpDraftInfo.setDraftID(data.draftid);

				PageScheduler.draftid = data.draftid;
				if(parent.g_oBlogInfoMgr.getBlogInfo(PageScheduler.blogid)) {
					parent.g_oBlogInfoMgr.getBlogInfo(PageScheduler.blogid).setDraftID(PageScheduler.draftid);
				}
			}
	
			parent.g_oDraftListInfoMgr.clear();
			parent.g_oBlogInfoMgr.removeBlogInfo(PageScheduler.draftid);
			DraftLogicManager.setManualDraftState(false);

			var draftInfo = parent.g_oDraftListInfoMgr.getDraftInfo(PageScheduler.draftid);
			if(draftInfo) {
				draftInfo.updateRandomSeed();
			}

			$("draftSavedTip").innerHTML = QZBlog.Util.long2LongTime(new Date().getTime()/1000) + " 保存草稿成功";
			PageScheduler.updateDraftArea();
		}
		else {
			DraftLogicManager.setAutoDraftID(1);
			$("draftSavedTip").innerHTML = QZBlog.Util.long2LongTime(new Date().getTime()/1000) + " 自动保存草稿成功";
		}
		$("draftSavedTip").style.display = "";
	},

	// 0/1 -- 手动/自动 
	doSaveDraft : function(bSaveType) {
		if(!bSaveType && !QZBlog.Logic.SpaceHostInfo.isOwnerMode()) {
			QZBlog.Util.showLoginBox("ownerOperation", null, true);
			return false; 
		}
		
		if(!bSaveType) {
			if(PageScheduler.getState()!=2 && PageScheduler.getState()!=3) { // 在非编辑日志下保存草稿检查
				if($("voteCheckInput").checked && !this._checkVoteLegality()) {
					return false;
				}
			}

			if(!this._checkTitleLegality()) {
				return false;
			}

			if(!this._checkContentLegality()) {
				return false;
			}

			if(!this._checkBlogRightLegality()) {
				return false;
			}
		}

		var data = this._getBlogParams();
		var nLen = PageScheduler.editorObj.getConvertedHTMLContent().getRealLength();
		if(!bSaveType && nLen>MAX_BLOG_HTML_LEN) {
			alert("您输入的正文长度超出"+(nLen-MAX_BLOG_HTML_LEN)+"字节");
			PageScheduler.editorObj.getCurrentEditor().focus();
			return false;
		}

		var blogInfo = parent.g_oBlogInfoMgr.getBlogInfo(PageScheduler.blogid);
		if(blogInfo && blogInfo.getVoteID() != -1) {
			data.push("voteids=" + blogInfo.getVoteID());
		}

		var url = "http://"+CGI_BLOG_DOMAIN+CGI_DRAFT_PATH+"/"+(!bSaveType ? "draft_set_manual_data" : "draft_set_auto_data");
		url += "?" + data.join("&");

		var netProcessor = (!bSaveType ? QZBlog.Util.NetProcessor : new QZBlog.Util.BlogNetProcessor());
		netProcessor.create(url, "post", QZONE.event.bind(this, this._postProcSaveDraft), QZONE.emptyFn, "GB2312", (bSaveType ? true : false));

		if(!bSaveType) {
			netProcessor.alertHandler = function(data) {
				alert(getXMLNodeText(XMLselectSingleNode(data, "/error")));
			};
			netProcessor.loginHandler = function() {
				QZBlog.Util.showLoginBox("ownerOperation", null, true);
			};

			window.tmpDraftInfo = new parent.BlogInfo();
			window.tmpDraftInfo.setDraftID(PageScheduler.draftid);
			window.tmpDraftInfo.setID(PageScheduler.blogid);
			window.tmpDraftInfo.setTitle($("titleInput").value.trim("R"));
			window.tmpDraftInfo.setCateName(($("voteCheckInput").checked ? parent.BLOG_VOTE_CATENAME : $("blogCateSelect").value.trim()));
			window.tmpDraftInfo.setType(parent.BLOGTYPE.DRAFT);
		}
		else {
			window.tmpDraftInfo = null;
		}

		netProcessor.setPostType("JSON");
		netProcessor.excute();
		return true;
	},
	
	// 保存草稿
	manualSaveDraft : function() {
		if(!ua.ie)EditorManager.switchToRTEMode();
		var nLen = PageScheduler.editorObj.getConvertedHTMLContent().getRealLength();
		if(nLen > MAX_BLOG_HTML_LEN) {
			alert("您输入的日志正文长度超出"+(nLen-MAX_BLOG_HTML_LEN)+"字节");
			PageScheduler.editorObj.getCurrentEditor().focus();
			return;
		}
		if(parent.g_oCateInfoMgr.getDraftCount() >= parent.MAX_DRAFT_CNT && PageScheduler.draftid<=0) {
			alert("您的草稿箱已满，无法保存草稿!");
			return;
		}

		if(PageScheduler.draftid>0 && !!DraftLogicManager._bFirstManualSaved) {
			if(!confirm("保存当前编辑内容将覆盖该篇日志对应的草稿？")) {
				return;
			}
		}
		DraftLogicManager._bFirstManualSaved = false;
		
		if(!this.doSaveDraft(0)) {
			return false;
		}

		$("saveDraftButton").disabled = true;
		$("loadDraftButton").disabled = true;
		setTimeout(function() { 
			$("saveDraftButton").disabled = false;
			$("loadDraftButton").disabled = false;			
		}, 5000);		
		
		return true;
	},

	// 读取草稿
	loadManualDraftData : function() {
		var openDraft = function(blogid, draftid, readFlag) {
			if(!readFlag) {
				return;
			}
			if(!!DraftLogicManager.getManualDraftState()) {
			 	if(confirm("您正在编辑的内容没有保存，读取草稿后将覆盖当前内容。")) {
					DraftLogicManager.setManualDraftState(false);
					doOpenDraft(blogid, draftid);
				}			
			}
			else {
				doOpenDraft(blogid, draftid);
			}
		}
		
		var doOpenDraft = function(blogid, draftid) {
			location.replace(QZBlog.Util.getEditBlogUrl()+'?autodraft=1&bid=' + blogid + '&draftid=' + draftid);
		}
		/*
		 先预读取草稿列表，将草稿列表逻辑拉一部分出来。
		 如果只有一篇草稿，则直接拉取。 
		*/
		QZBlog.Util.showMsgbox("正在获取数据，请稍候...", 0);
		var url = "http://" + CGI_BLOG_DOMAIN + CGI_DRAFT_PATH + "/draft_get_manual_list?uin=" + QZBlog.Logic.SpaceHostInfo.getUin() + "&r=" + Math.random();
		var portraitReq = new QZBlog.Util.BlogNetProcessor();
		portraitReq.create(url, "get", function(o){
				//判断是否只有一篇
				QZBlog.Util.hideMsgbox();
				var list = o.data.titlelist;
				EditorManager.g_draftData = objectClone(o);
				if(list.length == 0) {
					QZBlog.Util.showMsgbox("您没有已保存的草稿", 0,2000);
				}else if(list.length == 1 && confirm("您只有一篇保存草稿，直接读取吗？")){ //直接读取
					var aDraft = o.data.titlelist[0];
					doOpenDraft(aDraft.blogid,aDraft.draftid);
				}else{
					QZBlog.Util.popupDialog('读取草稿', '<iframe frameborder="no" id="draftListFrame" style="width:100%;height:285px;" src="'+IMGCACHE_BLOG_V5_PATH+'/draft_list_dlg.html'+(PageScheduler.draftid>0 ? ('?draftid='+PageScheduler.draftid) : '')+'"></iframe>', 467, 313);
				}
			}, QZONE.emptyFn, "GB2312", true, "_Callback");
		portraitReq.loginHandler = function() {
			QZBlog.Util.showLoginBox("ownerOperation", null, true);
		};
		portraitReq.excute();
	},

	// 取消预览
	cancelPreview : function() {
		$("pageContainer").style.display = "";
		$("previewDiv").style.display = "none";
				
		var oData = PageScheduler.editorObj.getPaperLetterData();
		if(!!oData.style && !!oData.id) {
			PageScheduler.editorObj.showDefinePanel(parent.g_hsBlogTemplate['paperTemplate'], 25);
		}
		else if(PageScheduler.blogInfo && PageScheduler.blogInfo.getPaperLetterInfo()) {
			PageScheduler.editorObj.showDefinePanel(parent.g_hsBlogTemplate['restorePaperTemplate'], 25);
		}

		if($("paperEditorPanel")) $("paperEditorPanel").style.display = "";
		QZBlog.Logic.clearMusicPlayer();
		QZBlog.Util.jumpTop();
		window.bPreviewState = false;
	},

	// 预览日志
	previewBlog : function() {
		if(!ua.ie){
			if(EditorManager.switchToRTEMode()){
				setTimeout(function(){EditorManager.previewBlog();},100);
				return;
			}
		}
		if(!this._checkBlogLegality(true)) {
			return;
		}

		QZBlog.Util.showMsgbox("正在生成日志预览，请稍候...", 0);
		this._doPreviewBlog();
	},

	_doPreviewBlog : function(data) {
		var content = "";
		if(!!data && XMLselectSingleNode(data, "/succ")) {
			content = getXMLNodeText(XMLselectSingleNode(data, "/succ"));
		}
		else {
			content = PageScheduler.editorObj.getConvertedHTMLContent();
		}

		var oPaperLetterInfo = null;
		var oPaperData = PageScheduler.editorObj.getPaperLetterData();
		if(!!oPaperData.style && !!oPaperData.id) {
			oPaperLetterInfo = new parent.PaperLetterInfo(oPaperData.id, oPaperData.style);
		}

		var data = {
			"cate" : $("voteCheckInput").checked ? parent.BLOG_VOTE_CATENAME : $("blogCateSelect").value.trim().toInnerHTML(),
			"title" : $("titleInput").value.trim("R").toInnerHTML(),
			"time": QZBlog.Util.long2time(new Date().getTime()/1000),
			"publishText" : "发表于",
			"nickname" : QZBlog.Logic.SpaceHostInfo.getNickname().toInnerHTML(),
			"sign" : "",
			"content" : content,
			"titleColor": (oPaperLetterInfo ? oPaperLetterInfo.getTitleColor() : "000000"),
			"titleFace": (oPaperLetterInfo ? oPaperLetterInfo.getTitleFont() : "宋体"),
			"isPrivate" : EditorManager._isPrivateBlog ? "none" : "",
			"hideCate" : EditorManager._isPrivateBlog ? " style='visibility:hidden;'" : ""
		};

		var nEditMode = parent.g_oBlogSettingInfoMgr.getEditMode(QZBlog.Logic.SpaceHostInfo.getLoginUin());
		if(nEditMode == parent.BlogEditMode["ADVANCE"] && oPaperLetterInfo && !!window.previewLetterPaperHTML) {
			data.letterPaperHTML = window.previewLetterPaperHTML;
		}
		else {
			data.paperClass = "none";
		}

		if(PageScheduler.blogInfo && PageScheduler.blogInfo.getEffectBit(3)) {
			data.publishText = "转载于";
			data.time = QZBlog.Util.long2time(PageScheduler.blogInfo.getPubTime());
		}

		if(!$("signatureCheck").checked) {
			data.signClass = "none";
		}

		// 处理权限
		if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"]) {
			var arr = [];
			for(var index=0; index<this.rightSettingResult.length; ++index) {
				arr.push((this.rightSettingResult[index].label+"").toInnerHTML() + '(' + this.rightSettingResult[index].data + ')');
			}
			data.rightTip = arr.join("、");
			data.rightText = "权限：指定好友可见";
		}
		else if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["FRIEND"]) {
			data.rightText = data.rightTips = "权限：QQ好友可见";
		}
		else if(this.rightSettingResult.rightType == parent.BlogRightInfo.RIGHTTYPE["PRIVATE"]) {
			data.rightText = data.rightTips = "权限：仅自己可见";
		}
		else {
			data.rightText = data.rightTips = "权限：公开";
		}

		// 处理热门标签
		var tags = $("tagInput").value.trim();
		tags = tags.replace(/(\s|,|;|\||\\|，|；|、)+/gi, "|");
		if(tags.getRealLength() > 0 && !!$("tagInput").focused) {
			data.tagClass = "";
			var arr = tags.split("|");
			data.tag = "";
			arr = QZONE.lang.uniqueArray(arr);
			for(var index = 0; index<arr.length && index < 5; ++index) {
				data.tag += '<a href="javascript:" onclick="QZBlog.Logic.searchTag(\''+arr[index].toInnerHTML()+'\');return false;" class="uline" title="在QZONE空间搜索该搜索词">' + arr[index].toInnerHTML() + '</a>&nbsp;&nbsp;';
			}
		}
		else {
			data.tagClass = "none";
		}
		
		$("previewDiv").innerHTML = doFill(parent.g_hsBlogTemplate["previewTemplate"], {"data":data});
		$("blogDetailDiv").style.fontSize = fontSizeMap[_defaultFontSize];
		$("pageContainer").style.display = "none";
		$("previewDiv").style.display = "";
		QZBlog.Logic.procBlogContent(!!oPaperLetterInfo);

		/////////////////////////////////////////////////////////////////////////////////////
		// 处理显示给用户后的展现
		// 初始化音乐播放器
		QZBlog.Util.TimerManager.setTimeout(QZBlog.Logic.initMusicPlayer, 3000);
		if(PageScheduler.blogInfo && PageScheduler.blogInfo.getEffectBit(32)) {  // 语音日志处理
			QZBlog.Util.TimerManager.setTimeout(function() {
				try{
					if(parent.window.musicJSReady && parent.isPlaying()) {
						parent.Qpause();
					}
					window.bTopPageMusicStop = true;
					QZONE.cookie.set("pausemusic", "1");
				}
				catch(err) {
				}
			}, 1000);
		}

		if($("signatureCheck").checked) { // 显示签名档
			(function _showSignature() {
				if(QZBlog.Logic.SpaceHostInfo.getSignature() == null) {
					QZBlog.Util.TimerManager.setTimeout(_showSignature, 100);
					return;
				}
				
				if(!!$("signatureDiv")) {
					$("signatureDiv").innerHTML = ubbReplace(QZBlog.Logic.SpaceHostInfo.getSignature().convSP().convCR(), "face anchor image email sign glow_limit font", null, null, IMGCACHE_DOMAIN);
					if(QZBlog.Logic.SpaceHostInfo.getSignature().trim().length == 0) {
						$("signatureDiv").parentNode.style.display = "none";
					}
				}
			})();
		}

		// 处理样式需求
		if(EditorManager._isPrivateBlog){
			$("preview_topBar").innerHTML = "预览私密记事";
			$("publishBlog1").innerHTML = $("publishBlog2").innerHTML = "发表私密记事";
			$("publishBlog1").className = $("publishBlog2").className = "bt_tx6 spl";
		}
		else{
			if(PageScheduler.getState() > 3) {
				$("preview_topBar").innerHTML = "预览草稿";
			}
			else{
				$("preview_topBar").innerHTML = "预览日志";
			}
			$("publishBlog1").innerHTML = $("publishBlog2").innerHTML = "发表日志";
			$("publishBlog1").className = $("publishBlog2").className = "bt_tx4 spl";
		}
		try{
			$("previewDiv").className = (QZBlog.Util.isWideMode() ? "blog big_mode_blog" : (!QZBlog.Util.isSmallMode() ? "blog full_mode_blog" : "blog mini_mode_blog"));
		}
		catch(err) {
		}

		QZONE.css.removeClassName($("veryTitle").parentNode, "has_paper");

		// 显示信纸背景
	    if(oPaperLetterInfo) {        
			if(!!oPaperLetterInfo.getStyle() && !!oPaperLetterInfo.getID()) {
				QZBlog.Util.PaperLetterManager.doPaint(oPaperLetterInfo, $("titleInput").value.trim("R").toInnerHTML());
				QZONE.css.addClassName($("veryTitle").parentNode, "has_paper");
				PageScheduler.editorObj.hideDefinePanel(); // 预览时隐藏编辑器中信纸按钮
			}
			else {
				if($("paperEditorPanel")) $("paperEditorPanel").style.display = "none";
				$("paperTitleArea").style.display = "none";
				$("paperPicArea0").style.display = "none";
				$("paperPicArea").style.display = "none";
	        }
	    }

		QZBlog.Util.hideMsgbox();

		// misc
		window.bPreviewState = true;
		NamecardScheduler.init($("veryContent"));
		NamecardScheduler.loadScript();
		QZBlog.Util.Statistic.sendPV("previewblog", "blogtest.qzone.qq.com");
	},

	// 发表的草稿有对应日志存在时候提醒
	_showDraftConfirmDlg : function() {
		var strHTML = $("submitDraftTemplate").innerHTML.replace(/<=%voteClass%=>/gi, "");
		QZBlog.Util.popupDialog('温馨提示', strHTML, 360, 120);
	},

	//////////////////////////////////////////////////////////////////////////////
	// 投票相关 start
	// 选择发起投票
	checkVoteInput : function() {
		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		if(arrInput.length == 0) {
			var strHTML = parent.g_hsBlogTemplate["voteOptionTemplate"];
			strHTML = strHTML.replace(/%=value=%/gi, "");
			$("voteOptionArea").innerHTML = strHTML.replace(/%=index=%/gi, Math.random()) + strHTML.replace(/%=index=%/gi, Math.random());
		}

		$("voteArea").style.display = ($("voteCheckInput").checked ? "" : "none");
		$("multiVoteCheck").parentNode.style.display = ($("voteCheckInput").checked ? "" : "none");

		$("voteCateDiv").style.display = ($("voteCheckInput").checked ? "" : "none");
		$("categoryDiv").style.display = ($("voteCheckInput").checked ? "none" : "");
	},

	// 添加投票选项
	addVoteOption : function(value) {
		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		if(arrInput.length == 10){
			alert("对不起, 您最多只能添加到10个投票选项");
			return;
		}

		if(!value) {
			value = "";
		}

		var strHTML = "";
		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		var arrContent = [];
		for(var index=0; index<arrInput.length; ++index) {
			strHTML += parent.g_hsBlogTemplate["voteOptionTemplate"].replace(/%=value=%/gi, arrInput[index].value).replace(/%=index=%/gi, Math.random());
		}

		var rand = Math.random();
		$("voteOptionArea").innerHTML = strHTML + parent.g_hsBlogTemplate["voteOptionTemplate"].replace(/%=value=%/gi, value).replace(/%=index=%/gi, rand);
		if($("voteArea").style.display != "none" && !!$("voteOption"+rand)) {
			setTimeout(function(){$("voteOption"+rand).focus();}, 0);
		}
		DraftLogicManager.draftStateTrigger();
	},

	// 删除投票选项
	delVoteOption : function(optionIndex) {
		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		if(arrInput.length == 2){
			alert("对不起, 投票选项最少需要两个");
			return;
		}

		$("voteOption"+optionIndex).parentNode.parentNode.removeChild($("voteOption"+optionIndex).parentNode);
		DraftLogicManager.draftStateTrigger();
	},	
	// 投票相关 end

	/////////////////////////////////////////////////////////////////////////////
	// 权限相关 start
	// 权限设置,选择好友
	openRightSettingDlg : function(specuins) {
		parent.blogPopupCallback = QZONE.event.bind(this, function(right, result) {
			if(!right || !result) {
				return;
			}
			
			PageScheduler.fillRightArea(result);
			this.rightSettingResult = result;
			this.rightSettingResult.rightType = right;
			DraftLogicManager.draftStateTrigger();
		});
		
		if(!specuins) specuins = "";
		QZBlog.Util.popupDialog('选择指定好友(最多可以指定5个)', '<iframe frameborder="no" id="blogRightSettingFrame" scrolling=no style="width:100%;height:100%" src="'+IMGCACHE_BLOG_V5_PATH+'/right_setting_dlg.html?specuins='+specuins+'&onlyselect=1"></iframe>', 442, 406);
	},

	showAllSetting : function(bNoStatisticFlag) {
		$("setTopCheck").parentNode.style.display = "";
		$("quoteCheck").parentNode.style.display = "";
		$("rightSettingDiv").style.display = "";
		$("showAllSettingHref").style.display = "none";
		$("hideAllSettingHref").style.display = "";

		if(!bNoStatisticFlag) {
			QZBlog.Util.Statistic.sendPV("show＿allset", "rizhi.qzone.qq.com");
		}
	},

	hideAllSetting : function() {
		$("setTopCheck").parentNode.style.display = "none";
		$("quoteCheck").parentNode.style.display = "none";
		$("rightSettingDiv").style.display = "none";
		$("showAllSettingHref").style.display = "";
		$("hideAllSettingHref").style.display = "none";

		QZBlog.Util.Statistic.sendPV("hide＿allset", "rizhi.qzone.qq.com");
	},

	// 选择权限,注意新写和编缉的区别
	selectRight : function(nRightType, bNotTrigDraft) {
		this.rightSettingResult.rightType = nRightType;	
		var bEditBlogState = (PageScheduler.getState() == 2 || PageScheduler.getState() == 3);
		if(bEditBlogState) {
			$("disgustRightTipSpan").style.display = "";
		}

		if(!!bNotTrigDraft && bEditBlogState) {
			$("noticeInfoCheckInput").checked = false;
		}

		switch(nRightType) {
			case parent.BlogRightInfo.RIGHTTYPE["PUBLIC"] : {
				$("publicRightCheck").checked = true;
				$("blogRightText").style.display = "none";
				$("friendRightText").style.display = "none";
				if(bEditBlogState) {
					$("publicRightText").style.display = "";
				}
				$("privateHint").style.display = "none";
				break;
			}
			case parent.BlogRightInfo.RIGHTTYPE["FRIEND"] : {
				$("friendRightCheck").checked = true;
				$("blogRightText").style.display = "none";
				$("publicRightText").style.display = "none";
				$("friendRightText").style.display = "";
				$("privateHint").style.display = "";
				break;
			}
			case parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"] : {
				$("specificRightCheck").checked = true;
				$("blogRightText").style.display = "";
				$("friendRightText").style.display = "none";
				$("publicRightText").style.display = "none";
				$("privateHint").style.display = "";
				break;
			}
			case parent.BlogRightInfo.RIGHTTYPE["PRIVATE"]  : {
				$("privateRightCheck").checked = true;
				$("blogRightText").style.display = "none";
				$("publicRightText").style.display = "none";
				$("friendRightText").style.display = "none";
				$("privateHint").style.display = "";
			}
		}

		if(nRightType != parent.BlogRightInfo.RIGHTTYPE["PUBLIC"]) {
			$("quoteCheck").checked = true;
		}
		
		if(!bNotTrigDraft) {
			DraftLogicManager.draftStateTrigger();
		}
	},
	// 权限相关 end

	// 添加分类
	addCategory : function() {
		QZBlog.Logic.showAddCategoryDlg(function(cateName) {
			var optionsEle = $("blogCateSelect").options;
			optionsEle[optionsEle.length] = new Option(cateName, cateName, true, true);
			DraftLogicManager.draftStateTrigger();
		});
	},

	// 分类管理
	editCategory : function() {
		if(!confirm("页面需要跳转,请保存您尚未发表的日志正文"))
			return;
		location.href = IMGCACHE_BLOG_V5_PATH + "/list.html?catemgr=1";
	},

	cancelPaperletter : function() {
		if(!!PageScheduler.editorObj) {			
			var oPaperData = PageScheduler.editorObj.getPaperLetterData();
			window.tmp_lp_id = oPaperData.id;
			window.tmp_lp_style = oPaperData.style;			
			
			PageScheduler.editorObj.removeLetterPaper();
			PageScheduler.editorObj.showDefinePanel(parent.g_hsBlogTemplate['restorePaperTemplate'], 25);
		}
		
		DraftLogicManager.draftStateTrigger();
	},

	// 还原信纸
	revertPaperletter : function() {
		if(!!PageScheduler.editorObj) {
			if(!PageScheduler.blogInfo || !PageScheduler.blogInfo.getPaperLetterInfo()) {
				return;
			}

			var oPaperInfo = PageScheduler.blogInfo.getPaperLetterInfo();
			var oPaperData = !!PageScheduler.editorObj.getPaperLetterData();
			if(oPaperData.id == oPaperInfo.getID() && oPaperData.style == oPaperInfo.getStyle()) {
				QZBlog.Util.showMsgbox("当前信纸已经是您最近一次保存时应用的信纸", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
				return;
			}  
			
			this._changePaperletter(oPaperInfo.getStyle(), oPaperInfo.getID());
		}
		
		DraftLogicManager.draftStateTrigger();
	},
	
	// 取消信纸之后的恢复信纸
	restorePaperletter : function() {
		if(!!PageScheduler.editorObj) {
			if(!!window.tmp_lp_id && !! window.tmp_lp_style) {
				this._changePaperletter(window.tmp_lp_style, window.tmp_lp_id);
				window.tmp_lp_style = window.tmp_lp_id = null;
			}
			else if(PageScheduler.blogInfo && PageScheduler.blogInfo.getPaperLetterInfo()) {
				this.revertPaperletter();
			}
		}
	},

	_changePaperletter : function(nPaperStyle, nPaperID) {
        if(!!PageScheduler.editorObj && !!nPaperStyle && !!nPaperID) {
			PageScheduler.editorObj.setPaperLetter(nPaperStyle, nPaperID);
			PageScheduler.editorObj.showDefinePanel(parent.g_hsBlogTemplate['paperTemplate'], 25);
			DraftLogicManager.draftStateTrigger();

			if(window.bPreviewState) {
				var oPaperLetterInfo = new parent.PaperLetterInfo(nPaperID, nPaperStyle);
				QZBlog.Util.PaperLetterManager.cleanAllPaperStyle();
				QZBlog.Util.PaperLetterManager.doPaint(oPaperLetterInfo, $("titleInput").value.trim("R").toInnerHTML());
			}
		}
		else {
			setTimeout(QZONE.event.bind(this, this._changePaperletter, nPaperStyle, nPaperID), 50);
		}
	},

	// 添加信纸对话框
	openPaperLetterDlg : function(paperID, paperStyle, paperType) {
		parent._tempQFCallback = QZONE.event.bind(this, this._changePaperletter);
		var params = ((!!paperID) ? ('paperid=' + paperID) : '') + (!!paperType ? ("papertype=" + paperType) : '');
		if(params.length > 0) {
			params = "?" + params;
		}
		QZBlog.Util.popupDialog('选择信纸', '<iframe id="lpFrame" frameborder="no" style="width:100%;height:100%" src="/qzone/mall/v3/letterpaper/htm/spaper.htm' + params + '"></iframe>', 670, 570);
	},

	// 添加QQshow泡泡对话框
	openQQShowBubbleDlg : function(url, albumid) {
		if(!PageScheduler.editorObj || !PageScheduler.editorObj.bReadyState) {
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this.openQQShowBubbleDlg, url, albumid), 50);
			return;
		}
		
		var toolbar = PageScheduler.editorObj.getToolbarList()["html_full"];
		var button = toolbar.getButton("qqshowbubble");
		if (button) {
			button._openQQShowDlg(url, albumid);
		}
	},

	// 取消写日志
	cancelWriteBlog : function() {
		if(getParameter("opener") == "main") {
			QZBlog.Util.toApp('/N1');
			return;
		}
		
		if(getParameter("opener") == "list") {
			location.href = IMGCACHE_BLOG_V5_PATH + (this._isPrivateBlog ? "/private" : "") +"/list.html" + (!!getParameter("draftid") ? "?draftlist=1" : "");
			return;
		}
		
		if(PageScheduler.blogInfo) {
			if(getParameter("draftid")) {
				location.href = IMGCACHE_BLOG_V5_PATH + "/list.html?draftlist=1";
				return;
			}
			
			if(getParameter("bid")) {
				var blogid = getParameter("bid");
				var blogInfo = parent.g_oBlogInfoMgr.getBlogInfo(blogid);

				location.href = this.getContentCGIUrl(QZBlog.Logic.SpaceHostInfo.getUin(), blogid, blogInfo ? blogInfo.getRandomSeed() : 0);
				return;
			}
		}
		
		location.href = IMGCACHE_BLOG_V5_PATH + (this._isPrivateBlog ? "/private" : "") + "/list.html";
	},

	// 提取标签
	retriveTag : function() {
		if(!PageScheduler.editorObj) {
			return;
		}

		var content = PageScheduler.editorObj.getContent();
		if(!PageScheduler.editorObj.isEdited()) {
			QZBlog.Util.showMsgbox("您还没有书写任何日志正文内容", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
			PageScheduler.editorObj.focus();
			return;
		}

		if(content.getRealLength() < 100) {
			QZBlog.Util.showMsgbox("您输入的日志内容过少，您也可以手工输入搜索词，如“时尚 生活”", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
			return;
		}
		
		if($("tagInput").value.trim().split(" ").length >= 5) {
			QZBlog.Util.showMsgbox("您输入的搜索词数已经达到上限(5个)，请删除后再次提取", 0, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
			return;
		}

		var title = $("titleInput").value.trim();
		var url = "http://" + CGI_BLOG_DOMAIN + CGI_BLOG_PATH + "/blog_get_tag?uin=" + QZBlog.Logic.SpaceHostInfo.getUin() + 
			"&title=" + title.URLencode() + "&content=" + content.URLencode() + "&tag_num=5";
		var netProcessor = QZBlog.Util.NetProcessor.create(url, "post", function(data) {
			if(!data || XMLselectSingleNode(data, "/qzone/result") == null) {
				QZBlog.Util.DumpMsgFunc();
				return;
			}
			
			var result = XMLselectSingleNode(data, "/qzone/result");
			var type = result.getAttribute("type");
			if(type == -6 || type == -5) {
				QZBlog.Util.showLoginBox("ownerOperation", null, true);
				return;
			}
			else if(type == 0) {
				var value = getXMLNodeText(XMLselectSingleNode(data, "/qzone/result/message"));
				if(value.getRealLength() ==  0) {
					QZBlog.Util.showMsgbox("未能提取到搜索词", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
				}
				else {
					QZBlog.Util.showMsgbox("成功提取日志搜索词", 0, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
				}

				var originValue = ($("tagInput").focused ? ($("tagInput").value.trim() + " ") : "");
				$("tagInput").focused = true;
				$("tagInput").focus();
				$("tagInput").style.color = '#000';
				$("tagInput").style.borderColor = "gray";
				$("tagInput").value = QZONE.lang.uniqueArray((originValue + value.split("|").join(" ").toRealStr()).split(" ")).slice(0, 5).join(" ");
			}
			else {
				QZBlog.Util.showMsgbox(getXMLNodeText(XMLselectSingleNode(data, "/qzone/result/message")), 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);			
			}			
		}, QZBlog.Util.DumpMsgFunc, "GB2312", false);

		netProcessor.excute();
	},

	changeEditorHeight : function(value) {
		if(!PageScheduler.editorObj || !PageScheduler.editorObj.bReadyState) {
			QZBlog.Util.showMsgbox("日志编辑器正在初始化，请稍候...", 0, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
			return;
		}

		var target = PageScheduler.editorObj.getCurrentEditor().getInstance();
		var curHeight = parseInt(target.style.height, 10);
		if(typeof(curHeight) == "undefined") {
			curHeight = 450;
		}

		curHeight += value;	
		if(curHeight < 60) { // 和编辑器保持一致
			curHeight = 60;
		}
		PageScheduler.editorObj._dom_area.style.height = curHeight + "px";
		PageScheduler.editorObj.resizeArea();
	},

	// 为了兼容统一页面对应日志和私密日志
	getContentCGIUrl : function(uin, blogid, rand){
		return [
			"http://",
			CGI_BLOG_DOMAIN,
			this._isPrivateBlog ? CGI_PRIVATEBLOG_PATH : CGI_BLOG_PATH,
			"/" + (this._isPrivateBlog ? "private" : "") + "blog_output_data?uin=" + uin,
			"&blogid=" + blogid,
			"&imgdm=" + IMGCACHE_DOMAIN,
			"&bdm=" + CGI_BLOG_DOMAIN,
			"&mode=" + (QZBlog.Util.isSmallMode() ? 0 : (QZBlog.Util.isWideMode() ? 2 : 1)),
			"&numperpage=" + CONTENT_COMMENT_NUM,
			(rand >0 ? ("&blogseed="+rand) : ""),
			"&property=" + parent.g_Property,
			"&timestamp=" + parent.g_NowTime,
			QZBlog.Logic.getGlobalBlogRightInfo() ? ("&br=" + QZBlog.Logic.getGlobalBlogRightInfo()) : ""
		].join("");
	}
};

////////////////////////////////////////////////////////////////////////////
// 页面调度显示
var PageScheduler = {	
	blogid : -1,
	draftid : -1,
	blogInfo : null, // 编辑日志或草稿时才出现
	bLoaded : false,
	editorObj : null,
	_nState : -1, // 1--新写日志 2--编辑日志且没有对应草稿  3--编辑日志且有对应草稿  4--编辑草稿且没有对应日志  5--编辑草稿且有对应日志 6--自动草稿且没有对应日志 7--自动草稿且有对应日志
	getState : function() {
		return this._nState;
	},
	
	_selectCategory : function(name) {
		var optionsEle = $("blogCateSelect").options;
		for(var index=0; index<optionsEle.length; ++index) {
			if(optionsEle[index].value == name.toRealStr()) {
				$("blogCateSelect").selectedIndex = index;
				break;
			}
		}

		if(index==optionsEle.length && name.length>0) {
			optionsEle[optionsEle.length] = new Option(name.toRealStr(), name.toRealStr(), true, true);
		}
	},

	fillCategorySelector : function() {
		var optionsEle = $("blogCateSelect").options;
		try{
			if(QZONE.userAgent.ie) {
				optionsEle.remove(0);
			}
			else {
				$("blogCateSelect").remove(0);
			}
			
		}catch(err) {
		}

		if(!!getParameter("openmusic")) {
			optionsEle[0] = new Option("我的乐志", "我的乐志", true, true);
		}
		else {	
			optionsEle[0] = new Option("个人日记", "个人日记", true, true);
		}
		
		QZBlog.Logic.getCategoryInfo(QZONE.event.bind(this, function(){
			var listInfo = parent.g_oCateInfoMgr.getCateInfoList();
			for(var index=0; index<listInfo.length; ++index) {
				var cateName = listInfo[index].getName();
				if(cateName==parent.BLOG_VOTE_CATENAME || cateName==$("blogCateSelect").value.trim()) {
					continue;
				}

				optionsEle[optionsEle.length] = new Option(cateName.toRealStr(), cateName.toRealStr(), false, false);
			}

			var cateName = decodeURIComponent(getParameter("category"));
			if(cateName) {
				this._selectCategory(cateName);
			}
			else if(this.blogInfo){
				this._selectCategory(this.blogInfo.getCateName());
			}
		}));
	},

	fillRightArea : function(result) {
		if(!!result && result.length > 0) {
			var strUins = "";
			var strHTML = '已选择：';
			for(var index=0; index<result.length; ++index) {
				strHTML += (result[index].label+"").toInnerHTML() + '(' + result[index].data + ')' + '、';
				strUins += result[index].data + "|";
			}
			strHTML = strHTML.substr(0, strHTML.length-1);
			strHTML += '<button class="bt_tx2" onclick="EditorManager.openRightSettingDlg(\''+strUins+'\');">选择</button>';
			$("blogRightSpan").innerHTML = strHTML;
		}
	},

	_fillTagInfo : function(blogInfo) {
		if(!blogInfo) {
			return;
		}

		var tag = blogInfo.getTag();
		if(tag && tag.getRealLength() > 0) {
			tag = tag.split("|").join(" ");
			$("tagInput").focused = true;
			$("tagInput").style.color = '#000';
			$("tagInput").value = tag.toRealStr();		
		}		
		if(!!getParameter("focustag")) { // strange ie8
			if(QZONE.userAgent.ie != 8) {
				$("tagInput").style.borderColor = "#ff0000";
			}
		}
	},

	// 只有在显示投票草稿时才用到，日志的投票内容不可编辑
	_fillVoteInfo : function(voteInfo) {
		if(!voteInfo) {
			return;
		}

		// 选择投票时间
		var timeOptions = $("voteTimeSelect").options;
		for(var index=0; index<timeOptions.length; ++index) {
			if(timeOptions[index].value == voteInfo.getTime()){
				$("voteTimeSelect").selectedIndex = index;
				break;
			}
		}
		$("multiVoteCheck").checked = voteInfo.getMultiCheck() ? true : false;
		
		var arrInput = $("voteOptionArea").getElementsByTagName("input");
		var optionList = voteInfo.getOptionList();
		for(var index=0; index<optionList.length; ++index) {
			if((index == 0 || index == 1) && arrInput[index]) {
				arrInput[index].value = optionList[index].getContent();
			}
			else {
				EditorManager.addVoteOption(optionList[index].getContent()); // may trig auto save
			}
		}

		$("voteCheckInput").checked = true;
		EditorManager.checkVoteInput();
	},

	_fillBlogInfo : function(blogInfo) {
		if(!blogInfo) {
			return;
		}
		if(!this.editorObj || !this.editorObj.bReadyState) {
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this._fillBlogInfo, blogInfo), 50);
			return;
		}

		initSystemCtrls();
		$("titleInput").value = blogInfo.getTitle().toRealStr().convSP(true).convCR(true);

		var blogType = blogInfo.getType();
		var bDraftFlag = (blogType==parent.BLOGTYPE.DRAFT || blogType==parent.BLOGTYPE.AUTODRAFT);

		if(!!blogInfo.getEffectBit(34)) {
			this.editorObj.setConvertedHTMLContent(blogInfo.getHTML());
			DraftLogicManager.updateEditorContent();

			var arr = this.editorObj.getSpecialFontNameList(blogInfo.getHTML());
			for(var index=0; index<arr.length; ++index) {
				setTimeout(QZONE.event.bind(this, function(name) {
					this.editorObj.loadSpecialFontLib(this.editorObj.getCurrentEditor().getDocument(), name);
				}, arr[index]), index*2000);
			}
			if(!QZBlog.Logic.SpaceHostInfo.isVipUser() && arr.length > 0) {
				this.editorObj.showTips('<div><img src="/ac/b.gif" class="icon_hint" /><font color="black">个性字体仅限黄钻用户使用，普通用户发表日志后无法显示个性效果。</font>&nbsp;&nbsp;<a class="unline c_tx" href="http://paycenter.qq.com/home&aid=zone.font" class="unline c_tx" target="_blank">加入黄钻贵族</a>&nbsp;&nbsp;<a target="_blank" class="unline c_tx" href="#">个性字体使用帮助</a></div>');
			}
		}
		else {
			this.editorObj.setContent(blogInfo.getContent().toRealStr().convSP(true).convCR(true));
		}
		
		this._selectCategory(blogInfo.getCateName());
	
		if(blogInfo.getVoteID() > 0) {
			$("voteCheckInput").checked = true;
			if(!bDraftFlag) {
				$("voteCheckInput").disabled=true;
				$("voteOperationDiv").style.display = "";
			}

			$("voteCateDiv").style.display = "";
			$("categoryDiv").style.display = "none";
		}
		else if(!bDraftFlag) {
			$("voteCheckInput").checked = false;
			$("voteCheckInput").disabled = true;
		}		

		this._fillVoteInfo(blogInfo.getVoteInfo());

		// effect 相关填充
		setTimeout(function() {
			$("highLightCheck").checked = (blogInfo.getEffectBit(1) ? true : false);
			$("signatureCheck").checked = (blogInfo.getEffectBit(9) ? true : false);
			$("setTopCheck").checked = (blogInfo.getEffectBit(4) ? true : false);
			$("quoteCheck").checked = (blogInfo.getEffectBit(6) ? true : false);

			if($("setTopCheck").checked || $("quoteCheck").checked) {
				EditorManager.showAllSetting(true);
			}
		}, 100);		
		
		/*if(!bDraftFlag && $("highLightCheck").checked) {
			$("highLightCheck").disabled = true;
		}*/

		if(!blogInfo.getEffectBit(27)) {
			window._defaultFontSize = 2;
			this.editorObj.setFontSize(window._defaultFontSize);
			this.editorObj.setHTMLFontSize(fontSizeMap[window._defaultFontSize]);
		}

		var nRightType = blogInfo.getRightInfo().getType();
		if(blogInfo.getEffectBit(29)) {
			EditorManager.rightSettingResult.rightType = nRightType;

			if(nRightType == parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"]) {
				var uinList = blogInfo.getRightInfo().getUserIDList();
				QZBlog.Util.getPortraitList(uinList, function(arr) {
					var list = [];
					for(var uin in arr) {
						list.push({"data":uin+"", "label":arr[uin][6].toRealStr()});
					}

					EditorManager.rightSettingResult = list;
					EditorManager.rightSettingResult.rightType = parent.BlogRightInfo.RIGHTTYPE["SPECIFIC"];
					PageScheduler.fillRightArea(list);
				});
			}

			EditorManager.showAllSetting(true);
		}
		EditorManager.selectRight(nRightType, true);
		
		// 填充tag
		this._fillTagInfo(blogInfo);

		// 填充信纸
		if(blogInfo.getPaperLetterInfo()) {
			this.editorObj.setPaperLetter(blogInfo.getPaperLetterInfo().getStyle(), blogInfo.getPaperLetterInfo().getID());
			this.editorObj.showDefinePanel(parent.g_hsBlogTemplate['paperTemplate'], 25);
		}

		if(!blogInfo.getEffectBit(33)) {
			$("linehint_tmp_div").style.display = "";
		}

		this.bLoaded = true;
		DraftLogicManager.initDraftTrigger();
	},	

	updateDraftArea : function() {
		var strTip = DraftLogicManager.getDraftTips(parent.g_oCateInfoMgr.getDraftCount(), this._nState==3);
		//if(strTip.length > 0) { // 为什么要加这个判断呢？
			$("draftTipText").innerHTML = strTip;
		//}
		var _draftFull = (parent.g_oCateInfoMgr.getDraftCount()>=parent.MAX_DRAFT_CNT);
		if(parent.g_oCateInfoMgr.getCategoryCnt() != 0 && parent.g_oCateInfoMgr.getDraftCount() >= 0) {
			$("loadDraftButton").innerHTML = "草稿箱(" + parent.g_oCateInfoMgr.getDraftCount() +  ")";
		}
		$("saveDraftButton").disabled = (_draftFull && (this._nState==1||this._nState==2||this._nState==6)) ? true : false; // 没有对应草稿且草稿数超过最大数
		/*if(_draftFull){ //提示草稿箱满了
			QZFL.showBubble($("loadDraftButton"),"","您的草稿箱已满，无法继续为您保存草稿，请进行删除。",{call:function(){
				EditorManager.loadManualDraftData(); //FIXME 不用bubble实现，考虑用红色文字提醒
			}})
		}*/
	},
	
	// 首先检查自动草稿信息
	checkAutoDraftState : function() {
		if(EditorManager._isPrivateBlog){
			this._procLoadAutoDraftData();
		}
		else{
			this.updateDraftArea();
			$("draftOperArea").style.display = "";
			
			QZBlog.Util.showMsgbox("正在获取数据，请稍候...", 0);
			var url = "http://" + CGI_BLOG_DOMAIN + CGI_DRAFT_PATH + "/draft_get_auto_data?uin=" + QZBlog.Logic.SpaceHostInfo.getUin() + "&r="+Math.random();
			var portraitReq = new QZBlog.Util.BlogNetProcessor();
			portraitReq.create(url, "get", QZONE.event.bind(this, this._postProcAutoDraftData), 
				QZONE.event.bind(this, this._postProcAutoDraftData), "GB2312", true, "_Callback");
			portraitReq.excute();
			DraftLogicManager.startAutoSaveDraft();
		}
	},
	
	//处理自动草稿返回信息
	_postProcAutoDraftData : function(rawData) {
		if(!rawData){
			return;
		}else if(rawData.error){
			this._procLoadAutoDraftData(rawData);
		}else{
			this._autoDraftData = objectClone(rawData); //先缓存起来
			QZBlog.Util.popupDialog('自动草稿处理', {src:"/qzone/newblog/v5/draft_trans_dlg.html"}, 410, 230);
			this._procLoadAutoDraftData(null);
		}
	},
	
	_procLoadAutoDraftData : function(rawData){
		QZBlog.Util.hideMsgbox();

		if(rawData && !rawData.error && !getParameter("autodraft") && !EditorManager._isPrivateBlog) { // 在读取草稿列表中加入autodraft参数，避免走自动草稿加载逻辑
			var data = rawData.data;
			DraftLogicManager.setAutoDraftID(1); // 默认自动草稿ID为1
			
			this.blogInfo = new parent.BlogInfo();
			this.blogInfo.setType(parent.BLOGTYPE.AUTODRAFT);

			if(!this.blogInfo.convertJsonObject(data)) {
				alert("获取自动草稿信息失败，请刷新空间重试");
				return;
			}

			if(this.blogInfo.getID() >= 0) {
				this._nState = 7;
			}
			else {
				this._nState = 6;
			}

			this._fillBlogInfo(this.blogInfo);
			DraftLogicManager.draftStateTrigger();
			return;
		}
			
		if(this.draftid > 0 && !EditorManager._isPrivateBlog) {
			$("topBar").innerHTML = "编辑草稿";
			this.getManualDraftInfo(this.draftid);
		}
		else if(this.blogid >= 0) {
			$("topBar").innerHTML = "编辑" + (EditorManager._isPrivateBlog ? "私密记事" : "日志");
			$("select_writing").style.display = "none";
			this.getBlogInfo(this.blogid);
		}
		else {
			DraftLogicManager.initDraftTrigger();
		}
	},
	
	
	/**
	 * 自动草稿处理方式回调
	 * @param {int} dtype 处理类型
	 */
	procAutoDraftCallback : function(dtype){
		var dhash = ["_procLoadAutoDraftData","_procAutoDraftToManual","_procDeleteAutoDraft"];
		var data = this._autoDraftData;
		if(dhash[dtype]){
			this[dhash[dtype]](data);
		}
	},
	
	getAutoDraftData : function(){
		return this._autoDraftData;
	},
	
	_procDeleteAutoDraft : function(){
		loadXMLAsync("delDraftData", "http://"+CGI_BLOG_DOMAIN+CGI_DRAFT_PATH+"/draft_del_auto_data", function(){}, null, true, "uin="+QZBlog.Logic.SpaceHostInfo.getUin()+"&r="+Math.random());
	},
	
	/**
	 * 将自动草稿转为手动
	 */
	_procAutoDraftToManual : function(){
		var url = "http://" + CGI_BLOG_DOMAIN + CGI_DRAFT_PATH + "/draft_auto2manual?uin=" + QZBlog.Logic.SpaceHostInfo.getUin();
		var netProcessor = QZBlog.Util.NetProcessor.create(url, "post", QZONE.event.bind(this, 
				function(o){
					//如果处理成功
					//草稿箱增加一条
					parent.g_oCateInfoMgr.setDraftCount(parent.g_oCateInfoMgr.getDraftCount()+1);
					parent.g_oDraftListInfoMgr.clear();
					PageScheduler.updateDraftArea();
				}
			),
			function(o){
				setTimeout(function(){
						QZBlog.Util.showMsgbox(o.error.msg,0,2000);
				},100);
				PageScheduler._procLoadAutoDraftData(PageScheduler._autoDraftData);
			},
		"GB2312", false);
		netProcessor.alertHandler = function(msg){
			setTimeout(function(){
					QZBlog.Util.showMsgbox(msg,0,2000);
			},100);
		}
		netProcessor.setPostType("JSON");
		netProcessor.excute();
	},

	getManualDraftInfo : function(draftid) {
		this.blogInfo = parent.g_oBlogInfoMgr.getBlogInfo(draftid);
		if(!!this.blogInfo && this.blogInfo.getContent()) {
			this._fillBlogInfo(this.blogInfo);
		}
		else {
			QZBlog.Util.showMsgbox("正在读取数据，请稍候...", 0);
			var url = "http://" + CGI_BLOG_DOMAIN + CGI_DRAFT_PATH + "/draft_get_manual_data?uin=" + QZBlog.Logic.SpaceHostInfo.getUin() + "&draftid=" + this.draftid + "&r="+Math.random();
			var netProcessor = new QZBlog.Util.BlogNetProcessor();
			netProcessor.create(url, "get", QZONE.event.bind(this, this._showManualDraftInfo), function() {
				QZBlog.Util.showMsgbox("服务器繁忙，请稍候重试", 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
				location.href = IMGCACHE_BLOG_V5_PATH + "/list.html?draftlist=1";
			}, "GB2312", true, "_Callback");
			netProcessor.loginHandler = QZONE.event.bind(this, function() {
				setTimeout("location.href='"+IMGCACHE_BLOG_V5_PATH+"/list.html';", 2000);
				QZBlog.Util.showLoginBox("ownerOperation", null, true);
			});
			netProcessor.excute();
		}
	},
	
	_showManualDraftInfo : function(rawData) {
		this.blogInfo = new parent.BlogInfo();
		this.blogInfo.setType(parent.BLOGTYPE.DRAFT);

		if(!this.blogInfo.convertJsonObject(rawData.data)) {
			alert("无法获取草稿全部信息，请刷新空间重试");
			return;
		}
		if(!parent.g_oBlogInfoMgr.addBlogInfo(this.blogInfo)) {
			alert("无法获取草稿全部信息，请刷新空间重试");
			return;
		}
		this._fillBlogInfo(this.blogInfo);
		parent.g_oBlogInfoMgr.addBlogInfo(this.blogInfo);
	},
	
	getBlogInfo : function(blogid) {
		this.blogInfo = parent.g_oBlogInfoMgr.getBlogInfo(blogid);
		if(!!this.blogInfo && this.blogInfo.getContent()) {
			this._fillBlogInfo(this.blogInfo);
			if(this.blogInfo.getDraftID() > 0) {
				this.draftid = this.blogInfo.getDraftID();
				this._nState = 3;
			}

			this.updateDraftArea();
		}
		else {
			QZBlog.Util.showMsgbox("正在读取数据，请稍候...", 0);
			var url = "http://" + CGI_BLOG_DOMAIN + (EditorManager._isPrivateBlog ? CGI_PRIVATEBLOG_PATH : CGI_BLOG_PATH) + "/" + (EditorManager._isPrivateBlog ? "private" : "") + "blog_get_data?uin=" + QZBlog.Logic.SpaceHostInfo.getUin() + 
				"&numperpage=" + CONTENT_COMMENT_NUM + "&blogid=" + this.blogid + "&arch=0&pos=0&direct=1&r=" + Math.random();
			if(QZBlog.Logic.getGlobalBlogRightInfo()) {
				url += "&br=" + QZBlog.Logic.getGlobalBlogRightInfo();
			}

			var portraitReq = new QZBlog.Util.BlogNetProcessor();
			portraitReq.create(url, "get", QZONE.event.bind(this, this._showBlogInfo), function(data) {
				if(!!data && !!data.error && !!data.error.msg) {
					QZBlog.Util.showMsgbox(data.error.msg, 1, QZBlog.Util.MSG_LIFTTIME.MIDDLE);
				}
				location.href = IMGCACHE_BLOG_V5_PATH + "/list.html";
			}, "GB2312", true, "_Callback");
			portraitReq.excute();
		}
	},

	_showBlogInfo : function(rawData) {
		this.blogInfo = new parent.BlogInfo();
		/*if(getParameter("archive")) { // 不能在回调函数里使用到location.href
			this.blogInfo.setType(parent.BLOGTYPE.ARCHIVE);
		}*/

		if(!this.blogInfo.convertJsonObject(rawData.data)) {
			alert("无法获取日志全部信息，请刷新空间重试");
			return;
		}
		if(!parent.g_oBlogInfoMgr.addBlogInfo(this.blogInfo)) {
			alert("无法获取日志全部信息，请刷新空间重试");
			return;
		}

		if(this.blogInfo.getDraftID() > 0) {
			this._nState = 3;
		}

		this._fillBlogInfo(this.blogInfo);		

		this.updateDraftArea();
		//parent.g_oBlogInfoMgr.addBlogInfo(this.blogInfo);
	},

	parsePhotoData : function() {
		var oData = QZFL.FP._t.insertPhotoContent;
		if(!oData) {
			return null;
		}

		var jsonData = {};
		try {
			jsonData.bNameFlag = oData.needPhotoName;
			jsonData.bDescFlag = oData.needPhotoDesc;
			jsonData.bAlbumName = oData.needAlbumName;
			jsonData.lastAlbumId = (oData.lastAlbumId ?  oData.lastAlbumId : window.lastBlogAlbumId); 
			window.lastBlogAlbumId = jsonData.lastAlbumId;
			jsonData.arrImgInfo = [];

			for(var index=0; index<oData.photos.length; ++index) {
				var info = {};
				info.type = oData.photos[index].from;
				info.url = oData.photos[index].url;
				info.album = oData.photos[index].albumName;
				info.albumUrl = oData.photos[index].albumUrl;
				info.name = oData.photos[index].name;
				info.desc = oData.photos[index].desc;
				jsonData.arrImgInfo.push(info);
			}
		}
		catch(err) {
			jsonData = null;
		}
		
		//QZFL.FP._t.insertPhotoContent = null;
		return jsonData;
	},

	// 新写日志参数	
	_procWriteBlogParameter : function() {
		var title = decodeURIComponent(getParameter("title"));
		$("titleInput").value = title.toRealStr().convSP(true).convCR(true);

		var content = parent.ENV.get("icTabBlogContent"); // 兼容个人中心写日志跳高级模式
		if(!content || content.length == 0) {
			content = decodeURIComponent(getParameter("content"));
		}
		else {
			parent.ENV.set("icTabBlogContent", "");
			DraftLogicManager.draftStateTrigger();
		}

		if(!!getParameter("photoBlog",true)) {
			var data = this.parsePhotoData();
			if(!!data) {
				for(var index=0; index<data.arrImgInfo.length; ++index) {
					content += "[img]" + data.arrImgInfo[index].url + "[/img]";
					if(data.arrImgInfo.length != 1) {
						content += "\n";
					}

					if(data.bNameFlag && data.arrImgInfo[index].name) {
						content += "照片名称：" + data.arrImgInfo[index].name;
						if(!data.bAlbumName || !data.arrImgInfo[index].album) {
							content += "\n";
						}
					}

					if(data.bAlbumName && data.arrImgInfo[index].album) {
						if(data.bNameFlag && data.arrImgInfo[index].name) {
							content += "，";
						}
						content += "所属相册：[url="+data.arrImgInfo[index].albumUrl+"]" + data.arrImgInfo[index].album + "[/url]\n";
					}

					if(data.bDescFlag && data.arrImgInfo[index].desc) {
						content += "照片描述：" + data.arrImgInfo[index].desc+"\n";
					}

					if(data.arrImgInfo.length != 1) {
						content += "\n";
					}
				}
			}
		}
		else if(getParameter("externdata")) {
			this._getExternData();
			return;
		}

		this.editorObj.setContent(content.toRealStr().convSP(true).convCR(true));
	},

	_getExternData : function() {
		QZBlog.Util.showMsgbox("正在加载数据，请稍候...", 0);
		var url = "http://" + CGI_BLOG_DOMAIN + CGI_BLOG_PATH + "/blog_fetch_source" + location.search + "&uin=" + QZBlog.Logic.SpaceHostInfo.getUin();
		var netReq = new QZBlog.Util.BlogNetProcessor();
		netReq.create(url, "get", QZONE.event.bind(this, function(data) {
			QZBlog.Util.hideMsgbox();
			if(data && data.blog) {
				var curContent = (this.editorObj.bReadyState && this.editorObj.isEdited() ? this.editorObj.getConvertedHTMLContent() : "");
				this.editorObj.setConvertedHTMLContent(data.blog.content.toRealStr().convSP(true).convCR(true) + curContent);
				DraftLogicManager.updateEditorContent();
			}
		}), function() {
			QZBlog.Util.hideMsgbox();
		}, "GB2312", true, "_Callback");
		netReq.execute();
	},

	_checkPageState : function() {
		var blogid = parseInt(getParameter("bid"), 10);
		var draftid = parseInt(getParameter("draftid"), 10);
		if(!!draftid) {
			if(blogid >= 0) {
				this._nState = 5;
				this.blogid = blogid;
			}
			else {
				this._nState = 4;
			}
			this.draftid = draftid;
		}
		else if(blogid >= 0) {
			this.blogid = blogid;
			this._nState = 2; // probably 3, check it again after blog content retrieved
		}
		else {
			this._nState = 1;
		}
	},
	
	procPageParameter : function() {
		if(this.editorObj == null) {
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this.procPageParameter), 50);
			return;
		}

		var blogid = parseInt(getParameter("bid"), 10);
		if(isNaN(blogid) || blogid<0) {
			this._procWriteBlogParameter();
		}

		var paperID = parseInt(getParameter("paperid"), 10);
		var paperStyle = parseInt(getParameter("paperstyle"), 10);
		var openDlg = parseInt(getParameter("paperdialog"), 10);
		var paperType = parseInt(getParameter("papertype"), 10);

		if((!!paperID && !!paperStyle) || openDlg==1) {		
			EditorManager.openPaperLetterDlg(paperID, paperStyle, paperType);
		}
		else if(openDlg == 2) {
			EditorManager.openQQShowBubbleDlg(getParameter("url"), getParameter("albid"));
		}
		
		this._checkPageState();
		QZBlog.Util.Statistic.sendPV("editblog");
	},

	_doBuildEditor : function() {
		window._defaultFontSize = 3;

		var defHeight = 480;
		switch(window.screen.height){
			case 600:
			case 768:
			case 864:
				defHeight = 280;
				break;
			case 1024:
				defHeight = 450;
				break;
			case 1280:
				defHeight = 650;
				break;
			default:
				if(!QZONE.userAgent.ie) {
					defHeight = 480;
				}
				else {
					defHeight = 300;
				}
		}

		this.editorObj = QZONE.editor.create("blogEditorAnchor", {height : (defHeight+"px")});			
		this.editorObj.onEditorReady = QZONE.event.bind(this, this._postBuildEditor);
		//this.editorObj.onToolbarSwitch = function() {};
		this.editorObj.build();
	},

	_procPageParameter : function() {
		if(QZBlog.Logic.SpaceHostInfo.isFamousUser()) { // 名博默认开启自动缩进功能
			var toolbar = PageScheduler.editorObj.getToolbarList()["html_full"];
			var button = toolbar.getButton("autoindent");
			if(button) {
				button.execute();
			}
		}

		if(!!getParameter("openmusic")) {
			var toolbar = PageScheduler.editorObj.getToolbarList()["html_full"];
			var button = toolbar.getButton("music");
			if(button) {
				button._openMusicDlg();
			}
		}
		else if(!!getParameter("openphoto")) {
			var toolbar = PageScheduler.editorObj.getToolbarList()["html_full"];
			var button = toolbar.getButton("insertimage");
			if(button) {
				button._openImageBox();
			}
		}
		else if(!!getParameter("openfontfamily")) {
			var toolbarName = (parent.g_oBlogSettingInfoMgr.getEditMode(QZBlog.Logic.SpaceHostInfo.getLoginUin()) == parent.BlogEditMode["SIMPLE"] ? "html_simple" : "html_mini");
			var toolbar = PageScheduler.editorObj.getToolbarList()[toolbarName];
			var button = toolbar.getButton("fontfamily");
			if(button) {
				button.showMenu();
			}
		}
		else if(!!getParameter("openvideo")) {
			var toolbar = PageScheduler.editorObj.getToolbarList()["html_full"];
			var button = toolbar.getButton("video");
			if(button) {
				button._openVideoDlg();
			}
		}
	},

	_postBuildEditor : function() {
		if(arguments[0] != "html") {
			return;
		}

		$("titleInput").focus();
		$("retriveTagArea").style.display = "";
//		$("retriveTagArea").style.position = "absolute"; // by force for ie6
				
		this.editorObj.setBlogCSS();
		this.editorObj.setHTMLFontSize(fontSizeMap[window._defaultFontSize]);
		//this.editorObj.initBlogEvents();
		this.editorObj.setupHTMLEvent();
		this.editorObj.setMaxContentLength(MAX_BLOG_HTML_LEN);
		DraftLogicManager.registerDraftTrigger(this.editorObj.getEditor("html").getDocument(), "keydown");
		DraftLogicManager.registerDraftTrigger(this.editorObj.getEditor("text").getInstance(), "keydown");
		var i,t;
		var _editor = PageScheduler.editorObj;
		var toolbars =_editor.getToolbarList();
		//禁止插入图片、视频、Flash等的开关
		if(INSERT_MEDIA_FORBIDDEN){
			var buttons = ['video','flash','insertimage','flash_s','flash_s_img','video_s','video_s_img','insertimage_s','insertimage_s_img'];
			var button,toolbar;
			for(t in toolbars){
				toolbar = toolbars[t];
				for(i = 0;i<buttons.length;i++){
					button = toolbar.getButton(buttons[i]);
					if(button){
						QZFL.event.purgeEvent(button.getElement(),'click');
						QZFL.event.addEvent(button.getElement(), "click", QZFL.event.bind(this, function(){
								_editor.showTips('QQ空间日志正在进行系统升级维护，日至部分内容（例如：视频、图片、Flash等）暂时不支持添加。由此给您带来的不便，敬请您谅解！');
							}));
					}
				}
			}
		}
		//设置截屏上传相册类型
		for(t in toolbars){
			toolbar = toolbars[t];
			var buttons = ['screenshot','screenshot_s','screenshot_s_img'];
			for(i = 0;i<buttons.length;i++){
				button = toolbar.getButton(buttons[i]);
				if(button){
					button.setBlogType(EditorManager._isPrivateBlog ? 7 : 2);
				}
			}
		}
		this._procPageParameter();

		//绑定点击流
		QZBlog.Util.regClickStream('http://imgcache.qq.com/qzone/newblog/v5/script/clickstreamrules.js',{sampleRate:CLICK_STREAM_RATE,doc:document});

		QZONE.event.addEvent(this.editorObj.getCurrentEditor().getDocument(), "keyup", QZFL.event.bind(this, function(evt) {
			evt = QZONE.event.getEvent(evt);
			/*if(!evt.ctrlKey || (evt.keyCode != 83 && evt.keyCode != 115)) {  // ctrl + s
				return;
			}*/
			
			if(evt.ctrlKey && (evt.keyCode == 83 || evt.keyCode == 115)){
				EditorManager.manualSaveDraft();
			}else if(evt.ctrlKey && evt.keyCode == 13){
				EditorManager.submitBlog();
			}else{
				return;
			}
			
			QZONE.event.preventDefault();
		}));

		this.editorObj.bReadyState = true;
	},

	buildEditor : function() {
		if(this.editorObj) {
			return;
		}
		
		if(typeof(qzEditorLoaded) == "undefined") { // 编辑器js加载兼容
			loadEditor("http://" + IMGCACHE_DOMAIN + "/qzone/newblog/v5/editor/qzEditor.js?hh=" + Math.random(),
				QZONE.event.bind(this, this._doBuildEditor),
				function() {
					alert("暂时无法加载编辑器，请清空浏览器缓存后重试.");
				}, "utf-8");
		}
		else {
			this._doBuildEditor();
		}
	},

	decideEditMode : function() {
		var nLoginUin = QZBlog.Logic.SpaceHostInfo.getLoginUin();
		if(!parent.g_oBlogSettingInfoMgr.isSettingInfoReady(nLoginUin)) {
			QZBlog.Util.getSubLoginBitMapFlag(function(data, value) {
				parent.g_oBlogSettingInfoMgr.createSettingInfo(nLoginUin, data);
				EditorManager._setMode(parent.g_oBlogSettingInfoMgr.getEditMode(nLoginUin));
			}, 1);
		}
		else {
			EditorManager._setMode(parent.g_oBlogSettingInfoMgr.getEditMode(nLoginUin));
		}		
	},

	_loadPaperDetailImage : function(ele, id) {
		ele.onload = null;
		var data = window.oLetterPaperData;
		for(var index=0; index<data.length; ++index) {
			var url = "http://"+IMGCACHE_DOMAIN+"/qzone/space_item/pre/"+data[index].id%16+"/"+data[index].id+"_1.gif";
			if(data[index].id == id) {
				QZBlog.Util.ImageManager.loadObjectImage(url, ele, function() {ele.style.height="134px";ele.style.width="107px";});
			}
			else {
				QZBlog.Util.ImageManager.loadImage(url, false, null);
			}
		}
	},

	// 信纸工具条 start
	_showLetterPaperDetail : function(ele, dataIndex) {
		if(!ele || !window.oLetterPaperData || dataIndex < 0 || dataIndex >= window.oLetterPaperData.length) {
			return;
		}

		var paperData = window.oLetterPaperData[dataIndex];
		if(!paperData) {
			return;
		}

		clearTimeout(window.nHidePaperDetailTimer);

		if(!$("paperDetailDiv")) {
			QZONE.dom.createElementIn("div", document.body, false, {"id":"paperDetailDiv", "class":"toolbar_review"});
			QZONE.event.addEvent($("paperDetailDiv"), "mouseout", function() {
				$("paperDetailDiv").style.display = 'none';
			});
			QZONE.event.addEvent($("paperDetailDiv"), "mouseover", function() {
				$("paperDetailDiv").style.display = '';
			});
		}

		$("paperDetailDiv").innerHTML = "<strong>"+paperData.name+"</strong><p style='height:134px;'><a href='javascript:;' onclick='EditorManager._selectLPFromePanel(" + 
			dataIndex+");return false;'><img src='/qzone_v4/loading.gif' title='"+paperData.desp+"' style='height:16px;width:16px;' onload='PageScheduler._loadPaperDetailImage(this,"+paperData.id+
			");' /></a></p><span class='review_bar "+(paperData.Fitem_type==11 ? "none" : "")+"'><img src='/ac/b.gif' class='icon_vip_yl' /> 黄钻专用 "+
			"<a href='http://jump.qq.com/clienturl_168?service_type=home&clientuin="+QZONE.cookie.get("zzpaneluin")+"&clientkey="+
			QZONE.cookie.get("zzpanelkey")+"&aid=zone.letips&cid=QZ_C_1061&sid=QZ_S_1005&wid=QZ_W_1002"+"' target='_blank' class='paper_join"+
			(QZBlog.Logic.SpaceHostInfo.isVipUser() ? " none" : "")+"'>加入</a></span>";

		var left = parseInt(QZONE.dom.getPosition(ele).left, 10)+(30/2)-(150/2);
		if(dataIndex == 3) { // 各个浏览器不一样,为了显示完整
			left -= 8;
		}
		
		$("paperDetailDiv").style.left = left + "px";
		$("paperDetailDiv").style.top = (QZONE.dom.getPosition(ele).top + 30) + "px";
		$("paperDetailDiv").style.display = "";
		$("paperDetailDiv").onmouseover = function() {
			clearTimeout(window.nHidePaperDetailTimer);
		};
		$("paperDetailDiv").onmouseout = PageScheduler._toHideLPDetail;
	},

	_toHideLPDetail : function() {
		window.nHidePaperDetailTimer = setTimeout(function() {
			$("paperDetailDiv").style.display = "none";
		}, 200);
	},	

	showLetterPaperPanel : function() {
		var url = "http://" + IMGCACHE_DOMAIN + "/qzone/mall/static/json/mallpaper_blog.json";
		var netReq = new QZBlog.Util.BlogNetProcessor();
		netReq.create(url, "get", QZONE.event.bind(this, function(data) {
			data = data.data;
			if(!data || !data.length) {
				return;
			}

			// 选出前两个免费，后两个专用
			window.oLetterPaperData = (function() {
				var arr = [];
				var index = -1;

				var freeItemLen = 0;
				var vipItemLen = 0;
				for(index=0; index<data.length; ++index) {
					if(data[index].Fitem_type == 11) {
						++freeItemLen;
						continue;
					}

					++vipItemLen;
				}
				
				if(freeItemLen<2 || vipItemLen<4) {
					//alert("商城信纸返回数据有问题");
					return arr;
				}

				while(arr.length < 4 && arr.length<data.length) {
					index = Math.floor(Math.random()*data.length);
					if(data[index].selected) {
						continue;
					}

					if(!QZBlog.Logic.SpaceHostInfo.isVipUser()) {
						if((arr.length%2==0 && data[index].Fitem_type==11) || (arr.length%2!=0 && data[index].Fitem_type!=11)) {
							arr.push(data[index]);
							data[index].selected = true;
						}
					}
					else {
						if(data[index].Fitem_type != 11) {
							arr.push(data[index]);
							data[index].selected = true;
						}
					}
				}

				return arr;
			})();
			data = window.oLetterPaperData;

			var strTemplate = '<a href="javascript:;" onmouseover="<%=mouseEvt=%>" onmouseout="PageScheduler._toHideLPDetail();" onclick="<%=clickEvt=%>;return false;"><img src="<%=imgUrl=%>" /></a>';
			var strHTML = "";
			for(var index=0; index<data.length; ++index) {
				data[index].id = data[index].Fitem_id;
				data[index].style = data[index].Fdesc;
				data[index].name = data[index].Fitem_name;
				data[index].type = data[index].Fitem_type;
				data[index].desp = data[index].Fitem_remark;
				strHTML += strTemplate.replace(/<%=imgUrl=%>/gi, ("http://"+IMGCACHE_DOMAIN+"/qzone/space_item/pre/"+data[index].id%16+"/"+data[index].id+".gif")).replace(
					/<%=clickEvt=%>/gi, ("EditorManager._selectLPFromePanel("+index+")")).replace(
					/<%=mouseEvt=%>/gi, ("PageScheduler._showLetterPaperDetail(this, "+index+");"));
			}
			
			$("paperListSpan").innerHTML = strHTML;
			window.previewLetterPaperHTML = strHTML;

			setTimeout(function() {
				var oLoader = new QZONE.jsLoader();
				oLoader.onload = function() { window.bPaperInterfaceLoaded = true; };
				oLoader.load("http://"+IMGCACHE_DOMAIN+"/qzone/mall/v3/letterpaper/js/qzonevippaper.js", document, "gb2312");
			}, 1000);

			// 调整信纸工具条高度
			setInterval(function() {
				PageScheduler.editorObj.refreshDefinePanelTopPos();
			}, 100);
		}), function() {
			$("paperPanel").style.display = "";
		}, "GB2312", true, "mallpaperdealdata");
		netReq.excute();
	},
	// 信纸工具条 end
		
	start : function() {
		this.decideEditMode();
		if(EditorManager._isPrivateBlog){
			$("write_sec_blog").checked = true;
		}
		else{
			$("write_blog").checked = true;
		}
		EditorManager._switchPrivateWriteMode();
		$("select_writing").style.display = !!getParameter("bid") ? "none" : "block";
		this.procPageParameter();
		this.fillCategorySelector();
		this.checkAutoDraftState();
	}
};

////////////////////////////////////////////////////////////////////////////
//
var NamecardScheduler = {
	loaded : false,

	loadScript : function() {
		if(this.loaded) {
			return;
		}

		var g_oJSLoader = new QZONE.jsLoader();
		g_oJSLoader.onload = QZONE.event.bind(this, function() {
			this.loaded = true;
		});
		g_oJSLoader.load("http://"+IMGCACHE_DOMAIN+"/qzone/v5/namecard.js", document, "utf-8");
	},

	init : function(oContainer) {
		if(!oContainer) {
			return;
		}
		if(!this.loaded) {
			QZBlog.Util.TimerManager.setTimeout(QZONE.event.bind(this, this.init, oContainer), 100);
			return;
		}
		
		try{
			QZONE.namecard.init(oContainer);
		}
		catch(err){
		}
	}
};

////////////////////////////////////////////////////////////////////////////
// 草稿逻辑
parent.g_nDraftSubmitFlag = -1;      // 草稿新发表或覆盖标志
var DraftLogicManager = {
	DRAFT_TIPS : {
		"full" : "<span style=\"color:red\" title=\"您的草稿箱已满，无法继续为您保存草稿，请进行删除。\">草稿箱已满</span>",
		"notfull" : "草稿箱中有 {{cnt}} 篇草稿",
		"empty" : "您没有已保存的草稿",
		"published" : "本日志有草稿，可读取编辑"	
	},
	AUTOSAVE_DRAFT_TIME : 1*60*1000, // 自动保存时间间隔
	_bAutoDraftState : false,     // 是否自动保存过草稿标记
	_bManualDraftState : false,   // 是否手动保存过草稿标记
	_nAutoSaveDraftTimer : -1,    // 自动保存草稿定时器
	_autoDraftID : -1,            // 自动保存的草稿id
	_bFirstManualSaved : false,   // 是否第一次手动保存，用于提示用户
	_bInitialized : false,

	getDraftTips : function(nDraftCnt, publishFlag) {
		if(!!publishFlag) {
			return this.DRAFT_TIPS["published"];
		}
		
		if(nDraftCnt >= parent.MAX_DRAFT_CNT) {
			return this.DRAFT_TIPS["full"];
		}
		else if(nDraftCnt > 0) {
			//return this.DRAFT_TIPS["notfull"].replace(/{{cnt}}/g, nDraftCnt);
			return "";
		}
		else {
			//return this.DRAFT_TIPS["empty"];
			return "";
		}
	},

	initDraftTrigger : function() {
		if(this._bInitialized) {
			return;
		}

		var ctrlList = [["titleInput", "keydown"], ["blogCateSelect", "change"], ["voteCheckInput", "click"], ["multiVoteCheck", "click"],
			["voteTimeSelect", "change"], ["setTopCheck", "click"], ["highLightCheck", "click"], ["signatureCheck", "click"], ["quoteCheck", "click"]];

		for(var index=0; index<ctrlList.length; ++index) {
			DraftLogicManager.registerDraftTrigger($(ctrlList[index][0]), ctrlList[index][1]);
		}
		
		if(QZONE.userAgent.ie) {
			document.body.onbeforeunload = beforePageUnloadProc;
		}
		else {
			window.onbeforeunload = beforePageUnloadProc;
		}
		//document.body.onbeforeunload = "return beforePageUnloadProc();";
		this._bInitialized = true;
	},

	registerDraftTrigger : function(ele, evtName) {
		if(!ele || !evtName) {
			return false;
		}

		return QZONE.event.addEvent(ele, evtName, QZONE.event.bind(this, this.draftStateTrigger));
	},

	draftStateTrigger : function() {
		this.setManualDraftState(true);
		this.setAutoDraftState(true);
	},
	
	startAutoSaveDraft : function() {
		clearInterval(this._nAutoSaveDraftTimer);
		this._nAutoSaveDraftTimer = setInterval(QZONE.event.bind(this, function(){
			if(!!this._bAutoDraftState) {
				EditorManager.doSaveDraft(1);
			}
			this._bAutoDraftState = false;
		}), this.AUTOSAVE_DRAFT_TIME);
	},

	stopAutoSaveDraft : function() {
		clearInterval(this._nAutoSaveDraftTimer);
	},

	hasAutoSaveDraft : function() {
		return (this._autoDraftID > 0) ? true : false;
	},

	clearAutoDraftID : function() {
		this._autoDraftID = -1;
		this.setAutoDraftState(false);
	},

	setAutoDraftID : function(draftid) {
		this._autoDraftID = draftid;
	},
	
	getManualDraftState : function() {
		if(!this._bManualDraftState) {
			var curContent = PageScheduler.editorObj.getConvertedUBBContent();

			if(!window.g_oEditorHistoryInfo && curContent.length>0) {
				return true;
			}

			if(window.g_oEditorHistoryInfo && window.g_oEditorHistoryInfo["ubbContent"]!=curContent) {
				return true;
			}
		}

		return this._bManualDraftState;
	},	

	getAutoDraftState : function() {
		return this._bAutoDraftState;
	},

	setManualDraftState : function(bDirtyFlag) {
		this._bManualDraftState = !!bDirtyFlag;

		if(!bDirtyFlag) {
			this.updateEditorContent();
		}
	},

	setAutoDraftState : function(bDirtyFlag) {
		this._bAutoDraftState = !!bDirtyFlag;
	},

	updateEditorContent : function() {
		if(!PageScheduler.editorObj || !PageScheduler.editorObj.bReadyState) {			
			return;
		}

		window.g_oEditorHistoryInfo = {
			"ubbContent" : PageScheduler.editorObj.getConvertedUBBContent()
		};
	}
};

function __qzoneFrameworkBeforeUnload() {
	if(DraftLogicManager.getManualDraftState()) {
		if(!confirm("您正在编辑的日志尚未保存，离开会使内容丢失，确定离开吗？")) {
			return ":jump::false:";
		}
	}
	
	beforePageUnloadProc();
	document.body.onbeforeunload = null;
	window.onbeforeunload = null;
	return ":jump::true:";
}

function beforePageUnloadProc() {
	QZBlog.Util.hideMsgbox();
	DraftLogicManager.stopAutoSaveDraft();
	QZBlog.Logic.clearMusicPlayer();

	if(!!DraftLogicManager.hasAutoSaveDraft()) {
		try {
			var url =  "http://" + CGI_BLOG_DOMAIN + CGI_DRAFT_PATH + "/draft_del_auto_data";
			var netProcessor = new QZONE.FormSender(url,"POST",{uin:QZBlog.Logic.SpaceHostInfo.getUin(),r:Math.random()},"GB2312");
			netProcessor.send();
		}catch(err) {}
	}
	
	// fake point: after choose not to close the whole page, auto save draft failed. Commented by hyc
	if(DraftLogicManager.getManualDraftState()) {
		//DraftLogicManager.setManualDraftState(false);
		setTimeout(function() {
			DraftLogicManager.setAutoDraftState(true);
			DraftLogicManager.startAutoSaveDraft();
		}, 10000);   // 10s 没有选择或选择取消,则重新开始保存自动草稿
		return "您正在编辑的日志尚未保存，离开会使内容丢失，确定离开吗？";
	}
}

// 音乐日志相关
var g_insertSwfNum=0;
function swfInit() {
	g_insertSwfNum++;
}

var blogtype = 2; // 兼容编辑器 -- to remove by hyc

// 兼容信纸页面调用
function selectNotePaper(iPaperID, iPaperStyle) {
	return EditorManager.openPaperLetterDlg(iPaperID, iPaperStyle);
}
////////////////////////////////////////////////////////////////////////////
//
function checkLoginState() {
	//FIXME 配合升级ing
	var blogconf = QZONE.FP._t.blogconf;
	if(!blogconf){
		blogconf = "1";
	}
	if(blogconf=="0"){ //升级提示
		alert("尊敬的QQ空间用户，日志正在进行临时维护，维护过程中，将不支持发表日志，建议您稍候再试！");
		location.href = IMGCACHE_BLOG_V5_PATH + "/list.html"; //回到列表
		return false;
	}
	if(!QZBlog.Logic.SpaceHostInfo.isValidLoginUin()) {
		blogLoginFnList.splice(0, blogLoginFnList.length);
		blogLoginFnList.push(function() {
			if(!QZBlog.Logic.SpaceHostInfo.isOwnerMode()) {
				location.href = IMGCACHE_BLOG_V5_PATH + "/list.html";
			}
			else {
				init();
			}
		});
		QZBlog.Util.showLoginBox("blogComment", null, true);
		return false;
	}
	else if(!QZBlog.Logic.SpaceHostInfo.isOwnerMode()) {	
		setTimeout('location.href="'+IMGCACHE_BLOG_V5_PATH+'/list.html"', 50);
		return false;
	}
	else {
		return true;
	}
}

function init() {
	if(!checkLoginState()) {
		return;
	}

	PageScheduler.start();
}

var g_oJSLoader = new QZONE.jsLoader();
g_oJSLoader.onload = init;
g_oJSLoader.load("http://"+IMGCACHE_DOMAIN+IMGCACHE_BLOG_V5_PATH+"/script/basic.js", parent.document, "utf-8");
QZBlog.Util.createTemplate();

var popupDialog = QZBlog.Util.popupDialog; // 兼容商城信纸js，需要私密重构后才能推动修改
var fontSizeMap = {1:"10px", 2:"13px", 3:"16px", 4:"18px", 5:"24px", 6:"32px"};

//////////////////////////////////////////////////////////////////////////
// misc logic
try{
	// 修改页面classname
	$("pageContainer").className = (QZBlog.Util.isWideMode() ? "blog big_mode_blog" : (!QZBlog.Util.isSmallMode() ? "blog full_mode_blog" : "blog mini_mode_blog"));

	// 清页面中的定时器
	QZONE.event.addEvent(window, "beforeunload", function() {
		QZBlog.Util.TimerManager.clear();		
	});
}
catch(err) {
}
/*  |xGv00|82e54ed1f971a432317d94fd73c93809 */