/*************************************************************
*                                                            *
*                                                            *
*                                                            *
* ScrollScript                                               *
* 2007 Exsisto Ltd.                                          *
*                                                            *
*                                                            *
*                                                            *
*************************************************************/
/*
     speed1:
     1 - fastest
     2 - faster
     3 - fast
     4 - medium
     5 - slow
     6 - slower
     7 - slowest
*/
	
switch(speed4) {
     case 1:
          realspeed4 = 2/3;
          break;
     case 2:
          realspeed4 = 1/2;
          break;
     case 3:
          realspeed4 = 1/3;
          break;
     case 4:
          realspeed4 = 1/4;
          break;
     case 5:
          realspeed4 = 1/5;
          break;
     case 6:
          realspeed4 = 1/6;
          break;
     case 7:
          realspeed4 = 1/8;
          break;
}
var mainMoveArray4 = makeFactArray4();
var scrollArray4 = new Array();
function makeFactArray4() {
     middle = Math.floor((1/7)*elementDim4);
     if(middle%2 != elementDim4%2) {
          middle++;
     }
     to_middle = (elementDim4-middle)/2;
     to_middle_array = new Array (1,1,1,1,1,1,1,1,1);
     for(i=8;i>=0;i--) {
          to_middle_array[i] = Math.floor((realspeed4)*to_middle);
          to_middle -= Math.floor((realspeed4)*to_middle);
     }
     while(to_middle > 0) {
          for(i=8; i>=0;i--) {
               if(to_middle-- > 0) to_middle_array[i]++;
          }
     }
     to_end_array = to_middle_array.slice();
     to_end_array.reverse();
     to_middle_array[9] = middle;
     return to_middle_array.concat(to_end_array);
}
function init4()
{
     var scrollers = getElementsByChildNodes('scrollContent4');
     for(i=0;i<scrollers.length;i++)
     {
          var scr = scrollers[i];
          var sc = document.getElementById('scrollContent4');
          var scrollerObj4 = new theScroller4();
          
          if(orientation4 == "vertical") {
               if(sc.style.top != '') {
                    scrollerObj4.offset = parseInt(sc.style.top);
               }
          }
          else {
               if(sc.style.left != '') {
                    scrollerObj4.offset = parseInt(sc.style.left);
               }
          }
          scrollerObj4.max = scrollers.length;
          scrollArray4.push(scrollerObj4);
     }
}
function theScroller4 () {
     var me = this;
     this.dir = 0;
     this.pos = 0;
     this.offset = 0;
     this.max = 3;
     this.view = oneStepView4;
     this.cpos = 0;
     this.is_moving = false;
     this.interval = '';
     this.movearray = mainMoveArray4;
}
function scrollMove4(target)
{
     var scrollerObj4 = scrollArray4[0];
     if(target == 1) target = moveStep4;
     else if(target == -1) target = -moveStep4;
		
     var request = (target * 2) + scrollerObj4.cpos;
     if(request > scrollerObj4.max && target > 0){
          target = scrollerObj4.max - scrollerObj4.cpos - target;
     }
     else if(scrollerObj4.cpos + target < 0){
          var result = scrollerObj4.cpos + target;
          target = target - result;
     }
     if(target == 0)
     return;
     scrollerObj4.dir = target;
     if(  !scrollerObj4.is_moving && ( (scrollerObj4.dir > 0 && (scrollerObj4.cpos + scrollerObj4.view) < scrollerObj4.max )  ||  (scrollerObj4.dir < 0 && scrollerObj4.cpos > 0) ) )
     {
          scrollerObj4.is_moving = true;
          scrollerObj4.cpos += scrollerObj4.dir;
          scrollerObj4.interval = setInterval(function () { makeScroll4(scrollerObj4) },1);
     }
     scrollTheImages4(target, scrollerObj4);
}
function makeScroll4(scrollerObj4)
{
     var sc = document.getElementById( 'scrollContent4' );
     if(scrollerObj4.pos == scrollerObj4.movearray.length)
     {
          scrollerObj4.pos = 0;
          clearInterval(scrollerObj4.interval);
          scrollerObj4.is_moving = false;
          return;
     }
     scrollerObj4.offset += ((-1 * scrollerObj4.dir) * scrollerObj4.movearray[scrollerObj4.pos]);
          
     if(oneStepView4 == "horizontal") {
          sc.style.top = scrollerObj4.offset + 'px';
     }
     else {
          sc.style.left = scrollerObj4.offset + 'px';
     }
     scrollerObj4.pos++;
}
function scrollTheImages4(target,scrollerObj4)
{
     var leftImg4 = document.getElementById('scrollImgLeft4');
     var rightImg4 = document.getElementById('scrollImgRight4');
     var leftDiv4 = document.getElementById('scrollLeft4');
     var rightDiv4 = document.getElementById('scrollRight4');
     if(target > 0){
          if((scrollerObj4.cpos + scrollerObj4.view) == scrollerObj4.max){
               rightImg4.src = url4 + 'scroll_dis3_right.gif';
               rightDiv4.style.cursor = 'arrow';
          }
          leftImg4.src = url4 + 'scroll_act3_left.gif';
          leftDiv4.style.cursor = 'pointer';
     }
     else{
          if(scrollerObj4.cpos == 0){
               leftImg4.src = url4 + 'scroll_dis3_left.gif';
               leftDiv4.style.cursor = 'arrow';
          }
          rightImg4.src = url4 + 'scroll_act3_right.gif';
          rightDiv4.style.cursor = 'pointer';
     }
}
function getElementsByChildNodes(prnt) {
     var parent = document.getElementById(prnt).childNodes;
     var elements = new Array();
     for (var i = 0; i < parent.length; ++i)
     elements.push(parent[i]);
     return elements;
}
