/**
 * @author mediaSens.pl standard
 */
	
function getIt(id){
	return document.getElementById(id);
}

var wywolania=0;
var flag = 1;
function changeData(contener,p_class,p_function,p_arg1,p_arg2,p_arg3){
  if (dojo.byId('infoHandler')) { dojo.byId('infoHandler').style.display="none"; }
	// Security for double click
	if (p_function!='changeView' && contener!='userPanel' && contener!='desc' && p_function!='showMainGalleryJS') { if (doubleClick(contener,p_class,p_function,p_arg1,p_arg2,p_arg3)) return false; }
	
	if (p_function!='getHeadMenu' && contener!='mainAlert' && contener!='desc') {
		dojo.byId(contener).innerHTML = '<div class="preload">Trwa ładowanie <br/><img src="images/preload8.gif" style="margin-top:100px;margin:auto;" /></div>';
	} else if (p_function!='getHeadMenu') { dojo.byId(contener).innerHTML = '<img src="images/preload8.gif" alt="" />'; }
	if (contener=='mainAlert' && p_function!='changeView') { dijit.byId('mainAlertDialog').show(); }
	
   if (contener!='userPanel' && contener!='mainAlert' && contener!='myImg' && (p_class!='User/LogIn' || p_function=='getLogIn') && p_function!='getHeadMenu') document.getElementById(contener).scrollIntoView(true); // go to anchor [;
 
 
 function callbackHandler(data, ioArgs){
  
		if (contener=='mainAlert' && p_function!='changeView') { mainAlertDisplay(); }
		if (p_class=='Gallery/User' && p_function=='updateDesc') { changeData('desc','Gallery/User','getEditDescForm',null,null,null); }
      if (p_class=='Gallery/User' && p_function=='getEditDescForm') { var myNicEditor; myNicEditor = new nicEditor().panelInstance('description'); }
		
		if (p_class=='User/LogIn' && p_function=='checkLogIn') { changeData('userPanel','User/LogIn','getHeadMenu',1,null,null); changeGalerieUzytkownikowContent(); }
		if (p_class=='User/LogIn' && p_function=='logOut') { location.replace('index.php'); }
		if (p_class=='Gallery/User' && p_function=='dropImageFromGallery') { changeData('myImg','Gallery/User','getUserImage',null,null,null); }
		if (p_class=='ListProduct' && p_function=='changeView') { h_p_class=''; changeData('mainContener',view_p_class,view_p_function,view_p_arg1,view_p_arg2,view_p_arg3); }		
		if (p_class=='Gallery/User' && p_function=='showMainGallery') { changeJSData('Gallery/User','showMainGalleryJS',0,0,36); }
	
    if (p_class=='ShoppingCart' && p_function=='dropFromCart' && contener=='mainAlert') { changeData('mainContener','ShoppingCart','showCartStep1',null,null,null);changeData('userPanel','User/LogIn','getHeadMenu',1,null,null); }
    if (p_class=='ShoppingCart' && p_function=='addToCart' && contener=='mainAlert') { changeData('userPanel','User/LogIn','getHeadMenu',1,null,null); }

 }


 var def = dojo.xhrPost({
        url: "dispather.php",
        handleAs: "text",
		content : {
			p_class : p_class,
			p_function : p_function,
			p_arg1 : p_arg1,
			p_arg2 : p_arg2,
			p_arg3 : p_arg3
		},
        timeout: 500000,
        handle: function(response, ioArgs){
         
                if(response instanceof Error){
                        if(response.dojoType == "cancel"){
                             dojo.byId(contener).innerHTML = 'Akcja anulowana';
                        }else if(response.dojoType == "timeout"){
                               
								if(wywolania > 20){
								
								dojo.byId(contener).innerHTML = 'Serwis chwilowo niedostępny <br />Proszę odświeżyć stronę';
							}
							
							else {
								wywolania++;
                      		  	changeData(contener,p_class,p_function,p_arg1,p_arg2,p_arg3);
							}
                        }else{
                              
								dojo.byId(contener).innerHTML = 'Serwis chwilowo niedostępny <br />Proszę odświeżyć stronę';
                        }
                }else{
						
						
						//alert(response);
					//	alert(contener);
						dojo.byId(contener).innerHTML = response;
						wywolania=0;
						
						return response;
                }
               return response;
        }
});
 def.addCallback(callbackHandler);
}

function sendForm(formId,contener){
  if (dojo.byId('infoHandler')) { dojo.byId('infoHandler').style.display="none"; }
	  document.getElementById(contener).scrollIntoView(true); // go to anchor [;
	// Security for double click
 
	if (formId!='regAccount' && formId!='panelAccount' && formId!='logInForm') { if (doubleClickSendForm(formId)) {return false;} }	
	if (contener=='mainAlert') { mainAlertDisplay(); }
	//dojo.byId(contener).innerHTML = '<div class="preload">Trwa ładowanie <br/><img src="images/preload8.gif" style="margin-top:100px;margin:auto;" /></div>';
//	var function_type = dojo.byId(formId).p_function.value;
	var function_type = document.forms[formId].elements['p_function'].value;
	var kw = {
        url: "dispather.php",
        load: function(data){
			
			dojo.byId(contener).innerHTML = data;
     
			if(function_type == "addToCart"){
				changeData('userPanel','User/LogIn','getHeadMenu',1,null,null);
			}
			wywolania=0;
        },
		handleAs:"text",
        error: function(data){
				 if(data.dojoType == "timeout" && function_type != "addFile"){
                      
								if(wywolania > 3){
								contener = dojo.byId(contener);
								contener.innerHTML = 'Serwis chwilowo niedostępny <br />Proszę odświeżyć stronę';
								}
							
							else if (function_type != "addFile") {
								wywolania++;
                      		  	sendForm(formId,contener);
							}
				}
               // alert("Holy Bomb Box, Batman!  An error occurred: " + data);
        },
        timeout: 500000,
        form: formId
	};
	dojo.xhrPost(kw);
	return true;
}

function getCdata(node) {
   var value = null;
   if (node[0].hasChildNodes()) {
     for (var j = 0; j < node[0].childNodes.length; j++) {
       var currentNode = node[0].childNodes[j];
       if(currentNode.nodeName.toLowerCase() == "#cdata-section") {
         value = currentNode.nodeValue;
       }
     }
   }
   return value;
}

function changeXmlData(contener,p_class,p_function,p_arg1,p_arg2,p_arg3){

	dojo.xhrPost({
        url: "dispather.php",
        handleAs: "text",
		content : {
			p_class : p_class,
			p_function : p_function,
			p_arg1 : p_arg1,
			p_arg2 : p_arg2,
			p_arg3 : p_arg3
		},
        timeout: 5000,
        handle: function(response, ioArgs){
                if(response instanceof Error){
                        if(response.dojoType == "cancel"){

                        }else if(response.dojoType == "timeout"){
								alert('some4');
                        }else{
								alert(response);
                        }
                }else{
                	document.getElementById(contener).innerHTML = '';
						var xmlDoc = dojox.data.dom.createDocument(response);
						UserAgenda(xmlDoc, contener);
						//var response = xmlDoc.getElementsByTagName("message");
                }
        }
});
}

function changeJSData(p_class,p_function,p_arg1,p_arg2,p_arg3){

	dojo.xhrPost({
        url: "dispather.php",
        handleAs: "javascript",
        content : {
          p_class : p_class,
          p_function : p_function,
          p_arg1 : p_arg1,
          p_arg2 : p_arg2,
          p_arg3 : p_arg3
        },
        load:      function(data){
                dojox.storage.put("documents", data);
                dojox.off.sync.finishedDownloading();
        },
        error:    function(err){
                err = err.message||err;
                var message = "Unable to download our documents from server: "
                                                + err;
        //dojox.off.sync.finishedDownloading(false, message);
        }
  });
 
}

function sendGalleryFileForm(formId,contener){
	dojo.byId(contener).innerHTML='<div class="alert"><img src="images/loading-spinner.gif" /> Trwa tworzenie galerii</div>';

	var kw = {
        url: "dispather.php",
        load: function(data){
			dojo.byId(contener).innerHTML = data;
			wywolania=0;
        },
		handleAs:"text",
        error: function(data){
				 if(data.dojoType == "timeout"){
					if(wywolania > 3){
						contener = dojo.byId(contener);
						contener.innerHTML = 'Serwis chwilowo niedostępny <br />Proszę odświeżyć stronę';
					} else {
						wywolania++;
						sendForm(formId,contener);
					}
				}
               // alert("Holy Bomb Box, Batman!  An error occurred: " + data);
        },
        timeout: 35000000,
        form: formId
	};
	dojo.xhrPost(kw);
	return true;
}


var t=setTimeout("",1);
function mainAlertDisplay() {
	clearTimeout(t);
	dijit.byId('mainAlertDialog').show();
	t=setTimeout("dijit.byId('mainAlertDialog').hide();",2000);
}
	var	h_contener='';
	var	h_p_class='';
	var	h_p_function='';
	var	h_p_arg1='';
	var	h_p_arg2='';
	var	h_p_arg3='';
	
	var view_p_class='';var view_p_function='';var view_p_arg1='';var view_p_arg2='';var view_p_arg3='';
	function addToView(p_class,p_function,p_arg1,p_arg2,p_arg3) { view_p_class=p_class;view_p_function=p_function;view_p_arg1=p_arg1;view_p_arg2=p_arg2;view_p_arg3=p_arg3; }
	
	var sto; // SetTimeOut
	function doubleClick(contener,p_class,p_function,p_arg1,p_arg2,p_arg3) {
    if (p_class=='ListProduct') { addToView(p_class,p_function,p_arg1,p_arg2,p_arg3); }
		h_sendForm='';
		if (contener==h_contener && p_class==h_p_class && p_function==h_p_function && p_arg1==h_p_arg1 && p_arg2==h_p_arg2 && p_arg3==h_p_arg3) {
			return true; // double click...
		} else {
			h_contener=contener;
			h_p_class=p_class;
			h_p_function=p_function;
			h_p_arg1=p_arg1;
			h_p_arg2=p_arg2;
			h_p_arg3=p_arg3;	
			
			clearTimeout(sto);
			sto = setTimeout("clearDoubleClick()",5000); 
			
			return false;
		}
	}
	
	var h_sendForm='';
	var h_temp;
		
	function clearDoubleClick() { h_p_arg3='';h_sendForm=''; }
	//	h_contener='';h_p_class='';h_p_function='';	h_p_arg1='';h_p_arg2='';

	
	function doubleClickSendForm(formId) {
		h_contener='';
		h_p_class='';
		h_p_function='';
		h_p_arg1='';
		h_p_arg2='';
		h_p_arg3='';		
		if (h_sendForm==formId ) return true; // double click...
		else {
			h_sendForm=formId;
			clearTimeout(sto);
			sto = setTimeout("clearDoubleClick()",5000); 
			return false;
		}
	}