// shop verify
        var ident = "WU4981YJN71P";
        var build = "2.0.83";
        var merchantID = "";

        var spzzchn=  "*+-./_@";

        function safeData() {
                var a = escape(XML.putSource());
                for(var i=0;i<spzzchn.length;i++) a = replace(a,spzzchn.charAt(i),"%X"+i);
                self.name = replace(a,"%","_");
                };

        function loadData() {
                var b = replace(self.name,"_","%");
                for(var i=0;i<spzzchn.length;i++) b = replace(b,"%X"+i,spzzchn.charAt(i));
                b = unescape(b);
                b = b.substring(0,b.lastIndexOf("</XML>"));
                intXMLSPos = b.indexOf("<XML>");intXMLEPos = b.indexOf(">",intXMLSPos);
                b = b.substring(0,intXMLSPos) + b.substring(intXMLEPos + 1);
                XML = new clsObject("XML");
                XML.getSource(b);
                };

        function putSourceValue(item,value){
                return " " + item + "=\"" + value + "\"";
                };

        function replace(text,find,repl){
                var found = text.indexOf(find);
                var retVal= ""; var start = 0;
                while(found != -1){
                        retVal += text.substring(start,found) +repl;
                        start = found+find.length;
                        found = text.indexOf(find,start);
                        }
                retVal += text.substring(start,text.length);
                return retVal;
                };

        function identOTag(theSource,strCTagName,intCTagSPos,intCTagEPos){
                // find right first occurence of matching open Tag (OTag)
                var intOTagSPos = Math.max(theSource.indexOf("<" + strCTagName + ">"),
                        theSource.indexOf("<" + strCTagName + " "));
                var tmpCTagSPos = -1;var tmpCTagEPos = -1;
                while(theSource.indexOf("<" + strCTagName + ">", intOTagSPos + 1)>0
                        ||theSource.indexOf("<" + strCTagName + " ",intOTagSPos + 1)>0){
                        intOTagSPos = Math.max(theSource.indexOf("<" + strCTagName + ">", intOTagSPos + 1),
                                theSource.indexOf("<" + strCTagName + " ", intOTagSPos + 1));
                        };
                // identify length of OTag
                intOTagEPos = theSource.indexOf(">",intOTagSPos);
                // check if any corresponding CTags between this Tag and CTag
                if(theSource.indexOf("</" + strCTagName + ">", intOTagEPos)<intCTagSPos){
                        tmpCTagSPos = theSource.indexOf("</" + strCTagName + ">", intOTagEPos);
                        tmpCTagEPos = theSource.indexOf(">",tmpCTagSPos);
                        theSource = theSource.substring(0,intOTagSPos) + theSource.substring(tmpCTagEPos + 1);
                        intCTagSPos = theSource.lastIndexOf("</" + strCTagName + ">");
                        intCTagEPos = intCTagSPos + ("</" + strCTagName + ">").length;
                        intOTagSPos = identOTag(theSource,strCTagName,intCTagSPos,intCTagEPos)
                        }
                else{
                        return intOTagSPos;
                        };
                };

        function TClsObjectPutSource(){
                var parseThis, rString;
                rString = "<" + this.clsObjName;
                for(var attribute in this){
                        parseThis = true;
                        for(var i=0;i<this.exceptions.length;i++) if(attribute==this.exceptions[i]) parseThis = false;
                        if(parseThis) rString += putSourceValue(attribute,this[attribute]);
                        };
                rString += ">";
                if(this.childNodes.length>0){
                        for(var i=0;i<this.childNodes.length;i++) rString += this.childNodes[i].putSource();
                        }
                else rString += this.getValue();
                rString += "</" + this.clsObjName + ">";
                return(rString);
                };

        function TClsObjectPutValue(aValue){
                this.clsObjValue = aValue;
                };

        function TClsObjectGetValue(){
                return this.clsObjValue;
                };

        function TClsObjectAddObject(anObject){
                this.childNodes[this.childNodes.length] = anObject;
                };

        function TClsObjectAddMethod(aMethod,aMethodName){
                this[aMethodName] = aMethod;
                this.exceptions[this.exceptions.length] = aMethodName;
                }

        function TClsObjectGetFirstItem(aName){
                for(var i=0;i<this.childNodes.length;i++){
                        if(this.childNodes[i].clsObjName==aName){
                                this.itemIndex = new Array(i,aName);
                                return this.childNodes[i];
                                };
                        };
                return null;
                };

        function TClsObjectGetNextItem(){
                for(var i=this.itemIndex[0] + 1;i<this.childNodes.length;i++){
                        if(this.childNodes[i].clsObjName==this.itemIndex[1]){
                                this.itemIndex = new Array(i,this.itemIndex[1]);
                                return this.childNodes[i];
                                };
                        };
                return null;
                };

        function TClsObjectDeleteItems(aName){
                tmpChildNodes = new Array();
                for(var i=0;i<this.childNodes.length;i++){
                        if(this.childNodes[i].clsObjName!=aName){
                                tmpChildNodes[tmpChildNodes.length] = this.childNodes[i];
                                };
                        };
                this.childNodes = tmpChildNodes;
                };

        function TClsObjectGetSource(theSource){
                while(theSource.lastIndexOf("</")>-1){
                        // identify last closing Tag Posistion (CTag) in theSource
                        var intCTagSPos = theSource.lastIndexOf("</");
                        // do if any objects found
                        if(intCTagSPos>-1){
                                // identify closing bracket of corresponding CTag
                                var intCTagEPos = theSource.indexOf(">",intCTagSPos);
                                // identify the corresponding Tag
                                var strCTagName = theSource.substring(intCTagSPos + 2, intCTagEPos);
                                // find matching open Tag (OTag)
                                var intOTagSPos = identOTag(theSource,strCTagName,intCTagSPos,intCTagEPos);
                                // identify length of OTag
                                var intOTagEPos = theSource.indexOf(">",intOTagSPos);
                                // safe childNodes in temprorary array
                                var tmpChildNodes = this.childNodes;
                                // clear childNode array
                                this.childNodes = new Array();
                                // add new Node
                                this.childNodes[0] = new clsObject(strCTagName);
                                // transfer code to new Node
                                this.childNodes[0].getSource(theSource.substring(intOTagEPos + 1, intCTagSPos));
                                // add old childNodes to childNodeArray
                                for(var i=0;i<tmpChildNodes.length;i++){
                                        this.childNodes[this.childNodes.length] = tmpChildNodes[i];
                                        };
                                // identify attribute string
                                var strAttributes  = theSource.substring(intOTagSPos + strCTagName.length + 1, intOTagEPos);
                                // delete pre and post blanks
                                if(strAttributes.length>0){
                                        while(strAttributes.charAt(0)==" ") strAttributes = strAttributes.substring(1);
                                        while(strAttributes.charAt(strAttributes.length - 1)==" ") strAttributes = strAttributes.substring(0,strAttributes.length - 1);
                                        // replace blanks in values by escape equivalent
                                        var intLastValueSPos = strAttributes.indexOf('="');
                                        var intLastValueEPos = -1;
                                        if(intLastValueSPos>-1) var doReplace = true
                                        else var doReplace = false;
                                        while(doReplace){
                                                intLastValueEPos = strAttributes.indexOf('"',intLastValueSPos + 2);
                                                strAttributes = strAttributes.substring(0,intLastValueSPos)
                                                        + replace(strAttributes.substring(intLastValueSPos,intLastValueEPos)," ","%20")
                                                        + strAttributes.substring(intLastValueEPos);
                                                intLastValueSPos = strAttributes.indexOf('="',intLastValueSPos + 1)
                                                if(intLastValueSPos==-1) doReplace = false;
                                                };
                                        // split attributes by left over blanks
                                        var arrAttributes = strAttributes.split(" ");
                                        // for all attributes add to object
                                        for(var i=0;i<arrAttributes.length;i++) this.childNodes[0][arrAttributes[i].split("=")[0]] = unescape(replace(arrAttributes[i].split("=")[1],'"',""));
                                        };
                                // delete Node code from source
                                theSource = theSource.substring(0,intOTagSPos) + theSource.substring(intCTagEPos + 1);
                                };
                        };
                if(theSource!=""&&theSource!=null) this.clsObjValue = theSource;
                };

        function clsObject(clsObjName){
                this.clsObjName        = clsObjName
                this.clsObjValue = "";
                this.exceptions        = new Array("clsObjName","clsObjValue","exceptions","childNodes","putValue","getValue","addObject","addMethod","putSource","getSource","itemIndex","getFirstItem","getNextItem","deleteItems");
                this.childNodes        = new Array();
                this.putValue                = TClsObjectPutValue;
                this.getValue                = TClsObjectGetValue;
                this.addObject                = TClsObjectAddObject;
                this.addMethod                = TClsObjectAddMethod;
                this.putSource         = TClsObjectPutSource;
                this.getSource         = TClsObjectGetSource;
                this.itemIndex                = new Array();
                this.getFirstItem = TClsObjectGetFirstItem;
                this.getNextItem = TClsObjectGetNextItem;
                this.deleteItems = TClsObjectDeleteItems;
                };

        function setup(){
                XML = new clsObject("XML");
                // setup XML childNodes
                XML.addObject(new clsObject("Order"));
                XML.addObject(new clsObject("Config"));
                // setup Order childNodes
                myOrder = XML.getFirstItem("Order");
                        myOrder.addObject(new clsObject("OrderHeader"));
                        myOrder.addObject(new clsObject("OrderBody"));
                        myOrder.addObject(new clsObject("OrderSummary"));
                // setup Config childNodes
                myConfig = XML.getFirstItem("Config");
                        myConfig.addObject(new clsObject("SearchEngine"));
                        myConfig.addObject(new clsObject("QueryStringData"));
                        myConfig.addObject(new clsObject("NavigationIndex"));
                        myConfig.addObject(new clsObject("Logdata"));
                        // setup Config attributes
                        myConfig.taxarea = 0;
                        myConfig.dataEntered = "false";
                        myConfig.ident = ident;
                // setup SearchEngine attributes
                mySearchEngine = myConfig.getFirstItem("SearchEngine");
                        mySearchEngine.term = null;
                        mySearchEngine.mode = 0;
                        mySearchEngine.maxPrice = -1;
                        mySearchEngine.init = "true";
                // setup NavigationIndex attributes
                myNavigationIndex = myConfig.getFirstItem("NavigationIndex");
                        myNavigationIndex.putValue("null");
                // setup OrderHeader childNodes
                myOrderHeader = myOrder.getFirstItem("OrderHeader");
                        myOrderHeader.addObject(new clsObject("Reference"));
                        myOrderHeader.getFirstItem("Reference").putValue("Das ist ein Referenztext");
                        myOrderHeader.addObject(new clsObject("BillTo"));
                        myOrderHeader.addObject(new clsObject("ShipTo"));
                        myOrderHeader.addObject(new clsObject("Currency"));
                        myOrderHeader.addObject(new clsObject("PaymentMethod"));
                        myOrderHeader.addObject(new clsObject("DeliveryMethod"));
                        myOrderHeader.addObject(new clsObject("Profit"));
                        myOrderHeader.addObject(new clsObject("TotalWeight"));
                        myOrderHeader.addObject(new clsObject("VATFree"));
                        myOrderHeader.addObject(new clsObject("TaxableAmount"));
                        myOrderHeader.addObject(new clsObject("Messages"));
                        // setup OrderHeader Attribute
                        myOrderHeader.project="SmartStore 2000 Express";
                // setup BillTo childNodes
                myBillTo = myOrderHeader.getFirstItem("BillTo");
                        myBillTo.addObject(new clsObject("Contact"));
                        // setup BillTo Attributes
                        myBillTo.shipToDiffers = false;
                // setup Contact childNodes
                myContact = myBillTo.getFirstItem("Contact");
                        myContact.addObject(new clsObject("Address"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        // setup Address Attributes
                        myAddress = myContact.getFirstItem("Address");
                                myAddress.taxregion = taxarea[parseInt(XML.getFirstItem("Config").taxarea)][0];
                        // setup TelephoneNumber Attributes
                        myTelephoneNumber = myContact.getFirstItem("TelephoneNumber");
                                myTelephoneNumber.type = "business";
                        myTelephoneNumber = myContact.getNextItem("TelephoneNumber");
                                myTelephoneNumber.type = "mobile";
                        myTelephoneNumber = myContact.getNextItem("TelephoneNumber");
                                myTelephoneNumber.type = "fax";
                // setup ShipTo childNodes
                myShipTo = myOrderHeader.getFirstItem("ShipTo");
                        myShipTo.addObject(new clsObject("Contact"));
                // setup Contact childNodes
                myContact = myShipTo.getFirstItem("Contact");
                        myContact.addObject(new clsObject("Address"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        myContact.addObject(new clsObject("TelephoneNumber"));
                        // setup TelephoneNumber Attributes
                        myTelephoneNumber = myContact.getFirstItem("TelephoneNumber");
                                myTelephoneNumber.type = "business";
                        myTelephoneNumber = myContact.getNextItem("TelephoneNumber");
                                myTelephoneNumber.type = "mobile";
                        myTelephoneNumber = myContact.getNextItem("TelephoneNumber");
                                myTelephoneNumber.type = "fax";
                // setup PaymentMethod childNodes
                myPaymentMethod = myOrderHeader.getFirstItem("PaymentMethod");
                        myPaymentMethod.addObject(new clsObject("Charge"));
                        myPaymentMethod.addObject(new clsObject("BankDetails"));
                        myPaymentMethod.addObject(new clsObject("CreditCardDetails"));
                        myPaymentMethod.addObject(new clsObject("Comment"));
                // setup DeliveryMethod childNodes
                myDeliveryMethod = myOrderHeader.getFirstItem("DeliveryMethod");
                        myDeliveryMethod.addObject(new clsObject("Tax"));
                        myDeliveryMethod.addObject(new clsObject("FreightOnBoard"));
                        myDeliveryMethod.addObject(new clsObject("Charge"));
                // setup OrderBody childNodes
                myOrderBody = myOrder.getFirstItem("OrderBody");
                        myOrderBody.addObject(new clsObject("OrderLines"));
                // setup OrderLines Attributes
                myOrderLines = myOrderBody.getFirstItem("OrderLines");
                        myOrderLines.count="0";
                // setup OrderSummary childNodes
                myOrderSummary = myOrder.getFirstItem("OrderSummary");
                        myOrderSummary.addObject(new clsObject("TotalDiscount"));
                        myOrderSummary.addObject(new clsObject("LinesTotal"));
                        myOrderSummary.addObject(new clsObject("Freight"));
                        myOrderSummary.addObject(new clsObject("PaymentCharge"));
                        myOrderSummary.addObject(new clsObject("TotalPrice"));
                safeData();
        };

////////////////////////////////////////////////////////////////////////////////////////////////////////
        function TFormatCurrencyValue(aNumber, objCurrency){
                aNumber = aNumber * Math.pow(10,objCurrency.numOfAftDec + 1);
                aNumber = parseInt(aNumber) / 10;
                aNumber = Math.round(aNumber);
                aNumber = aNumber / Math.pow(10,objCurrency.numOfAftDec);
                return(aNumber)
                };
// 12031
        function TFormatCurrency(aNumber, objCurrency){
                aNumber = aNumber / objCurrency.numRefCurrRate * objCurrency.numCurrRate;
                if(aNumber>=0) currValue = objCurrency.currPosValue
                else{
                        currValue = objCurrency.currNegValue;
                        aNumber = Math.abs(aNumber);
                        };
                aNumber = TFormatCurrencyValue(aNumber, objCurrency);
                var aText = "";
                if(aNumber.toString().indexOf(".")!=-1){
                        var strBeforeDelimiter = aNumber.toString().substring(0,aNumber.toString().indexOf("."));
                        var strAfterDelimiter = aNumber.toString().substring(aNumber.toString().indexOf(".") + 1);
                        if(strBeforeDelimiter) aText += strBeforeDelimiter;
                        aText += objCurrency.charDecDelimiter;
                        if(strAfterDelimiter) aText += strAfterDelimiter;
                        }
                else{
                        aText = aNumber.toString();
                        };
                if(aText.lastIndexOf(objCurrency.charDecDelimiter)==-1){
                        var numDecAdd = "";
                        for(var i=0;i<objCurrency.numOfAftDec;i++) numDecAdd += "0";
                        if(numDecAdd!="") aText = aText + objCurrency.charDecDelimiter + numDecAdd;
                        }
                else{
                        for(var i=0;i<objCurrency.numOfAftDec;i++){
                                if(aText.lastIndexOf(objCurrency.charDecDelimiter)==aText.length - ( objCurrency.numOfAftDec - i )){
                                        var numDecAdd = "";
                                        for(var j=0;j<(i+1);j++) numDecAdd += "0";
                                        aText = aText + numDecAdd;
                                        break;
                                        };
                                };
                        };
                if(objCurrency.numOfAftDec!=0){
                        var amountBeforeDec = aText.substring(0,aText.indexOf(objCurrency.charDecDelimiter));
                        var amountAfterDec = aText.substring(aText.indexOf(objCurrency.charDecDelimiter));
                        }
                else{
                        var amountBeforeDec = aText; var amountAfterDec = "";
                        };
                if(amountBeforeDec=="") amountBeforeDec = "0";
                var tmpValue = "";
                for(i=0;i<amountBeforeDec.length;i++){
                        if( ( i % objCurrency.numGroupDelimiter == 0 ) && ( i ) != 0 ) tmpValue = objCurrency.charGroupDelimiter + tmpValue;
                        tmpValue = amountBeforeDec.charAt(amountBeforeDec.length - 1 - i) + tmpValue;
                        };
                if(tmpValue.charAt(tmpValue.length - 1) == ".") tmpValue = tmpValue.substring(0,tmpValue.length-1);
                if(tmpValue.charAt(0) == objCurrency.charGroupDelimiter) tmpValue = tmpValue.substring(1);
                amountBeforeDec = tmpValue;
                var strBeforeCurrSymbol = currValue.substring(0,currValue.indexOf("&SMcurr;"));
                var strAfterCurrSymbol = currValue.substring(currValue.indexOf("&SMcurr;") + "&SMcurr;".length);
                currValue = "";
                if(strBeforeCurrSymbol) currValue = strBeforeCurrSymbol;
                currValue += objCurrency.charCurrency;
                if(strAfterCurrSymbol) currValue += strAfterCurrSymbol;
                var strBeforeAmount = currValue.substring(0,currValue.indexOf("&SMamount;"));
                var strAfterAmount = currValue.substring(currValue.indexOf("&SMamount;") + "&SMamount;".length);
                aText = "";
                if(strBeforeAmount) aText += strBeforeAmount;
                aText += amountBeforeDec + amountAfterDec;
                if(strAfterAmount) aText += strAfterAmount;
                return aText;
                };
// 12032
        function TFormatNumbers(aNumber, objNumber){
                if(aNumber>=0) currValue = objNumber.currPosValue
                else{
                        currValue = objNumber.currNegValue;
                        aNumber = Math.abs(aNumber);
                        };
                aNumber = TFormatCurrencyValue(aNumber, objNumber);
                var aText = "";
                if(aNumber.toString().indexOf(".")!=-1){
                        var strBeforeDelimiter = aNumber.toString().substring(0,aNumber.toString().indexOf("."));
                        var strAfterDelimiter = aNumber.toString().substring(aNumber.toString().indexOf(".") + 1);
                        if(strBeforeDelimiter) aText += strBeforeDelimiter;
                        aText += objNumber.charDecDelimiter;
                        if(strAfterDelimiter) aText += strAfterDelimiter;
                        }
                else{
                        aText = aNumber.toString();
                        };
                if(aText.lastIndexOf(objNumber.charDecDelimiter)==-1){
                        var numDecAdd = "";
                        for(var i=0;i<objNumber.numOfAftDec;i++) numDecAdd += "0";
                        if(numDecAdd!="") aText = aText + objNumber.charDecDelimiter + numDecAdd;
                        }
                else{
                        for(var i=0;i<objNumber.numOfAftDec;i++){
                                if(aText.lastIndexOf(objNumber.charDecDelimiter)==aText.length - ( objNumber.numOfAftDec - i )){
                                        var numDecAdd = "";
                                        for(var j=0;j<(i+1);j++) numDecAdd += "0";
                                        aText = aText + numDecAdd;
                                        break;
                                        };
                                };
                        };
                var amountBeforeDec = aText.substring(0,aText.indexOf(objNumber.charDecDelimiter));
                var amountAfterDec = aText.substring(aText.indexOf(objNumber.charDecDelimiter));
                var tmpValue = "";
                for(i=0;i<amountBeforeDec.length;i++){
                        if( ( i % objNumber.numGroupDelimiter == 0 ) && ( i ) != 0 ) {
                                tmpValue = objNumber.charGroupDelimiter + tmpValue;
                                };
                        tmpValue = amountBeforeDec.charAt(amountBeforeDec.length - 1 - i) + tmpValue;
                        };
                if(tmpValue.charAt(tmpValue.length - 1) == ".") tmpValue = tmpValue.substring(0,tmpValue.length-1);
                if(tmpValue.charAt(0) == objNumber.charGroupDelimiter) tmpValue = tmpValue.substring(1);
                amountBeforeDec = tmpValue;
                var strBeforeCurrSymbol = currValue.substring(0,currValue.indexOf("&SMsymb;"));
                var strAfterCurrSymbol = currValue.substring(currValue.indexOf("&SMsymb;") + "&SMsymb;".length);
                currValue = "";
                if(strBeforeCurrSymbol) currValue = strBeforeCurrSymbol;
                currValue += objNumber.charSymbol;
                if(strAfterCurrSymbol) currValue += strAfterCurrSymbol;
                var strBeforeAmount = currValue.substring(0,currValue.indexOf("&SMamount;"));
                var strAfterAmount = currValue.substring(currValue.indexOf("&SMamount;") + "&SMamount;".length);
                aText = "";
                if(strBeforeAmount) aText += strBeforeAmount;
                aText += amountBeforeDec + amountAfterDec;
                if(strAfterAmount) aText += strAfterAmount;
                return aText;
                };

   var boolPriceTaxIncl    = true;         // Brutto Ja/Nein            //
   var boolDisplTaxIncl    = true;        // Brutto darstellen Ja/Nein //
        var useSSLforOrder = false;

// Taxarea
        var taxarea = new Array();

                taxarea[0] = new Array("Ihr Land",0,16,7,9.8,5);


        function TCurrency(charCurrency,numCurrRate,numRefCurrRate,numOfAftDec,charDecDelimiter,numGroupDelimiter,charGroupDelimiter,currPosValue,currNegValue){
                this.charCurrency = charCurrency;
                this.numCurrRate = numCurrRate;
                this.numRefCurrRate = numRefCurrRate;
                this.numOfAftDec = numOfAftDec;
                this.charDecDelimiter = charDecDelimiter;
                this.numGroupDelimiter = numGroupDelimiter;
                this.charGroupDelimiter = charGroupDelimiter;
                this.currPosValue = currPosValue;
                this.currNegValue = currNegValue;
                };

        var objLeadCurrency = new TCurrency(
                "DEM",
                1.95583,
                1.95583,
                2,
                ",",
                3,
                ".",
                "&SMcurr; &SMamount;",
                "&SMcurr; -&SMamount;");

        var objPriCurrency = new TCurrency(
                "DEM",
                1.95583,
                1.95583,
                2,
                ",",
                3,
                ".",
                "&SMcurr; &SMamount;",
                "&SMcurr; -&SMamount;");

        var objSecCurrency = new TCurrency(
                "EUR",
                1,
                1.95583,
                2,
                ",",
                3,
                ".",
                "&SMcurr; &SMamount;",
                "&SMcurr; -&SMamount;");

        var charSecCurrDelimiter = "<br>&nbsp;";
        var boolDisplSecCurr = true;

        function TWeight(charSymbol,numOfAftDec,charDecDelimiter,numGroupDelimiter,charGroupDelimiter,currPosValue,currNegValue){
                this.charSymbol = charSymbol;
                this.numOfAftDec = numOfAftDec;
                this.charDecDelimiter = charDecDelimiter;
                this.numGroupDelimiter = numGroupDelimiter;
                this.charGroupDelimiter = charGroupDelimiter;
                this.currPosValue = currPosValue;
                this.currNegValue = currNegValue;
                };

        var objWeight = new TWeight(
                "g",
                2,
                ",",
                3,
                ".",
                "&SMamount; &SMsymb;",
                "");

        var minOrderValue = 8;

        function requestSSL(strAddress){
                safeData();
                var myPath = location.pathname.substring(0,location.pathname.lastIndexOf("/"));
                if(location.protocol!="file:"){
                        if(useSSLforOrder) location.href = "https://" + location.hostname + myPath + "\\" + strAddress
                        else location.href=strAddress;
                        }
                else location.href=strAddress;
                };

        function valNumber(aValue,minValue,aMessage){
                var rValue = ""; var setMsg = false;
                for(var i=0;i<aValue.length;i++){
                        if(isNaN(aValue.charAt(i))){
                                if(rValue==""){ rValue=minValue; setMsg = true; };
                                if(parseInt(rValue)<parseInt(minValue)){ rValue=minValue; setMsg = true; };
                                if(setMsg&&aMessage!=""&&aMessage!=null) alert(aMessage);
                                return rValue;
                                }
                        else rValue += aValue.charAt(i);
                        };
                if(rValue==""){ rValue=minValue; setMsg = true; }
                else if(parseInt(rValue)<parseInt(minValue)){ rValue=minValue; setMsg = true; };
                if(setMsg&&aMessage!=""&&aMessage!=null) alert(aMessage);
                return rValue;
                };

        var XML = new clsObject("XML")
        loadData();
        if(XML.getFirstItem("Order")==null) setup()
        else{
                if(XML.getFirstItem("Config").ident!=ident) setup();
                };
