var browser = "";
var browserie = "";
if (navigator.appName.indexOf("Opera") != -1)
{
 browser = "opera";
}
else if (navigator.appName.indexOf("Explorer") != -1)
{
 if(window.XMLHttpRequest){browserie = "7";}else{browserie = "6";}
 browser = "ie";
}
else if (navigator.appName.indexOf("Netscape") != -1)
{
 browser = "netscape";
}
else
{
 browser = "anderer";
}
var sajax_debug_mode = false;
var sajax_request_type = "GET";
var sajax_target_id = "";
var sajax_failure_redirect = "";
function sajax_debug(text) {
 if (sajax_debug_mode)
 alert(text);
}
function sajax_init_object() {
 sajax_debug("sajax_init_object() called..")
 var A;
 var msxmlhttp = new Array('Msxml2.XMLHTTP.5.0','Msxml2.XMLHTTP.4.0','Msxml2.XMLHTTP.3.0','Msxml2.XMLHTTP','Microsoft.XMLHTTP');
 for (var i = 0; i < msxmlhttp.length; i++) {
 try {
 A = new ActiveXObject(msxmlhttp[i]);
 } catch (e) {
 A = null;
 }
 }
 if(!A && typeof XMLHttpRequest != "undefined")
 A = new XMLHttpRequest();
 if (!A)
 sajax_debug("Could not create connection object.");
 return A;
}
var sajax_requests = new Array();
function sajax_cancel() {
 for (var i = 0; i < sajax_requests.length; i++) 
 sajax_requests[i].abort();
}
function sajax_do_call(func_name, args) {
 var i, x, n;
 var uri;
 var post_data;
 var target_id;
 var returns;
 sajax_debug("in sajax_do_call().." + sajax_request_type + "/" + sajax_target_id);
 target_id = sajax_target_id;
 if (typeof(sajax_request_type) == "undefined" || sajax_request_type == "") 
 sajax_request_type = "GET";
 uri = "/cgi-bin/vm/vio.matrix";
 if (uri.indexOf("?") == -1) 
 uri += "?rs=" + escape(func_name);
 else
 uri += "&rs=" + escape(func_name);
 uri += "&rst=" + escape(sajax_target_id);
 uri += "&rsrnd=" + new Date().getTime();
 uri += "&or=1";
 uri += "&typ=SAJAX%23sajax_response";
 for (i = 0; i < args.length-1; i++) 
 uri += "&rsarg"+i+"=" + escape(args[i]);
 post_data = null;
 x = sajax_init_object();
 if (x == null) {
 if (sajax_failure_redirect != "") {
 location.href = sajax_failure_redirect;
 return false;
 } else {
 sajax_debug("NULL sajax object for user agent:\n" + navigator.userAgent);
 return false;
 }
 } else {
 x.open(sajax_request_type, uri, true);
 sajax_requests[sajax_requests.length] = x;
 x.onreadystatechange = function() {
 if (x.readyState != 4) 
 return;
 sajax_debug("received " + x.responseText);
 var status;
 var data;
 var data_pic;
 var txt = x.responseText.replace(/^\s*|\s*$/g,"");
 status = txt.charAt(0);
 data = txt.substring(2);
 var daten = data;
 daten = daten.split("|");
 if(daten.length>1)
 {
 target_id = daten[0].replace(/\"/g, "");
 data = daten[1];
 data_pic = daten[2];
 }
 if (status == "") {
 } else if (status == "-") 
 alert("Error: " + data);
 else {
 if(data_pic && data_pic != "\"") {
data_pic=data_pic.replace(/\"/,"");
data2 = "<img sr";
data2 += "c=\"/viomatrix/imgs//" + data_pic + "\" alt=\"\" class=\"hinticon\" />" + data + "<div class=\"antifloat\">&nbsp;</div>";
data = data2;
 }
 if (target_id != "") {
var parentElement = document.getElementById(target_id);
parentElement.innerHTML="";
var wrappingDiv = document.createElement('div');
wrappingDiv.innerHTML = data;
parentElement.appendChild(wrappingDiv);
 }
 else {
 try {
 var callback;
 var extra_data = false;
 if (typeof args[args.length-1] == "object") {
 callback = args[args.length-1].callback;
 extra_data = args[args.length-1].extra_data;
 } else {
 callback = args[args.length-1];
 }
 callback(eval(data), extra_data);
 } catch (e) {
 sajax_debug("Caught error " + e + ": Could not eval " + data );
 }
 }
 }
 }
 }
 sajax_debug(func_name + " uri = " + uri + "/post = " + post_data);
 x.send(post_data);
 sajax_debug(func_name + " waiting..");
 delete x;
 return true;
}
function x_sajax_content() {
 sajax_do_call( "sajax_content", arguments );
}
function sajax_content(sajax_func,sajax_obj,getid,lang,feld) {
 var searchstring = getid;
 searchstring += "*SJX-SPLT*" + sajax_func;
 searchstring += "*SJX-SPLT*" + sajax_obj;
 searchstring += "*SJX-SPLT*" + lang;
 if(feld)searchstring += "*SJX-SPLT*" + feld;
 if ( searchstring != "" ) {
 x_sajax_content( "sajax_content", searchstring, sajax_contentresponse );
 }
}
function sajax_contentresponse( data ) {
 document.getElementById(sajax_obj).innerHTML = data; 
}
var snippets;
function fehler() {
 alert("Ein Fehler ist aufgetreten.");
 return true;
}
function changebgpic(orid){
 document.getElementById(orid).style.backgroundImage='url(/viomatrix/imgs//gfx/top_menue_bg_dark.gif)';
}
function changebgpicback(orid){
 document.getElementById(orid).style.backgroundImage='url(/viomatrix/imgs//gfx/top_menue_bg.gif)';
}
function transparentpic(pic, styles, cssclass) {
 if(!styles)styles="width: 64px; height: 64px;";
 if(cssclass != "" && cssclass != undefined){cssclass=" " + cssclass;}else{cssclass="";}
 var filename = "/viomatrix/imgs//" + pic;
 document.write("<div class=\"menuediv\" style=\"");
 if(browser == "ie"){document.write("filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + filename + "', sizingMethod='scale');");}
 document.write(styles + "\"><img src" );
 document.write("=\"" + filename + "\" class=\"iepic" + cssclass + "\" style=\"" + styles + "\" alt=\"\"><\/div>");
}
function admincode_popup( code1, code2 ) {
 code1 = code1.replace(/\n/g, "\t");
 code2 = code2.replace(/\n/g, "\t");
 var url = "/cgi-bin/vm/vio.matrix?or=1&el=1&typ=admincode";
 url = url + "&code1=" + escape( code1 );
 url = url + "&code2=" + escape( code2 );
 sajax_content("get_content","zoomcontent","admincode=1&url=" + url, "de");
 document.getElementById("zoomframe").style.display = "block";
 transparenzerhoehen("zoomframe",0);
}
function testcode_popup( code1, code2, testit ) {
 code1 = code1.replace(/\n/g, "\t");
 code2 = code2.replace(/\n/g, "\t");
 var url = "/cgi-bin/vm/vio.matrix?or=1&el=1&typ=admincode";
 url = url + "&test=" + escape( testit );
 url = url + "&code1=" + escape( code1 );
 url = url + "&code2=" + escape( code2 );
 var W1 = window.open( url, "admincode", "width=640,height=400,left=0,top=0,dependent=yes,location=no,menubar=no,resizable=no,scrollbars=yes,status=no,toolbar=no");
}
var breakit=0;
var zaehler;
var lastobj;
var zeitliste="";
var maxtime="2000";
var starttime=0;
var vergangenezeit=0;
var anteilanmaxtime=0;
var sub=0;
var jetzt;
function fadein(obj,deep) {
 window.clearTimeout(zaehler);
 if(lastobj){document.getElementById(lastobj).style.display="none";}
 if(!deep)deep=0.9;
 deep2=deep*100;
 document.getElementById(obj).style.display="block";
 document.getElementById(obj).style.opacity=deep;
 document.getElementById(obj).style.filter="alpha(opacity=" + deep2 + ")";
 lastobj = obj;
}
function fadeout(obj) {
 jetzt = new Date();
 if(document.getElementById(obj)) {
 if(!obj){obj=lastobj;}else{lastobj=obj;}
 aktopacity=document.getElementById(obj).style.opacity;
 aktfilter=document.getElementById(obj).style.filter;
   if(!starttime)
 {
 starttime=jetzt.getTime();
 sub=0.01;
 }
 else
 {
 vergangenezeit=jetzt.getTime()-starttime;
 sub=vergangenezeit/maxtime;
 zeitliste = zeitliste + " -> " + vergangenezeit;
 }
 aktopacity=aktopacity-sub;
 if(aktopacity> 0 ) {
 aktfilter = aktopacity * 100;
 document.getElementById(obj).style.opacity=aktopacity;
 document.getElementById(obj).style.filter="alpha(opacity=" + aktfilter + ")";
 if(breakit==0){zaehler=window.setTimeout("fadeout()", 5);}
 }
 else
 {
 document.getElementById(obj).style.display='none';
 document.getElementById(obj).style.opacity='0.9';
 document.getElementById(obj).style.filter='alpha(opacity=90)';
 window.clearTimeout(zaehler);
 starttime="";
 }
}
}
function fadeoutstop(obj,deep) {
 breakit=1;
 if(!deep)deep=0.9;
 deep2=deep*100;
 document.getElementById(obj).style.display='block';
 document.getElementById(obj).style.opacity=deep;
 document.getElementById(obj).style.filter='alpha(opacity=' + deep2 + ')';
 window.clearTimeout(zaehler);
 starttime="";
}
function searchbox(obj, wert){
 document.getElementById(obj).style.display='block';
 var myH1 = document.createElement("div");
 var myText = document.createTextNode(wert);
 myH1.appendChild(myText);
 var Ausgabebereich = document.getElementById(obj);
 Ausgabebereich.appendChild(myH1);
 var Ausrichtung = document.createAttribute("class");
 Ausrichtung.nodeValue = "searchboxnode";
 myH1.setAttributeNode(Ausrichtung);
}
function faqmoveselection(Ereignis) {
 if(!Ereignis.which) {
 key = Ereignis.keyCode;
 }
 else{ 
 key = Ereignis.which;
 }
 }
function getshopvalues(getor,lang) {
 document.getElementById("infobox").innerHTML='';
 document.getElementById("price").innerHTML='';
 document.getElementById("pricetype").innerHTML='';
 document.getElementById("infobox").style.display='block';
 document.getElementById("mwst").innerHTML='';
 document.getElementById("summe").innerHTML='';
 if(document.getElementById(getor).selectedIndex>0)
{
sajax_content("infobox",document.getElementById(getor).options[document.getElementById(getor).selectedIndex].value,lang,'de_text');
getprice(getor);
}
 else
{
document.getElementById('infobox').style.display='none';
}
 return true;
}
function installSearchEngine() {
 if (window.external && ("AddSearchProvider" in window.external)) {
 window.external.AddSearchProvider("http://www.viomatrix.de/viomatrix_se.xml");
 } else if (window.sidebar && ("addSearchEngine" in window.sidebar)) {
 window.sidebar.addSearchEngine("http://www.viomatrix.de/viomatrix_se.src",
 "http://www.viomatrix.de/viomatrix_se.png",
 "VIO.Matrix", "");
 } else {
 alert("Diese Funktion wird nur von Internet Explorer 7 und Firefox unterstützt.");
 }
}
function closezoom() {
 document.getElementById("html").style.overflowX = "auto";
 document.getElementById("html").style.overflowY = "auto";
 document.getElementById("zoomframe").style.display = "none";
}
function transparenzerhoehen(thisid,t) {
 jetzt = new Date();
 if(!starttime)
 {
 starttime=jetzt.getTime();
 }
 else
 {
 vergangenezeit = jetzt.getTime()-starttime;
 }
 if(t < 100 && vergangenezeit < 1000)
{
t += 16;
transparenz(thisid,t);
zaehler = window.setTimeout("transparenzerhoehen('" + thisid + "'," + t + ")", 2);
}
 else
{
transparenz(thisid,100);
window.clearTimeout(zaehler);
starttime = 0;
vergangenezeit = 0;
}
}
function transparenz(thisid,transparency) {
 var ff = transparency / 100;
 document.getElementById(thisid).style.opacity = ff;
 document.getElementById(thisid).style.filter = "alpha(opacity=" + transparency + ")";
}
function glossar(obj, glossarid, glossarelid, lang) {
if(obj)
{
createGlossarBox(obj, glossarid);
fadein(glossarid);
sajax_content("get_content",glossarid,"getid=" + glossarelid,lang);
}
}
function createGlossarBox(obj, glossarid) {
if(!document.getElementById(glossarid))
{
var glossarspan = document.createElement("span");
var glossarspan_id = document.createAttribute("id");
glossarspan_id.nodeValue = glossarid;
var glossarspan_class = document.createAttribute("class");
glossarspan_class.nodeValue = "hint";
var glossarspan_onmousemove = document.createAttribute("onmousemove");
glossarspan_onmousemove.nodeValue = "fadeoutstop('" + glossarid + "');";
var glossarspan_onmouseout = document.createAttribute("onmouseout");
glossarspan_onmouseout.nodeValue = "breakit=0;fadeout('" + glossarid + "');";
glossarspan.setAttributeNode(glossarspan_class);
glossarspan.setAttributeNode(glossarspan_id);
glossarspan.setAttributeNode(glossarspan_onmouseout);
glossarspan.setAttributeNode(glossarspan_onmousemove);
obj.appendChild(glossarspan);
}
}
function suchbox() {
var obj = document.getElementById("suchbox");
var stext = "";
if(obj)
{
if(obj.style.display == "none" || !obj.style.display)
{
obj.style.display = "block";
if(document.getElementById("stext"))
{
if(document.getElementById("stext").value)
{
stext = document.getElementById("stext").value;
}
}
sajax_content("searchform","suchbox","stext=" + stext,"de");
}
else
{
obj.style.display = "none";
}
}
return false;
}
document.getElementsByClassName = function(cl) {
var retnode = [];
var myclass = new RegExp("\\b"+cl+"\\b");
var elem = this.getElementsByTagName("*");
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;
}
function selecttxt(obj) {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(obj);
range.select();
}
else if (window.getSelection) {
var range = document.createRange();
range.selectNode(obj);
window.getSelection().addRange(range);
}
}
function onloadfunctions() {
insertsnippetmarker();
}
function insertsnippetmarker() {
snippets = document.getElementsByClassName("codesnippet");
for(s=0;s<snippets.length;s++)
{
snippets[s].setAttribute("onclick","selecttxt(this);");
}
}

