first commit

This commit is contained in:
2024-07-15 11:28:08 +02:00
commit f52d538ea5
21891 changed files with 6161164 additions and 0 deletions

View File

@@ -0,0 +1,257 @@
function fs_select2() {
let elements = jQuery( '.fs_select2' );
if ( elements.length ) {
if (jQuery.fn.selectWoo) {
elements.selectWoo();
} else {
elements.select2();
}
}
}
jQuery(document).ready(function(){
if ( jQuery('#flexible_shipping_labels_url').length ) {
window.location.href = jQuery('#flexible_shipping_labels_url').attr('href');
}
if ( jQuery('a.shipping_manifest_download').length == 1 ) {
window.location.href = jQuery('a.shipping_manifest_download').attr('href');
}
if ( typeof window.history.pushState == 'function' ) {
var url = document.location.href;
var url2 = document.location.href;
url = fs_removeParam('bulk_flexible_shipping_labels', url);
url = fs_removeParam('bulk_flexible_shipping_send', url);
url = fs_removeParam('bulk_flexible_shipping_manifests', url);
url = fs_removeParam('bulk_flexible_shipping_no_labels_created', url);
url = fs_trimChar(url,'?');
if ( url != url2 ) {
window.history.pushState({}, "", url);
}
}
/* Connect Global Notice */
var nav = jQuery( '.fs-connect__vertical-nav-container' ),
contentContainer = jQuery( '.fs-connect__content-container' );
nextFeatureButtons = jQuery( '.fs-banner__button-container .next-feature' ),
nav.on( 'click', '.vertical-menu__feature-item:not( .vertical-menu__feature-item-is-selected )', function() {
transitionSlideToIndex( jQuery( this ).index() );
} );
nextFeatureButtons.on( 'click', function( e ) {
e.preventDefault();
var slideIndex = jQuery( this )
.closest( '.fs-connect__slide' )
.index();
transitionSlideToIndex( slideIndex + 1 );
} );
function transitionSlideToIndex( index ) {
// Remove classes from previously selected menu item and content
nav
.find( '.vertical-menu__feature-item-is-selected' )
.removeClass( 'vertical-menu__feature-item-is-selected' );
contentContainer
.find( '.fs__slide-is-active' )
.removeClass( 'fs__slide-is-active' );
// Add classes to selected menu item and content
nav
.children()
.eq( index )
.addClass( 'vertical-menu__feature-item-is-selected' );
contentContainer
.children()
.eq( index )
.addClass( 'fs__slide-is-active' );
}
});
function fs_removeParam(key, sourceURL) {
var rtn = sourceURL.split("?")[0],
param,
params_arr = [],
queryString = (sourceURL.indexOf("?") !== -1) ? sourceURL.split("?")[1] : "";
if (queryString !== "") {
params_arr = queryString.split("&");
for (var i = params_arr.length - 1; i >= 0; i -= 1) {
param = params_arr[i].split("=")[0];
if (param === key) {
params_arr.splice(i, 1);
}
}
rtn = rtn + "?" + params_arr.join("&");
}
return rtn;
}
function fs_trimChar(string, charToRemove) {
while(string.charAt(0)==charToRemove) {
string = string.substring(1);
}
while(string.charAt(string.length-1)==charToRemove) {
string = string.substring(0,string.length-1);
}
return string;
}
// Order functions
function fs_id( element ) {
return jQuery(element).closest('.flexible_shipping_shipment').attr('data-id');
}
function fs_data_set_val( data, name, val ) {
if ( typeof name == 'undefined' ) {
return data;
}
if ( name.indexOf("[") == -1 ) {
data[name] = val;
}
else {
var names = name.split("[");
var data2 = data;
var data3 = data;
var name2 = '';
jQuery.each(names,function(index,name) {
name2 = name.replace("]","");
if ( typeof data2[name2] == 'undefined' ) {
data2[name2] = {};
}
data3 = data2;
data2 = data2[name2];
});
data3[name2] = val;
}
return data;
}
function fs_ajax(button, id, fs_action) {
jQuery('.button-shipping').attr('disabled', true);
jQuery(button).parent().find('.spinner').css({visibility: 'visible'});
var data = {};
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_content input, #flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_content select, #flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_content textarea').each(function () {
if (jQuery(this).attr('type') == 'radio') {
data = fs_data_set_val( data, jQuery(this).attr('name'), jQuery('#flexible_shipping_shipment_' + id + ' input[name=' + jQuery(this).attr('name') + ']:checked').val() );
}
else if (jQuery(this).attr('type') == 'checkbox') {
if (jQuery(this).is(':checked')) {
data = fs_data_set_val( data, jQuery(this).attr('name'), jQuery(this).val() );
}
else {
data = fs_data_set_val( data, jQuery(this).attr('name'), '' );
}
}
else {
data = fs_data_set_val( data, jQuery(this).attr('name'), jQuery(this).val() );
}
});
var nonce = jQuery('#flexible_shipping_shipment_nonce_' + id).val();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').hide();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').removeClass("flexible_shipping_shipment_message_error");
jQuery.ajax({
url: fs_admin.ajax_url,
type: 'POST',
data: {
fs_action: fs_action,
action: 'flexible_shipping',
nonce: nonce,
shipment_id: id,
data: data,
},
dataType: 'json',
}).done(function (response) {
if (response) {
if (response == '0') {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').show();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').html("Invalid response: 0");
}
else if (response.status == 'success') {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_content').html(response.content);
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').hide();
if ( typeof response.message != 'undefined' ) {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').show();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').html(response.message);
}
}
else {
if ( typeof response.content !== 'undefined' ) {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_content').html(response.content);
}
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').addClass("flexible_shipping_shipment_message_error");
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').show();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').html(response.message);
}
}
else {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').addClass("flexible_shipping_shipment_message_error");
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').show();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').html("Request failed: invalid method?");
}
}).always(function () {
jQuery('.button-shipping').attr('disabled', false);
jQuery('.shipping-spinner').parent().find('.spinner').css({visibility: 'hidden'});
fs_select2();
}).fail(function (jqXHR, textStatus) {
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').addClass("flexible_shipping_shipment_message_error");
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').show();
jQuery('#flexible_shipping_shipment_' + id + ' .flexible_shipping_shipment_message').html("Request failed: " + textStatus + " " + jqXHR.status);
})
}
/* Notice */
jQuery(function($) {
$( document ).on( 'click', '.flexible-shipping-taxes-notice .notice-dismiss', function () {
$.ajax( ajaxurl,
{
type: 'POST',
data: {
action: 'flexible_shipping_taxes_notice',
}
} );
} );
$( document ).on( 'click', '#enable-fs-connect-box', function () {
var fs_connect_checkbox = $('.enable-fs-connect-box');
var fs_box_state;
if ( fs_connect_checkbox.prop('checked') ){
$('.fs-connect-integration-box').slideDown();
fs_box_state = 1;
} else{
$('.fs-connect-integration-box').slideUp();
fs_box_state = 0;
}
$.ajax( ajaxurl,
{
type: 'POST',
data: {
action: 'update_fs_connect_integration_setting',
fs_box_state: fs_box_state
}
} );
} );
$( document ).on( 'click', '#flexible_shipping_rate_plugin .close-fs-rate-notice', function () {
$( '#flexible_shipping_rate_plugin .notice-dismiss' ).click();
} );
$( document ).on( 'click', '#flexible_shipping_rate_plugin .fs-not-good', function () {
$('#flexible_shipping_rate_plugin p').html( fs_admin.notice_not_good_enought );
} );
});

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,61 @@
/**
* Conditional Logic for Access Point
*
* @param field_name
* @param shipment_id
* @param conditions
* @constructor
*/
function ApConditionalLogic(field_name, shipment_id, conditions) {
this.field_name = field_name;
this.shipment_id = shipment_id;
this.conditions = conditions;
this.field_id = '#' + this.field_name + '_' + this.shipment_id;
this.field_id = this.createFieldId( this.field_name, this.shipment_id );
let conditional_logic = this;
this.conditions.forEach(function(value){
jQuery( conditional_logic.createFieldId( value.field, shipment_id ) ).on('change', function(event) {
conditional_logic.doLogic(event)
});
});
jQuery(document).ready(function(event) { conditional_logic.doLogic(event) });
}
/**
* Create field id from field name and shipment id;
*
* @param field_name
* @param shipment_id
* @return {string}
*/
ApConditionalLogic.prototype.createFieldId = function( field_name, shipment_id ) {
return '#' + field_name + '_' + shipment_id;
};
/**
* Do logic.
*
* @param event
*/
ApConditionalLogic.prototype.doLogic = function(event) {
let show_field = true;
let field_id = this.field_id;
let shipment_id = this.shipment_id;
let ap_conditional_logic = this;
this.conditions.forEach(function(condition) {
let cond_value = false;
if ( condition.cond === 'in' && condition.values.indexOf( jQuery( ap_conditional_logic.createFieldId( condition.field, shipment_id ) ).val() ) !== -1 ) {
cond_value = true;
}
show_field = show_field && cond_value;
});
var field_div = jQuery(field_id).closest('div');
if ( show_field ) {
field_div.show();
} else {
field_div.hide();
}
};

View File

@@ -0,0 +1 @@
function ApConditionalLogic(a,c,b){this.field_name=a;this.shipment_id=c;this.conditions=b;this.field_id="#"+this.field_name+"_"+this.shipment_id;this.field_id=this.createFieldId(this.field_name,this.shipment_id);let conditional_logic=this;this.conditions.forEach(function(d){jQuery(conditional_logic.createFieldId(d.field,c)).on("change",function(e){conditional_logic.doLogic(e)})});jQuery(document).ready(function(d){conditional_logic.doLogic(d)})}ApConditionalLogic.prototype.createFieldId=function(a,b){return"#"+a+"_"+b};ApConditionalLogic.prototype.doLogic=function(a){let show_field=true;let field_id=this.field_id;let shipment_id=this.shipment_id;let ap_conditional_logic=this;this.conditions.forEach(function(c){let cond_value=false;if(c.cond==="in"&&c.values.indexOf(jQuery(ap_conditional_logic.createFieldId(c.field,shipment_id)).val())!==-1){cond_value=true}show_field=show_field&&cond_value});var b=jQuery(field_id).closest("div");if(show_field){b.show()}else{b.hide()}};

View File

@@ -0,0 +1 @@
jQuery(document).on("change",".flexible-shipping-collection-point-select",function(){jQuery(document.body).trigger("update_checkout")});

View File

@@ -0,0 +1,58 @@
jQuery(document).ready(function () {
var window_map;
jQuery(document).on('click', '.flexible-shipping-collection-point-map-selector', function () {
var service_id = jQuery(this).attr('data-service-id');
var select_id = jQuery(this).attr('data-select-id');
var params = {
service_id: service_id,
select_id: select_id,
};
var y = window.top.outerHeight / 2 + window.top.screenY - (600 / 2);
var x = window.top.outerWidth / 2 + window.top.screenX - (800 / 2);
window_map = window.open(fs_collection_points_map.collection_points_map_url + '&' + jQuery.param(params), "", "width=800,height=600,top=" + y + ",left=" + x);
window.addEventListener('message', function (event) {
if (event.origin !== window.location.origin) {
return false;
}
if ('get_adresses_data' === event.data.action) {
send_adresses_data_to_map(window_map, service_id, select_id);
}
if (event.data.point_id && 'select_point' === event.data.action) {
update_point_from_map(event.data.point_id, select_id);
}
}, true);
return false;
});
function update_point_from_map(point_id, select_id) {
var point_select = jQuery('#' + select_id);
point_select.val(point_id);
point_select.trigger('change.select2');
jQuery(document.body).trigger('update_checkout');
}
function send_adresses_data_to_map(window_map, service_id, select_field_id) {
var data = {
different_addres: jQuery('#ship-to-different-address-checkbox').prop('checked'),
shipping_country: jQuery('#shipping_country').val(),
shipping_address_1: jQuery('#shipping_address_1').val(),
shipping_address_2: jQuery('#shipping_address_2').val(),
shipping_postcode: jQuery('#shipping_postcode').val(),
shipping_city: jQuery('#shipping_city').val(),
billing_country: jQuery('#billing_country').val(),
billing_address_1: jQuery('#billing_address_1').val(),
billing_address_2: jQuery('#billing_address_2').val(),
billing_postcode: jQuery('#billing_postcode').val(),
billing_city: jQuery('#billing_city').val(),
selected_point: jQuery('#' + select_field_id).val(),
action: 'fs_collection_points_' + service_id,
security: fs_collection_points_map.ajax_nonce
};
window_map.postMessage({addresses_data: data, action: 'send_address_data'}, window.location.origin);
}
})

View File

@@ -0,0 +1 @@
jQuery(document).ready(function(){var b;jQuery(document).on("click",".flexible-shipping-collection-point-map-selector",function(){var e=jQuery(this).attr("data-service-id");var h=jQuery(this).attr("data-select-id");var f={service_id:e,select_id:h};var g=window.top.outerHeight/2+window.top.screenY-(600/2);var d=window.top.outerWidth/2+window.top.screenX-(800/2);b=window.open(fs_collection_points_map.collection_points_map_url+"&"+jQuery.param(f),"","width=800,height=600,top="+g+",left="+d);window.addEventListener("message",function(i){if(i.origin!==window.location.origin){return false}if("get_adresses_data"===i.data.action){c(b,e,h)}if(i.data.point_id&&"select_point"===i.data.action){a(i.data.point_id,h)}},true);return false});function a(d,f){var e=jQuery("#"+f);e.val(d);e.trigger("change.select2");jQuery(document.body).trigger("update_checkout")}function c(d,f,e){var g={different_addres:jQuery("#ship-to-different-address-checkbox").prop("checked"),shipping_country:jQuery("#shipping_country").val(),shipping_address_1:jQuery("#shipping_address_1").val(),shipping_address_2:jQuery("#shipping_address_2").val(),shipping_postcode:jQuery("#shipping_postcode").val(),shipping_city:jQuery("#shipping_city").val(),billing_country:jQuery("#billing_country").val(),billing_address_1:jQuery("#billing_address_1").val(),billing_address_2:jQuery("#billing_address_2").val(),billing_postcode:jQuery("#billing_postcode").val(),billing_city:jQuery("#billing_city").val(),selected_point:jQuery("#"+e).val(),action:"fs_collection_points_"+f,security:fs_collection_points_map.ajax_nonce};d.postMessage({addresses_data:g,action:"send_address_data"},window.location.origin)}});