/*************************************************************
*                                                            *
*                                                            *
*                                                            *
* ScrollScript                                               *
* 2007 Exsisto Ltd.                                          *
*                                                            *
*                                                            *
*                                                            *
*************************************************************/

/*
     speed1:
     1 - fastest
     2 - faster
     3 - fast
     4 - medium
     5 - slow
     6 - slower
     7 - slowest
*/
	
switch(speed1) {
     case 1:
          realspeed1 = 2/3;
          break;
     case 2:
          realspeed1 = 1/2;
          break;
     case 3:
          realspeed1 = 1/3;
          break;
     case 4:
          realspeed1 = 1/4;
          break;
     case 5:
          realspeed1 = 1/5;
          break;
     case 6:
          realspeed1 = 1/6;
          break;
     case 7:
          realspeed1 = 1/8;
          break;
}


var mainMoveArray1 = makeFactArray1();

var scrollArray1 = new Array();

function makeFactArray1() {
     middle = Math.floor((1/7)*elementDim1);
     if(middle%2 != elementDim1%2) {
          middle++;
     }
     to_middle = (elementDim1-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((realspeed1)*to_middle);
          to_middle -= Math.floor((realspeed1)*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 init1()
{
     var scrollers = getElementsByChildNodes('scrollContent1');
     for(i=0;i<scrollers.length;i++)
     {
          var scr = scrollers[i];
          var sc = document.getElementById('scrollContent1');
          var scrollerObj1 = new theScroller1();
          
          if(orientation1 == "vertical") {
               if(sc.style.top != '') {
                    scrollerObj1.offset = parseInt(sc.style.top);
               }
          }
          else {
               if(sc.style.left != '') {
                    scrollerObj1.offset = parseInt(sc.style.left);
               }
          }
          scrollerObj1.max = scrollers.length;
          scrollArray1.push(scrollerObj1);
     }
}
function theScroller1 () {
     var me = this;
     this.dir = 0;
     this.pos = 0;
     this.offset = 0;
     this.max = 8;
     this.view = oneStepView1;
     this.cpos = 0;
     this.is_moving = false;
     this.interval = '';
     this.movearray = mainMoveArray1;
}
function scrollMove1(target)
{
     var scrollerObj1 = scrollArray1[0];
     if(target == 1) target = moveStep1;
     else if(target == -1) target = -moveStep1;

     var request = (target * 2) + scrollerObj1.cpos;
     if(request > scrollerObj1.max && target > 0){
          target = scrollerObj1.max - scrollerObj1.cpos - target;
     }
     else if(scrollerObj1.cpos + target < 0){
          var result = scrollerObj1.cpos + target;
          target = target - result;
     }
     if(target == 0)
     return;
     scrollerObj1.dir = target;
     if(  !scrollerObj1.is_moving && ( (scrollerObj1.dir > 0 && (scrollerObj1.cpos + scrollerObj1.view) < scrollerObj1.max )  ||  (scrollerObj1.dir < 0 && scrollerObj1.cpos > 0) ) )
     {
          scrollerObj1.is_moving = true;
          scrollerObj1.cpos += scrollerObj1.dir;
          scrollerObj1.interval = setInterval(function () { makeScroll1(scrollerObj1) },1);
     }

     scrollTheImages1(target, scrollerObj1);
}
function makeScroll1(scrollerObj1)
{
     var sc = document.getElementById( 'scrollContent1' );
     if(scrollerObj1.pos == scrollerObj1.movearray.length)
     {
          scrollerObj1.pos = 0;
          clearInterval(scrollerObj1.interval);
          scrollerObj1.is_moving = false;
          return;
     }
     scrollerObj1.offset += ((-1 * scrollerObj1.dir) * scrollerObj1.movearray[scrollerObj1.pos]);
          
     if(oneStepView1 == "vertical") {
          sc.style.top = scrollerObj1.offset + 'px';
     }
     else {
          sc.style.left = scrollerObj1.offset + 'px';
     }
     scrollerObj1.pos++;
}
function scrollTheImages1(target,scrollerObj1)
{
     var leftImg1 = document.getElementById('scrollImgLeft1');
     var rightImg1 = document.getElementById('scrollImgRight1');

     var leftDiv1 = document.getElementById('scrollLeft1');
     var rightDiv1 = document.getElementById('scrollRight1');

     if(target > 0){
          if((scrollerObj1.cpos + scrollerObj1.view) == scrollerObj1.max){
               rightImg1.src = url1 + 'scroll_dis1_right.gif';
               rightDiv1.style.cursor = 'arrow';
          }

          leftImg1.src = url1 + 'scroll_act1_left.gif';
          leftDiv1.style.cursor = 'pointer';
     }
     else{

          if(scrollerObj1.cpos == 0){
               leftImg1.src = url1 + 'scroll_dis1_left.gif';
               leftDiv1.style.cursor = 'arrow';
          }

          rightImg1.src = url1 + 'scroll_act1_right.gif';
          rightDiv1.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;
}

