var userAgent = navigator.userAgent.toLowerCase(); var is_opera = (userAgent.indexOf('opera') != -1); var is_saf = ((userAgent.indexOf('applewebkit') != -1) || (navigator.vendor == 'Apple Computer, Inc.')); var is_webtv = (userAgent.indexOf('webtv') != -1); var is_ie = ((userAgent.indexOf('msie') != -1) && (!is_opera) && (!is_saf) && (!is_webtv)); var is_ie4 = ((is_ie) && (userAgent.indexOf('msie 4.') != -1)); var is_moz = ((navigator.product == 'Gecko') && (!is_saf)); var is_kon = (userAgent.indexOf('konqueror') != -1); var is_ns = ((userAgent.indexOf('compatible') == -1) && (userAgent.indexOf('mozilla') != -1) && (!is_opera) && (!is_webtv) && (!is_saf)); var is_ns4 = ((is_ns) && (parseInt(navigator.appVersion) == 4)); var is_mac = (userAgent.indexOf('mac') != -1); if ((is_ie & !is_ie4) || is_moz || is_saf || is_opera) { var allowajax=1; }else{ var allowajax=0; } var xmlHttp = false; function makeSendData(postData,url,functionName,httptype) { var posturl=url; try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e2) { xmlHttp = false; } } if (!xmlHttp && typeof XMLHttpRequest != 'undefined') { xmlHttp = new XMLHttpRequest(); } if (!xmlHttp) { alert('Cannot send an XMLHTTP request'); return false; } // 提交表單的方式 xmlHttp.open(httptype, posturl, true); // 當表單提交完成後觸發一個事件 var changefunc="xmlHttp.onreadystatechange = "+functionName; ///////from bob eval (changefunc); xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); xmlHttp.send(postData); } function autosave_post() { var title=document.getElementById('title').value; var content = window.frames["Editor"].window.frames["HtmlEditor"].document.getElementsByTagName("BODY")[0].innerHTML; var postTime=document.getElementById('postTime').value; if(allowajax==1) { content=postencode(content); title=postencode(title); var post="title="+title+"&content="+content+"&postTime="+postTime+""; var url="ajax.php?act=autosave"; makeSendData(post,url,'autosave','POST'); } } function autosave() { if(xmlHttp.readyState == 4) { if(xmlHttp.status == 200) { var autoresponse=xmlHttp.responseText; var automessage=document.getElementById('autosavetimebox'); if(autoresponse.indexOf("<autosave_error>")!=-1) { automessage.innerHTML='您還沒有添寫資訊,不用儲存草稿'; return false; } if(autoresponse.indexOf("<autosave_ok>")!=-1) { automessage.innerHTML='儲存成功,您可以在發生意外的時候載入草稿'; finddraft(); } } } } function finddraft() { if(allowajax==1) { var url="ajax.php?act=loaddraft"; makeSendData(null,url,'loaddraft','POST'); } } function loaddraft() { var draftbox=document.getElementById('draft'); if(xmlHttp.readyState < 4) { draftbox.innerHTML='草稿載入中...'; } if(xmlHttp.readyState == 4) { if(xmlHttp.status == 200) { draftbox.innerHTML=xmlHttp.responseText; } } } function cleardraft() { if(allowajax==1) { var url="ajax.php?act=cleardraft"; makeSendData(null,url,'nodraft','POST'); } } function nodraft() { var draftbox=document.getElementById('draft'); if(xmlHttp.readyState < 4) { draftbox.innerHTML='載入中...'; } if(xmlHttp.readyState == 4) { if(xmlHttp.status == 200) { draftbox.innerHTML=xmlHttp.responseText; } } } //encode string function postencode (str) { str=encodeURIComponent(str); if (is_moz) str=str.replace(/%0A/g, "%0D%0A"); //from bob return str; } |