var payWindow = null; $(function($) { $.payment = function(params) { var payMethod = $('input[name=pay_method]:checked').val() || 'gateway'; var bill = $('input[name=bill]:checked').val() || 'none'; var sendSMS = $('input[name=sendDepositNumber]:checked').val() || 0; var cartIds = $('input[name=cartIds]').val(); var billIds = $('input[name=billIds]').val(); var domainCount = Number($('input[name=domainCount]').val()); var plan = $('input[name=plan]').val(); var emoney = 0; if (payMethod == 'emoney') { emoney += Number($('#totalPrice2').text().replace(/,/g,'')); if (!emoney) { emoney += Number($('#totalPrice').text().replace(/,/g,'')); } } var balance = 0; if (payMethod == 'balance') { balance += Number($('#totalPrice2').text().replace(/,/g,'')); if (!balance) { balance += Number($('#totalPrice').text().replace(/,/g,'')); } } var cash = 0; if ($('select[name=cash]').length) { if ($('select[name=cash]').val() == 'select') { cash = $('input[name=select]').val().replace(/,/g, ''); cash = $.trim(cash); } else { cash = $('select[name=cash]').val().replace(/,/g, ''); } } var parameters = { 'instantKey': decodeURIComponent($('input[name=instantKey]').val() || ''), 'payMethod': payMethod, 'bill': bill, 'cardKind': $('input[name=cardKind]:checked').val() || $('input[name=cardKind]').val(), 'cardType': $('select[name=cardType]').val(), 'bankType': $('select[name=bankType]').val(), 'cash' : cash, 'emoney' : emoney, 'balance' : balance, 'domainCount' : domainCount, 'plan' : plan }; if (cartIds) { parameters.cartIds = cartIds; } if (billIds) { parameters.billIds = billIds; } if ($('input[name=pg]:visible').length > 0) { parameters.pg = $('input[name=pg]:visible:checked').val(); } if (bill == 'tax') { parameters.companyInputType = $('input[name=companyInputType]:checked').val(); if (parameters.companyInputType == 'exist') { parameters.companyId = $('select[name=companyId]').val(); } if ( $('input[name=secondary_registration_number]').length > 0 && $('input[name=secondary_registration_number]').val().length > 0 ) { parameters.secondaryRegistrationNumber = $.trim($('input[name=secondary_registration_number]').val()); } parameters.companyName = $.trim($('input[name=companyName]').val()); parameters.registrationNumberLeft = $.trim($('input[name=registration_number_left]').val()); parameters.registrationNumberMiddle = $.trim($('input[name=registration_number_middle]').val()); parameters.registrationNumberRight = $.trim($('input[name=registration_number_right]').val()); parameters.representative = $.trim($('input[name=representative]').val()); parameters.companyLocation = $.trim($('input[name=company_location]').val()); parameters.companyType = $.trim($('input[name=company_type]').val()); parameters.companyCategory = $.trim($('input[name=company_category]').val()); parameters.companyContact1Name = $.trim($('input[name=contact1_name]').val()); parameters.companyContact1Email = $.trim($('input[name=contact1_email]').val()); parameters.companyContact1Phone = $.trim($('input[name=contact1_phone]').val()); parameters.companyContact2Name = $.trim($('input[name=contact2_name]').val()); parameters.companyContact2Email = $.trim($('input[name=contact2_email]').val()); parameters.companyContact2Phone = $.trim($('input[name=contact2_phone]').val()); parameters.companyUpdate = $('#company_update:checked').val(); } if (parameters.payMethod == 'deposit' || parameters.payMethod == 'bank' || $('input[name=isOrdererInfo]').val()) { parameters.name = $.trim($('input[name=name]').val() || ''); parameters.email = $.trim($('input[name=email]').val() || ''); if ($('input[name=phone]:visible').length) { parameters.phone = $.trim($('input[name=phone]').val() || ''); } else { parameters.phone = ''; } parameters.mobile = $.trim($('input[name=handPhone]').val() || ''); parameters.isLogin = $.trim($('input[name=handPhone]').data('login') || false); parameters.depositor = $.trim($('input[name=depositor]').val() || ''); parameters.accountId = $.trim($('input[name=account_id]').val()); parameters.sms = sendSMS; } if ($('input[name=cardNumber]').length != 0) { parameters.cardNumber = $.trim($('input[name=cardNumber]').val()); parameters.cardYear = $.trim($('select[name=cardYear]').val()); parameters.cardMonth = $.trim($('select[name=cardMonth]').val()); } if (payMethod == 'admin') { parameters.note = $('textarea[name=note]').val(); } if (!checkParameter(parameters)) { return false; } submitBlank(payMethod, parameters); }; $('input[name=company_update]').change( function() { if ($(this).attr('checked') == 'checked') { $('#company_update').val('true'); } else { $('#company_update').val(); } }); }); function submitBlank(payMethod, parameters) { var wrap = $('
'); var header = '' var footer = ''; var form = '
'; for (var key in parameters) { var value = parameters[key]; if (value) { value = wrap.text(value).html().replace(/'/g, "'"); } form += ""; } form += '
'; form += ''; var openWindowWithCheck = function(apiUrl) { form = '



Please wait a minute while processing your order.
' + form; var windowWidth = 1024; var windowHeight = 700; var left = (screen.width/2) - (windowWidth/2); var top = (screen.height/2) - (windowHeight/2); var instantKey = decodeURIComponent($('input[name=instantKey]').val() || ''); if (payWindow != null) { payWindow.close(); payWindow = null; } payWindow = window.open( '/blank.html', "dnseverpaywin", "width=" + windowWidth + ", height=" + windowHeight + ", left=" + left + ", top=" + top + ", location=no, toolbar=no, resizable=yes, status=no, scrollbars=yes" ); if (!payWindow) { alert(LANG['popup_blocked']); return false; } else { payWindow.onload = function() { setTimeout(function() { if (payWindow.screenX === 0) { alert(LANG['popup_blocked']); } }, 0); }; setTimeout(function() { payWindow.document.write(header + form + footer); }, 100); } $(window).unload(function() { payWindow.close() }); function checkPayResult() { setTimeout(function() { if (payWindow && payWindow.closed) { $.ajax({ url: apiUrl + "?instantKey=" + encodeURIComponent(instantKey), cache: false }).done(function(result) { if(result > 0) { if (parameters.cash) { var url = '/body/payment/cash_done.html?orderId=' + result; if (instantKey) { url += '&instantKey=' + encodeURIComponent(instantKey); } parent.parent.openMessageBox(''); parent.parent.closeMessageBox('emoney'); parent.parent.closeMessageBox('paygate'); } else { window.location.href = '/charge.html?selected_menu=done&orderId=' + result; } } }); } else { checkPayResult(); } }, 500); }; checkPayResult(); }; if (payMethod == 'paypal') { openWindowWithCheck('/paypal/check.php'); } else if (payMethod == 'alipay') { openWindowWithCheck('/alipay/check.php'); } else if (payMethod == 'credit' || payMethod == 'bank' || payMethod == 'transfer' || payMethod == 'phone' || payMethod == 'alipay' || payMethod == 'tenpay' || payMethod == 'cup' || payMethod == 'paypalREST') { if (payMethod == 'tenpay') { parent.parent.openMessageBox(''); } else if ($('input[name=pg]:checked').val() == 'kcp') { parent.parent.openMessageBox(''); } else { parent.parent.openMessageBox(''); } var $iframe = parent.parent.$('#messageBoxDisplay_paygate'); $iframe.one('load', function() { var iframe = $iframe[0]; var doc = iframe.contentDocument || iframe.contentWindow.document; doc.write(header + form + footer); }); } else { var iframe = $('#payment_iframe')[0]; var doc = iframe.contentDocument || iframe.contentWindow.document; doc.write(header + form + footer); } return false; } function checkParameter(parameters) { if (parameters.payMethod == 'credit') { if (!$('select[name="cardType"]').val() && ($('input[name=pg]:checked').val() == 'paygate' || $('input[name=pg]:visible').length == 0)) { alert(LANG['not_choose_card_type']); $('select[name="cardType"]').focus(); return false; } if ($('input[name="cardKind"]:checked').val() == 'external') { if (!parameters.cardNumber) { alert(LANG['no_card_number']); $('input[name="cardNumber"]').focus(); return false; } if (!parameters.cardMonth) { $('input[name="cardMonth"]').focus(); return false; } if (!parameters.cardYear) { $('input[name="cardYear"]').focus(); return false; } } } else if (parameters.payMethod == 'bank' && ($('input[name=pg]:checked').val() == 'paygate' || $('input[name=pg]:visible').length == 0)) { if (!$('select[name="bankType"]').val()) { alert(LANG['choose_your_bank']); $('select[name="bankType"]').focus(); return false; } } if ((parameters.payMethod == 'deposit' || parameters.payMethod == 'bank' || $('input[name=isOrdererInfo]').val()) && parameters.payMethod != 'admin') { if (!parameters.name || parameters.name.length == 0) { alert(LANG['no_name']); $('input[name="name"]').focus(); return false; } if (!parameters.email || parameters.email.length == 0) { alert(LANG['no_email']); $('input[name=email]').focus(); return false; } if ((!parameters.phone || parameters.phone.length == 0) && (!parameters.mobile || parameters.mobile.length == 0) && (parameters.sms == 1 || parameters.isLogin != "true")) { if ($('input[name=phone]:visible').length) { alert(LANG['no_contact']); $('input[name=phone]').focus(); } else { alert(LANG['no_mobile']); $('input[name=handPhone]').focus(); } return false; } if (parameters.payMethod == 'deposit') { if (!parameters.depositor || parameters.depositor.length == 0) { alert(LANG['no_depositor']); $('input[name=depositor]').focus(); return false; } } } else if (parameters.payMethod == 'emoney') { if (!parameters.emoney || Number(parameters.emoney) > Number($('input[name=emoneyLeft]').val())) { alert(LANG['not_enough_money']); return false; } } else if (parameters.payMethod == 'balance') { console.log(parameters); if (!parameters.balance || Number(parameters.balance) > Number($('input[name=balanceLeft]').val())) { alert(LANG['not_enough_balance']); return false; } } if ($('.billTaxFormTr:visible').length && parameters.bill == 'tax') { if (!check_company_form($('form'))) { return false; } } if ($('input[name=isOrdererInfo]').val()) { if ($('input[name=agree2]').length) { var agree = $('input[name=agree2]:checked').val(); if (!agree) { alert(LANG['not_agreed']); return false; } } if ($('input[name=agree3]').length) { var agree = $('input[name=agree3]:checked').val(); if (!agree) { alert(LANG['not_agreed']); return false; } } } if ($('input[name=agree]').length) { var agree = $('input[name=agree]:checked').val(); if (!agree) { alert(LANG['not_agreed']); return false; } } return true; }