function number_format(number, laenge, sep, th_sep) {
  number = Math.round( number * Math.pow(10, laenge) ) / Math.pow(10, laenge);
  str_number = number+"";
  arr_int = str_number.split(".");
  if(!arr_int[0]) arr_int[0] = "0";
  if(!arr_int[1]) arr_int[1] = "";
  if(arr_int[1].length < laenge){
    nachkomma = arr_int[1];
    for(i=arr_int[1].length+1; i <= laenge; i++){  nachkomma += "0";  }
    arr_int[1] = nachkomma;
  }
  if(th_sep != "" && arr_int[0].length > 3){
    Begriff = arr_int[0];
    arr_int[0] = "";
    for(j = 3; j < Begriff.length ; j+=3){
      Extrakt = Begriff.slice(Begriff.length - j, Begriff.length - j + 3);
      arr_int[0] = th_sep + Extrakt +  arr_int[0] + "";
    }
    str_first = Begriff.substr(0, (Begriff.length % 3 == 0)?3:(Begriff.length % 3));
    arr_int[0] = str_first + arr_int[0];
  }
  return arr_int[0]+sep+arr_int[1];
}

function cs_checkzahl(name, stellen, pflicht) {
   var chkZahl,i;
    if (document.formular.elements[name].value.length>0 || pflicht>0) {
       document.formular.elements[name].value=cs_replace(document.formular.elements[name].value,',','.');
       for (i = 0; i < document.formular.elements[name].value.length; ++i)
		if ((document.formular.elements[name].value.charAt(i) !="." && document.formular.elements[name].value.charAt(i) !=",") &&
			(document.formular.elements[name].value.charAt(i) <"0" || document.formular.elements[name].value.charAt(i) > "9") )
			{chkZahl = true; }

        if(chkZahl || document.formular.elements[name].value=="") {document.formular.elements[name].value='0';}

       document.formular.elements[name].value=number_format(document.formular.elements[name].value,stellen,',','');
    }
}

function sys_zoom(Link) {fenster=window.open(Link,"Zoom","width=630,height=600, location=no,menubar=no,scrollbars=yes,status=no,toolbar=no,resizable=yes")}

function sys_rollover(Bildname, Dateiname) {if (document.images) {document.images[Bildname].src = Dateiname }}
function sys_print(Link) {fenster=window.open(Link,"Print","width=600,height=600, location=no,menubar=no,scrollbars=yes,status=no,toolbar=no,resizable=yes")}
function sys_search_clear() {if (document.formular_search.search.value=='Stichwort') {document.formular_search.search.value="";}}
function sys_search_add() {if (!document.formular_search.search.value) {document.formular_search.search.value="Stichwort";}}

function MM_preloadImages() {
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function sys_vigenere_decrypt (key, chiffre) {
  var i, j = 0;
  var hlp  = 0;
  var text = "";
  var alphabet = "abcdefghijklmnopqrstuvwxyz1234567890@.-";
  var alphaLen = alphabet.length;

  chiffre = chiffre.toLowerCase();
  key     = key.toLowerCase();
  for (i=0; i < chiffre.length; i++) {
    hlp = alphabet.indexOf(chiffre.charAt(i));
    if (hlp >= 0) {
      text = text + alphabet.charAt((alphaLen+(hlp-alphabet.indexOf(key.charAt(j))))%alphaLen);
      j = (j+1) % key.length;
    } else text = text + chiffre.charAt(i);
  }
  return text;
}

function sys_spam_protection (key, chiffre) {
  location.href='mailto:'+sys_vigenere_decrypt(key, chiffre);
}

var thumbnail = new Array();

var sys_references = {
	thumbs : 'reference_thumbs',
	preview : 'preview',
	time : 3000,
	standard_img : '/layout/content/referenzen/picture_clear.gif',
	fadingPreview : Object,
	init : function() {
		if (document.getElementById(this.thumbs)) {
			thumbnail['div'] = document.getElementById(this.thumbs);
		}
		if (document.getElementById(this.preview)) {
			thumbnail['preview'] = document.getElementById(this.preview);
			this.fadingPreview = thumbnail['preview'].cloneNode(false);
			this.fadingPreview.style.position = 'absolute';
			this.fadingPreview.style.top = thumbnail['preview'].offsetTop+'px';
			this.fadingPreview.style.left = thumbnail['preview'].offsetLeft+'px';
			thumbnail['preview'].parentNode.appendChild(this.fadingPreview);
		}
		thumbsID = window.setInterval("sys_references.change()", this.time);
	},
	change : function() {
		var date = new Date();
		var seconds = date.getTime();

		if (!thumbnail['a'] && thumbnail['div'].firstChild) {
			thumbnail['a'] = thumbnail['div'].firstChild;
		} else if (thumbnail['a'] && thumbnail['a'].nextSibling) {
			thumbnail['a'] = thumbnail['a'].nextSibling;
		} else {
			if(thumbnail['img'] && thumbnail['img'].src != thumbnail['img']['old_src']) {
				this.fadingPreview.src = thumbnail['preview'].src;
				this.fadingPreview.style.opacity = '1.0';
				this.fadingPreview.style.filter = "alpha(opacity:"+100+")";
				thumbnail['img'].src = thumbnail['img']['old_src']
				thumbnail['preview'].src = url_path+this.standard_img;
				opacityID = window.setTimeout("sys_references.fadingImages('"+100+"')",100);
			};
			window.clearInterval(thumbsID); return;
		}
		var oid = thumbnail['a'].href.substr(thumbnail['a'].href.indexOf("oid")+4);
		sys_ajax_process_url(xmlHttp_1, url_path + '/scripts/inc/ajax.references.php?oid=' + oid + '&' + seconds,'','sys_references.ajaxHightlight');
	},
	ajaxHightlight : function(content) {
		sys_references.highlight(content);
	},
	highlight : function(content) {
		if(thumbnail['img'] && thumbnail['img'].src != thumbnail['img']['old_src']) {thumbnail['img'].src = thumbnail['img']['old_src']};

		var content = content.split('#');

		if (thumbnail['a'].firstChild) {
			thumbnail['img'] = thumbnail['a'].firstChild;
			thumbnail['img']['old_src'] = thumbnail['img'].src;
		}

		if(content['1']) {
			thumbnail['img'].src = url_path+content[1];
		}
		this.fadingPreview.src = thumbnail['preview'].src;
		this.fadingPreview.style.opacity = '1.0';
		this.fadingPreview.style.filter = "alpha(opacity:"+100+")";
		if(content['2']) {
			thumbnail['preview'].src = url_path+content[2];
		} else {
			thumbnail['preview'].src = url_path+this.standard_img;
		}
		opacityID = window.setTimeout("sys_references.fadingImages('"+100+"')",100);
	},
	fadingImages : function(opacity) {
        var passed = parseInt(opacity);
		var newOpacity = parseInt(passed-10);
        if ( newOpacity > 0 ) {
			this.fadingPreview.style.opacity = '.'+newOpacity;
			this.fadingPreview.style.filter = "alpha(opacity:"+newOpacity+")";
			opacityID = window.setTimeout("sys_references.fadingImages('"+newOpacity+"')",50);
		}
		else {
			this.fadingPreview.style.opacity = '0';
			this.fadingPreview.style.filter = "alpha(opacity:0)";
			clearTimeout(opacityID);
		}
	}
};

function checkRotor() {	if (typeof rotor == 'function') {rotor();}
}
