// JavaScript Docum

var pastTable=new String(" ");// How to know to close table with open form for editing
var curentForm="";// How to know curent form for ajax
//var formField= new Array('1','2','3');// Form elementsfor input or otput
var tempVar="";
var tempField="";
var mapHeight='500px';
var mapWidth='auto';

function ajaxFunction(qStr,myFile,retField,myFunc)
{
	var ajaxRequest;  // The variable that makes Ajax possible!
	
	try{
		// Opera 8.0+, Firefox, Safari
		ajaxRequest = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try{
			ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Your browser broke!");
				return false;
			}
		}
	}
	// Create a function that will receive data sent from the server
	ajaxRequest.onreadystatechange = function(){
		if(ajaxRequest.readyState == 4){
			//document.getElementById(retField).value= ajaxRequest.responseText;
			// Fil data in form -------------------------------------------------- Preraditi ------
			switch (myFunc){
				case 'Fill':
				 Fill(ajaxRequest.responseText);//Ansver is data for fill form elements
				 //alert('Save Finish') 
				 //alert (ajaxRequest.responseText);
				 break;
				 case 'Save':
				 //Fill(ajaxRequest.responseText);//Ansver is data for fill form elements
				 alert('Data was saved','Save');
				 //alert (ajaxRequest.responseText);
				 break;
				 case 'List': 
                 //Create drop down list
				 List(ajaxRequest.responseText,tempVar);//Ansver is data for fill form elements 	
				 //alert (ajaxRequest.responseText);
				 break;
				 case 'Insert':
				 alert ("Data was sent to server");
				 break;
				 case 'Delete':
				 //alert (ajaxRequest.responseText);
				 window.location.reload(true);
				 break;
				 case 'addDelete':
				 //alert (ajaxRequest.responseText);
				 window.location.reload(true);
				 break;
				 case 'DeleteImg':
				 //Delete images from file
				 break;
				 case 'Counter':
				 //Write url elements in mysql or in file
				 break;
				 default: alert('Hello from ajax');
			}
			 
		}
	}
	//alert (qStr);
	ajaxRequest.open("GET", myFile + qStr, true);
	//alert(myFile + qStr);
	ajaxRequest.send(null); 
	
}
function formElements(myForm)
{ 
var cnt=0;// CouNTer
var name="";
var formField= new Array();
	  var formLength= document.getElementById(myForm).elements.length;
	  //alert("fE:"+formLength);
	for (var i=0;i<formLength;i++)
	{
		name=document.getElementById(myForm).elements[i].id;
		if ((name.search(/tb_/)!=-1) ||(name.search(/lb_/)!=-1))
		{
			formField[cnt]=name;
			//alert(cnt+":"+formField[cnt]);
			cnt++;
		}
	}
	return formField;
}
// -----------------------------------------------------------------------------------F I L L -------------------------------------------- ------
function Fill(myString)
{
	//alert ("myString:"+myString);
	//alert ('we are in');
	myForm=curentForm;
	//Temporaly variable
	var temp="";
	//get data from field
	var dataField=new Array();  
	var dataValue=new Array();
	//var myString= new String();
	//myString=document.getElementById(myField).value;
	//alert (myString);
	var j=0;
	for (var i = 0; i < myString.length; i++) {
	
		switch (myString[i]) {
			case ':':
				//dump field
				dataField[j] = temp;
				temp = "";
				break;
			case ';':
				// dump Value increase j counter
				dataValue[j]=temp;
				temp = ""
				j++;
				break;
			default:
				temp += myString[i];
		}
	}
	// Fill form ======================================== Fill form with ajax data ========
	//alert ('omost length');
	//get form elements
	var formField=new Array();
	formField=formElements('frm_Realestate');
	
	var frmLenght=formField.length;
		//alert("frmLength:"+frmLenght);
	
		for (var j = 0; j<frmLenght; j++)
       {
	   	//alert ("tb_"+dataField[j]);
		  if (document.getElementById("tb_"+dataField[j]))
		  {  
		  	if (dataValue[j]!=" ") document.getElementById("tb_"+dataField[j]).value=dataValue[j];
			 //alert ("tb_"+dataField[j]);
		  }
		   if (document.getElementById("lb_"+dataField[j])) 
		  {
			  if (dataValue[j]!=" ") document.getElementById("lb_"+dataField[j]).value=dataValue[j];
			
		  }
		   //alert ("tb_"+dataField[j]+" lb_"+dataField[j]);
		   
		}
	
}
function showFill(myForm,myId)
{
	myTable=myForm.replace(/frm_/,"");
	//var myTable=document.getElementById(myTable).value;
	curentForm=myForm;
	
	var tableName=myTable;
	
	pastTable=tableName;
	// Kreiraj Select upit +++++++++++++++++++++++++++++++++++++++++++++++ SELECT upit ++++++++++++
    var frmLength= document.getElementById(myForm).elements.length;
	
	var qStr=" ";
	qStr="SELECT ";
	var count=0;
	for (var i=0; i<frmLength ;i++)
	{
		
		var name = new String();
		name=document.getElementById(myForm).elements[i].id;
		var value=document.getElementById(myForm).elements[i].value;
	   //alert (count+":"+name);
      if ((name.match('tb_'))||(name.match('lb_')))	
		{
	     //add form field name in global array
		 formField= name;
		 //replace name for later use
		 name=name.replace(/tb_/,"");
		 name=name.replace(/lb_/,"");
		 //alert (name+" i:"+i);
		if (count==0)
		{
		qStr+=" "+name+" ";	
		//alert (qStr+":"+count);
		count=count+1;
		}
		else
	     qStr+=", "+name+" ";
		 //alert (qStr+":"+count); 
		 count=count+1;
		}
		
	 }
	qStr+="FROM tb_"+myTable;
	qStr+=" WHERE "+"pk_"+myTable+"='"+myId+"'";
	//document.getElementById("qStr").value=qStr; //------------------------------------------------------ qStr ----------------------------------
   //alert (qStr);
	
	// Get data from server old function
	ajaxFunction(qStr,'../php/rec.php?qStr=','myDiv','Fill');
		
}
//----------------end Fill ------------------------------------------------------------- L I S T -------------------------------------------------

function addOption(selectbox,text,value )
	 {
		var optn = document.createElement("OPTION");
		optn.text = text;
		optn.value = "./search.php?Country="+value;
		selectbox.options.add(optn);
	}
function List(myString,myList)
{
	var temp;
	//alert (myList);
	var dataField=new Array();
	var dataValue=new Array();
	var j=0;
	for (var i = 0; i < myString.length; i++) {
	
		switch (myString[i]) {
			case ':':
				//dump field
				dataField[j] = temp;
				temp = "";
				break;
			case ';':
				// dump Value increase j counter
				dataValue[j]=temp;
				temp = ""
				j++;
				break;
			default:
				temp += myString[i];
		}
	}
 // Get nem of list box
	var myBox=document.getElementById(myList);
	for (var i=0; i < dataValue.length;++i)
	 {
	   //Fill list box
      addOption(myBox, dataValue[i], dataValue[i]);
     }
		
}
function setList(myList,myField)
{ 
    qStr="Select DISTINCT "+myField+" From tb_Realestate";
	tempVar=myList;
	tempField=myField;
	//alert (qStr);
	//ajaxFunction(qStr,'../php/rec.php?qStr=','myDiv','Fill');
	ajaxFunction(qStr,'../php/send.php?qStr=','myDiv','List');	
}
// ------------- end List ----------------------------------------------------------------- colectData ----------------------------------------------------	
function colectData(myForm,myTable)
{
	 
	//var myTable=document.getElementById('myTable').value;
	myTable=myForm.replace(/frm_/,"");
	curentForm=myForm;
	var frmLength= document.getElementById(myForm).elements.length;
	//alert ("length:"+frmLength);
	
	var myId=document.getElementById("myId").value;
	var qStr=" ";
	qStr="UPDATE tb_"+myTable+" SET ";
	var count=0;
	for (var i=0; i<frmLength ;i++)
	{
		
		var name = new String();
		name=document.getElementById(myForm).elements[i].id;
		var value=document.getElementById(myForm).elements[i].value;
	   
      if ((name.match('tb_'))||(name.match('lb_')))	
		{
		 name=name.replace(/tb_/,"");
		 name=name.replace(/lb_/,"");
		 //alert (name+"i:"+i);
		if (count==0)
		{
		  qStr+=" "+name+"="+"'"+value+"' ";	
		  count=count+1;
		}
		else
	      qStr+=", "+name+"="+"'"+value+"' ";
		  count=count+1;
		}
		
	}
	qStr+=" WHERE "+"pk_"+myTable+"='"+myId+"'";
	//document.getElementById("qStr").value=qStr; -------------------------------- qStr -------------------------------------
	//alert (qStr);
	// ajax
	//ajaxFunction(qStr,'../php/send.php?qStr=','myDiv','Fill');
    ajaxFunction(qStr,'../php/send.php?qStr=','myDiv','Save');
    
}
function InsertData(myForm)
{
	var myTable=document.getElementById('myTable').value;//tablename
	var myId=document.getElementById('myId').value; //user id
	var name =new String();
	var value=new String();
	var qStr=new String()
	var frmLength= document.getElementById(myForm).elements.length;
	var count=0;
	//alert ("frm lengt:"+frmLength);
	qStr="INSERT INTO "+myTable+" (";
	vStr="(";
	for (var i = 0; i < frmLength; i++) {
		name = document.getElementById(myForm).elements[i].id;
		value = document.getElementById(myForm).elements[i].value;
		alert(name + ":" + value);
		if ((name.match('tb_')) || (name.match('lb_'))) {
			name = name.replace(/tb_/, "");
			name = name.replace(/lb_/, "");
			//alert (name+"i:"+i);
			if (count == 0) {
				qStr += name;
				vStr += "'" + value + "'";
			}
			else {
				qStr += ", " + name;
				vStr += ",'" + value + "'";
			}
			
			count++;
		}
	}
	    qStr += ") VALUES ";
		vStr += ") ";
		qStr += vStr;
		alert(qStr);
		ajaxFunction(qStr,'../php/send.php?qStr=','myDiv','Insert');
}
function Show(myTag) // show hide elements of html (table,div, span, input, ...)
{
	//alert (document.getElementById(myTable).style.display);
	
	if((document.getElementById(myTag).style.display=="") || (document.getElementById(myTag).style.display=="none"))
	{
		document.getElementById(myTag).style.display="block";
	}
	else document.getElementById(myTag).style.display="none";

}
function ShowTop(myTag,hTop) // show hide elements of html (table,div, span, input, ...)
{
	//alert (document.getElementById(myTable).style.display);
	
	if((document.getElementById(myTag).style.display=="") || (document.getElementById(myTag).style.display=="none"))
	{
		document.getElementById(myTag).style.top=hTop;
		document.getElementById(myTag).style.display="block";
		
	}
	else 
	{
    
	document.getElementById(myTag).style.display="none";
	}

}


function SendImg(myImageForm)
{

}
function Reuse(source,destination)
{
	// reuse data from span or div tag to edit box like email phone ...
	var prom=document.getElementById(source).innerHTML;
	document.getElementById(destination).value=prom;
}
function Delete(message,myForm,myId)
{
	var myTable=myForm.replace(/frm_/,"");
	var pk="pk_"+myTable;
	var answer = confirm(message)
	if (answer){
		//alert(delMsg);
		//
		var qStr ="DELETE FROM tb_"+myTable+" WHERE "+pk+"="+myId;
		alert(qStr);
		ajaxFunction(qStr,'../php/send.php?qStr=','myDiv','Delete');	
	}
	else{
		//alert("Thanks for sticking around!")
	}
}
function addDelete(message,myForm,myId)
{
	var answer = confirm(message)
	if (answer){
		var qStr='?Id='+myId;
		ajaxFunction(qStr,'../php/addDelete.php','myDiv','addDelete');
		//window.location.href=('./myAdds.php?delete=true&Id='+myId);
		//window.location=('./myAdds.php?delete=true&Id='+myId);
		//alert(window.location.href);
		//window.location.reload(true);
	}
	else{
		//alert("Thanks for sticking around!")
	}
}
function DeleteImg(message,qStr)
{
	var answer = confirm(message+" "+qStr)
	if (answer){
		//alert(delMsg);
		//alert(qStr)
		ajaxFunction(qStr,'../php/delete.php?qStr=','myDiv','DeleteImg');	
		window.location.reload(true);
	}
	else{
		//alert("Thanks for sticking around!")
	}
}
function DeleteAll(message,file)
{
	var answer = confirm(message+" "+file);
	if (answer){
		//alert(delMsg);
		//alert(file);
		if (file)
		{
		var qStr;
		qStr="../db_images/"+file; alert ('Image deleted');
		ajaxFunction(qStr,'../php/delete.php?qStr=','myDiv','DeleteImg');
		qStr="../db_thumbs/"+file; alert ('Thumbnail Image deleted');
		ajaxFunction(qStr,'../php/delete.php?qStr=','myDiv','DeleteImg');
		window.location()
		window.location.reload(true);
		}
		else alert ('Nothing for delete');
	}
	else{
		//alert("Thanks for sticking around!")
	}
}
function block(myOp,myId)
{
	
}
function msg(message, fReturn)
{
	if (fReturn >=1) alert(message);
	else alert ('error');
}
function count(url)
{
		//alert(url);
		ajaxFunction(url,'../php/counter.php?url='+url,'myDiv','Counter');	
		//window.location.reload(true);
}
function jsAlert(msg)
{
	alert(msg);
}
function resize(div,w,h)
{
	//alert ("w:"+w+" h:"+h);
	// mapWidth & mapHeight const value look at begining this file
	if (document.getElementById(div).style.height==h) document.getElementById(div).style.height=mapHeight;
	else document.getElementById(div).style.height=h;
	// width
	if (document.getElementById(div).style.width==w) document.getElementById(div).style.width=mapWidth;
	else document.getElementById(div).style.width=w;
	
}
function resizeH(div,oH,nH) //oldHeight newHeight
{
	//alert ("w:"+w+" h:"+h);
	// mapWidth & mapHeight const value look at begining this file
	if (document.getElementById(div).style.height==nH) document.getElementById(div).style.height=oH;
	else document.getElementById(div).style.height=nH;
	
}
function autocomplete (source,dest)
{
	return "0";
}