/** Teil der TRADEXPERT WARENWIRTSCHAFT-Webseite Version 4.1 (c) 1998-2009 by SCENOS GbR. Alle Rechte vorbehalten. */ function sack() { this.requestFile = null; this.onCompletion = function() { ; }; this.onError = function() { ; }; this.method = 'GET'; this.daten = {}; this.response = null; this.responseXML = null; this.responseStatus = new Array(); this.setVar = function(v,w) { var that = this; that.daten[v] = w;}; this.runAJAX = function() { var that = this; var ajx = new ajax(); ajx.anfrage(that.requestFile,{cbfunktion:that.cb,cballein:false,cbthat:this,errfunktion:that.cb},that.daten);}; this.cb = function(obj) { var that = this; that.response = obj.x.responseText; that.responseXML = obj.x.responseXML; that.responseStatus = [obj.x.status,obj.x.statusText]; if(obj.x.status == "200") that.onCompletion(); else that.onError(); that.response = null; that.responseXML = null; that.responseStatus = [null,null];};} function sabi(add,t) { ajxanf('/funktionen/sabi.html?'+add);} function ajxanf(p1,p2,p3) { var ajx = new ajax(); ajx.anfrage(p1,p2,p3); } function ajax() { var stat = fstat('ajax',{objekte:new Array()}); this.anfrage = function(url,opt,daten) { if(undef(url) || url == "") return false; if(undef(daten) || typeof daten == 'boolean') { daten = {}; methode = 'GET'; } else methode = 'POST'; opt = mkobj(opt); var obj = _erstelle_objekt(); if(!obj.x) return; obj.x.open(methode,url,true); obj.x.setRequestHeader('User-Agent','XMLHTTP/1.0'); if(daten) obj.x.setRequestHeader('Content-type','application/x-www-form-urlencoded; charset=utf-8'); else obj.x.setRequestHeader('Content-type','text/html; charset=utf-8'); obj.x.setRequestHeader('SCE-request-type','ajax'); if(typeof opt['header'] == 'object') { for(var h in opt['header']) obj.x.setRequestHeader(h,opt['header'][h]);} var rueckgabe = this.rueckgabe; obj.x.onreadystatechange = function() { if(obj.x.readyState != 4) return; if(obj.x.status != 200 && obj.x.status != 304) { obj.verfuegbar = true; if(typeof opt['errfunktion'] == 'function') !undef(opt['cbthat']) ? bcall(opt['errfunktion'],opt['cbthat'],obj) : opt['errfunktion'](obj); return;} if(opt['cballein'] && typeof opt['cbfunktion'] == 'function') !undef(opt['cbthat']) ? bcall(opt['cbfunktion'],opt['cbthat'],obj) : opt['cbfunktion'](obj); else rueckgabe(obj,opt); obj.verfuegbar = true;} if(!undef(opt['clear'])) ajax.prototype.clear(opt['clear'] === true ? (opt['cbaktionpara'] ? opt['cbaktionpara']['ziel'] : false) : opt['clear']); if(!undef(opt['blank'])) { var tmp = $(opt['blank'] === true ? (opt['cbaktionpara'] ? opt['cbaktionpara']['ziel'] : false) : opt['blank']); if(tmp.nodeName) tmp.innerHTML = '';} if (obj.x.readyState == 4) return; if(typeof daten == 'object') { daten['zzz'] = new Date().getTime(); daten = Objekt.toQuery(daten);} else { daten += '&zzz=' + new Date().getTime();} obj.x.send(daten);}; this.rueckgabe = function(obj,opt) { if(!is_base(ajax.konfig)) ajax.konfig = {}; if(obj.x.getResponseHeader('SCEserver-ajax-cbfunktion')) eval("opt['cbfunktion'] = "+obj.x.getResponseHeader('SCEserver-ajax-cbfunktion')+";"); if(obj.x.getResponseHeader('SCEserver-ajax-cballein')) opt['cballein'] = obj.x.getResponseHeader('SCEserver-ajax-cballein'); if(typeof opt['cbfunktion'] == 'function') { if(opt['cballein'] === true) return opt['cbfunktion'](obj);} var aufruf = obj.x.getResponseHeader('SCEserver-ajax-steuerung-aufruf'); if(typeof opt['steuerung'] == 'object') { if(opt['steuerung']['ajaxaufruf'] != aufruf) return false;} var ret = {}; if(obj.x.getResponseHeader('SCEserver-ajax-inlinejs-pre')) { ajax.konfig.noaction = false; eval(obj.x.getResponseHeader('SCEserver-ajax-inlinejs-pre')); if(ajax.konfig.noaction) { ajax.konfig.noaction = false; return; }} var akt = obj.x.getResponseHeader('SCEserver-ajax-aktion'); var man = false; if(!akt && opt['cbaktion']) { var man = true; akt = opt['cbaktion']; } switch(akt) { case 'js': var js = obj.x.responseText; eval(js); break; case 'redirect': var loc = obj.x.responseText; if(loc == 'self') loc = self.location.href; else if(loc == 'parent') loc = parent.location.href; else if(loc == 'top') loc = top.location.href; top.location.href = loc; break; case 'msgbox': msgbox.setHtmlContent(obj.x.responseText); jsexec($('DHTMLSuite_modalBox_contentDiv')); var ropt = jsonobj(obj.x.getResponseHeader('SCEserver-ajax-msgbox')); if(ropt['fehler']) msgbox.setCssClassMessageBox('DHTMLSuite_modalDialog_contentDiv_fehler'); if(ropt['breite'] && ropt['hoehe']) msgbox.display(ropt['breite'],ropt['hoehe']); else msgbox.display(); break; case 'innerHTML': case '_innerHTML': if(!man && $(obj.x.getResponseHeader('SCEserver-ajax-ziel'))) ret['extparse'] = $(obj.x.getResponseHeader('SCEserver-ajax-ziel')); else if(man && $(opt['cbaktionpara']['ziel'])) ret['extparse'] = $(opt['cbaktionpara']['ziel']); else break; if(akt == '_innerHTML') $_html(ret['extparse'],obj.x.responseText); else $html(ret['extparse'],obj.x.responseText); jsexec(ret['extparse']); if(man && opt['cbaktionpara']['bg']) $s(ret['extparse']).background = opt['cbaktionpara']['bg']; else if(!man && obj.x.getResponseHeader('SCEserver-ajax-innerhtml-bg')) $s(ret['extparse']).background = obj.x.getResponseHeader('SCEserver-ajax-innerhtml-bg'); else if(typeof ajax.konfig.ziele != 'undefined') { if(ajax.konfig.ziele[ret['extparse'].id]) $s(ret['extparse']).background = ajax.konfig.ziele[ret['extparse'].id].bg;} break; case 'replace': case 'ersetzen': if(!man && $(obj.x.getResponseHeader('SCEserver-ajax-ziel'))) var ziel = $(obj.x.getResponseHeader('SCEserver-ajax-ziel')); else if(man && $(opt['cbaktionpara']['ziel'])) var ziel = $(opt['cbaktionpara']['ziel']); else break; switch(ziel.parentNode.nodeName) { case 'TABLE': var neu = document.createElement('TABLE'); break; case 'TBODY': case 'THEAD': case 'TFOOT': var neu1 = document.createElement('TABLE'); var neu = document.createElement(ziel.parentNode.nodeName); neu1.appendChild(neu); break; default: var neu = document.createElement('DIV');} neu.innerHTML = obj.x.responseText; while(neu.childNodes.length > 0) { var tmpnode = neu.childNodes[0]; ziel.parentNode.insertBefore(tmpnode,ziel); jsexec(tmpnode); } ziel.loeschen(); break; case 'nix': break; default: if(typeof opt['cbfunktion'] == 'function') ret = !undef(opt['cbthat']) ? bcall(opt['cbfunktion'],opt['cbthat'],obj) : opt['cbfunktion'](obj); break;} if(ret && ret['extparse'] && obj.x.getResponseHeader('SCEserver-ajax-extparse')) { if(typeof ext_init == 'function') ext_init($(ret['extparse'])); ret['formopt'] = ret['formopt'] || {}; ret['formopt']['header'] = ret['formopt']['header'] || {}; ret['formopt']['header']['sce-ajax-nopt'] = obj.x.getResponseHeader('SCEserver-ajax-nopt'); ajax.prototype.ajaxforms($(ret['extparse']),ret['formopt']);} if(obj.x.getResponseHeader('SCEserver-ajax-inlinejs-post')) { eval(obj.x.getResponseHeader('SCEserver-ajax-inlinejs-post'));} if(ajax.konfig.oncomplete) funcexec(ajax.konfig.oncomplete);}; this.XMLXSL2node = function(XMLdatei,XSLdatei,node,obj) { var xml = null; var xsl = null; var extparse = null; var _transform = function() { if(xml == null || xsl == null) return; if(window.ActiveXObject) $html(node,xml.transformNode(xsl)); else { var xslt = new XSLTProcessor(); xslt.importStylesheet(xsl); var frag = xslt.transformToFragment(xml,document); $html(node); $(node).appendChild(frag);} $(node).zeige(); $s(node).cursor = 'default'; if(typeof ext_init == 'function') ext_init($(node));}; var _onXMLload = function(obj) { xml = obj.x.responseXML; extparse = obj.x.getResponseHeader('SCEserver-ajax-extparse'); _transform();}; var _onXSLload = function(obj) { xsl = obj.x.responseXML; _transform();}; this.anfrage(XMLdatei,{'cbfunktion':_onXMLload,'cballein':true},(obj && obj['xmldaten']) ? obj['xmldaten'] : false); this.anfrage(XSLdatei,{'cbfunktion':_onXSLload,'cballein':true});}; var _objekte = [ function () {return new XMLHttpRequest()}, function () {return new ActiveXObject("Msxml2.XMLHTTP")}, function () {return new ActiveXObject("Msxml3.XMLHTTP")}, function () {return new ActiveXObject("Microsoft.XMLHTTP")} ]; var _erstelle_objekt = function () { var obj = new Object(); obj.x = null; for(var i = 0; i < stat.objekte.length; i++) { if(stat.objekte[i].verfuegbar) { obj = stat.objekte[i]; obj.verfuegbar = false; return obj;}} for(var i = 0; i < _objekte.length; i++) { try { obj.x = _objekte[i](); } catch (fehler) { continue; } break;} obj.verfuegbar = false; stat.objekte.push(obj); return obj;};} ajax.prototype.clear = function(div) { if(typeof ajax.konfig == 'undefined') ajax.konfig = {}; if(is_base(ajax.konfig.ziele)) if(ajax.konfig.ziele[div]) S(div).background = ajax.konfig.ziele[div].bg; if(S('ajaxwarte') && S(div)) S(div).innerHTML = S('ajaxwarte').innerHTML; if(is_base(ajax.konfig.onclear) && ajax.konfig.onclear[div]) funcexec(true,ajax.konfig.onclear[div],S(div));} function ajaxclear(div) { ajax.prototype.clear(div); } ajax.clear = ajax.prototype.clear; ajax.prototype.ajaxforms = function(obj,opt) { var fs = kinder(obj,'form',true); for(var i = 0, l = fs.length; i < l; i++) { f = fs[i]; $on(f,'submit',ajax.prototype.formsubmit); if(opt) f.ajax = opt; var e = f.elements; for(var j = 0, k = e.length; j < k; j++) { if(e[j].nodeName == 'INPUT' && e[j].type == 'submit') $on(e[j],'click',ajax.prototype.formsubmit);}}}; ajax.prototype.formsubmit = function() { var obj = this; if(obj.nodeName == 'FORM') { var form = obj; var btn = null; } else if(obj.nodeName == 'INPUT') { var form = obj.form; var btn = obj; } else return false; var para = $(form).toQuery(); if(btn) para += (para ? '&' : '')+btn.name+'='+encodeURIComponent(btn.value); var opt = {}; if(form.ajax) { if(form.ajax.header) opt['header'] = form.ajax.header;} var ajx = new ajax(); ajx.anfrage(form.getAttribute('action'),opt,para); if(form.ajax && typeof form.ajax.onsubmit == 'function') form.ajax.onsubmit(); msgbox.close(); return false;};