$(document).ready(function(){
    
    prod_id             = 0; /*id товара*/
    cur_price           = 0; /*текущая цена*/
    cur_category        = 0; /*текущая категория*/
    main_scroll_start   = 0; /*стартовая страница - для условий - надо еще прописать*/
    main_scroll_finish  = 0; /*последняя страница - для условий - надо еще прописать*/
    main_scroll_current = 1; /*текущая позиция страницы товара в каталоге*/
    main_scroll_sort    = 0; /*порядок сортировки - на всякий случай, но сортируется по названию товара*/
    page_curr_price     = 0; /*номер страницы товаров по той же цене на странице товара*/
    page_curr_cat       = 0; /*номер страницы товаров в той же категории на странице товара*/
    page_price_total    = 0; /*общее количество страниц товаров по одной цене*/
    page_cat_total      = 0; /*общее количество страниц товаров в одной категории*/
                              
    //карусель для каталога
    function myCatalogCarousel_initCallback(carousel){
        $('.products_scroll_rt').bind('click', function() {
            request = 'action=get_page'+'&cat_id='+cur_category+'&page_id='+main_scroll_current+'&sort='+main_scroll_sort;
            carousel_request('/ajax/cat_scroll.xml',request,carousel);
        });
        
        $('.products_scroll_rt').bind('click', function() {
            if(main_scroll_current <= main_scroll_finish){
                main_scroll_current += 1;
                $('.paging a.active').removeAttr('class').next().attr('class','active');
                carousel.next();
            }
            
            return false;
        });
     
        $('.products_scroll_lt').bind('click', function() {
            if(main_scroll_current > main_scroll_start+1){
                main_scroll_current -= 1;
                $('.paging a.active').removeAttr('class').prev().attr('class','active');
                carousel.prev();
            }
            
            return false;
        });    
    }
    
    $('#products_scroll_do ul').jcarousel({
        // Configuration goes here
        visible : 1,
        scroll  : 1,
        initCallback: myCatalogCarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null
        ,itemFallbackDimension: 845
    });
    
    //карусель для товаров одной категории
    function myOneCategoryCarousel_initCallback(carousel){
        $('#rt_cat_prod_scroll').bind('click', function(){
            if(page_curr_cat <= page_cat_total){
            request = 'action=pageOneCat'+'&cat_id='+cur_category+'&page_id='+page_curr_cat+'&sort='+main_scroll_sort;
            carousel_request('/ajax/one_cat_scroll.xml',request,carousel);
            }
        });
        
        
        $('#lt_cat_prod_scroll').bind('click', function(){
            if(page_curr_cat > main_scroll_start){
                page_curr_cat -= 1;
            }
            carousel.prev();
            return false;
        });
        
        $('#rt_cat_prod_scroll').bind('click', function(){
            if(page_curr_cat <= page_cat_total){
                page_curr_cat += 1;
            }
            carousel.next();
            return false;
        });
        
    }    
    
    $('.other_product_scroll ul').jcarousel({
        visible : 1,
        scroll  : 1,
        initCallback: myOneCategoryCarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null
        ,itemFallbackDimension: 845
    });
    
    
    //карусель для товаров по одной цене
    function myOnePriceCarousel_initCallback(carousel){
        
        $('#rt_price_prod_scroll').bind('click', function(){
            request = 'action=pageOnePrice'+
                      '&cat_id='+cur_price+
                      '&page_id='+page_curr_price+
                      '&sort='+main_scroll_sort;
            carousel_request('/ajax/one_cat_scroll.xml',request,carousel);
        });
        
        $('#lt_price_prod_scroll').bind('click', function(){
            if(page_curr_cat > main_scroll_start){
                page_curr_price -= 1;
                
            }
            carousel.prev();
            return false;
        });
        
        $('#rt_price_prod_scroll').bind('click', function(){
            if(page_curr_cat <= page_cat_total){
                page_curr_price += 1;
                
            }
            carousel.next();
            return false;
        });        
    }
    
    
    $('.other_product_price_scroll ul').jcarousel({
        visible : 1,
        scroll  : 1,
        initCallback: myOnePriceCarousel_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null
        ,itemFallbackDimension: 845
    });
    
    function carousel_request(url, request, carousel){
        $.ajax({
                type: "GET",
                url: url,
                cache: false,
                data: request,
                success: function(response){
                    $(response).find('img').each(function(){
                        var img = new Image();
                        img.src = $(this).attr('src');
                    });
                    
                    carousel.size(parseInt(carousel.last+1));
                    for (var i = carousel.first; i <= carousel.last; i++) {
                            if (!carousel.has(i)){
                                carousel.add(i, response);
                            }
                    }                            
                }
        });        
    }
    
});
