/*
 * Praemien-Ansicht nach Punkten
 */
$(document).ready ( function ()
{       
    //Indicator Top:
    function initIndicatorSmall(){
        $("div#praemienlist").prepend('<div id="msg_indicator_small"><center><img src="/img/loadingbar.gif" alt="lade..."/></center></div>');
        $("#msg_indicator_small").hide();
    }
    initIndicatorSmall();        
	$("#msg_indicator_small")
		.ajaxStart(function(){   // Wird ausgefuehrt sobald AJAX startet
			if ($(".list_item").css("display") != 'block') {
				$(this).fadeIn("fast");	
			}
		})	
		.ajaxSuccess(function(){  	// Wird ausgefuehrt sobald AJAX fertig ist
			$(this).fadeOut("fast");
		});
        
    //Indicator Bottom:
    function initIndicatorBottom(){
        if ($("div#praemien_footernav").attr("id")){
            $("div#praemien_footernav").prepend('<div id="msg_indicator_bottom"><center><img src="/img/loadingbar.gif" alt="lade..."/></center></div>');
            $("#msg_indicator_bottom").hide();
            
        	$("#msg_indicator_bottom")
        		.ajaxStart(function(){   // Wird ausgefuehrt sobald AJAX startet
	        		if ($(".list_item").css("display") != 'block') {
						$(this).fadeIn("fast");
					}
        		})	
        		.ajaxSuccess(function(){  	// Wird ausgefuehrt sobald AJAX fertig ist
        			$(this).fadeOut("fast");
        		});             
        }
    }
    initIndicatorBottom();                   
    
    
    function updatePraemienList(parameter)
    {			
		if (!parameter)
		{
			parameter = '';
		}
		
		if (parameter == '' && location.search) 
		{
			parameter = '?action=displaylist&strucId='+location.search.replace('?', '');
			location.href = location.href.replace(/\?.*/,'');
		}
		if (location.href.search(/punkten/i) != -1) 
		{
			sort = 'price';
		} 
		else 
		{
			sort = 'name';
		}
		
		
		var parts = parameter.split('?');

		var url = "/inc/boxes/praemien.ajax.php?" + parts[1] + "&sort=" + sort;
				
		$.ajax({ // AJAX Request ausloesen
			type: "GET",
			url: url,
			dataType: 'html',
			global: 'false',
			success: function(html) { // Funktion um die HTML-Antwort des PHP-Scripts zu verarbeiten						
                				
				//Container ausblenden:
                $("div#praemienlist").fadeOut("slow", function(){
                    
                    //Bisherigen Inhalt herausschneiden
                    $("div#praemiencontent").remove();
                    
                    //Neuen Inhalt anfuegen
                    $("div#praemienlist").append(html);
                    
                    //Alles wieder einblenden:
                    $("div#praemienlist").fadeIn("slow");
                    
                    //Eventhandler setzen
                    refreshCartButtons();
                    refreshListButtons();
					refreshMenuLinks();
                    refreshPraemienlinks();  
                    refreshPageLinks();                    
                    initIndicatorBottom();
                    
                    
                });   
   
				if (parameter.length > 0) {
	                $(".list_item").css("display","none");
				} else {
					$(".list_item").css("display","block");
				}
				//Rightbox aktualisieren
                if ($("div#praemie_rightimage").attr('id')){
                    $("div#praemie_rightimage").slideUp("slow", function(){
                        $("div#praemie_rightimage").remove();
                    })
                }                                
			}
		});       
		
    }
    
    function displayProduct(id)
    {
		$.ajax({ // AJAX Request ausloesen
			type: "GET",
			url: '/inc/boxes/praemien.ajax.php?action=displayProduct&productId='+id,
			dataType: 'html',
			global: 'false',
			success: function(html) { // Funktion um die HTML-Antwort des PHP-Scripts zu verarbeiten						
                
				//Container ausblenden:
                $("div#praemienlist").fadeOut("slow", function(){
                    
                    //Bisherigen Inhalt herausschneiden
                    $("div#praemiencontent").remove();
                    
                    //Neuen Inhalt anfuegen
                    $("div#praemienlist").append(html);
                    
                    //Alles wieder einblenden:
                    $("div#praemienlist").fadeIn("slow");
                    
                    //Eventhandler setzen
                    refreshCartButtons();
                    refreshListButtons();
                    refreshPraemienlinks();
                    refreshPageLinks();                    
                });                 
			}
		});         
    }
    
    function displayRightProductImage(id)
    {
		$.ajax({ // AJAX Request ausloesen
			type: "GET",
			url: '/inc/boxes/praemien.ajax.php?action=showRightImage&productId='+id,
			dataType: 'html',
			global: 'false',
			success: function(html) { // Funktion um die HTML-Antwort des PHP-Scripts zu verarbeiten						
                
				                
                if ($("div#praemie_rightimage").attr('id')){
                    $("div#praemie_rightimage").slideUp("slow", function(){
                        
                        $("div#praemie_rightimage").remove();
                        $("div#right_praemienimage").append(html);
                        $("div#praemie_rightimage").hide();
                        $("div#praemie_rightimage").slideDown("slow");
                        tb_init('a.thickbox_ajax');                                               
                    });                  
                }
                else{
                    $("div#right_praemienimage").append(html);
                    $("div#praemie_rightimage").hide();
                    $("div#praemie_rightimage").slideDown("slow");
                    tb_init('a.thickbox_ajax');                     
                }                                                                                    
			}
		});         
    }
    
    function refreshCartButtons()
    {
        $(".productSubmitButton").hover(        
        function(){
            var id = $(this).attr('id').substr(13);
            $("#productSpan"+id).addClass('underline');
        },
        function(){
            var id = $(this).attr('id').substr(13);
            $("#productSpan"+id).removeClass('underline');
        });
    }    
    refreshCartButtons();                
    
    function refreshPraemienlinks(){
        $( function (){
            $(".praemienlink").click(function(){ 
				
                var id = $(this).attr('href');
                if (id.search(/\//)) {
                	id = id.replace(/.*\//,'');
                }
                displayProduct(id);
                displayRightProductImage(id);
                return false;
            });        
        });                
    }
    refreshPraemienlinks();
    
    function refreshListButtons(){
        $(function(){
            $(".link_praemienlist").click(function(){
                var params = $(this).attr('href');
                
                if (!params && !location.search) {
                	window.reload();
                } else {
                	updatePraemienList(params);
                }
                
                return false;
            });
        });
    }
    refreshListButtons();
    
    
    function refreshMenuLinks(){
        $(function(){
            $(".praemien_menulink").click(function(){
				if (!isNaN($(this).attr('href'))) {
	                var id = $(this).attr('href');               
	                var params = "?action=displaylist&strucId=" +id;
	                
	                $(".praemien_active").each(function(){
	                    $(this).removeClass('praemien_active');
	                });
	                $("#pr"+id).addClass('praemien_active');                                
	                
	                updatePraemienList(params);
	                return false;
				}
            });
        });        
    }
    refreshMenuLinks();
    
    function refreshRightMenuLinks(){
        $(function(){
            $(".praemien_rightmenulink").click(function(){
                $(".praemien_active").each(function(){
                    $(this).removeClass('praemien_active')
                });
                $(this).addClass('praemien_active');

                updatePraemienList(params);
                return false;
            });
        });        
    }
    //refreshRightMenuLinks();
    
    function refreshPageLinks(){
        $(function(){
            $(".link_praemienpage").click(function(){
                var params = $(this).attr('href');
                updatePraemienList(params);
                return false;
            });
        });
    }
    refreshPageLinks();
	if (location.search != '') {
        $(".praemien_rightmenulink").each(function(){
			if ($(this).attr('href').search(location.search.replace('?','')) != -1) {
		        $(this).addClass('praemien_active');
			}
			
        });

	}
	  
});