Plugin Directory

Changeset 3344037


Ignore:
Timestamp:
08/13/2025 10:51:35 AM (8 months ago)
Author:
enituretechnology
Message:

1.6.18

  • Update: Added support for assigning specific products to designated boxes across all small plugins.
  • Update: Updated specific box packaging index for v2 templated plugins.
  • Update: Enabled insurance price management for multi-package shipments.
  • Update: Added multi-package compatibility for product-specific boxes.
Location:
standard-box-sizes
Files:
50 added
10 edited

Legend:

Unmodified
Added
Removed
  • standard-box-sizes/trunk/admin/assets/css/box-sizing-style.css

    r3065262 r3344037  
    184184    margin: 28px 0px 0 -4px;
    185185}
    186 .add_box_popup label span {
     186.add_box_popup label span,
     187.eniture-asterisk-red{
    187188    color: red;
    188189}
     
    803804    margin-top: 4px;
    804805}
     806
     807.del_btns{
     808    text-align: right;
     809}
  • standard-box-sizes/trunk/admin/assets/js/box-sizing-script.js

    r3222850 r3344037  
    3131var en_woo_addons_show_popup = function (step_for_class_exist) {
    3232    if (step_for_class_exist) {
     33        jQuery('.en-box-product-availability').hide();
    3334        jQuery('.en_multiple_packages').addClass('en_multiple_packages_append');
    3435        jQuery(".en_add_multi_box_sizing_overlay").css({visibility: "visible", opacity: "1"});
     
    234235
    235236    var fedex_box_category = en_woo_addons_trim_string(jQuery(clickedRowId).find(".fedex_box_category_td").text());
    236 
    237237    if(en_woo_addons_trim_string(fedex_box_category) !== ''){
    238238        jQuery("#en_box_sizing_fedex_box_category_"+ en_woo_addons_trim_string(fedex_box_category)).prop('checked', true);
     
    344344            jQuery(en_add_box_sizing_overlay_template + " #sm_box_size_type option[value=" + box_type + "]").prop('selected', true);
    345345            jQuery('.fdx-box-category-opt').show();
     346
    346347        } else if (en_plugin_url == 'usps_small') {
    347348            en_fedex_usps_reset_settings();
     
    367368        jQuery(en_add_box_sizing_overlay_template + " #sm_box_size_type option[value=" + box_type + "]").prop('selected', true);
    368369    }
     370
     371    if(box_type == 'upm_default'){
     372        jQuery('.en-box-product-availability').show();
     373    }else{
     374        jQuery('.en-box-product-availability').hide();
     375    }
    369376    // End
    370377
     
    466473        if (en_plugin_url == 'fedex_small' && en_selected_fedex_box != 'upm_default') {
    467474            jQuery('.fdx-box-category-opt').show();
     475            jQuery('.en-box-product-availability').hide();
    468476            jQuery(en_add_box_sizing_overlay_template + ' #sm_box_sizing_type').val('fedex_box');
    469477            var data = {en_selected_fedex_box: en_selected_fedex_box, action: 'or_get_box_sizing_details', wp_nonce: sbs.nonce};
     
    513521            jQuery('#sm_add_box_sizing input,#sm_add_box_sizing select').prop("disabled", false);
    514522            jQuery('.fdx-box-category-opt').hide();
     523            if ((en_plugin_url == 'usps_small' || en_plugin_url == 'fedex_small') && en_selected_fedex_box != 'upm_default') {
     524                jQuery('.en-box-product-availability').hide();
     525            }else{
     526                jQuery('.en-box-product-availability').show();
     527            }
    515528        }
    516529    });
     
    654667        jQuery("#en_box_sizing_fedex_box_category_both").prop('checked', true);
    655668        jQuery('.fdx-box-category-opt').hide();
     669        jQuery('.en-box-product-availability').show();
    656670        // reset product tags
    657671        jQuery('#en_box_sizing_product_availability_universal').prop('checked', true).trigger('change');
  • standard-box-sizes/trunk/admin/order/en-admin-order-class.php

    r3077468 r3344037  
    316316        public function en_get_bins_packed()
    317317        {
    318 
    319318            $count = 1;
    320319            $packaging_output = "";
     
    511510            if (isset($details) && !empty($details)) {
    512511                foreach ($details as $key => $bin_details) {
    513 
    514512                    $box_output = "";
    515513                    $usps_response_index = "";
  • standard-box-sizes/trunk/admin/request-handler/en-box-sizing-request-handler.php

    r3254669 r3344037  
    206206                return $en_request;
    207207            }
     208
     209            $all_bins = $this->en_set_bins();
     210            $this->prod_tag_boxes = empty($all_bins['prod_tag_boxes']) ? array() : $all_bins['prod_tag_boxes'];
     211
    208212            $counter_product = 0;
    209213            foreach ($en_request['commdityDetails'] as $zip => $items) {
     
    223227                    $multiPackage = $en_request['commdityDetails'][$zip][$key]['multiPackage'] = ($item_multiple_package == true) ? "1" : "0";
    224228
     229                    $en_request['commdityDetails'][$zip][$key]['packagingBoxes'] = $this->en_get_assosiated_boxes_array($prod_id);
     230
    225231                    $en_mutiple_packages_in_request = apply_filters('en_mutiple_packages_in_request', $multiPackage, $counter_product, $prod_id, $verticalRotation, $item, 'trinet');
    226232
     
    255261
    256262            $en_request['binPackaging'] = 1;
    257             $bins = (isset($this->en_set_bins()['bins'])) ? $this->en_set_bins()['bins'] : [];
     263            $bins = (isset($all_bins['bins'])) ? $all_bins['bins'] : [];
    258264            // Check usps small standard box indexes
    259265            foreach ($bins as $key => $bin) {
     
    290296        public function en_get_api_response($response)
    291297        {
    292             ;
    293298            foreach ($response as $zip => $value) {
    294299                if (
     
    345350                return false;
    346351            }
    347            
     352
    348353            if (
    349354                isset($this->vertical_rot) &&
     
    385390
    386391                $post_data[$zip]['binPackaging'] = '1';
    387 
    388392                $post_data[$zip] = apply_filters('en_mutiple_packages_update_request', $post_data[$zip], $this->item_multiple_package);
    389393            }
     
    410414        public function en_set_bins()
    411415        {
    412             $this->bin = $this->box_sizing_obj->en_return_all_boxes();
     416            if (empty($this->bin)){
     417                $this->bin = $this->box_sizing_obj->en_return_all_boxes();
     418            }
    413419            return $this->bin;
    414420        }
     
    425431            $this->prod_tag_boxes = (isset($this->bin['prod_tag_boxes'])) ? $this->bin['prod_tag_boxes'] : [];
    426432            $this->group_package_details['items'] = isset($this->group_package_details['items']) ? $this->group_package_details['items'] : [];
     433
    427434            foreach ($this->group_package_details['items'] as $item) {
    428435
     
    479486        public function en_get_assosiated_boxes_array($prod_id) {
    480487            $box_ids = [];
     488
     489            $product = wc_get_product($prod_id);
     490            if ($product && $product->is_type('variation')) {
     491                $prod_id = $product->get_parent_id();
     492            }
     493
    481494            $product_tags = get_the_terms( $prod_id, 'product_tag' );
    482495            if ( $product_tags && ! is_wp_error( $product_tags ) ) {
     
    488501               
    489502            }
    490 
     503            if(empty($box_ids)){
     504                return ''; // this is to resolve http issue, where http request omits the index in case of empty array
     505            }
    491506            return $box_ids;
    492507           
  • standard-box-sizes/trunk/admin/templates/en-woo-addon-box-sizing-template.php

    r3316255 r3344037  
    844844                                <input type="reset" id="reset" style="display:none"/>
    845845
    846                                 <?php
    847                                 if(!$multiple_packages && !empty($en_box_sizing_plugin_name) && $en_box_sizing_plugin_name == 'wwe_small_packages_quotes'){
    848                                     ?>
    849846                                    <!-- Setting for specific or all product type -->
    850847                                    <div class="col-md-12 en-box-product-availability">
     
    859856                                        <!-- For product tags -->
    860857                                        <div class="en-box-sizing-product-tags-list-div"  style="display:none">
    861                                             <label>Product Tags</label>
     858                                            <label>Product Tags <span class='eniture-asterisk-red'>*</span></label>
    862859                                            <select id="en-box-sizing-product-tags-list" multiple="multiple" data-attribute="en_box_sizing_product_tags"
    863860                                                    name="en_box_sizing_product_tags"
     
    878875                                        </div>
    879876                                    </div>
    880 
    881                                     <?php
    882                                 }
    883                                 ?>
    884877
    885878
  • standard-box-sizes/trunk/en-standard-box-sizes.php

    r3316255 r3344037  
    44  Plugin URI:  https://eniture.com/products/
    55  Description: Identifies the optimal packaging solution using your standard box sizes. For exclusive use with Eniture Technology&#39;s Small Package Quotes plugins.
    6   Version:     1.6.17
     6  Version:     1.6.18
    77  Author:      Eniture Technology
    88  Author URI:  https://eniture.com
     
    1111  Text Domain: eniture-technology
    1212  WC requires at least: 6.4
    13   WC tested up to: 9.9.4
     13  WC tested up to: 10.1.0
    1414 */
    1515
     
    135135        wp_enqueue_style('bootstrap_iso_style');
    136136
    137         wp_register_style('standard_box_sizes_style', plugin_dir_url(__FILE__) . '/admin/assets/css/box-sizing-style.css', false, '1.1.0');
     137        wp_register_style('standard_box_sizes_style', plugin_dir_url(__FILE__) . '/admin/assets/css/box-sizing-style.css', false, '1.1.1');
    138138        wp_enqueue_style('standard_box_sizes_style');
    139139    }
  • standard-box-sizes/trunk/includes/en-woo-box-addons-curl-request.php

    r2459413 r3344037  
    7777                $postArr['webHookUrl'] = get_site_url();
    7878            }
     79
    7980            $field_string = json_encode($postArr);
    8081            //set url
    81             $url = esc_url('https://ws049.eniture.com/addon/bin-packaging/index.php');
     82           $url = esc_url('https://ws049.eniture.com/addon/bin-packaging/index.php');
    8283            if (!empty($url) && !empty($field_string)) {
    8384                //set response
  • standard-box-sizes/trunk/multi-packaging/multi-packaging-request.php

    r2740420 r3344037  
    5050                switch ($post_data['carrierName']) {
    5151                    case 'wwe_small_packages_quotes':
    52                         $request_params = ['speed_ship_product_weight', 'product_width_array', 'product_length_array', 'product_height_array', 'speed_ship_quantity_array', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products'];
    53                         break;
    5452                    case 'WWE SmPkg':
    55                         $request_params = ['speed_ship_product_weight', 'product_width_array', 'product_length_array', 'product_height_array', 'speed_ship_quantity_array', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products'];
     53                        $request_params = ['speed_ship_product_weight', 'product_width_array', 'product_length_array', 'product_height_array', 'speed_ship_quantity_array', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products', 'speed_ship_product_price_array', 'packaging_boxes'];
    5654                        break;
    5755                    case 'fedexSmall':
    58                         $request_params = ['weight', 'width', 'length', 'height', 'count', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products'];
     56                        $request_params = ['weight', 'width', 'length', 'height', 'count', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products', 'price', 'packaging_boxes'];
    5957                        break;
    6058                    case 'unisheppers':
    61                         $request_params = ['commdityDetails', 'count', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products'];
     59                        $request_params = ['commdityDetails', 'count', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products', 'packaging_boxes'];
    6260                        break;
    6361                    case 'upsSmall':
    64                         $request_params = ['ups_small_pkg_product_weight', 'ups_small_pkg_product_width', 'ups_small_pkg_product_length', 'ups_small_pkg_product_height', 'ups_small_pkg_product_quantity', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products'];
     62                        $request_params = ['ups_small_pkg_product_weight', 'ups_small_pkg_product_width', 'ups_small_pkg_product_length', 'ups_small_pkg_product_height', 'ups_small_pkg_product_quantity', 'shipBinAlone', 'vertical_rotation', 'en_box_fee', 'products', 'ups_small_pkg_product_price', 'packaging_boxes'];
    6563                        break;
    6664                }
     
    111109        public function en_mutiple_packages_in_request($item_multiple_package, $counter_product, $product_id, $vertical_rot, $item, $plugin_id)
    112110        {
    113 
    114111            $multi_packages_arr = [];
    115112            $product_weight = (isset($item['productWeight'])) ? $item['productWeight'] : 0;
    116113            $product_qty = (isset($item['productQty'])) ? $item['productQty'] : 0;
    117114            $products = (isset($item['products'])) ? $item['products'] : '';
     115            $product_price = (is_numeric($item['productPrice'])) ? $item['productPrice'] : 0;
     116            $total_boxes_per_product = 0;
     117
    118118            if ($item_multiple_package == '1') {
    119119                $multi_packages_arr['en_quotes_return'] = 'no';
     
    124124                switch ($plugin_id) {
    125125                    case 'wwe_small_packages_quotes':
     126                    case 'WWE SmPkg':
    126127                        $request_params = [
    127128                            'en_weight' => 'speed_ship_product_weight',
     
    130131                            'en_height' => 'product_height_array',
    131132                            'en_count' => 'speed_ship_quantity_array',
    132                             'en_shipBinAlone' => 'shipBinAlone',
    133                             'en_vertical_rotation' => 'vertical_rotation',
    134                             'en_box_fee' => 'en_box_fee',
    135                             'en_products' => 'products'
    136                         ];
    137                         break;
    138                     case 'WWE SmPkg':
    139                         $request_params = [
    140                             'en_weight' => 'speed_ship_product_weight',
    141                             'en_width' => 'product_width_array',
    142                             'en_length' => 'product_length_array',
    143                             'en_height' => 'product_height_array',
    144                             'en_count' => 'speed_ship_quantity_array',
    145                             'en_shipBinAlone' => 'shipBinAlone',
    146                             'en_vertical_rotation' => 'vertical_rotation',
    147                             'en_box_fee' => 'en_box_fee',
     133                            'en_price' => 'speed_ship_product_price_array',
     134                            'en_shipBinAlone' => 'shipBinAlone',
     135                            'en_vertical_rotation' => 'vertical_rotation',
     136                            'en_box_fee' => 'en_box_fee',
     137                            'en_packaging_boxes' => 'packaging_boxes',
    148138                            'en_products' => 'products'
    149139                        ];
     
    156146                            'en_height' => 'height',
    157147                            'en_count' => 'count',
    158                             'en_shipBinAlone' => 'shipBinAlone',
    159                             'en_vertical_rotation' => 'vertical_rotation',
    160                             'en_box_fee' => 'en_box_fee',
     148                            'en_price' => 'price',
     149                            'en_shipBinAlone' => 'shipBinAlone',
     150                            'en_vertical_rotation' => 'vertical_rotation',
     151                            'en_box_fee' => 'en_box_fee',
     152                            'en_packaging_boxes' => 'packaging_boxes',
    161153                            'en_products' => 'products'
    162154                        ];
     
    169161                            'en_vertical_rotation' => 'vertical_rotation',
    170162                            'en_box_fee' => 'en_box_fee',
     163                            'en_packaging_boxes' => 'packaging_boxes',
    171164                            'en_products' => 'products'
    172165                        ];
     
    179172                            'en_vertical_rotation' => 'verticalRotation',
    180173                            'en_box_fee' => 'en_box_fee',
     174                            'en_packaging_boxes' => 'packaging_boxes',
    181175                            'en_products' => 'products',
    182176                        ];
     
    189183                            'en_height' => 'ups_small_pkg_product_height',
    190184                            'en_count' => 'ups_small_pkg_product_quantity',
    191                             'en_shipBinAlone' => 'shipBinAlone',
    192                             'en_vertical_rotation' => 'vertical_rotation',
    193                             'en_box_fee' => 'en_box_fee',
     185                            'en_price' => 'ups_small_pkg_product_price',
     186                            'en_shipBinAlone' => 'shipBinAlone',
     187                            'en_vertical_rotation' => 'vertical_rotation',
     188                            'en_box_fee' => 'en_box_fee',
     189                            'en_packaging_boxes' => 'packaging_boxes',
    194190                            'en_products' => 'products'
    195191                        ];
     
    236232
    237233                                (isset($en_box_fee)) ? $multi_packages_arr[$en_box_fee][$en_add_count] = $en_box_usps_box_fee : '';
     234                                (isset($en_packaging_boxes)) ? $multi_packages_arr[$en_add_count][$en_packaging_boxes] = '' : '';
    238235                                (isset($en_products)) ? $multi_packages_arr[$en_products][$en_add_count] = $products : '';
    239236                                (isset($commdityDetails['piecesOfLineItem'])) ? $multi_packages_arr['en_multi_box_qty'][$en_add_count] = $commdityDetails['piecesOfLineItem'] : '';
     
    246243                                        'lineItemHeight' => $en_box_height,
    247244                                        'piecesOfLineItem' => $en_box_quantity * $product_qty,
     245                                        'lineItemPrice' => 0
    248246                                    ];
    249247                                    $multi_packages_arr[$en_commdity_details][$en_add_count] = $commdityDetails;
    250248                                }
     249
    251250                                (isset($en_box_fee)) ? $multi_packages_arr[$en_box_fee][$en_add_count] = $en_box_usps_box_fee : '';
    252251                                (isset($en_weight) && strlen($en_weight) > 0) ? $multi_packages_arr[$en_weight][$en_add_count] = $en_box_box_weight : '';
     
    255254                                (isset($en_height) && strlen($en_height) > 0) ? $multi_packages_arr[$en_height][$en_add_count] = $en_box_height : '';
    256255                                (isset($en_count) && strlen($en_count) > 0) ? $multi_packages_arr[$en_count][$en_add_count] = $en_box_quantity * $product_qty : '';
     256                                (isset($en_price) && strlen($en_price) > 0) ? $multi_packages_arr[$en_price][$en_add_count] = 0 : '';
    257257                                (isset($en_shipBinAlone)) ? $multi_packages_arr[$en_shipBinAlone][$en_add_count] = 1 : '';
     258                                (isset($en_packaging_boxes)) ? $multi_packages_arr[$en_packaging_boxes][$en_add_count] = '' : '';
    258259                                (isset($en_vertical_rotation)) ? $multi_packages_arr[$en_vertical_rotation][$en_add_count] = $vertical_rot : '';
    259260                                (isset($en_products)) ? $multi_packages_arr[$en_products][$en_add_count] = $products : '';
    260261                                $multi_packages_arr['en_quotes_return'] = 'yes';
    261262                                $multi_packages_arr['en_multipackage_product'] = 'yes';
     263                                $total_boxes_per_product = (int) $total_boxes_per_product + (int) $en_box_quantity;
    262264                            }
    263265                        }
     
    266268                    }
    267269                }
     270
     271                if ($total_boxes_per_product > 0 && $product_price > 0 && is_array($multi_packages_arr) && count($multi_packages_arr) > 0) {
     272                    $price_per_box = round($product_price / $total_boxes_per_product, 2);
     273                    if (isset($multi_packages_arr[$en_price]) && is_array($multi_packages_arr[$en_price])) {
     274                        foreach ($multi_packages_arr[$en_price] as $price_index => $price_value) {
     275                            $multi_packages_arr[$en_price][$price_index] = $price_per_box;
     276                        }
     277                    }elseif (isset($en_commdity_details) && $en_commdity_details == 'commdityDetails' && is_array($multi_packages_arr['commdityDetails']) && count($multi_packages_arr['commdityDetails']) > 0){
     278                        foreach ($multi_packages_arr['commdityDetails'] as $price_index => $price_value) {
     279                            $multi_packages_arr['commdityDetails'][$price_index]['lineItemPrice'] = $price_per_box;
     280                        }
     281                    }
     282
     283                }
    268284            }
    269285
  • standard-box-sizes/trunk/multi-packaging/multi-packaging.php

    r3316255 r3344037  
    116116                        echo '<p class="en_multiple_packages_headings"> SKU: ' . $get_sku . '</p>';
    117117                        echo '<p class="en_multiple_packages_headings">' . get_the_title() . '</p>';
    118                         echo $this->EnWooAddonBoxSizingTemplate->en_woo_addons_box_sizing_table_multipackaging($product_id, $product_multibox_arr[$product_id]);
     118                        $product_multiple_boxes = empty($product_multibox_arr[$product_id]) ? [] : $product_multibox_arr[$product_id];
     119                        echo $this->EnWooAddonBoxSizingTemplate->en_woo_addons_box_sizing_table_multipackaging($product_id, $product_multiple_boxes);
    119120                        echo '<br>';
    120121                        echo '<br>';
  • standard-box-sizes/trunk/readme.txt

    r3316255 r3344037  
    44Requires at least: 6.4
    55Tested up to: 6.8.1
    6 Stable tag: 1.6.17
     6Stable tag: 1.6.18
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    4646
    4747== Changelog ==
     48
     49= 1.6.18 =
     50* Update: Added support for assigning specific products to designated boxes across all small plugins.
     51* Update: Updated specific box packaging index for v2 templated plugins.
     52* Update: Enabled insurance price management for multi-package shipments.
     53* Update: Added multi-package compatibility for product-specific boxes.
    4854
    4955= 1.6.17 =
Note: See TracChangeset for help on using the changeset viewer.