$( // код для управления списком новостей (index.php)
 function() {
		// settings:
	  // var id_news = true; 
 	if(typeof(id_news) == 'undefined') { // находимся на главной странице
		//alert('1'); // проверка 
		var okno = $('div.body'); // слой, в котором прокручивается
		var lenta = $('#lenta'); // слой, который прокручивается 	
		}
		else {	// находимся на странице с одной новостью
		//alert('2'); // проверка 
		var okno = $('div.message');
		var lenta = $('#len');
		}  
        $('#letters_arrow_up').click(
            function()
            {
				var margin_value = -parseInt(lenta.css('margin-top'), 10); //ВЫСОТА куска сдвинутой ленты	
				var obl_height = okno.outerHeight(); // высота области, в которой выполняется прокрутка
				//var list_height = $('#divin').height(); // высота "ленты"
				// определим константу - расстояние, на которое будет перемещатся лента за один клин
				var step = parseInt(obl_height / 3, 10);
					if (top.scrolling) return; // здесь и далее переменная-флаг - блокировка многократного нажатия
				 // var margin_value = -parseInt($('#divin').css('margin-top'), 10); // высота куска сдвинутой ленты (С ИНВЕРСИЕЙ -для простоты рассчетов)
				  if (margin_value==0) { // alert('прокрутка не нужна ибо margin_value==0');
				  return; } // если не нужна прокрутка
				  //alert('шаг '+step+' margin_value '+margin_value); // проверка 
				  step = (step > margin_value) ? margin_value : step; // если вдруг шаг окажется больше, чем нужно для прокрутки до края ленты
				  //alert(step); // проверка 
				 // step = (margin_value != 0) ? margin_value-step : step; // если лента была сдвинута, то двигаем ленту относительно текущего положения
					
				  // var last_value = parseInt($('#len').css('margin-top'), 10);
				   // if (last_value==0) return;
				   // last_value += scroll_size;
				   // if (last_value > 0) last_value = 0;
					 //alert("новый шаг вверх: "+step); // проверка 
					 top.scrolling = true;
				   lenta.animate({marginTop: "-="+ -step+'px'},"slow",'swing',letters_scrolling);
				   // $('#len').animate({marginTop:last_value+'px'},animation_time,'linear',free_scrolling_flag_2);
				 //  ('#len').animate({marginTop:last_value+'px'},animation_time,'linear',free_scrolling_flag_2);
            }
        );
		
		
	    $('#letters_arrow_down').click(
            function()
            {
			var margin_value = -parseInt(lenta.css('margin-top'), 10); //ВЫСОТА куска сдвинутой ленты	
			var obl_height = okno.outerHeight(); // высота области, в которой выполняется прокрутка
			var list_height = lenta.outerHeight(); // высота "ленты"
			// определим константу - расстояние, на которое будет перемещатся лента за один клин
			var step = parseInt(obl_height / 3, 10);
                if (top.scrolling) return;
             //  var margin_value = -parseInt($('#divin').css('margin-top'), 10); //ВЫСОТА куска сдвинутой ленты (С ИНВЕРСИЕЙ)

			 //  var list_height = $('#divin').height(); // высота "ленты"
				 //alert('margin: '+margin_value+' область: '+obl_height +' лента: '+ list_height); // проверка
				// для выполнения прокрутки лента по высоте должна быть больше, чем область прокрутки
				if (obl_height+margin_value >= list_height) { // alert('прокрутка не нужна, т.к.obl_height+margin_value: '+ (obl_height+margin_value));
				return;} // необходима ли прокрутка?

				// var step = parseInt(obl_height / 3, 10); // округлить?
				// alert("шаг: "+step); // проверка 
				// если шаг оказался больше, чем оставшаяся область прокрутки, то делаем шаг равным оставшейся области
				// list_height-margin_value-obl_height  = оставшаяся область для прокрутки (снизу)
				var ostatok = list_height-margin_value-obl_height;
					//alert('step > ostatok? '+step+' > '+ostatok); // проверка 
				step = (step > ostatok) ? ostatok : step;	
				
			//	step = (margin_value != 0) ? margin_value +step : step;// если лента была сдвинута, то двигаем ленту относительно текущего положения
				// alert('новый шаг (цифра) вниз:'+step); // проверка 
				// шаг прокрутки определили, теперь нужно "подвинуть" лента вверх на этот шаг
				 lenta.animate({marginTop: "+="+ -step+'px'},"slow",'swing',letters_scrolling);
				
              //  if (list_height+last_value == list_visible_height) return;
              //  last_value -= scroll_size;
              //  if (list_height+last_value<list_visible_height) last_value = list_visible_height-list_height;
                  top.scrolling = true;
              //  $('#len').animate({marginTop:last_value+'px'},animation_time,'linear',free_scrolling_flag_2);
            }
			
        );
		
		// функция обратного вызова, которая обновляет параметры
        function letters_scrolling()
        { top.scrolling = false;
			var margin_value = -parseInt(lenta.css('margin-top'), 10); //ВЫСОТА куска сдвинутой ленты	
			var obl_height = okno.outerHeight(); // высота области, в которой выполняется прокрутка
			var list_height = lenta.outerHeight(); // высота "ленты"
			// определим константу - расстояние, на которое будет перемещатся лента за один клин
			var step = parseInt(obl_height / 3, 10);
			 
		    // var listPos = parseInt($('#len').css('margin-top'), 10);
           // var list_height = parseInt($('#len').css('height'), 10);
            if (margin_value==0) $('#letters_arrow_up').addClass('disabled_arrow'); // если не требуется кнопка "вверх"
            else $('#letters_arrow_up').removeClass('disabled_arrow');
				// если не требуется кнопка "вниз"
			if (obl_height+margin_value >= list_height) $('#letters_arrow_down').addClass('disabled_arrow');
            else $('#letters_arrow_down').removeClass('disabled_arrow');	   
/*             if (margin_value==0) $('#btn1').attr("disabled", true); // если не требуется кнопка "вверх"
            else $('#btn1').attr("disabled", false);
				// если не требуется кнопка "вниз"
			if (obl_height+margin_value >= list_height) $('#btn2').attr("disabled", true);
            else $('#btn2').attr("disabled", false); */
        }
		
		letters_scrolling();
	} 
);
