function Browser() {
     this.isIE    = false;
     this.isNS    = false;
 
     if (document.attachEvent != null)
     {
       this.isIE = true;
       return;
     }
     if (!document.attachEvent && document.addEventListener)
     {
       this.isNS = true;
       return;
     }
 
 }
 
 var browser   = new Browser();
 var item4drag = new Object();
 item4drag.zIndex = 0;
 var rectangle = new Object();
 rectangle.minX = 0;
 rectangle.maxX = 160;
 rectangle.puncts = 5;
 rectangle.maxStep = 5;
 rectangle.percent = (rectangle.maxX - rectangle.minX)/rectangle.puncts;
 rectangle.current_punct = 0;
 rectangle.last = 0;
 rectangle.p = {'0': 5, '1': 10, '2': 20, '3': 30, '4': 40, '5': 50};
 rectangle.unp = {'5': 0, '10': 1, '20': 2, '30': 3, '40': 4, '50': 5};
 
 set_global_onload(function () {
     rectangle.current_punct = rectangle.unp[getCookie('pp')];
     rectangle.last = rectangle.current_punct;
     if ( $('draggable') != null) {
         $('draggable').style.left = (rectangle.current_punct * rectangle.percent) + "px";
     }
 });
 
 function dragStart(event, id) {
     var el;
     var x, y;
 
     // Если передвигать надо не тот элемент, на котором кликнули, то ищем его
     if (id)
         item4drag.itemNode = document.getElementById(id);
     else {
         item4drag.itemNode = (event.target) ? event.target : event.srcElement;
         if (item4drag.itemNode.nodeType == 3) {
             item4drag.itemNode = item4drag.itemNode.parentNode;
         }
     }
 
     // Выбираем позицию курсора, с учетом окна браузера
     if (browser.isIE)
     {
         x = window.event.clientX + document.documentElement.scrollLeft
             + document.body.scrollLeft;
         y = window.event.clientY + document.documentElement.scrollTop
             + document.body.scrollTop;
     }
     if (browser.isNS) {
         x = event.clientX + window.scrollX;
         y = event.clientY + window.scrollY;
     }
 
     // Сохраняем начальные позиции курсора и элемента
     item4drag.cursorStartX = x;
     item4drag.cursorStartY = y;
     item4drag.itemStartLeft  = parseInt(item4drag.itemNode.style.left, 10);
     item4drag.itemStartTop   = parseInt(item4drag.itemNode.style.top,  10);
 
     if (isNaN(item4drag.itemStartLeft)) item4drag.itemStartLeft = 0;
     if (isNaN(item4drag.itemStartTop))  item4drag.itemStartTop = 0;
 
     // Обновляем z-index элемента.
     item4drag.itemNode.style.zIndex = ++item4drag.zIndex;
 
     // Перехватываем на странице события mousemove и mouseup.
     if (browser.isIE)
     {
         document.attachEvent("onmousemove", dragGo);
         document.attachEvent("onmouseup",   dragStop);
         window.event.cancelBubble = true;
         window.event.returnValue = false;
     }
     if (browser.isNS)
     {
         document.addEventListener("mousemove", dragGo,   true);
         document.addEventListener("mouseup",   dragStop, true);
         event.preventDefault();
     }
 }
 
 function dragGo(event) {
 
     var x, y;
     // Вычисление позиции курсора относительно страницы.
     if (browser.isIE)
     {
         x = window.event.clientX + document.documentElement.scrollLeft
             + document.body.scrollLeft;
         y = window.event.clientY + document.documentElement.scrollTop
             + document.body.scrollTop;
     }
     if (browser.isNS)
     {
         x = event.clientX + window.scrollX;
         y = event.clientY + window.scrollY;
     }
 
     // Перемещение элемента на то же расстояние, на которое перемещен курсор.
     item4drag.itemNode.style.left = (item4drag.itemStartLeft + x - item4drag.cursorStartX) + "px";
     item4drag.itemNode.style.top  = (item4drag.itemStartTop  + y - item4drag.cursorStartY) + "px";
 
     if (browser.isIE)
     {
         window.event.cancelBubble = true;
         window.event.returnValue = false;
     }
     if (browser.isNS)
         event.preventDefault();
 }
 
 function dragStop(event) {
 
     // Удаление данных о перетаскиваем элементе.
     item4drag.itemNode = null;
 
     // Прекратить перехват событий mousemove и mouseup.
     if (browser.isIE)
     {
         document.detachEvent("onmousemove", dragGo);
         document.detachEvent("onmouseup",   dragStop);
     }
     if (browser.isNS)
     {
         document.removeEventListener("mousemove", dragGo,   true);
         document.removeEventListener("mouseup",   dragStop, true);
     }
 }
 
 
 
 
 
 
 
 
 
 
 
 
 
 function drag_horisontal_start(event, id) {
     var el;
     var x, y;
     // Если передвигать надо не тот элемент, на котором кликнули, то ищем его
     if (id) {
         item4drag.itemNode = document.getElementById(id);
     } else {
         item4drag.itemNode = (event.target) ? event.target : event.srcElement;
         if (item4drag.itemNode.nodeType == 3)
             item4drag.itemNode = item4drag.itemNode.parentNode;
     }
     // Выбираем позицию курсора, с учетом окна браузера
     if (browser.isIE)
     {
         x = window.event.clientX + document.documentElement.scrollLeft
             + document.body.scrollLeft;
     }
     if (browser.isNS) {
         x = event.clientX + window.scrollX;
     }
 
     // Сохраняем начальные позиции курсора и элемента
     item4drag.cursorStartX = x;
     item4drag.itemStartLeft = parseInt(item4drag.itemNode.style.left, 10);
 
     if (isNaN(item4drag.itemStartLeft)) item4drag.itemStartLeft = 0;
 
     // Обновляем z-index элемента.
     item4drag.itemNode.style.zIndex = ++item4drag.zIndex;
 
     // Перехватываем на странице события mousemove и mouseup.
     if (browser.isIE)
     {
         document.attachEvent("onmousemove", drag_horisontal_go);
         document.attachEvent("onmouseup",   drag_horisontal_stop);
         window.event.cancelBubble = true;
         window.event.returnValue = false;
     }
     if (browser.isNS)
     {
         document.addEventListener("mousemove", drag_horisontal_go,   true);
         document.addEventListener("mouseup",   drag_horisontal_stop, true);
         event.preventDefault();
     }
 }
 function drag_horisontal_go(event) {
     var x, y, curr_x, max_x;
     if (rectangle != undefined) {
         // Вычисление позиции курсора относительно страницы.
         if (browser.isIE)
         {
             x = window.event.clientX + document.documentElement.scrollLeft
                 + document.body.scrollLeft;
         }
         if (browser.isNS)
         {
             x = event.clientX + window.scrollX;
         }
         max_x = (rectangle.maxStep == rectangle.puncts) ? rectangle.maxX : Math.floor(rectangle.maxStep * rectangle.percent);
         
         // Перемещение элемента на то же расстояние, на которое перемещен курсор.
         if (item4drag.itemStartLeft + x - item4drag.cursorStartX <= rectangle.minX) {
             // Проверяем левый край
             item4drag.curr_x = rectangle.minX;
         } else {
             if (item4drag.itemStartLeft + x - item4drag.cursorStartX >= max_x) {
                 // Проверяем правый край
                 item4drag.curr_x = max_x;
             } else {
                 item4drag.curr_x = item4drag.itemStartLeft + x - item4drag.cursorStartX;
             }
         }
 //        console.log(item4drag.curr_x);
         item4drag.itemNode.style.left = item4drag.curr_x + "px";
         //line_seen(item4drag.curr_x);
         if (parseInt(item4drag.curr_x/rectangle.percent) != rectangle.current_punct) {
             rectangle.current_punct = parseInt(item4drag.curr_x/rectangle.percent);
 
         }
     }
 
     if (browser.isIE)
     {
         window.event.cancelBubble = true;
         window.event.returnValue = false;
     }
     if (browser.isNS)
         event.preventDefault();
 }
 function drag_horisontal_stop(event){
 
     var left_punct    = Math.floor(item4drag.curr_x/rectangle.percent);
     var right_punct   = Math.ceil(item4drag.curr_x/rectangle.percent);
     var left_punct_x  = Math.floor(left_punct * rectangle.percent);
 
     if (item4drag.curr_x > Math.floor(left_punct_x + rectangle.percent/2)) {
         rectangle.current_punct = right_punct;
     } else
         rectangle.current_punct = left_punct;
 
     item4drag.itemNode.style.left = (rectangle.current_punct * rectangle.percent) + 'px';
     //line_seen(rectangle.current_punct * rectangle.percent);
     show_pp();
 
     // Удаление данных о перетаскиваем элементе.
     item4drag.itemNode = null;
 
     // Прекратить перехват событий mousemove и mouseup.
     if (browser.isIE)
     {
         document.detachEvent("onmousemove", drag_horisontal_go);
         document.detachEvent("onmouseup",   drag_horisontal_stop);
     }
     if (browser.isNS)
     {
         document.removeEventListener("mousemove", drag_horisontal_go,   true);
         document.removeEventListener("mouseup",   drag_horisontal_stop, true);
     }
 }
 function go_slide_here(id, evt){
     var x, y, startX;
     var drag_item = document.getElementById(id);
     evt = (evt) ? evt : ((event) ? event : null);
     if (evt) {
         // Выбираем позицию курсора, с учетом окна браузера
       if (browser.isIE)
         {
             x = window.event.clientX + document.documentElement.scrollLeft
                 + document.body.scrollLeft;
         }
         if (browser.isNS) {
             x = evt.clientX + window.scrollX;
         }
         item4drag.cursorStartX = x;
         item4drag.itemStartLeft  = parseInt(item4drag.itemNode.style.left, 10);
         drag_item.style.left = x + 'px';
     }
     if (browser.isIE)
     {
         window.event.cancelBubble = true;
         window.event.returnValue = false;
     }
     if (browser.isNS)
         evt.preventDefault();
 }
 
 function show_pp() {
     if (rectangle.current_punct != rectangle.last) {
         pp_toggle(rectangle.p[rectangle.current_punct]);
     }
 }
