// starting the script on page load
$(document).ready(function(){
	catorder.iniCatList();
	catorder.iniOnlineReadable();
        
        catorder.order();
        
	// update on window changed
    $(window).resize( function () {
        catorder.updateOverlaySizes();
    });
    
    // display freight info on check
    $('#nlsubscr').click(function() {
        if ($('#nlsubscr').attr("checked")){
           $('#freightInfo').show();
        }
        else
        {
           $('#freightInfo').hide();
        }
    });
});

var catorder = {
    
    catList : false,
    
    currentOpenedDesc : false,
    
    currentOpenedImage : false,
    
    iniCatList : function() {
        
        $('.catalogCol').hover( 
            function () {
                $(this).find('div.catalogColHover').show();
            },
             function () {
                $(this).find('div.catalogColHover').hide();
            }       
        ); 
        
        // observe checkboxes
        $('input.vblist').change( function () {
        
            catColClass = $(this).attr('id');
            elemChecked = $(this).attr('checked');
            elem = $('.' + catColClass);
            
            if (elem.hasClass('active') && elemChecked == false || elem.hasClass('activeOrdered') && elemChecked == false) {
                elem.removeClass('active');
                elem.removeClass('activeOrdered');
            } else {
                elem.addClass('active');
                catorder.order();
            }
        });      
    },

    order : function() {
        $('div.catalogColHover').hide();
        if($('.catalogsListCol').find('div.catalogCol').hasClass('active')) {
            
            if($('.active').hasClass('last')) {
                $('.active').prev().before($('.active'));
                $('.active').removeClass('last');
                $('.active').next().addClass('last');
            } else if($('.active').prev().hasClass('first')) {
                $('.active').prev().before($('.active'));
                $('.active').next().removeClass('first');
                $('.active').addClass('first');
            }
            

            if($('.active').hasClass('first') && $('.active').parent().prev().find('div.catalogCol').hasClass('catalogCol') == true) {
                parent = $('.active').parent().prev();
                lastChild = parent.find('div.last');

                lastChild.before($('.active'));
                $('.active').addClass('last');
                $('.active').parent().next().prepend(lastChild);
                lastChild.removeClass('last');
                lastChild.addClass('first');
                $('.active').removeClass('first');
            }   

            if($('.active').hasClass('first') == true && $('.active').parent().prev().find('div.catalogCol').hasClass('catalogCol') == false) {
                $('.active').addClass('activeOrdered');
                $('.activeOrdered').removeClass('active');
            }
            
            catorder.order();
            
        }

        

    },
    
    iniOnlineReadable : function() {
        
        catorder.buildInterface();
        
        $('.viewCatalogToScroll').click( function () {

            catorder.runReadableCatalog(this);

            return false;
        });
        
        $('#' + catorder.overlayName).click( function () {
            catorder.hideLightbox();    
        });
        
        $('#lBrnClose').click( function() {
            catorder.hideLightbox();    
            return false; 
        });
        
    },
    
    overlayName : 'lOverlay',
    
    lightboxName : 'lBorderContainer',
    
    lContentContainer : 'lContentContainer',
    
    imageArray : [],
    
    movieArray : [],
    
    mImages : false,
    
    currentImage : 0,
    
    buildInterface : function() {
        
        $('body').append('<div style="display: none;" id="' + catorder.overlayName + '"></div>');    
        $('body').append('<div style="display: none;" id="' + catorder.lightboxName + '"></div>');        
        $('#' + catorder.lightboxName).append('<div class="' + catorder.lContentContainer + '"></div>');        
        $('.' + catorder.lContentContainer).append('<div id="lLoadingOverlay"><div id="lLoading"><img src="/img/misc/loading.gif" alt="loading" title="loading" /></div></div>');
        $('.' + catorder.lContentContainer).append('<div class="lFooter"><img id="lBrnClose" src="/img/icons/cross-icon-blue.gif" alt="close" /></div>');  
        
        // check if there is any movie
        
    },
    
    runReadableCatalog : function (item) {
        
        $('embed, object').css({'visibility' : 'hidden'});
        $('#currentImage').append('<img src="/img/misc/blank.gif" title="" class="lGrpImage" id="lPreviewImage" />');
        
        catorder.updateOverlaySizes();  
        
        $('#' + catorder.overlayName).show();     
        $('#' + catorder.lightboxName)
        .css({
            display: 'block',
            opacity: 0
        })
        .animate({
            opacity: 1.0,
            display: 'block'
        }); 
        
        // load catalog flash index.html      
        // put index.html into ifrmage
        if ($('#catalogIframe').length > 0) {
            $('#catalogIframe').attr('src', $(item).attr('href'));        
        } else {
            $('.lContentContainer').css('height', '100%');
            $('.lContentContainer').css('width', '100%');
            $('#lBorderContainer').addClass('isCatorder');
            $('.lContentContainer').append('<iframe height="95%" frameborder="0" width="97%" id="catalogIframe" name="OnlineCatalogScrolling" src="' + $(item).attr('href') + '"></iframe>');
        }
        
        catorder.stopLoader();
    },
    
    updateOverlaySizes : function() {
        
        dWidth  = $(document).width();
        dHeight = $(document).height();
        
        $('#' + catorder.overlayName).css({width: dWidth, height : dHeight});     
        
    },
    
    hideLightbox : function() {
        
        $('#' + catorder.overlayName).hide();
        $('#' + catorder.lightboxName).hide();
                
    },
    
    stopLoader : function() {
        $('#lLoadingOverlay').fadeOut(1000); 
    }
    
};
