 var vg_ribbon = (function(){
	var state=-2;
	var interval=7000;//delay between appearances
	var delay=3000;//delay after fully shown
	var speed=300;//words apperaing speed
	//var pause=1500;//delay after click
	var id='';
	var text='';
	//var tmpText='';
	//var index=0;
	var intId=0;
	var paused=false;
	
	var _execute= function(){
		switch (state){
			case -1:{
					//clearInterval(intId);
					state++;
					//intId=setInterval(_execute,speed);	
					intId=setTimeout(_execute,speed);	
				}
				break;
			case 0:{
					/*if (paused)
					 {
						clearInterval(intId);
						paused=false;
						intId=setInterval(_execute,speed);				
					 }*/
					//tmpText=text.substr(0,index+1);
					//$('#'+id+' .rb-body').html(/*tmpText*/text);
					$('#'+id).fadeIn(speed, function(){
							state++;
						//	clearInterval(intId);
							intId=setTimeout(_execute,delay);		
					});
					//$('#'+id+' .rb-main').css('margin-left',-parseInt($('#'+id+' .rb-body').css('width')+3));
					//index++;
					//if (index==text.length){
							//$('#'+id+' .rb-edge').css('background','url("/images/ribbon-edge.png"');
					//}
				}
				break;
			case 1:{
							state++;
							intId=setTimeout(_execute,speed);					
				}
				break;
			case 2:{
					$('#'+id).fadeOut(speed, function(){
							state++;
							_execute();		
					});			
				}
				break;
			case 3:{
						clearInterval(intId);
						state=-1;
						intId=setTimeout(_execute,interval);					
				}
				break;
		}
	};
	
	var _create= function(){
		$('#'+id).append('<div class="rb-cont"></div>');
		$('#'+id+' .rb-cont').html(text).click(function(){
			state=2;
			clearInterval(intId);
			_execute();
		});
		 state++;
		_execute();
	};
	
	return {
		run: function(_id, _interval, _delay, _speed/*, _pause*/){
			if (_id)
				id=_id;
			else
				return false;
			text=' '+$('#'+id).html();
			$('#'+id).html('');
			if (text.length==0)
				text='&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
			if (_interval)
				interval=_interval;
			if (_delay)
				delay=_delay;
			if (_speed)
				speed=_speed;
			_create();	
		}
	}
 })();
