﻿<!--
var useAjaxPost = 1 ; // 是否採用ajax方式提交 1為是  0為否
var post_time=3;  //倒計時 秒數
var n=post_time;
var post=0; //用於禁止重複提交 勿改

var j$=function(id) {
	var itm = null;
	if (document.getElementById) {itm = document.getElementById(id);}
	else if (document.all) {itm = document.all[id];}
	else if (document.layers) {itm = document.layers[id];}
	return itm;
}
var getByName=function(_name) {	return document.getElementsByName(_name);}

function reply(id,userName,postTime){
	if (j$("textstyle_"+id) && j$("replyContent"))
	{
		var content = j$("textstyle_"+id).innerHTML;
		j$("replyContent").value+='<div class=quote><b>以下是引用<i>'+userName+'</i>在'+postTime+'的發言：</b><br>'+content+'</div><p></p>';
		Dvbbs_InitDocument("replyContent","utf-8");
	}	
}

function readyPost(){
	post=1;
	document.Dvform.Submit.disabled=true;
	document.Dvform.Submit2.disabled=true;
	if (j$("errinfo")) {j$("errinfo").innerHTML = "";}
	if (j$("ajaxMsg_1")){
		j$("ajaxMsg_1").style.display = "";
		j$("ajaxMsg_1").innerHTML = '<img src="Css/cndw/images/loading.gif" width="16" height="16" alt="Loading..." />&nbsp;操作信息：<font color="#FF9900">正在提交數據，請稍後...</font>'
	}
}

var disp;
function postSucceed(str){
	if (j$("errinfo")) {j$("errinfo").innerHTML = "";}
	if (j$("ajaxMsg_1")){
		j$("ajaxMsg_1").style.display = "";
		j$("ajaxMsg_1").innerHTML = '<img src="Css/cndw/images/note_ok.gif" width="19" height="16" alt="Ok" />&nbsp;操作信息：<font color="#33CC00">'+str+'</font>';
		window.setTimeout("closeAjaxDiv('ajaxMsg_1')",3000);
	}
	n=post_time;
	disp=window.setInterval(ShowInfo,1000);
	ajaxReset();
}

function ShowInfo(){
	var strInfo =  "多謝您的參與...";
	n--;
	if(n <= 0){
		document.Dvform.Submit.value = "OK! 發表回覆";
		document.Dvform.Submit.disabled = false;
		document.Dvform.Submit2.disabled=false;
		post=0;
		clearInterval(disp);
	}
	else{
		document.Dvform.Submit.value = strInfo + n +"秒";
	}   
}   

function ajaxReset(){
	document.Dvform.reset();
	Dvbbs_InitDocument("Body","utf-8");
}

function postErr(str){
	if (j$("errinfo")) {j$("errinfo").innerHTML = ""; }
	if (j$("ajaxMsg_1")){
		j$("ajaxMsg_1").style.display = "";
		j$("ajaxMsg_1").innerHTML = '<img src="Css/cndw/images/note_error.gif" width="16" height="16" alt="Err" />&nbsp;錯誤信息：<font color="#FF0000">'+str+'</font> 請重試...';
		window.setTimeout("closeAjaxDiv('ajaxMsg_1')",15000);
	}
	document.Dvform.Submit.disabled=false;
	document.Dvform.Submit2.disabled=false;
	post=0;
}

function closeAjaxDiv(id) {j$(id).style.display = "none";}

function AjaxPost(){
	var base=this;
	this.postForm=function(_form){
		if (useAjaxPost != 1) return true;
		var data="";		
		if(_form && post==0){		
			readyPost();
			for(var i=0;i<_form.elements.length;i++){
				if(data!=""&&"&"!=data.substr(data.length-1,1)){data += "&"}
					try{
						if (_form.elements[i].type.toLowerCase() == "radio" || _form.elements[i].type.toLowerCase() =="checkbox"){
							var n = getByName(_form.elements[i].name).length;
							for (var j=0; j<n ; j++ ){
								if (_form.elements[i+j].checked){
									data += _form.elements[i+j].name +"="+ base.replace(escape(String(_form.elements[i+j].value)));
									if (_form.elements[i].type.toLowerCase() == "radio"){break;}
								}
							}
							i = i + n-1;
						}
						else{
							data += _form.elements[i].name+"="+base.replace(escape(String(_form.elements[i].value)));
						}
					}
					catch(e) {data += _form.elements[i].name+"="+base.replace(escape(String(_form.elements[i].value)));}	
			
			}
			data+="&ajaxPost=1";
			var xmlhttp;
			try{
				xmlhttp= new ActiveXObject("Msxml2.XMLHTTP");
			}catch(e){
				try{
					xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
				}catch(e){
					try{
						xmlhttp= new XMLHttpRequest();
					}catch(e){}
				}
			}
			xmlhttp.onreadystatechange=function(){
				if(xmlhttp.readyState==4){
					base.xmlhttp = xmlhttp;
					if(xmlhttp.status==200){
						//postErr(xmlhttp.responseText);
						base.onsuccess();
					}else{
						base.onfailure();
					}
				}
			}
			xmlhttp.open(_form.method, _form.action, true);
			xmlhttp.setRequestHeader('Content-type','application/x-www-form-urlencoded');
			xmlhttp.send(data.replace("&&","&"));
		}
		return false;
	}
	this.onsuccess=function(){};
	this.onfailure=function(){};
	this.replace=function(str){
		var con=str;
			con=con.replace(/%A0/gi,"%20");
			con=con.replace(/\+/gi,"%2B");
			return con;
	}

}
/*
說明
 例子：
 var ajaxpost=new AjaxPost() 
  
 在需要調用的表單添加
  onsubmit="return ajaxpost.postForm(this)"
  提交後自動增加表單項ajaxpost 值為1用以標識是Ajax提交
*/

var ajaxpost=new AjaxPost()
ajaxpost.onsuccess=function()
{
	//postErr(this.xmlhttp.responseText) return;
	if (addToList(this.xmlhttp.responseText) == 1) return;
	try{
		eval("var msg="+this.xmlhttp.responseText);
	}catch(e){postErr(this.xmlhttp.responseText);return;}
	var Str="";	
	for(var i=0;i<msg.message.length;i++){
		Str += ( Str==""?"": msg.message[i]==""?"":"&nbsp;&nbsp;&nbsp;") + msg.message[i];
	}
	if (msg.Suc == 1){
		postSucceed(Str+"&nbsp;&nbsp;網頁正在跳轉...");
		// id: Dvbbs.Board_Setting(17)|boardid|RootID|Star|page|returnurl
		if (msg.id != "")
		{
			var id = msg.id.split("|");
			var returnurl;
			switch (parseInt(id[0]))
			{
				case 1: returnurl = "index.asp"; break;
				case 2: returnurl = "index.asp?boardid="+id[1]; break;
				case 3: returnurl = "dispbbs.asp?boardid="+id[1]+"&id="+id[2]+"&star="+id[3]+"&page=1";break;
				case 4: returnurl = "dispbbs.asp?boardid="+id[1]+"&id="+id[2]+"&star="+id[3]+"&page="+id[4];break;
				default:returnurl = id[5];
			}
			window.setTimeout("window.location.href='"+returnurl+"'",2000);
		}
		
	}
	else
		postErr(Str);
}
ajaxpost.onfailure=function()
{
	var Str="錯誤代號"+this.xmlhttp.statu+"<br />"+this.xmlhttp.responseText;
	postErr(Str);
};

function addToList(data){
	if (data.indexOf("ajax.SystemMsg:Post Suc")!=-1){
		var ajaxInsert = j$("ajaxInsert");
		j$("ajaxInsert").innerHTML += data;
		postSucceed("回覆貼子成功！")
		return 1;
	}
	if (data.indexOf("IsAuditInfo")!=-1){
		eval("var msg="+data);
		postSucceed(msg.IsAuditInfo);
		return 1;
	}
	return 0;
}
//->
