Effect.Scroll = Class.create();
Object.extend(Object.extend(Effect.Scroll.prototype, Effect.Base.prototype), {
  initialize: function(element) {
    this.element = $(element);
    var options = Object.extend({
      x:    0,
      y:    0,
      mode: 'absolute'
    } , arguments[1] || {}  );
    this.start(options);
  },
  setup: function() {
    if (this.options.continuous && !this.element._ext ) {
      this.element.cleanWhitespace();
      this.element._ext=true;
      this.element.appendChild(this.element.firstChild);
    }
   
    this.originalLeft=this.element.scrollLeft;
    this.originalTop=this.element.scrollTop;
   
    if(this.options.mode == 'absolute') {
      this.options.x -= this.originalLeft;
      this.options.y -= this.originalTop;
    } else {
   
    }
  },
  update: function(position) {   
    this.element.scrollLeft = this.options.x * position + this.originalLeft;
    this.element.scrollTop  = this.options.y * position + this.originalTop;
  }
});


  
function moveTo(container, element){
  Position.prepare();
      
  container_x = Position.cumulativeOffset($(container))[0];
  element_x = Position.cumulativeOffset($(element))[0];
  $('topRefs').innerHTML = element+':'+container_x.toString()+':'+element_x.toString();
  new Effect.Scroll(container, {x:(element_x-container_x), y:0});
  return false;
}

function moveToOp(container, offset)
{
  Position.prepare();
	
  container_x = Position.cumulativeOffset($(container))[0]
	
  new Effect.Scroll(container, {x:offset, y:0});
  return false;
}

prCurPos = 0;

document.getElementsByClassName = function(clsName){
    var retVal = new Array();
    var elements = document.getElementsByTagName("*");
    for(var i = 0;i < elements.length;i++){
        if(elements[i].className.indexOf(" ") >= 0){
            var classes = elements[i].className.split(" ");
            for(var j = 0;j < classes.length;j++){
                if(classes[j] == clsName)
                    retVal.push(elements[i]);
            }
        }
        else if(elements[i].className == clsName)
            retVal.push(elements[i]);
    }
    return retVal;
}


  prSlide = function( offset )
  {
  	
/*  	photoRow = document.getElementById('photoRow');
  	photoRow.scrollLeft = photoRow.scrollLeft + 20;*/
    if(prCurPos+offset < 0 || prCurPos+offset > prCount-4)
    {
    	return;
    }
    
//    moveTo('prRow','pr'+(prCurPos+offset).toString());
    
    moveToOp('prRow',(prCurPos+offset)*101)
    
//    alert(prCurPos.toString());
    prCurPos+= offset;

    
//    $('debug').innerHTML = 'pos:'+prCurPos.toString();

  }
  
  prCount = 0;
  
  var shortCuts = [];
  
  prView = function(id)
  {
  	$('prDescr').innerHTML = shortCuts[id]['descr'];
  	$('prImage').innerHTML = "<img border=0 src='"+shortCuts[id]['img']+"'>";
  	
  }
  
  prInsertPicture = function(prevName, picName, descr)
  {
  	shortCuts[prCount] =[];
  	shortCuts[prCount]['prev'] = prevName;
  	shortCuts[prCount]['img'] = picName;
  	shortCuts[prCount]['descr'] = descr;
  	
  	document.write("<a href='"+url+"&pr_id="+prCount.toString()+"'><img border=0 id='pr"+prCount.toString()+"' src='"+prevName+"'></a>");
  	prCount++;
  }
  
function getURLParam( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}