function $( name ) {
	if (typeof name == 'string')
		return document.getElementById(name);

	return name;
}

function changeImage( num ) {
	if ( jQuery.fxqueue('imageAnim').length > 0 )
        return false;

	var container = $('#imageBg');
	var nextPic = $('#imageBg img:eq('+ num +')');
	var currentPic = $('#imageBg img:visible');	

	container[0].style.background = 'transparent url('+nextPic[0].src+') no-repeat 1px 1px';
	currentPic.animate({opacity: "hide"}, {speed: 'slow', queue: "imageAnim", complete: function() { nextPic.show(); }} );

	$('#img_pager a').removeClass('hover');
	$('#l'+num).addClass('hover');
}

function searchNav( num ) {

    if ( $('#searchMore').hasClass('search_more_up') ) {
        $('#searchLayer').slideToggle();
        $('#searchMore').toggleClass('search_more_up');

    } else { //Layer megjelenítése
        var filters = $('#searchLayer div.filters div.scroll');

        //Paraméterek törlése
        filters.remove( 'div.select:gt(3)' );
        filters.remove( 'img:gt(2)' );

        //Alkatregóriák eltüntetése
        $('div.select:gt(0)', filters).hide();
        $('img', filters).hide();
        $('div.select select').css({opacity: '0'});
        
        //Ablak lenyitása
        $('#searchLayer').slideToggle();
        $('#searchMore').toggleClass('search_more_up');

        //Főkategóriák lekérése
        gRPC.request( '/jsrpc/getCategoriesSelect/0/', function( data ) { 
                $('div.select:first select', filters).animate({opacity: 1}, {speed: "slow"}).html( data ); 
            }, [] );
    }

}



function searchNavCatFilter( depth, id, obj ) {
    //Ha egynél több van kijelölve akkor csak az elsőt engedem
    $('option:selected:gt(0)', obj).removeAttr('selected');

    var filters = $('#searchLayer div.filters div.scroll');

    //ha nincs kiválasztott akkor minden mögöttes tartalom delete XD
    if ( !id ) {
        $('div.parameter, img.parameter', filters).remove();
        $('div.select:gt('+(depth-1)+')', filters).animate({opacity: 0}, {speed: "slow", complete: function() { 
                                    $('div.select:gt('+(depth-1)+')', filters).css({opacity: 1}).myhide().children('select').css({opacity: 0}); 
                                    $('img:gt('+(depth-2)+')', filters).hide(); 
                                } });
        return false;
    }


    refreshSelectedParams();

    //Nyilacska megjelenítése
    $('img:eq('+(depth-1)+')', filters).myshow("normal");

    //Div megjelenítése
    $('div.select:not(.brand, .price):eq('+(depth)+')', filters).myshow("normal");

    setSearchWidth();

    //Paraméterek törlése
    $( 'div.parameter, img.parameter', filters ).remove();

    //Későbbi kategóriák elrejtése

    $('div.select:not(.brand, .price):gt('+depth+')', filters).animate({opacity: 0}, {speed: "slow", complete: function() { 
                                    $('div.select:not(.brand, .price):gt('+depth+')', filters).not('.parameter').myhide().css({opacity: 1}).children('select').css({opacity: 0}).children('option').each(function() {this.selected = false;} ); 
                                    $('img:not(.brand, .price):gt('+(depth-1)+')', filters).not('.parameter').myhide(); 
                                } });


    //Alkategória lekérdezés indítása
    gRPC.request( '/jsrpc/getCategoriesSelect/'+id+'/', function( data ) { 
            //Kategóriához tartozó márkák lekérdezése
            $('img.brand', filters).myshow("normal");
            $('div.brand', filters).myshow("normal");
            $('img.price', filters).myshow("normal");
            $('div.price', filters).myshow("normal");
            setSearchWidth();

            //Márkák
            gRPC.request( '/jsrpc/getCatBrands/', function( bdata ) { 
                if (bdata == '') {
                    $('img.brand', filters).myhide("normal");
                    $('div.brand', filters).myhide("normal");
                    return false;
                }

                $('div.brand select', filters).html( bdata ).animate({opacity: 1}, {speed: "slow"});
            }, [] );

            //Árak
            gRPC.request( '/jsrpc/getCatPrices/', function( bdata ) { 
                if (bdata == '') {
                    $('img.price', filters).myhide("normal");
                    $('div.price', filters).myhide("normal");
                    return false;
                }

                $('div.price select', filters).html( bdata ).animate({opacity: 1}, {speed: "slow"});
            }, [] );

            //Kategóriához tartozó paraméterek lekérdezése
            gRPC.request( '/jsrpc/getCatParams/', function( data ) { 
                    if (data == '')
                        return false;

                    var j = 1;
                    $('div', $(data)).each( function() { j++; } );
                    setSearchWidth(j);

                    $(data).appendTo(  $('#searchLayer div.filters div.scroll') ).filter('div, img').css({opacity: '0'}).animate({opacity: 1}, {speed: "slow"});
                }, [] );

            //Scrollozás
            if ( depth > 1 )
                $('#searchLayer div.filters').scrollTo( $('#searchLayer div.filters div.scroll div.select:visible:eq('+(depth-1)+')'), 500, {axis: 'x', offset:{left: -10, top:0 }} );

            if ( data == '' ) { //Ha nincs alkategória akkor a pörgentyűt el kell tüntetni
                $('div.select:not(.brand, .price):eq('+depth+')', filters).myhide("normal");
                $('img:not(.brand, .price):eq('+depth+')', filters).myhide("normal");
                $('img:not(.brand, .price):eq('+(depth-1)+')', filters).myhide("normal");
                return false;
            }

            //Tartalom betöltése és megjelenítés
            $('div.select:eq('+depth+') select', filters).html( data ).animate({opacity: 1}, {speed: "slow"})[0].sourceId = id ;

        }, [] );


}

function searchNavJumpFirst() {
    $('#searchLayer div.filters').scrollTo( $('#searchLayer div.filters div.scroll div.select:visible:eq(0)'), 500, {axis: 'x', offset:{left: -10, top:0 }} );
}

function searchNavJumpParams() {
    $('#searchLayer div.filters').scrollTo( $('#searchLayer div.filters div.scroll div.parameter:first'), 500, {axis: 'x', offset:{left: -10, top:0 }} );
}

function setSearchWidth( j ) {
    if ( j == null ) {
        var i = 1;
    } else {
        var i = j+1;
    }

    $('#searchLayer div.filters div.scroll div.select').each( function() { i++; } );
    $('#searchLayer div.filters div.scroll').width( i*180 );
}

function refreshSelectedParams() {
    var paramsList = $('#searchParams div');
    paramsList.find('a').remove();
    $('#searchLayer div.filters div.scroll div.select:visible select option:selected').each( function(i) { $('<a href="javascript:void(0);" onclick="removeFromParams(this); return false;">'+this.text+'</a>').appendTo(paramsList)[0].connect = this; } );
}

function removeFromParams( obj ) {
    obj.connect.selected = false;
    obj.connect.parentNode.onchange();
    setTimeout( function() { refreshSelectedParams(); }, 800);
}

function searchNavParamFilter( obj ) {
    //Jobb oldali paraméterlista frissítése
    refreshSelectedParams();

    //Kijelölt értékek küldése szerver felé.
    var serialized = '?x=x';
    var filters = $('#searchLayer div.filters div.scroll div.select:visible').filter('.parameter, .brand, .price');
    $('select option:selected', filters).each( function() { serialized = serialized+'&'+this.parentNode.name+'='+this.value } );
    gRPC.request( '/jsrpc/setParam/'+serialized, function() {}, [] );

/*
    $('option:selected', obj).each( function() { serialized = serialized+'&'+obj.name+'='+this.value } );
*/




/*
    //Kategóriák frissítése
    var filters = $('#searchLayer div.filters div.scroll');
    $('div.select:visible' ,filters).not('.parameter').children('select').each( function() {
            var jThis = $(this);
            jThis.animate({opacity: 0}, {speed: "slow"});
            if ( typeof this.sourceId == 'undefined' )
                this.sourceId = 0;


            gRPC.request( '/jsrpc/updateCategoriesSelect/'+(this.sourceId)+'/', function( data ) { 
                    //Tartalom betöltése és megjelenítés
                    $(jThis).html( data ).animate({opacity: 1}, {speed: "slow"});
                }, [] );            
        } );
*/
}





function removeFromCompare( id ) {

    $('#addToCompare_'+id).show();
    $('#removeFromCompare_'+id).hide();


    gRPC.request( '/termekek/osszehasonlitas/eltavolit/'+id+'/', function( data ) { 
            var list = $('#compareList');
            $('#compareCounter').text(data);

            if (data == 0) {
                $('#compareOptions').hide('fast');
                list.hide('fast');
            } else {

            gRPC.request( '/termekek/osszehasonlitas/lista/'+lastCatId+'/', 
                function( data ) { 
                    list.slideUp('fast', function() {
                        $('#compareList img').css('display', 'none');
                        $('#compareList div').css('display', 'block');
                        $('#compareList div').html(data); 
                    } );
                    list.slideDown('fast');
                    $('#showCompareList').text('Lista elrejtése [-]');
                }, [] );
            }
                
         }, [] );
}

function addToCompare( id ) {
    if ($('#compareCounter').text() == '0') {
        $('#compareOptions').show('fast');
    }

    $('#addToCompare_'+id).hide();
    $('#removeFromCompare_'+id).show();

    gRPC.request( '/termekek/osszehasonlitas/hozzaad/'+id+'/', function( data ) { $('#compareCounter').text(data); }, [] );
}

var lastCatId = 0;

function showCompareList( id ) {
    lastCatId = id;

    var list = $('#compareList');

    if ( list.css('display') == 'none' ) {
        list.css('textAlign', 'center');
        list.slideDown('fast');

        gRPC.request( '/termekek/osszehasonlitas/lista/'+id+'/', 
            function( data ) { 
                    list.slideUp('fast', function() {
                        $('#compareList img').css('display', 'none');
                        $('#compareList div').css('display', 'block');
                        $('#compareList div').html(data); 
                    } );
                    list.slideDown('fast');
                    $('#showCompareList').text('Ascunde lista de comparatie [-]');
                }, [] );

    } else {
        list.slideUp('fast', function() {
                        $('#compareList img').css('display', '');
                        $('#compareList div').css('display', 'none');
                     });
        $('#showCompareList').text('Vizualizeaza lista de comparatie [+]');
    }

//    gRPC.request( '/termekek/osszehasonlitas/hozzaad/'+id+'/', function( data ) { $('#compareCounter').text(data); }, [] );
}


function ConfirmDelMsg() 
{
  if (confirm('Biztosan törölni kívánja a kiválasztott licitet?')) {
      return true;
  } else {
      return false;
  }
}