function calcHeightOfIFRAME(frameId)
{
  //find the height of the internal page
  var the_height=
    document.getElementById(frameId).contentWindow.
      document.body.scrollHeight;

  //change the height of the iframe
  document.getElementById(frameId).height=
      the_height+5;
}


Sv5Animation=function()
{
	this.uniqueId =  new Date();
	this.target = '' ;
	this.options = {};
	this.type = 'slide';
	this.options.interval = 2 * 1000;// conver to seconds
	this.nextRotate = 0;
	this.itemToClear=0;
	this.arrayOfElements = new Array();
}
Sv5Animation.prototype.getElementArray = function()
{
	return this.arrayOfElements;
}
Sv5Animation.prototype.addElement = function(element)
{
	this.arrayOfElements[this.arrayOfElements.length] = element;
}

Sv5Animation.prototype.start = function(targetContainer, opt)
{
	var jonsobj = new Object();
	jonsobj['this'] = this;

	//this.arrayOfElements.sort(randOrd);
	this.uniqueId =  new Date();
	this.target = targetContainer;
	this.options = opt;
	this.type = this.options.effect;
	this.options.interval = this.options.interval * 1000;// conver to seconds
	Element.hide(this.target);
	
	clearInterval(this.itemToClear);
	
  this.itemToClear=setInterval(function(){
  	jonsobj['this'].rotateContent();
	  }, 
  1000 );
}

Sv5Animation.prototype.rotateContent=function()
{
	var jonsobj = new Object();
	jonsobj['this'] = this;
	
	if(this.arrayOfElements.length > 0)
	{
		if(! this.arrayOfElements[this.nextRotate] )
			{
			//this.arrayOfElements.sort(randOrd);
			this.nextRotate=0;
			}
		if($(this.target))
		{
			$(this.target).innerHTML = $(this.arrayOfElements[this.nextRotate]).innerHTML;
			if(this.type=='slide' && $(this.target))
				Effect.SlideDown(this.target);
			else if(this.type=='fade' && $(this.target))
				Effect.Appear(this.target);
			this.nextRotate++;
			clearInterval(this.itemToClear);

			this.itemToClear=setInterval( function(){
					jonsobj['this'].rotateContentHide(); 
				}, 
			this.options.interval );
			
		}
	}
}
Sv5Animation.prototype.rotateContentHide=function()
{
	var jonsobj = new Object();
	jonsobj['this'] = this;
	
	if(this.type=='slide' && $(this.target))
		Effect.SlideUp(this.target);
	else if(this.type=='fade' && $(this.target))
		Effect.Fade(this.target);
	clearInterval(this.itemToClear);
	this.itemToClear=setInterval( function(){
		jonsobj['this'].rotateContent();
	} , 1100 );
  
}




function Typewriter(sName)
{	// PROPERTIES
	this.counter = 0;
	this.name = sName;
	this.text = "";
	this.speed = 50; // in milliseconds
	
	// METHODS
	this.addText = AddText;
	this.next = Next;
	this.setSpeed = SetSpeed;
	this.write = Write;
	
	// FUNCTIONS
	function AddText(s)
	{	this.text = s
	}
	function Next()
	{	document.getElementById('typewriter_output').innerHTML = this.text.substr(0, this.counter++);
	}
	function SetSpeed(iSpeed)
	{	this.speed = iSpeed;
	}
	function Write()
	{	setInterval(this.name+".next()",this.speed);
	}
}

function AlcassoftTypewriter(params){
	for(param in params)
	{
		this[param] = params[param];
	}
	
	function Write()
	{
		
	}
}
