// Build 20090624163704@JAMES-NB  Copyright(c) 2006-2008, Walkr.CN http://www.walkr.cn

var wiki_editing=false;var edit_str='编辑段落';var back_str='<img src="/media/themes/default/images/ico_wiki_backtop.gif" width=21 height=17 border=0 align=absmiddle title="返回页首">';function wishgo()
{$('div_wish_btn').disabled=true;var params={dest_id:$('hidden_dest_id').value,user_id:$('hidden_user_id').value,wish_content:''}
if(window.toolTip){toolTip.show('正在提交到服务器...',{center:true,width:200,time:3000});}
wiki_ajaxAPI.wishDestination(params,_onwishDestination.bind());}
function dogone()
{$('div_gone_btn').disabled=true;var params={dest_id:$('hidden_dest_id').value,user_id:$('hidden_user_id').value}
if(window.toolTip){toolTip.show('正在提交到服务器...',{center:true,width:200,time:3000});}
wiki_ajaxAPI.goneDestination(params,_ongoneDestination.bind());}
function donotgone()
{$('div_notgone_btn').disabled=true;var params={dest_id:$('hidden_dest_id').value,user_id:$('hidden_user_id').value,not_gone:'true'}
if(window.toolTip){toolTip.show('正在提交到服务器...',{center:true,width:200,time:3000});}
wiki_ajaxAPI.goneDestination(params,_ongoneDestination.bind());}
function _onwishDestination(xmlhttp)
{var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){if($('div_wish_btn')){$('div_wish_btn').style.display='none';}
if(window.toolTip){toolTip.hide();}
if(window.toolTip){toolTip.show('数据更新完成！',{center:true,width:200,time:1500});}}}
function _ongoneDestination(xmlhttp)
{var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){if($('div_gone_btn')){$('div_gone_btn').style.display='none';}
if($('div_wish_btn')){$('div_wish_btn').style.display='none';}
if(window.toolTip){toolTip.hide();}
if(window.toolTip){toolTip.show('数据更新完成！',{center:true,width:200,time:1500});}
if(xmlhttp.responseText.indexOf('notgone=')==-1)
document.location.href='/explore/gone_return/?dest_id='+$('hidden_dest_id').value;else{if(xmlhttp.responseText.indexOf('notgone="false"')>-1){if(window.toolTip){toolTip.hide();}
if(window.toolTip){toolTip.show('您可能有该地点相关的文章或照片，无法执行操作！',{center:true,width:300,time:1500});}}else{if($('div_notgone_btn')){$('div_notgone_btn').style.display='none';}}}}}
function previewedit(head_id)
{var control=$('control_'+head_id);var content=$('content_'+head_id);var content_text=content.innerHTML;content_text=content_text.toLowerCase();var pos=(content_text.indexOf('textarea id="content_editor'))+(content_text.indexOf('textarea id=content_editor'));if(pos>-1){editor_id='content_editor_'+head_id;var inst=tinyMCE.getInstanceById(editor_id);try{if(inst){mce_editor_id=inst.editorId;var new_text=tinyMCE.getContent(mce_editor_id);wiki.getItem(head_id).temp_content=new_text;tinyMCE.removeMCEControl(editor_id);content.innerHTML=new_text;control.innerHTML=StringBuffer.concat('<input type=button value="<返回编辑"  onclick=editcontent("'+head_id+'",1)>&nbsp;&nbsp;','<input type=button value="保存"  onclick=saveedit("'+head_id+'")>&nbsp;&nbsp;','<input type=button value="取消"  onclick=canceledit("'+head_id+'")>');}}
catch(e)
{}}}
function canceledit(head_id)
{var control=$('control_'+head_id);var content=$('content_'+head_id);try{editor_id='content_editor_'+head_id;tinyMCE.removeMCEControl(editor_id);content.innerHTML=wiki.getItem(head_id).content;control.innerHTML='<span id="control_'+head_id+'"><a href="javascript:void(0);" class="unline" onclick=javascript:editcontent("'+head_id+'")>'+edit_str+'</a> <a href="#">'+back_str+'</a></span>';}
catch(e)
{}
var params={dest_id:$('hidden_dest_id').value,check_paragraph:head_id};edit_ajaxAPI.checkin_wiki_update(params,this._onGetWikiCheckin.bind(this));wiki_editing=false;}
function _onGetWikiCheckin(xmlhttp){var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){wiki_editing=false;}}
function editcontent(head_id,backfrompreview)
{var user_id=$('hidden_user_id').value;if(!user_id){alert('您还未登录，不能编辑！');return;}
if(backfrompreview){dobackfrompreview(head_id);return;}
if(wiki_editing){alert('请先保存或取消你正在编辑的段落！');return;}
if(window.toolTip){toolTip.show('正在检查版本状态...',{center:true,width:200,time:5000});}
var params={dest_id:$('hidden_dest_id').value,check_paragraph:head_id};edit_ajaxAPI.checkout_wiki_ifcan(params,this._onGetWikiUpdate.bind(this));}
function dobackfrompreview(head_id){var control=$('control_'+head_id);var content=$('content_'+head_id);var content_text=content.innerHTML;if(content)
{if(content_text.indexOf('TEXTAREA id=content_editor')==-1){editor_id='content_editor_'+head_id;content.innerHTML='';content.innerHTML=StringBuffer.concat('<textarea id=',editor_id,' name=',editor_id,' rows="20" cols="80" style="width: 100%;height:320px;">',content_text,'</textarea>');control.innerHTML=StringBuffer.concat('<input type=button value="保存"  onclick=saveedit("'+head_id+'")>&nbsp;&nbsp;','<input type=button value="预览"  onclick=previewedit("'+head_id+'")>&nbsp;&nbsp;','<input type=button value="取消"  onclick=canceledit("'+head_id+'")>');tinyMCE.addMCEControl($(editor_id),editor_id);}
wiki_editing=true;}}
function _reget_wikiupdate(head_id){if(wiki_editing){var params={dest_id:$('hidden_dest_id').value,check_paragraph:head_id};edit_ajaxAPI.checkout_wiki_update(params,this._onGetWikiUpdate2.bind(this));}}
function _onGetWikiUpdate(xmlhttp){var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){if(window.toolTip){toolTip.hide();}
var item=xmlhttp.responseXML.documentElement.getElementsByTagName('user')[0];if(item){var user_id=item.getAttribute('id');var nickname=item.getAttribute('name');var is_self=item.getAttribute('is_self');var head_id=item.getAttribute('check_paragraph');if(is_self=='true'){if(wiki_editing){alert('请先保存或取消你正在编辑的段落！');return;}
var control=$('control_'+head_id);var content=$('content_'+head_id);var content_text=content.innerHTML;if((control.innerHTML).indexOf('edit')>-1)
{wiki.addItem(new WikiItem(head_id,content_text));if(content_text.indexOf('TEXTAREA id=content_editor')==-1){editor_id='content_editor_'+head_id;content.innerHTML='';content.innerHTML=StringBuffer.concat('<textarea id=',editor_id,' name=',editor_id,' rows="20" cols="80" style="width: 100%;height:320px;">',content_text,'</textarea>');control.innerHTML=StringBuffer.concat('<input type=button value="保存"  onclick=saveedit("'+head_id+'")>&nbsp;&nbsp;','<input type=button value="预览"  onclick=previewedit("'+head_id+'")>&nbsp;&nbsp;','<input type=button value="取消"  onclick=canceledit("'+head_id+'")>');tinyMCE.addMCEControl($(editor_id),editor_id);}
wiki_editing=true;}
window.setTimeout("_reget_wikiupdate('"+head_id+"')",60*1000);}else{if(window.toolTip){toolTip.show('无法签出，可能正被其他人锁定。',{center:true,width:200,time:3000});}}}}else{if(window.toolTip){toolTip.show('无法签出，可能正被其他人锁定。',{center:true,width:200,time:3000});}}}
function _onGetWikiUpdate2(xmlhttp){var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){var item=xmlhttp.responseXML.documentElement.getElementsByTagName('user')[0];if(item){var user_id=item.getAttribute('id');var nickname=item.getAttribute('name');var is_self=item.getAttribute('is_self');var head_id=item.getAttribute('check_paragraph');window.setTimeout("_reget_wikiupdate('"+head_id+"')",60*1000);}}}
function saveedit(head_id)
{var head=$('head_'+head_id);var content=$('content_'+head_id);var head_text=head.innerHTML;try{editor_id='content_editor_'+head_id;var inst=tinyMCE.getInstanceById(editor_id);if(window.toolTip){toolTip.show('正在保存数据...',{center:true,width:200,time:5000});}
if(inst){mce_editor_id=inst.editorId;var new_text=cleanText(tinyMCE.getContent(mce_editor_id));wiki_ajaxAPI.saveWikiContent($('hidden_dest_id').value,head_id,$('hidden_user_id').value,head_text,new_text,_onSave.bind());}
else{content_text=wiki.getItem(head_id).temp_content;wiki_ajaxAPI.saveWikiContent($('hidden_dest_id').value,head_id,$('hidden_user_id').value,head_text,content_text,_onSave.bind());}
wiki_editing=false;}
catch(e)
{if(window.toolTip){toolTip.show('保存过程中发生异常，请重试！',{center:true,width:200,time:5000});}}}
function cleanText(txt){var new_text=txt;new_text=new_text.replace(new RegExp('<H(.*?)</H','gi'),'<h$1</h');new_text=new_text.replace(new RegExp('<h1(.*?)>(.*?)</h1>','gi'),'<p>$2</p>');return new_text;}
function _onSave(xmlhttp)
{var success=(xmlhttp.status==200&&xmlhttp.responseText.indexOf('result="ok"')>-1)?true:false;if(success){var head_id=xmlhttp.responseXML.documentElement.getElementsByTagName('wiki_head')[0].getAttribute('id');var control=$('control_'+head_id);var content=$('content_'+head_id);editor_id='content_editor_'+head_id;var inst=tinyMCE.getInstanceById(editor_id);if(inst){mce_editor_id=inst.editorId;var new_text=cleanText(tinyMCE.getContent(mce_editor_id));tinyMCE.removeMCEControl(editor_id);content.innerHTML=new_text;}
control.innerHTML='<span id="control_'+head_id+'"><a href="javascript:void(0);" class="unline" onclick=javascript:editcontent("'+head_id+'")>'+edit_str+'</a> <a href="#">'+back_str+'</a></span>';if(window.toolTip){toolTip.show('数据已成功保存！',{center:true,width:200,time:1500});}}else{if(window.toolTip){toolTip.show('保存过程中发送异常，请重试！',{center:true,width:200,time:5000});}}}
function showmenu()
{var context_menu=$('context_menu');if(context_menu.style.display=='block')
{context_menu.style.display='none';return false;}
else{context_menu.style.display='block';return false;}}