var accordion= '';var accordion2 = '';
window.addEvent('domready', function() {
                                    if (document.readyState && window.ie) {									
                                	    if (window.addEventListener) { window.addEventListener("load",domReady,false); }
                                        else if (window.attachEvent) { window.attachEvent("onload",initPage); }
                                    } else initPage();
                            });
window.addEvent('domready', function() {
                                    if (document.readyState && window.ie) {									
                                	    if (window.addEventListener) { window.addEventListener("load",domReady,false); }
                                        else if (window.attachEvent) { window.attachEvent("onload",initFullMenu); }
                                    } else initFullMenu();
                            });
 
function initPage() {
    //INIZIALIZZO LA RICERCA
    if ($defined($('shopcenter_reset'))) 
        $$('#shopcenter_reset').each(function(item) {item.addEvent('click', loadList);});
    if ($defined($('shopcenter_search_submit'))) 
        $$('#shopcenter_search_submit').each(function(item) {item.addEvent('click', loadSearch);});
    if ($defined($('shopcenter_search_categoryfield'))) {
        $$('#shopcenter_search_categoryfield').each(function(item) {item.addEvent('change', loadSearch);});
    }
 
    initPageBrowser();
} 
function initPageBrowser() {
        $$('a.pagebrowserlink').each(function(item) {
            item.addEvent('click', loadList);
     	});
     	//*******************************************
     	// devo richiamare la funzione di smoothbox
     	// per rigenerare i link sul dettaglio
     	//*******************************************
        if (typeof TB_init == 'function') TB_init();
}


//***************************
// RICERCA SHOPCENTER
//***************************
function loadSearch(event) {
	    new Event(event).stop();
        fadeIn( $('shopcenter_search_form'), 'listViewContainer', 'ajaxLoading', sendSearch);
}

function sendSearch(targetObj, updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','');
	    targetObj.send({update: $(updateObj),
    			        onComplete: function() {viewResults(updateObj, loadingObj);},
    			        onFailure: function() {noResults(updateObj);}
        });
				
}

function viewResults(updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','hide');
        //riassegno le funzion ajax ai link
        initPageBrowser();
        //faccio ricomparire i dati
        fadeOut(updateObj);
}

function noResults(updateObj) {
	    $(updateObj).setText("No data");
        $(updateObj).setStyle('opacity', '1');
}

function fadeOut(domObj) { 
    $(domObj).effect('opacity', {duration: 1000,fps: 75}).start(1);
}


function fadeIn(domObj, updateObj, loadingObj, targetFunction) { 
		$(updateObj).effect('opacity', {
		                duration: 500,
						fps: 75,
						//effettuo richiesta nuovi dati
						onComplete: function() {targetFunction(domObj, updateObj, loadingObj);}
		}).start(0);
}

//***************************
// LISTA SHOPCENTER
//***************************
function loadList(event) {
        new Event(event).stop();
        
        //se ho i campi di ricerca devo pulirli 
        if ($defined($('shopcenter_search_categoryfield'))) {
            $$('#shopcenter_search_categoryfield').each(function(item) {item.setProperty('value','');});
        }
        if ($defined($('shopcenter_search_wordsfield'))) {
            $$('#shopcenter_search_wordsfield').each(function(item) {item.setProperty('value','');});
        }
        //ricarico la lista
        fadeIn( this, 'listViewContainer', 'ajaxLoading', requestList);
}

function requestList(targetObj, updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','');
	    var url = targetObj.getProperty("href");
        new Ajax(url, {
                        data: '&tx_gmxshopcenter_pi1[view_mode]=0&type=9912',
    			        method: 'get',
    			        update: $(updateObj),
            	        onComplete: function() {viewResults(updateObj, loadingObj);},
    			        onFailure: function() {noResults(updateObj);}
        }).request();
}


//***************************
// VISTA COMPATTA SHOPCENTER
//***************************
function loadScheda(event) {
        new Event(event).stop();
        fadeIn( this, 'scheda_shop', 'ajaxLoading', requestScheda);
}

function requestScheda(targetObj, updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','');
	    var url = targetObj.getProperty("href");
        new Ajax(url, {
                        data: '&tx_gmxshopcenter_pi1[view_mode]=1&type=9912',
    			        method: 'get',
    			        update: $(updateObj),
            	        onComplete: function() {viewScheda(updateObj, loadingObj);},
    			        onFailure: function() {noResults(updateObj);}
        }).request();
}

function viewScheda(updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','hide');
        //riassegno le funzion ajax ai link
        $$('a.imagebrowserlink').each(function(item) {
            item.addEvent('click', loadImages);
     	});
     	//ATTIVIO SMOOTHBOX PER IMMAGINI 
        if (typeof TB_init == 'function') TB_init();
        //faccio ricomparire i dati
        fadeOut(updateObj);
}

//***************************
// IMMAGINI PAGINAGE SHOPCENTER
//***************************
function loadImages(event) {
        new Event(event).stop();
        fadeIn( this, 'image_gallery', 'ajaxLoading', requestImages);
}

function requestImages(targetObj, updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','');
	    var url = targetObj.getProperty("href");
        new Ajax(url, {
                        data: '&tx_gmxshopcenter_pi1[view_mode]=2&type=9912',
    			        method: 'get',
    			        update: $(updateObj),
            	        onComplete: function() {viewImages(updateObj, loadingObj);},
    			        onFailure: function() {noResults(updateObj);}
        }).request();
}

function viewImages(updateObj, loadingObj) {
	    $(loadingObj).setProperty('class','hide');
        //riassegno le funzion ajax ai link
        $$('a.imagebrowserlink').each(function(item) {
            item.addEvent('click', loadImages);
     	});
     	//ATTIVIO SMOOTHBOX PER IMMAGINI 
        if (typeof TB_init == 'function') TB_init();
        //faccio ricomparire i dati
        fadeOut(updateObj);
}



function initFullMenu() {
        $$('a.shoplink').each(function(item) {
            item.addEvent('click', loadScheda);
     	});
     	initAccordion();
}



function initAccordion(){
    accordion = new Accordion('span.toggle', 'ul.content', {
    	display:false,
    	alwaysHide:true,
    	opacity: false,
    	onActive: function(toggler, element){
    		toggler.addClass('act');
    		parentelement = element;
    	},
    
    	onBackground: function(toggler, element){
    		toggler.removeClass('act');		
    	}
    });	
    
    accordion2 = new Accordion('span.toggle2', 'ul.content2', {
    	display:false,
    	alwaysHide:true,
    	opacity: false,
    	onActive: function(toggler, element){
    		toggler.addClass('act2');
    		parentelement.setStyle('height', 'auto');
    	},
    
    	onBackground: function(toggler, element){
    		toggler.removeClass('act2');		
    	}
    });


    function checkHash(){
        var found = false;
        var offset = 0;
        var tmp = 0;
    
        $$('#rgaccordmenu li span.toggle').each(function(anchorid, i) {
          if (anchorid.hasClass('open') && !found) {
              accordion.display(offset);
              found = true;
          } else {
            offset++;
          }
        });
    
        if (!found) accordion.display(0);
    }
    
    
    function checkHash2(){
        var found = false;
        var offset = 0;
        var tmp = 0;
    
        $$(' span.toggle2').each(function(anchorid, i) {
    
          if (anchorid.hasClass('open') && !found) {
    
              accordion2.display(offset);
              found = true;
          } else {
            offset++;
          }
        });
        //if (!found) accordion2.display(0);    
    }
    
    
      
      
    var x = new Chain();
    x.chain(checkHash);  
    x.chain(checkHash2);
    x.callChain();
    x.callChain.delay(1500, x);
    
    return(true);

}

