first commit

This commit is contained in:
2025-01-06 20:47:25 +01:00
commit 3bdbd78c2f
25591 changed files with 3586440 additions and 0 deletions

View File

@@ -0,0 +1,143 @@
/*
* @author Przelewy24
* @copyright Przelewy24
* @license https://www.gnu.org/licenses/lgpl-3.0.en.html
*/
$(document).ready(function () {
$.getScript("//ajax.googleapis.com/ajax/libs/jqueryui/1/jquery-ui.min.js", function () {
p24EnableSortable('.p24-container .draggable-list.available', '.p24-container .draggable-list.available');
p24EnableSortable('.p24-container .draggable-list.promote', '.p24-container .draggable-list.promote');
});
p24UpdateSortableInputs();
$("input[name='P24_PAYMENT_METHOD_LIST']").change(function () {
currency = getSuffix();
p24HideShowAdditionalSettings($(this).val(), 300, currency);
});
additionalSettings();
$('input[name=currency]').change(function () {
var currentTab = helper_tabs[0][$('input[name=currency]:checked').attr('id')];
$.each(currentTab, function (index, value) {
if (['P24_MERCHANT_ID', 'P24_SHOP_ID', 'P24_ADDITIONAL_SETTINGS', 'P24_SALT', 'P24_API_KEY', 'P24_PAYMENTS_ORDER_LIST_FIRST', 'P24_PAYMENTS_ORDER_LIST_SECOND', 'P24_PAYMENTS_PROMOTE_LIST', 'P24_EXTRA_CHARGE_AMOUNT', 'P24_EXTRA_CHARGE_PERCENT'].indexOf(index) >= 0) {
if (!value) {
value = '';
}
$('#' + index).val(value);
} else if (['P24_PAYMENT_METHOD_LIST', 'P24_GRAPHICS_PAYMENT_METHOD_LIST', 'P24_ONECLICK_ENABLE', 'P24_BLIK_UID_ENABLE', 'P24_PAY_CARD_INSIDE_ENABLE', 'P24_EXTRA_CHARGE_ENABLED'].indexOf(index) >= 0) {
if (value > 0) {
$('#' + index + '_on').prop('checked', true);
} else {
$('#' + index + '_off').prop('checked', true);
}
} else if ('P24_TEST_MODE' === index) {
if (value > 0) {
$('#active_test').prop('checked', true);
} else {
$('#active_prod').prop('checked', true);
}
} else if (['P24_VERIFYORDER'].indexOf(index) >= 0) {
if (!value) {
value = '';
}
$('#' + index).val(value);
}
});
additionalSettings();
});
});
function p24HideShowAdditionalSettings(val, speed, currency) {
$('.p24-sortable-contener').parents('.form-group').fadeOut(speed);
var selector = '.p24-sortable-contener[name="paymethod_list' + currency + '"], input[name="P24_GRAPHICS_PAYMENT_METHOD_LIST"]';
if (val > 0) {
$(selector).parents('.form-group').fadeIn(speed);
} else {
$(selector).parents('.form-group').fadeOut(speed);
}
}
function p24EnableSortable(el, connectWith) {
$(el).sortable({
connectWith: connectWith,
placeholder: "ui-state-highlight",
forceHelperSize: true,
cursor: "move",
tolerance: "pointer",
revert: 200,
opacity: 0.75
}).bind('sortupdate', function () {
p24UpdateSortableInputs();
});
}
function p24UpdateSortableInputs() {
var inputFirst = '';
var inputSecond = '';
var inputPromote = '';
currency = getSuffix();
$('.draggable-list-first[data-name="list' + currency + '"] .bank-box').each(function () {
var id = $(this).attr('data-id');
inputFirst = inputFirst + id + ',';
});
$('.draggable-list-second[data-name="list' + currency + '"] .bank-box').each(function () {
var id = $(this).attr('data-id');
inputSecond = inputSecond + id + ',';
});
$('.draggable-list-promote[data-name="list' + currency + '"] .bank-box').each(function () {
var id = $(this).attr('data-id');
inputPromote = inputPromote + id + ',';
});
$('input[name="P24_PAYMENTS_ORDER_LIST_FIRST"]').val(inputFirst);
$('input[name="P24_PAYMENTS_ORDER_LIST_SECOND"]').val(inputSecond);
$('input[name="P24_PAYMENTS_PROMOTE_LIST"]').val(inputPromote);
}
function getSuffix() {
if ('PLN' === $('input[name=currency]:checked').attr('id')) {
currency = "";
} else {
currency = "_" + $('input[name=currency]:checked').attr('id');
}
return currency;
}
function additionalSettings() {
var currentTab = helper_tabs[0][$('input[name=currency]:checked').attr('id')]["P24_ADDITIONAL_SETTINGS"];
if (currentTab["testApi"]) {
if ('1' === $('input[name="P24_PAYMENT_METHOD_LIST"]:checked').attr('value') + '') {
p24HideShowAdditionalSettings(true, 0, getSuffix());
} else {
p24HideShowAdditionalSettings(false, 0, getSuffix());
}
if (currentTab["P24_ONECLICK_ENABLE"]) {
$("input[name='P24_ONECLICK_ENABLE']").parents('.form-group').show();
}
if (currentTab["P24_BLIK_UID_ENABLE"]) {
$("input[name='P24_BLIK_UID_ENABLE']").parents('.form-group').show();
}
$("input[name='P24_PAY_CARD_INSIDE_ENABLE']").parents('.form-group').show();
$("input[name='P24_PAYMENTS_ORDER_LIST_FIRST']").parents('.form-group').show();
$("input[name='P24_PAYMENTS_ORDER_LIST_SECOND']").parents('.form-group').show();
$("input[name='P24_PAYMENTS_PROMOTE_LIST']").parents('.form-group').show();
$("input[name='P24_PAYMENT_METHOD_LIST']").parents('.form-group').show();
} else {
$('.p24-sortable-contener').parents('.form-group').fadeOut(0);
$("input[name='P24_ONECLICK_ENABLE']").parents('.form-group').hide();
$("input[name='P24_BLIK_UID_ENABLE']").parents('.form-group').hide();
$("input[name='P24_PAY_CARD_INSIDE_ENABLE']").parents('.form-group').hide();
$("input[name='P24_PAYMENTS_ORDER_LIST_FIRST']").parents('.form-group').hide();
$("input[name='P24_PAYMENTS_ORDER_LIST_SECOND']").parents('.form-group').hide();
$("input[name='P24_PAYMENTS_PROMOTE_LIST']").parents('.form-group').hide();
$("input[name='P24_PAYMENT_METHOD_LIST']").parents('.form-group').hide();
$("input[name='P24_GRAPHICS_PAYMENT_METHOD_LIST']").parents('.form-group').hide();
}
}

View File

@@ -0,0 +1,36 @@
<?php
/*
* 2007-2017 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2016 PrestaShop SA
* @version Release: $Revision$
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Location: ../");
exit;

View File

@@ -0,0 +1,441 @@
/*
* @author Przelewy24
* @copyright Przelewy24
* @license https://www.gnu.org/licenses/lgpl-3.0.en.html
*/
function p24onResize() {
if ($(window).width() <= 640) {
$('.pay-method-list').addClass('mobile');
} else {
$('.pay-method-list').removeClass('mobile');
}
}
function p24DisplayOrderDetail(extrachargeText, extracharge)
{
if ('undefined' !== typeof extracharge && 0 !== $('.line-total').length) {
$('.line-total').before(
'<tr class="text-xs-right line-shipping" id="extracharge">' +
'<td colspan="3"><strong>' + extrachargeText + '</strong></td>' +
'<td colspan="1">' + extracharge + '</td>' +
'</tr>');
}
}
function p24DisplayExtrachargeReturn(extrachargeText, extrachargeReturnFormatted, currency)
{
if ('undefined' !== typeof currency && 0 !== $('.order-confirmation-table .font-weight-bold').length) {
$('.order-confirmation-table .font-weight-bold').before(
'<tr class="line-shipping" id="extracharge">' +
'<td colspan="1"><strong>' + extrachargeText + '</strong></td>' +
'<td colspan="1" class="text-xs-right">' + extrachargeReturnFormatted + ' '+currency+'</td>' +
'</tr>');
}
}
function p24DisplayExtrachargeAdmin(extrachargeText, extrachargeReturnFormatted, currency)
{
if ('undefined' !== typeof currency && 0 !== $('.panel .panel-total .table #total_order').length) {
$('.panel .panel-total .table #total_order').before(
'<tr id="extracharge">' +
'<td class="text-right" colspan="1"><strong>' + extrachargeText + '</strong></td>' +
'<td colspan="1" class="amount text-right nowrap">' + extrachargeReturnFormatted + ' '+currency+'</td>' +
'</tr>');
}
}
function p24setMethod(method) {
$('form#przelewy24Form input[name=p24_method]').val(parseInt(method) > 0 ? parseInt(method) : "");
}
function p24RememberCard(action, data) {
jQuery.ajax({
url: action,
method: 'POST',
data: data // like: {order: order}
});
}
// global settings
var formObject = {
'formAction': '',
'btnTextSubmit': ''
};
function formSend()
{
var actionForm = $('.p24-register-card-wrapper').attr('data-action-payment-check');
$.ajax(actionForm, {
method: 'POST',
data: { cartId : $('.p24-register-card-wrapper').attr('data-card-cart-id') }
}).done(function (data) {
if (1 === data) {
location.reload();
}
});
return true
}
$(document).ready(function () {
$('#przelewy24Form').on('submit', function(){
var haveInvoice = formSend();
if(haveInvoice)
{
return true;
}
return false;
});
if (0 !== $('#extracharge_text').length)
{
p24DisplayOrderDetail($('#extracharge_text').val(), $('#extracharge').val());
}
if (0 !== $('#extrachargeReturn').length)
{
p24DisplayExtrachargeReturn($('#extracharge_text').val(), $('#extrachargeReturnFormatted').val(), $('#currencySign').val());
}
if (0 !== $('#extracharge').length)
{
p24DisplayExtrachargeAdmin($('#extracharge_text').val(), $('#extrachargeFormatted').val(), $('#currencySign').val());
}
$( "#P24FormArea" ).click(function( event ) {
event.stopPropagation();
});
$('.bank-box').click(function () {
var isSelected = false;
var $btn = $('form#przelewy24Form button[type="submit"]');
if ($(this).hasClass('selected')) {
isSelected = true;
}
$('.bank-box').removeClass('selected').addClass('inactive');
if (isSelected) {
if (formObject.formAction.length) {
$("form#przelewy24Form").attr('action', formObject.formAction);
$btn.text(formObject.btnTextSubmit);
$('.p24-small-text').show();
}
p24setMethod(0);
$('.bank-box').removeClass('inactive');
} else {
if ($(this).attr('data-action')) { //
if (!formObject.formAction) {
formObject.formAction = $("form#przelewy24Form").attr('action');
}
$("form#przelewy24Form").attr('action', $(this).attr('data-action'));
$('form input[name="p24_card_customer_id"]').val($(this).attr('data-card-id'));
var btnText = $btn.attr('data-text-oneclick');
if (!formObject.btnTextSubmit) {
formObject.btnTextSubmit = $btn.text();
}
$btn.text(btnText);
$('.p24-small-text').hide();
} else {
p24setMethod($(this).attr('data-id'));
if (formObject.formAction.length) {
$("form#przelewy24Form").attr('action', formObject.formAction);
$btn.text(formObject.btnTextSubmit);
$('.p24-small-text').show();
}
}
$(this).addClass('selected').removeClass('inactive');
}
});
// show more / less payments method
$('.p24-more-stuff').click(function () {
$(this).fadeOut(100, function () {
$('.p24-less-stuff').fadeIn();
});
$('.pay-method-list-second').slideDown();
});
$('.p24-less-stuff').click(function () {
$(this).fadeOut(100, function () {
$('.p24-more-stuff').fadeIn();
});
$('.pay-method-list-second').slideUp();
});
//oneClick
$(".p24-payment-return-page input.p24-remember-my-card").change(function () {
var action = $(this).attr('data-action');
var remember = 0;
if ($(this).is(':checked')) {
remember = 1;
}
var data = {'remember': remember};
p24RememberCard(action, data);
if ($('#P24_registerCard').length) {
if ($('.p24-remember-my-card').is(':checked')) {
$('#P24_registerCard').prop('checked', true);
}
else{
$('#P24_registerCard').prop('checked', false);
}
}
});
if ($(".p24-payment-return-page input.p24-remember-my-card:checked")) {
var action = $("input.p24-remember-my-card:checked").attr('data-action');
var data = {'remember': 1};
if (!!action) {
p24RememberCard(action, data);
}
}
p24onResize();
if ($('#P24FormArea').length) {
var targetNode = document.getElementById('P24FormArea');
var config = {
attributes: true,
childList: true
};
var callback = function (mutation) {
try {
document.getElementById('P24_registerCard').style.display = 'none';
document.getElementById('register-text').style.display = 'none';
document.getElementById("P24_registerCard").checked = document.getElementById("p24-remember-my-card").checked;
} catch(ex) {
}
};
var observer = new MutationObserver(callback);
observer.observe(targetNode, config);
}
if (0 !== $('.refundAmount').length) {
$('.refundAmount').submit(function () {
return confirm($('#refundAmountText').val());
});
}
});
$(window).resize(function () {
p24onResize();
});
function hidePayJsPopup() {
$('#P24FormAreaHolder').fadeOut();
$('#proceedPaymentLink:not(:visible)').closest('a').fadeIn();
}
function showRegisterCardButton() {
$('.p24-register-card-wrapper .p24-add-credit-card').show();
}
function hideRegisterCardButton() {
$('.p24-register-card-wrapper .p24-add-credit-card').hide();
}
function showPayJsPopup() {
formSend();
setP24method("");
$('#P24FormAreaHolder').appendTo('body');
$('#proceedPaymentLink').closest('a').fadeOut();
$('#P24FormAreaHolder').fadeIn();
if ('object' !== typeof P24_Transaction) {
requestJsAjaxCard();
}
}
function hidePayJsPopup() {
$('#P24FormAreaHolder').fadeOut();
p24setMethod(0);
$('.bank-box').removeClass('selected');
$('.bank-box').removeClass('inactive');
$('#proceedPaymentLink:not(:visible)').closest('a').fadeIn();
}
function setP24method(method) {
$('form#przelewy24Form input[name=p24_method]').val(parseInt(method) > 0 ? parseInt(method) : "");
}
var sessionId = false;
var sign = false;
var payInShopScriptRequested = false;
function requestJsAjaxCard() {
p24showLoader();
var actionForm = $('.p24-register-card-wrapper').attr('data-action-register-card-form');
$.ajax(actionForm, {
method: 'POST',
type: 'POST',
data: {
action: $('.p24-register-card-wrapper').attr('data-card-action'),
cartId: $('.p24-register-card-wrapper').attr('data-card-cart-id')
},
error: function () {
payInShopFailure();
},
success: function (response) {
p24hideLoader();
var data = JSON.parse(response);
if (data.error) {
$('#p24-register-card-form').fadeIn(200).html('<p class="p24-text-error">' + data.error + '</p>');
} else {
sessionId = data.sessionId;
sign = data.p24_sign;
var dictionary = $('.p24-register-card-wrapper').attr('data-dictionary');
$('#P24FormArea').html("");
var p24FormContainer = $("<div></div>")
.attr('id', 'P24FormContainer')
.attr('data-sign', data.p24_sign)
.attr('data-successCallback', $('.p24-register-card-wrapper').attr('data-successCallback'))
.attr('data-failureCallback', $('.p24-register-card-wrapper').attr('data-failureCallback'))
.attr('data-client-id', data.client_id)
.attr('data-dictionary', dictionary)
.appendTo('#P24FormArea');
setTimeout(function() {
setFormCenter();
$('#P24FormArea').fadeIn("slow", function() {
$('#p24-card-loader').fadeOut();
});
}, 200);
if (document.createStyleSheet) {
document.createStyleSheet(data.p24cssURL);
} else {
$('head').append('<link rel="stylesheet" type="text/css" href="' + data.p24cssURL + '" />');
}
if (!payInShopScriptRequested) {
$.getScript(data.p24jsURL, function () {
P24_Transaction.init();
$('#P24FormContainer').removeClass('loading');
payInShopScriptRequested = false;
window.setTimeout(function () {
$('#P24FormContainer button').on('click', function () {
if (P24_Card.validate()) {
$(this).after('<div class="loading" id="card-loader" style="display: none"></div>');
$('#card-loader').fadeIn('slow');
}
});
}, 1000);
});
}
payInShopScriptRequested = true;
}
}
});
}
function setFormCenter() {
var p24FormArea = $('#P24FormArea');
p24FormArea.css('display', 'none');
p24FormArea.css('visibility', 'visible');
}
function registerCardInPanelSuccess(orderId) {
$('#P24FormArea').fadeOut(function () {
$('#p24-card-loader').fadeIn();
});
}
function registerCardInPanelFailure(error) {
p24hideLoader();
$('#P24FormArea').fadeOut(function () {
var message = $('.p24-account-card-form').attr('data-translate-error');
if (undefined !== error && null !== error) {
if (error.errorMessagePl) {
message = error.errorMessagePl;
} else if(error.errorMessage){
message = error.errorMessage;
}else{
message = error;
}
}
$('#p24-card-alert').html('<div class="alert alert-danger">' + message + '<button type="button" class="close" data-dismiss="alert">×</button></div>');
P24_Transaction = undefined;
$('#p24-card-alert').fadeIn();
});
}
function payInShopSuccess(orderId, oneclickOrderId) {
action = $('.p24-register-card-wrapper').attr('data-action-remember_order_id');
$.ajax(action, {
method: 'POST',
type: 'POST',
data: {
'sessionId': sessionId,
'orderId': orderId,
'oneclickOrderId': oneclickOrderId,
'sign': sign
},
});
setTimeout(function() {
href = $('.p24-register-card-wrapper').attr('data-action-payment-success');
window.location.href = href;
}, 500);
}
function payInShopFailure() {
p24hideLoader();
setTimeout(function() {
href = $('.p24-register-card-wrapper').attr('data-action-payment-failed');
window.location.href = href;
}, 500);
}
function p24showLoader() {
$('.p24-loader').fadeIn(400);
$('.p24-loader-bg').fadeIn(300);
}
function p24hideLoader() {
$('.p24-loader').fadeOut(300);
$('.p24-loader-bg').fadeOut(300);
}
function formSubmit(description) {
var form = document.getElementById('przelewy24Form');
var descriptionInput = $("[name='p24_description']");
if (undefined !== description && null !== description) {
descriptionInput.val(description);
}
form.submit();
}
function proceedPayment(cartId) {
$.when(formSend()).done(function() {
$action = $('#submitButton').attr('data-validation-link');
$.ajax($action, {
method: 'POST',
data: {
action: 'makeOrder',
cartId: cartId
},
error: function () {
formSubmit();
},
success: function (response) {
formSubmit(response.description);
}
});
});
}
/* Fix hardcoded images. */
$(function() {
var rx = /logo_(\d+)/;
var $images = $('img[src*=\'/template/201312/bank/logo_\']');
$images.each(function (idx, elm) {
var $elm = $(elm);
var $parent = $elm.parent();
var src = $elm.attr('src');
var executedRx = rx.exec(src);
if (!executedRx) {
return;
}
var $newBox = $('<span>').addClass('bank-logo').addClass('bank-logo-' + executedRx[1]);
$parent.append($newBox);
$elm.remove();
})
});

View File

@@ -0,0 +1,273 @@
/*
* @author Przelewy24
* @copyright Przelewy24
* @license https://www.gnu.org/licenses/lgpl-3.0.en.html
*/
$(document).ready(function () {
if ($('[name="p24_blik_method"]').length) {
$('#przelewy24Form').on('submit', function () {
hideBlikErrors();
var blikAction = $(this).attr('action');
if (blikCodeContainer.is(':visible')) {
var submitFlag = validateBlikCode();
var blikCode = $('[name="p24_blik_code"]').val();
if (!submitFlag) return false;
}
p24showLoader();
submitter.attr('disabled', 'disabled');
var submitData = null;
if ($('#declinedAlias').is(':visible')) {
submitData = {
blikCode: blikCode,
blikCodeCheck: true,
declinedAlias: true
}
}
else if (blikCodeContainer.is(':visible')) {
submitData = {
blikCode: blikCode,
blikCodeCheck: true
}
} else {
submitData = {
blikCode: false
}
}
alternativeKeyValue = $('input[name=aliasAlternativesKeys]:checked').val();
if (undefined !== alternativeKeyValue && null !== alternativeKeyValue) {
submitData.alternativeKey = $('input[name=aliasAlternativesKeys]:checked').val();
}
$.ajax(blikAction, {
method: 'POST',
type: 'POST',
data: submitData,
error: function () {
payInShopFailure();
},
success: function (response) {
response = JSON.parse(response);
if ('success' === response.status) {
validateBlikTransaction(
response.orderId,
response.urlSuccess
);
return false;
} else {
if (0 === $("input[id*=alias-alternative-key]").length) {
showAlternativeKeys(response);
}
}
p24hideLoader();
if (!handleBlikError(response.error)) {
location.href = response.urlFail;
}
},
complete: function (response) {
submitter.attr('disabled', false);
}
});
return false;
});
}
});
var retryInterval = false;
var submitter = $('#przelewy24Form').find('[type="submit"]');
var blikCodeContainer = $('#blikCodeContainer');
var urlFail = blikCodeContainer.attr('data-payment-failed-url') + '&errorCode=';
function validateBlikTransaction(orderId, urlSuccess) {
var retryLimit = 20;
var retries = 0;
var wsRequest = {
action: 'Subscribe',
params: {
orderId: orderId
}
};
function handleWebsocketResponse(data) {
// Special case for Alias + BlikCode
if (68 === parseInt(data.reasonCode) ||
68 === parseInt(data.error.errorCode)) {
declinedBlikAlias();
} else {
$.ajax(blikCodeContainer.attr('data-ajax-blik-error-url'), {
type: 'POST',
method: 'POST',
data: {
errorCode: data.error.errorCode,
reasonCode: data.reasonCode
},
error: function () {
payInShopFailure();
},
success: function (response) {
response = JSON.parse(response);
if (!handleBlikError(response.error)) {
location.href = urlSuccess;
}
},
complete: function () {
p24hideLoader();
}
});
}
}
function validateAliasReturn(data) {
var msg = JSON.parse(data);
if ('DECLINED' === msg.status) {
submitter.attr('disabled', false);
if (68 === parseInt(msg.reasonCode) ||
68 === parseInt(msg.error.errorCode)) { // Special case for Alias + BlikCode
declinedBlikAlias();
} else if (parseInt(msg.reasonCode) > 0 || parseInt(msg.error.errorCode) > 0) {
handleBlikError(msg.error);
} else {
return false;
}
} else if ('AUTHORIZED' === msg.status) {
if ('wait' === msg.error.errorType) { // Unregistered transaction, trying again
return false;
} else if (parseInt(msg.reasonCode) > 0 || parseInt(msg.error.errorCode) > 0) {
handleBlikError(msg.error);
} else {
location.href = urlSuccess;
}
} else if ('ERROR' === msg.status || 'undefined' === typeof msg.status) {
location.href = urlFail + msg.reasonCode;
} else if ('PROCESSING' === msg.status) {
return false;
}
p24hideLoader();
return true;
}
function checkRetryLimit() {
retries++;
if (retries === retryLimit) {
// Retry limit, continue and leave it to paymentStatus
location.href = urlFail;
return true;
}
return false;
}
function fallbackAjaxRequest() {
$.ajax(blikCodeContainer.attr('data-ajax-verify-blik-url'), {
method: 'POST',
type: 'POST',
data: wsRequest,
error: function (xhr) {
// If AJAX request also fails, continue and leave it to paymentStatus
if (4 === xhr.readyState) { // do not redirect if interrupted
location.href = urlFail;
}
},
success: function (result) {
if (!validateAliasReturn(result)) {
checkRetryLimit();
setTimeout(fallbackAjaxRequest, 1000);
}
}
});
}
fallbackAjaxRequest();
// if ('WebSocket' in window && (typeof WebSocket === 'function' || typeof WebSocket === 'object')) {
// var ws = new WebSocket(blikCodeContainer.attr('data-websocket-url'));
// ws.onopen = function () {
// ws.send(JSON.stringify(wsRequest));
// retryInterval = setInterval(checkRetryLimit, 800);
// };
// ws.onerror = function () {
// clearInterval(retryInterval);
// console.log('WebSocket error connect');
// fallbackAjaxRequest();
// };
// ws.onmessage = function (event) {
// handleWebsocketResponse(JSON.parse(event.data));
// clearInterval(retryInterval);
// };
// } else {
// // No websocket support
// fallbackAjaxRequest();
// }
}
function showAlternativeKeys(response) {
$("#blikAliasAlternativeKeys").show();
var html = "";
$.each(response.aliasAlternatives, function (key, value) {
var id = "alias-alternative-key-" + key;
html += "<div id='" + id + "-container' class='form-fields'>";
html += "<span class='custom-radio'>";
html += "<input type='radio' id='" + id + "' name='aliasAlternativesKeys' value='" + value['key'] + "' ";
if (key - 0 === 0) html += "checked='checked'";
html += "/>";
html += "<span></span>";
html += "</span>";
html += "<label for='" + id + "'>";
html += "<span>" + value['appLabel'] + "</span>";
html += "</label>";
html += "</div>";
});
$("#blikAliasAlternativeKeys").append(html);
}
function validateBlikCode() {
var blikCodeInput = $('[name="p24_blik_code"]');
if (!blikCodeInput.is(':visible')) return true;
var blikCodeValidation = blikCodeInput.val();
if (/^[0-9]{6}$/.test(blikCodeValidation)) {
blikCodeInput.parent('div').removeClass('has-error');
$('#wrongBlikCode').hide();
return true;
} else {
blikCodeInput.parent('div').addClass('has-error');
$('#wrongBlikCode').show();
return false;
}
}
function declinedBlikAlias() {
if ('undefined' !== typeof retryInterval && retryInterval)
clearInterval(retryInterval);
$('#blikAlias').hide();
$('#blikAliasError').hide();
$('#blikCodeContainer').show();
$('#declinedAlias').show();
p24hideLoader();
}
function nonuniqueBlikAlias() {
// TODO
}
function hideBlikErrors() {
$('[name="p24_blik_code"]').parent('div').removeClass('has-error');
$('#blikAliasError').hide();
$('#blikCodeError').hide();
}
function handleBlikError(errorObject) {
if (errorObject) {
switch (errorObject.errorType) {
case 'fatal':
if (errorObject.errorCode - 0 !== 51) {
location.href = urlFail + errorObject.errorCode;
}
break;
case 'alias':
$('#blikAlias').hide();
$('#blikCodeContainer').show();
$('#blikAliasError').show().text(errorObject.errorMessage);
break;
case 'blikcode':
$('#blikAlias').hide();
$('#blikCodeContainer').show();
$('[name="p24_blik_code"]').parent('div').addClass('has-error');
$('#blikCodeError').show().text(errorObject.errorMessage);
break;
default:
return false;
break;
}
}
return true;
}