//************************************************************ // Purpose : // Filename : // Author : Ashvin Jiawon & Jody de Vries // Date : // Document : //************************************************************ var siteId = 35789 var aryUser = new Array("email_login","password","email","lastname","initials","prefix","firstname","telephone","mobilenr"); var aryUserXml = new Array("EMAIL_LOGIN","PASS","EMAIL_1","LASTNAME","PRENAME","PREFIX","FIRSTNAME","PHONE_1","PHONE_2"); var aryAddress = new Array("addid","company","address","housenr","houseaddition","postalcode","city","country","telephone","fax"); var aryAddressXml = new Array("ADDID","COMPANY","ADDRESS","HOUSENUMBER","HOUSEADDITION","POSTALCODE","CITY","COUNTRYID","PHONE","FAX"); jQuery(document).ready(function() { jQuery.validator.addMethod('checkUserName', function (value,element, param) { return validateLoginName(value); },'User allready exists'); jQuery.extend(jQuery.validator.messages, { required: "Dit veld is verplicht.", email: "Gebruik aub uw email.", number: "Gerbuik aub een nummer." }); }); //Validates user with ajax request var validateLoginName = function(value) { if(siteId > 0) { var requestUrl = '/pages/popups_frames/ajaxUserCheck.asp?username='+value+'&siteid='+siteId + '&token=' + javascriptToken; //Do the ajax var return_value= jQuery.ajax({ type: "GET", url: requestUrl, async: false }).responseText; if(return_value == "0") return true; else return false; } else { return false; } } function OrderPipeLine() { OrderPipeLine.prototype.Basket_Show = function(onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'basket'); objLipu.SetParam('action', 'show'); objLipu.SetParam('token', javascriptToken); objLipu.SetParam('articleid', ''); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Basket_Add = function(productid, sourceid, orderquantity, sourcedata, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'basket'); objLipu.SetParam('action', 'add'); objLipu.SetParam('token', javascriptToken); objLipu.SetParam('articleid', ''); objLipu.SetParam('productid', productid); objLipu.SetParam('orderquantity', orderquantity); objLipu.SetParam('sourceid', sourceid); objLipu.SetParam('sourcedata', sourcedata); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Basket_Delete = function(orderItemId, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'basket'); objLipu.SetParam('action', 'delete'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('orderitemid', orderItemId); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Basket_Update = function(orderItemId,orderQuantity, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'basket'); objLipu.SetParam('action', 'update'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('orderitemid', orderItemId); objLipu.SetParam('orderquantity', orderQuantity); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Personal_Update = function(userXml,onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'personal'); objLipu.SetParam('action', 'update'); objLipu.SetParam('token', javascriptToken); objLipu.SetParam('articleid', ''); objLipu.SetParam('userXml', userXml); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Personal_Login = function(loginName,passWord,onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'personal'); objLipu.SetParam('action', 'login'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('loginName', loginName); objLipu.SetParam('passWord', passWord); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Delivery_Update = function(delivery_company, delivery_address, delivery_housenumber, delivery_houseaddition, delivery_postalcode, delivery_city, delivery_country, invoice_company, invoice_address, invoice_housenumber, invoice_houseaddition, invoice_postalcode, invoice_city, invoice_country, remarks, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'delivery'); objLipu.SetParam('action', 'update'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('delivery_company', delivery_company); objLipu.SetParam('delivery_address', delivery_address); objLipu.SetParam('delivery_housenumber', delivery_housenumber); objLipu.SetParam('delivery_houseaddition', delivery_houseaddition); objLipu.SetParam('delivery_postalcode', delivery_postalcode); objLipu.SetParam('delivery_city', delivery_city); objLipu.SetParam('delivery_country', delivery_country); objLipu.SetParam('invoice_company', invoice_company); objLipu.SetParam('invoice_address', invoice_address); objLipu.SetParam('invoice_housenumber', invoice_housenumber); objLipu.SetParam('invoice_houseaddition', invoice_houseaddition); objLipu.SetParam('invoice_postalcode', invoice_postalcode); objLipu.SetParam('invoice_city', invoice_city); objLipu.SetParam('invoice_country', invoice_country); objLipu.SetParam('remarks', remarks); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Payment_Update = function(paymentmethodid, issuer, bankaccountnumber, bankaccountholder, bankaccountcity, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'payment'); objLipu.SetParam('action', 'update'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('paymentmethodid', paymentmethodid); objLipu.SetParam('issuer', issuer); objLipu.SetParam('bankaccountnumber', bankaccountnumber); objLipu.SetParam('bankaccountholder', bankaccountholder); objLipu.SetParam('bankaccountcity', bankaccountcity); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Payment_Start = function(paymentmethodid, issuer, bankaccountnumber, bankaccountholder, bankaccountcity, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'payment'); objLipu.SetParam('action', 'start'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('paymentmethodid', paymentmethodid); objLipu.SetParam('issuer', issuer); objLipu.SetParam('bankaccountnumber', bankaccountnumber); objLipu.SetParam('bankaccountholder', bankaccountholder); objLipu.SetParam('bankaccountcity', bankaccountcity); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Payment_End = function(paymentmethodid, issuer, bankaccountnumber, bankaccountholder, bankaccountcity, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'payment'); objLipu.SetParam('action', 'end'); objLipu.SetParam('token', javascriptToken ); objLipu.SetParam('articleid', ''); objLipu.SetParam('paymentmethodid', paymentmethodid); objLipu.SetParam('issuer', issuer); objLipu.SetParam('bankaccountnumber', bankaccountnumber); objLipu.SetParam('bankaccountholder', bankaccountholder); objLipu.SetParam('bankaccountcity', bankaccountcity); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } OrderPipeLine.prototype.Payment_Check = function(token, articleid, onComplete) { var objLipu = new LIPUHandler(); objLipu.Plugin = 'ShoppingCart'; objLipu.SetParam('state', 'payment'); objLipu.SetParam('action', 'check'); objLipu.SetParam('token', javascriptToken); objLipu.SetParam('articleid', ''); //It's an ajax call so no need to output html objLipu.SetParam('outputhtml', 'false'); objLipu.ProcessInput(onComplete); } } // //Example // var objOrderPipeLine = new OrderPipeLine(); // //Validation for the loginfrm var validateLogin = function() { var blnValid = false; blnValid = jQuery('#loginfrm').validate( { rules: { username: {required: true,email: true}, password: {required: true} }, messages: { username: {email: "Gebruik aub uw email."} }, // the errorPlacement has to take the table layout into account errorPlacement: function(error, element) { if ( element.is(":radio") ) error.appendTo( element.parent().next().next() ); else if ( element.is(":checkbox") ) error.appendTo ( element.next() ); else error.appendTo( element.parent().next() ); }, success: function(label) { // set   as text for IE label.html(" ").addClass("checked"); } }).form(); return blnValid; } //Validation for frm part 1 var validateRegPart1 = function() { var blnValid = false; blnValid = jQuery('#registrationfrm_part1').validate( { rules: { lastname_p1: {required:true}, initials_p1: {required:true}, email_p1: {required: true,email: true,checkUserName: true}, retype_email_p1: {required: true,equalTo: "#email_p1"} }, messages: { email_p1: {checkUserName: "Dit Email adres bestaat al."}, retype_email_p1: {equalTo: "Vul dezelfde Email in als hierboven."} }, // the errorPlacement has to take the table layout into account errorPlacement: function(error, element) { if ( element.is(":radio") ) error.appendTo( element.parent().next().next() ); else if ( element.is(":checkbox") ) error.appendTo ( element.next() ); else error.appendTo( element.parent().next() ); }, success: function(label) { // set   as text for IE label.html(" ").addClass("checked"); } }).form(); return blnValid; } //Validation for frm part 2 var validateRegPart2 = function() { var blnValid = false; var blnValid_sec = false; var blnValid_third = false; blnValid = jQuery('#registrationfrm_part2_personal').validate( { rules: { email_login: {required:true,email: true}, email: {required:true,email: true,checkUserName: true}, password: {required:true}, password_2: {required:true,equalTo: "#password"}, lastname: {required:true}, initials: {required:true}, gender: {required:true}, telephone: {required:true} }, messages: { email: {checkUserName: "Dit Email adres bestaat al."}, password_2: {equalTo: "Vul dezelfde wachtwoord in als hierboven."} }, // the errorPlacement has to take the table layout into account errorPlacement: function(error, element) { if ( element.is(":radio") ) error.appendTo( element.parent().parent().parent().next() ); else if ( element.is(":checkbox") ) error.appendTo ( element.next() ); else error.appendTo( element.parent().next() ); }, success: function(label) { // set   as text for IE label.html(" ").addClass("checked"); } }).form(); blnValid_sec = jQuery('#registrationfrm_part2_delivery').validate( { rules: { delivery_address: {required:true}, delivery_housenr: {required:true,number:true}, delivery_postalcode: {required:true}, delivery_city: {required:true} //delivery_country: {required:true} }, messages: { }, // the errorPlacement has to take the table layout into account errorPlacement: function(error, element) { if ( element.is(":radio") ) error.appendTo( element.parent().next().next() ); else if ( element.is(":checkbox") ) error.appendTo ( element.next() ); else error.appendTo( element.parent().next() ); }, success: function(label) { // set   as text for IE label.html(" ").addClass("checked"); } }).form(); if(jQuery("#useinvoiceaddress").attr("checked")) { blnValid_third = jQuery('#registrationfrm_part2_invoice').validate( { rules: { invoice_address: {required:true}, invoice_housenr: {required:true,number:true}, invoice_postalcode: {required:true}, invoice_city: {required:true} //invoice_country: {required:true} }, messages: { }, // the errorPlacement has to take the table layout into account errorPlacement: function(error, element) { if ( element.is(":radio") ) error.appendTo( element.parent().next().next() ); else if ( element.is(":checkbox") ) error.appendTo ( element.next() ); else error.appendTo( element.parent().next() ); }, success: function(label) { // set   as text for IE label.html(" ").addClass("checked"); } }).form(); } else { blnValid_third = true; } return blnValid && blnValid_sec && blnValid_third; } var noticeMsg = function(hasNotice) { if(hasNotice) { jQuery("#errorMsg").hide(); jQuery("#noticeMsg").show(); } else { jQuery("#noticeMsg").hide(); } } var errorMsg = function(hasError,errorCode) { if(hasError) { jQuery("#noticeMsg").hide(); jQuery("#errorCode").html(errorCode); jQuery("#errorMsg").show(); } else { jQuery("#errorMsg").hide(); } } var invoiceChecked = function() { if(jQuery("#useinvoiceaddress").attr("checked")) { jQuery("#invoicetable").show(); } else { jQuery("#invoicetable").hide(); } } var registrationStep = 1; function Registrate() { if(registrationStep == 1) { RegistratePartOne(); } else { RegistratePartTwo(false); } } function RegistratePartOne() { var ok = validateRegPart1(); if(ok) { registrationStep = 2; //Do some transfers jQuery("#lastname").val(jQuery("#lastname_p1").val()); jQuery("#prefix").val(jQuery("#prefix_p1").val()); jQuery("#initials").val(jQuery("#initials_p1").val()); jQuery("#email_set").html(jQuery("#email_p1").val()); jQuery("#email").val(jQuery("#email_p1").val()); //Disable some forms jQuery("#login").hide(); jQuery("#reg1").hide(); jQuery("#reg2").show(); } } function RegistrateBackToOne() { jQuery("#login").show(); jQuery("#reg1").show(); jQuery("#reg2").hide(); } function RegistratePartTwo(userReloadAdterFinish) { var ok = validateRegPart2(); if(ok) { jQuery.blockUI({ showOverlay:true, message: "Een moment geduld aub." }); //First copy normal number to mobile is mobile does not exist if(jQuery("#mobilenr").val() == "") { jQuery("#mobilenr").val(jQuery("#telephone").val()); } var xml = SetUserXml(); var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Personal_Update(xml,function(lipuObj) { if(lipuObj.ErrorCode == '100') { errorMsg(false,lipuObj.ErrorCode); noticeMsg(true); //jQuery('#forward').show(); jQuery('#save').hide(); if(userReloadAdterFinish) { location.href = location.href; } else { //jQuery.unblockUI(); location.href = jQuery("#forward").attr("href"); } } else { errorMsg(true,lipuObj.ErrorCode); jQuery.unblockUI(); } }); } } function Login() { var ok = validateLogin(); jQuery('#loginMsg').hide(); if(ok) { //SEND TO URL jQuery.blockUI({ showOverlay:true, message: "Een moment geduld aub." }); var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Personal_Login(jQuery('#username').val(),jQuery('#password').val(),function(lipuObj) { if(lipuObj.ErrorCode == '100') { errorMsg(false,lipuObj.ErrorCode); if(jQuery("#savepass").attr("checked")) { jQuery.cookie("shoppingCartCookieUser", jQuery('#username').val(), { expires: 20 }); jQuery.cookie("shoppingCartCookiePass", jQuery('#password').val(), { expires: 20 }); } else { jQuery.cookie("shoppingCartCookieUser", null); jQuery.cookie("shoppingCartCookiePass", null); } document.location.href = document.location.href; //jQuery.unblockUI(); } else if(lipuObj.ErrorCode == '433') { jQuery('#loginMsg').show(); jQuery.unblockUI(); } else { errorMsg(true,lipuObj.ErrorCode); jQuery.unblockUI(); } }); } } function ShopOn() { parent.location.href= ''; } function RemoveOrderItem(orderItemId) { jQuery.blockUI({ showOverlay:true, message: "Een moment geduld aub." }); var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Basket_Delete(orderItemId,function(lipuObj) { if(lipuObj.ErrorCode == '100') { errorMsg(false,lipuObj.ErrorCode); document.location.href = document.location.href; } else { errorMsg(true,lipuObj.ErrorCode); jQuery.unblockUI(); } }); } function UpdateOrderItem(orderItemId,orderQuantity) { jQuery.blockUI({ showOverlay:true, message: "Een moment geduld aub." }); var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Basket_Update(orderItemId,orderQuantity,function(lipuObj) { if(lipuObj.ErrorCode == '100') { errorMsg(false,lipuObj.ErrorCode); document.location.href = document.location.href; } else { errorMsg(true,lipuObj.ErrorCode); jQuery.unblockUI(); } }); } function SetUserXml() { //Get all the property's and puts it in a xml //Dirty methode with just a string var useInvoice = "0"; if(jQuery("#useinvoiceaddress").attr("checked"))useInvoice = "1"; var xml = ''; for(var i=0 ; i < aryUser.length;i++) { xml = xml + '<' + aryUserXml[i] + '>' + jQuery('#' + aryUser[i]).val() + ''; } xml = xml + '' + jQuery("input[name=gender]:checked").val() +''; xml = xml + '
'; //Get the invoice addresses for(var i=0 ; i < aryAddress.length;i++) { xml = xml + '<' + aryAddressXml[i] + '>' + jQuery('#invoice_' + aryAddress[i]).val() + ''; } xml = xml + ''+useInvoice+'invoice
'; //Get the delivery addresses xml = xml + '
'; for(var i=0 ; i < aryAddress.length;i++) { xml = xml + '<' + aryAddressXml[i] + '>' + jQuery('#delivery_' + aryAddress[i]).val() + ''; } xml = xml + 'delivery'; xml = xml + '
'; //alert(xml); return xml; } //Personal jQuery(document).ready(function () { jQuery('input:radio[name=deliveryaddress]').bind('click', check_address); jQuery('input:radio[name=invoiceaddress]').bind('click', check_address); jQuery('#forward[state=delivery][action=show]').attr('href', '#'); jQuery('#forward[state=delivery][action=show]').bind('click', delivery_update); jQuery('.extraaddress').find('input:text').bind('click focus blur keyup', prepareNewAddress); }) var check_address = function (event) { var blnResult = false; var blnIsAddressRadio = jQuery(event.currentTarget).attr('name') == 'deliveryaddress' || jQuery(event.currentTarget).attr('name') == 'invoiceaddress'; if (blnIsAddressRadio) { if (jQuery(event.currentTarget).attr('new') == 'true') { jQuery('#extra_' + jQuery(event.currentTarget).attr('name')).show(); } else { jQuery('#extra_' + jQuery(event.currentTarget).attr('name')).hide(); blnResult = true; } return true; } else { var blnIsNewDelivery = jQuery('input:radio:checked[name=deliveryaddress]').attr('new') == 'true'; var blnIsNewInvoice = jQuery('input:radio:checked[name=invoiceaddress]').attr('new') == 'true'; if (blnIsNewDelivery || blnIsNewInvoice) { var validNewDelivery = false; var validNewInvoice = false; if (blnIsNewDelivery) { validNewDelivery = jQuery('#form_extra_deliveryaddress').validate({ rules: { address: { required: true }, housenumber: { required: true, number: true }, postalcode: { required: true }, city: { required: true } } }).form(); } else { validNewDelivery = true; } if (blnIsNewInvoice) { validNewInvoice = jQuery('#form_extra_invoiceaddress').validate({ rules: { address: { required: true }, housenumber: { required: true, number: true }, postalcode: { required: true }, city: { required: true } } }).form(); } else { validNewInvoice = true; } blnResult = (validNewDelivery == true) && (validNewInvoice == true); } else { blnResult = true; } } return blnResult; }; var delivery_update = function (event) { var valid = check_address(event); if (check_address(event)) { var delivery_company = jQuery('input:radio:checked[name=deliveryaddress]').attr('company'); var delivery_address = jQuery('input:radio:checked[name=deliveryaddress]').attr('address'); var delivery_housenumber = jQuery('input:radio:checked[name=deliveryaddress]').attr('housenumber'); var delivery_houseaddition = jQuery('input:radio:checked[name=deliveryaddress]').attr('houseaddition'); var delivery_postalcode = jQuery('input:radio:checked[name=deliveryaddress]').attr('postalcode'); var delivery_city = jQuery('input:radio:checked[name=deliveryaddress]').attr('city'); var delivery_country = jQuery('input:radio:checked[name=deliveryaddress]').attr('country'); var invoice_company = jQuery('input:radio:checked[name=invoiceaddress]').attr('company'); var invoice_address = jQuery('input:radio:checked[name=invoiceaddress]').attr('address'); var invoice_housenumber = jQuery('input:radio:checked[name=invoiceaddress]').attr('housenumber'); var invoice_houseaddition = jQuery('input:radio:checked[name=invoiceaddress]').attr('houseaddition'); var invoice_postalcode = jQuery('input:radio:checked[name=invoiceaddress]').attr('postalcode'); var invoice_city = jQuery('input:radio:checked[name=invoiceaddress]').attr('city'); var invoice_country = jQuery('input:radio:checked[name=invoiceaddress]').attr('country'); var remarks = jQuery('#remarks').val() var oncompleteFunc = function(lipuObj) { if(lipuObj.ErrorCode == '100') { document.location.href = '?articleid=&token='+javascriptToken +'&state=payment&action=show'; } }; var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Delivery_Update(delivery_company, delivery_address, delivery_housenumber, delivery_houseaddition, delivery_postalcode, delivery_city, delivery_country, invoice_company, invoice_address, invoice_housenumber, invoice_houseaddition, invoice_postalcode, invoice_city, invoice_country, remarks, oncompleteFunc); }; }; var prepareNewAddress = function (event) { var addType = jQuery(event.currentTarget).attr('addtype'); var fieldName = jQuery(event.currentTarget).attr('name'); var fieldValue = jQuery(event.currentTarget).val(); jQuery('#' + addType + '_new').removeAttr(fieldName); jQuery('#' + addType + '_new').attr(fieldName, fieldValue); }; //Personal //Payment jQuery(document).ready(function() { jQuery('#forward[state=payment][action=show]').attr('href', '#'); jQuery('input:radio[name=paymentmethodid]').bind('click focus', check_payment); jQuery('#forward[state=payment][action=show]').bind('click', payment_update); check_selected_payment(); }); var check_selected_payment = function() { jQuery('#extra_paymentoptions_' + jQuery('input:radio[name=paymentmethodid]:checked').val()).show(); } var check_payment = function(event) { var blnIsRadio = (jQuery(event.currentTarget).attr('name') == 'paymentmethodid'); if(blnIsRadio) { jQuery(event.currentTarget).attr('checked', true); jQuery('.extra_paymentoptions').hide(); jQuery('#extra_paymentoptions_' + jQuery(event.currentTarget).val()).show(); return true; } if (jQuery('input:radio[name=paymentmethodid]:checked').val() != "") { var blnValid = false; switch (jQuery('input:radio[name=paymentmethodid]:checked').val()) { case '1': blnValid = jQuery('#form_payment').validate({ rules: { paymentmethodid: { required: true }, issuer: { required: true } }, messages: { } }).form(); break; case '3': blnValid = jQuery('#form_payment').validate({ rules: { paymentmethodid: { required: true }, bankaccountnumber: { required: true }, bankaccountholder: { required: true }, bankaccountcity: { required: true } }, messages: { } }).form(); break; case '4': blnValid = jQuery('#form_payment').validate({ rules: { paymentmethodid: { required: true } }, messages: { } }).form(); break; default: // blnValid = jQuery('#form_payment').validate({ // rules: { // paymentmethodid: { required: true } // }, // messages: // { // }, // errorLabelContainer: jQuery('#formMessages') // }).form(); // break; } } return blnValid; }; var payment_update = function(event) { if(check_payment(event)) { var paymentmethodid = jQuery('input:radio[name=paymentmethodid]:checked').val(); var issuer = jQuery('#issuer').val(); var bankaccountnumber = jQuery('input:input[name=bankaccountnumber]').val(); var bankaccountholder = jQuery('input:input[name=bankaccountholder]').val(); var bankaccountcity = jQuery('input:input[name=bankaccountcity]').val(); var oncompleteFunc = function(lipuObj) { if(lipuObj.ErrorCode == '100') { document.location.href = '?articleid=&token='+javascriptToken +'&state=final&action=show'; } }; var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Payment_Update(paymentmethodid, issuer, bankaccountnumber, bankaccountholder, bankaccountcity, oncompleteFunc); } } var payment_start = function(event) { var issuer = jQuery('#issuer').val(); var bankaccountnumber = jQuery('input:input[name=bankaccountnumber]').val(); var bankaccountholder = jQuery('input:input[name=bankaccountholder]').val(); var bankaccountcity = jQuery('input:input[name=bankaccountcity]').val(); var oncompleteFunc = function(lipuObj) { if(lipuObj.ErrorCode == '100') { document.location.href = '?articleid=&token='+javascriptToken +'&state=payment&action=start'; } }; var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Payment_Start(paymentmethodid, issuer, bankaccountnumber, bankaccountholder, bankaccountcity, oncompleteFunc); } //Payment Error. Get the value of the parameter status in the URL //Call getStatus(status) function payment_check(domainname, token, articleid ) { //alert('Payment check') var oncompleteFunc = function(lipuObj) { var paymentStatus = lipuObj.XmlParam; if(lipuObj.GetParam('PaymentStatus') == '1') { parent.location.href = 'http://'+domainname+'/pages/ws_bodybow.asp?articleid='+articleid+'&token='+token+'&openshoppingcart=1&redirectstate=final&redirectaction=finish_order&Status=OK'; } else { parent.location.href = 'http://'+domainname+'/pages/ws_bodybow.asp?articleid='+articleid+'&token='+token+'&openshoppingcart=1&redirectstate=payment&redirectaction=show&Status=ERR'; } }; var objOrderPipeLine = new OrderPipeLine(); objOrderPipeLine.Payment_Check(token, articleid, oncompleteFunc); } function getStatus(name) { name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); var regexS = "[\\?&]"+name+"=([^&#]*)"; var regex = new RegExp( regexS ); var results = regex.exec( window.location.href ); if( results == null ) return ""; else return results[1]; } //Final jQuery(document).ready(function() { jQuery('#forward[state=final][action=finish_order]').attr('href', '#'); jQuery('#forward[state=payment][action=start]').bind('click', payment_start); }); //Final