function rotateText(el, textGroup) {
  setPosition(el);
  setOpacity(el, 0);
  var t = rotateText.texts[textGroup];
  var t = t[Math.floor(Math.random() * (t.length - 1))];
  el.innerHTML = t;
  unfadeText(el, textGroup);
}
rotateText.texts = {
  quotes: [
	"NÆRINGSPOLITISK AKTØR",
	"ET SAMLINGSPUNKT FOR ALLE BEDRIFTER I TØNSBERG",
	"MØTEARENA FOR OFFENTLIG OG PRIVAT NÆRINGSLIV",
	"BEDRE NÆRINGSLIVETS RAMMEBETINGELSER",
	"HØRINGSINSTANS I NÆRINGSPOLITISKE SAKER",
	"STØTTESTPILLER FOR EKSISTERENDE NÆRINGSLIV",
	"STYRKE REGIONEN SOM ETABLERINGSSTED"
  ]
};

function setPosition(el) {
	el.style.top = Math.floor(Math.random()*200)+"px";
	el.style.left = 240+Math.floor(Math.random()*200)+"px";
}

function setOpacity(el, value) {
  el.style.opacity = value / 100;
  el.style.filter = "alpha(opacity=" + value + ")";
}

function unfadeText(el, tg) {
  var v = el.style.opacity * 100 + 1;
  if(v > 100) {
	setOpacity(el, 100);
	setTimeout(bundleFunction(null, fadeText, [el, tg]), 8000);
	return;
  }
  setOpacity(el, v);
  setTimeout(bundleFunction(null, unfadeText, [el, tg]), 10);
}

function fadeText(el, tg) {
  var v = el.style.opacity * 100 - 1;
  if(v < 0) {
	setOpacity(el, 0);
	rotateText(el, tg);
	//or... setTimeout(bundleFunction(null, rotateText, [el, tg]), NUMBER);
	return;
  }
  setOpacity(el, v);
  setTimeout(bundleFunction(null, fadeText, [el, tg]), 10);
}

function bundleFunction(context, func, args) {
  context = context || null;
  if(typeof func == "string" && context)
	func = context[func];
  if(!args)
	args = [];
  else if(!(args instanceof Array))
	args = [args];
  return function() {
	return func.apply(context, args);
  };
}
		
