﻿//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//  Ajax Function 
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
var web_root_address='';

//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//  Get Form Element
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

function getRequestBody(oForm) 
{
            var aParams = new Array();
            
            for (var i=0 ; i < oForm.elements.length; i++) {
                var sParam = encodeURIComponent(oForm.elements[i].name);
                sParam += "=";
                sParam += encodeURIComponent(oForm.elements[i].value);
                aParams.push(sParam);
            } 
            
            return aParams.join("&");
}

//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//  Ajax Connection
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

function MakeConnection()
{
	var httpRequest;
	if (window.XMLHttpRequest) // Mozilla, Safari, Opera
    {
    	httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType)
        {
        	httpRequest.overrideMimeType('text/html');
        }
	}
    else if (window.ActiveXObject)  // IE
    {
    	try	{	httpRequest = new ActiveXObject("Msxml2.XMLHTTP");   }
        catch (e)
        {
        	try	{     httpRequest = new ActiveXObject("Microsoft.XMLHTTP");    }
			catch (e) {}
		}
	}
    if (!httpRequest)
	{
      	alert('ERROR : Cannot create an XMLHTTP instance!');
	  	return false;
    }
	return httpRequest;
} 



//******************************************************************
//******************************************************************
//  Farsi -> Tab Loader
//******************************************************************
//******************************************************************

function Tab_Loader(FieldName,base_path)
{

	document.getElementById(FieldName).align="center";
	document.getElementById(FieldName).vAlign="middle";
	document.getElementById(FieldName).style.verticalAlign='middle';
	document.getElementById(FieldName).innerHTML = "<div align=center valign=middle ><img style=\"margin-bottom:5px;\" src="+base_path+"../../images/loaders/ajax-loader3.gif><br><span class=loader_txt >در حال بارگذاری</span></div>";

}

//******************************************************************
//******************************************************************
//  Farsi -> Tab Loader
//******************************************************************
//******************************************************************

function Process_Loader(FieldName,msg,base_path)
{
	
	document.getElementById(FieldName).align="center";
	document.getElementById(FieldName).vAlign="middle";
	
	if (FieldName=='Main_Box_Content_TD') { var style1=' style=" background-color:#111;width:90%"'}
	
	document.getElementById(FieldName).innerHTML = "<div align=center valign=middle "+style1+" ><br><br><br><img style=\"margin-bottom:5px;\" src=\"theme/english/img/22.gif\"><br><br><span class=loader_txt dir=rtl >"+msg+"</span></div>";

	 if (FieldName.indexOf('MSGB')>-1){
		                     	
                     	document.getElementById(FieldName).innerHTML = "<br><img style=\"margin-bottom:2px;\" src=\"theme/english/img/22.gif\"><br>";
	                                          }
	
   if (FieldName=='NLRegister_Box_Body_TD'){
                     	document.getElementById(FieldName).innerHTML = "<div align=center valign=middle "+style1+"><br><img style=\"margin-bottom:5px;\" src=\"theme/english/img/22.gif\"><br><br><span class=loader_txt dir=rtl >"+msg+"</span></div>";
                     }
 if (FieldName=='Main_Box_Content_TD')
 {
	 document.getElementById(FieldName).innerHTML = "<br><br><div align=center valign=middle "+style1+" ><br><br><br><img style=\"margin-bottom:5px;\" src=\"theme/english/img/22.gif\"><br><br><span class=loader_txt dir=rtl >"+msg+"</span><br><br></div>";

 }
 
 
}


//*******************************************************
//*******************************************************
// Perform A Action  
//*******************************************************
//*******************************************************
function Send_Request_To_Proccess(Proccess_Type,Page_Address,Page_Address_Query,SynType)
{ 
		var HttpConn = MakeConnection();
		if (Proccess_Type=='get')
		{
			HttpConn.open(Proccess_Type, Page_Address+'?'+Page_Address_Query,SynType);
		}
		else
		{
			HttpConn.open(Proccess_Type, Page_Address,SynType);
		}
		HttpConn.onreadystatechange = function () 
		{
			
			if ((HttpConn.readyState == 4)&&(HttpConn.status == 200)) 
			{
				var pm_class;	
				var MyResponseText=HttpConn.responseText.split('%$$%');
				MyResponseText[0]=trim(MyResponseText[0]);
				if (MyResponseText[0]=='ok')	{pm_class='pm';} else	{pm_class='err_box';}
				document.getElementById('err_box').innerHTML="<div align=center class=\""+pm_class+"\" style=\"width:450px\">"+MyResponseText[1]+" </div>";
							}
		};
		
		if (Proccess_Type=='get')
		{
			HttpConn.send(null);
		}
		else
		{
			HttpConn.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			HttpConn.send(Page_Address_Query);
		}
}




//*******************************************************
//*******************************************************
// Set Content no java
//*******************************************************
//*******************************************************
function Set_Content(Proccess_Type,Page_Address,Page_Address_Query,SynType,Content_Id)
{ //alert(Proccess_Type+','+Page_Address+','+Page_Address_Query+','+SynType+','+Content_Id);
		var HttpConn = MakeConnection();
		if (Proccess_Type=='get')
		{
			HttpConn.open(Proccess_Type, Page_Address+'?'+Page_Address_Query,SynType);
		}
		else
		{
			HttpConn.open(Proccess_Type, Page_Address,SynType);
		}
		//Process_Loader(Content_Id,'Loading...','');
		HttpConn.onreadystatechange = function () 
		{
			
			if ((HttpConn.readyState == 4)&&(HttpConn.status == 200)) 
			{
           // alert('==>'+HttpConn.responseText);
				document.getElementById(Content_Id).align="center";
				document.getElementById(Content_Id).vAlign="top";
				document.getElementById(Content_Id).style.verticalAlign='top';
				//document.getElementById(Content_Id).innerHTML="<textarea cols=20 rows=20 >"+trim(HttpConn.responseText)+"</teaxarea>";
				if ((Content_Id=='Comment_List_Td')||(Content_Id=='Msgb_List_Td'))
				{
					var box_name;
					if (Content_Id=='Comment_List_Td') box_name='Comment_Msg_Box';
					if (Content_Id=='Msgb_List_Td') box_name='Msgb_Pm_Box';					
					
					var msg,img,msg1_css;
					if (HttpConn.responseText.indexOf('Message successfully sent')>-1)
					{
						var MyResponseText=HttpConn.responseText.split('%##%');
				    	document.getElementById(Content_Id).innerHTML=trim(MyResponseText[1]);
						 msg='Your message was successfully sent.';
						 img='theme/english/img/ok.png';
						 msg1_css="class=\"ok_txt\"";
						 if (Content_Id=='Comment_List_Td') document.getElementById('Comment_Box_Form').reset();
        				 if (Content_Id=='Msgb_List_Td') document.getElementById('Msgb_Box_Form').reset();	
						 					 
					}
					if (HttpConn.responseText.indexOf('Captcha error')>-1)
					{
						 msg='Error in security code. Please try again.';
						 img='theme/english/img/error.png';
						 msg1_css="class=\"error_txt\"";
						
					}
					if (HttpConn.responseText.indexOf('input Error please try again')>-1)
					{
						 msg='Error in input fields. Please try again.';
						 img='theme/english/img/error.png';
						 msg1_css="class=\"error_txt\"";
						
					}
					if (HttpConn.responseText.indexOf('Error in sending message please try again')>-1)
					{
						 msg='Error in sending message. Please try again.';
						 img='theme/english/img/error.png';
						 msg1_css="class=\"error_txt\"";
						
					}
							var tb='';
							tb='<table border=0 cellspacing=0 cellpadding=0 width= align=center>';
							tb+="<tr><td align=center >";
							tb+="<img border=0 src=\""+img+"\" />&nbsp;";
					  		tb+="</td>";
							tb+="<td "+msg1_css+">"+msg+"</td></tr>";
							tb+="</table>";
					    	document.getElementById(box_name).innerHTML=trim(tb);
							document.getElementById('Msg_Send_Btn').disabled=false;

					
				}
				else
				{
				document.getElementById(Content_Id).innerHTML=trim(HttpConn.responseText);
				if (Page_Address.indexOf('Pn=GAlbum')>-1)
					{
						var settings = { containerResizeSpeed: 350  };
						 $('#PixGallery a').lightBox(settings);	
					}
				
				}
				//alert(trim(HttpConn.responseText));
				
				
			}
		};
		
		if (Proccess_Type=='get')
		{
			HttpConn.send(null);
		}
		else
		{
			HttpConn.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			HttpConn.send(Page_Address_Query);
		}
}

//****************************************************

function Set_Page(Proccess_Type,Page_Address,Page_Address_Query,SynType,Content_Id,base_page)
{
	//Process_Loader(Content_Id,'Loading... Please waite.',base_path);
	Process_Loader(Content_Id,'Loading... Please wait.','');
	Set_Content(Proccess_Type,Page_Address,Page_Address_Query,SynType,Content_Id);
}



