function slider(){

  
  var main_class = '.slider';
  var arrow_left_class = '.arrow-left';
  var arrow_right_class = '.arrow-right';
  var arrow_disable_opacity = '0.5';
  var block_class = '.blocks';
  var item_class = '.slider-item';
  var id_element = 'slider-item-';
  
  var auto_count = true;
  var current_block = 1;
  var element_on = 6;
  var array_element = new Array();
  var width_work_window = 0;
  var width_element = 0;
  var speed = 300;
  
  this.init = function(){
    
    
    width_work_window = parseFloat(jQuery(block_class).outerWidth());
    if(auto_count){     
  
      //var element_widther = parseFloat(jQuery(item_class).first().children('a').outerWidth())+10;
      var element_widther = 64+10;
    
      
      //alert(element_widther);
      var modul = parseFloat(width_work_window%element_widther);
      var modul_count = parseInt(width_work_window/element_widther);
      //alert(modul+" - "+modul_count);
      element_on = parseInt(width_work_window/(element_widther+modul/modul_count));
             
    }
    
    width_element =  width_work_window/element_on;
    var temp_index = 1;
    var max_height = 0;
    jQuery(item_class).each(function(){
      var temp_array = new Array();
          temp_array['index'] = temp_index ;
          if(temp_index<=(current_block+(element_on-1))){ 
            max_height = (max_height>=parseFloat(jQuery(this).outerHeight())) ? max_height :parseFloat(jQuery(this).outerHeight());
            this.id = id_element+temp_index;
            jQuery(this).css({
            position:'absolute',
            top:'0px',
            width:width_element+'px',
            left:(width_element*(temp_index-1))+'px'
          })  
          }
          
          temp_array['object'] = this ;
          
          
          
      array_element.push(temp_array);
      if(!(temp_index<=(current_block+(element_on-1)))){
        jQuery(this).remove()
      }
      temp_index++;
    })
    
    jQuery(block_class).css('height',max_height+'px');
    
    var self = this ;
    
    jQuery(arrow_right_class).click(function(){
      self.move(true);
    })
    
    jQuery(arrow_left_class).click(function(){
      self.move();
    })
    
          
  }
  
  this.move = function(turn){
    
    turn = (turn) ? true : false ; // вправо : влево
    jQuery(item_class).stop(true,true);

    
    if(turn){
     //alert("("+current_block+"+"+element_on+")>"+array_element.length)     
      if((current_block+element_on)>array_element.length){
        var index_to_set = (current_block+element_on)-array_element.length;    
      }else{
        var index_to_set = (current_block+element_on);
      }
      
      if(array_element.length>0){
          for(var i in array_element){
            if(array_element[i]){
              if(array_element[i]['index']>0){
              
                if(array_element[i]['index']==index_to_set){
              
                    var temp_object = array_element[i]['object'];
                    temp_object.id = id_element+index_to_set;
                    jQuery(block_class)[0].appendChild(temp_object);
                
                     jQuery(temp_object).css({
                      position:'absolute',
                      top:'0px',
                      width:width_element+'px',
                      left:(width_element*(element_on))+'px'
                    })
                }  
              }
            }
          }
        } 
        current_block++;   
        jQuery(item_class).animate({left: '-='+width_element},speed,'linear',function(){
        
         if((current_block-1)<1){
              var temp_id = (current_block-1)+array_element.length;
            }else{
               var temp_id = (current_block-1)            
            } 
             jQuery("#"+id_element+(temp_id)).remove(); 
        }) 
        
                  
        if(current_block>array_element.length){
          current_block =1;    
        } 
        
          
    }else{
      
      if((current_block-1)<1){
        var index_to_set = (current_block-1)+array_element.length;    
      }else{
        var index_to_set = (current_block-1);
      }

      if(array_element.length>0){
          for(var i in array_element){
            if(array_element[i]){
              if(array_element[i]['index']>0){
                if(array_element[i]['index']==index_to_set){
                    var temp_object = array_element[i]['object'];
                    temp_object.id = id_element+index_to_set;
                    
                    var prev_element = document.getElementById(id_element+current_block);
                    jQuery(block_class)[0].insertBefore(temp_object,prev_element);

                
                     jQuery(temp_object).css({
                      position:'absolute',
                      top:'0px',
                      width:width_element+'px',
                      left:(width_element*(-1))+'px'
                    })
                }  
              }
            }
          }
        } 
        current_block--;   
        jQuery(item_class).animate({left: '+='+width_element},speed,'linear',function(){
            if((current_block+element_on)>array_element.length){
              var temp_id = (current_block+element_on)-array_element.length;
            }else{
               var temp_id = (current_block+element_on)            
            } 
             jQuery("#"+id_element+(temp_id)).remove(); 
        })      
        if(current_block<1){
          current_block =array_element.length;    
        } 
    }
  }
  

}

