Plugin Directory

Changeset 3436966


Ignore:
Timestamp:
01/11/2026 08:34:43 AM (3 months ago)
Author:
aushamim
Message:

Update to version 1.8.16 from GitHub

Location:
subscription
Files:
18 edited
1 copied

Legend:

Unmodified
Added
Removed
  • subscription/tags/1.8.16/build/index.asset.php

    r3428836 r3436966  
    1 <?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-price-format', 'wp-i18n', 'wp-plugins'), 'version' => '8c6fd5bc67240ba195d4');
     1<?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-price-format', 'wp-i18n', 'wp-plugins'), 'version' => '659ff779ee647e15719f');
  • subscription/tags/1.8.16/build/index.js

    r3428836 r3436966  
    1 (()=>{"use strict";var e={20:(e,t,r)=>{var s=r(609),i=Symbol.for("react.element"),n=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,c=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function p(e,t,r){var s,n={},p=null,l=null;for(s in void 0!==r&&(p=""+r),void 0!==t.key&&(p=""+t.key),void 0!==t.ref&&(l=t.ref),t)o.call(t,s)&&!a.hasOwnProperty(s)&&(n[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps)void 0===n[s]&&(n[s]=t[s]);return{$$typeof:i,type:e,key:p,ref:l,props:n,_owner:c.current}}t.Fragment=n,t.jsx=p,t.jsxs=p},609:e=>{e.exports=window.React},848:(e,t,r)=>{e.exports=r(20)}},t={};const r=window.wc.blocksCheckout,s=window.wc.blocksComponents,i=window.wp.i18n,n=window.wp.plugins,o=window.wc.priceFormat;var c=function r(s){var i=t[s];if(void 0!==i)return i.exports;var n=t[s]={exports:{}};return e[s](n,n.exports,r),n.exports}(848);(0,r.registerCheckoutFilters)("sdevs-subscription",{cartItemPrice:(e,t,r,s)=>{const{sdevs_subscription:n}=t,{cartItem:o}=r,{totals:c}=o;if(void 0===c)return e;if("0"===c.line_total)return`<price/> ${(0,i.__)("Due Today","subscription")}`;if(n&&n.type){const e=n.type.charAt(0).toUpperCase()+n.type.slice(1),t=parseInt(n.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> / ${n.time&&n.time>1?" "+n.time+"-":""}${e}${r}`}return e},subtotalPriceFormat:(e,t,r,s)=>{const{sdevs_subscription:n}=t,{sdevs_subscription:o}=t;if(n&&n.type){const e=n.type.charAt(0).toUpperCase()+n.type.slice(1),t=parseInt(n.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> ${(0,i.__)("Every","subscription")} ${n.time&&n.time>1?" "+n.time+"-":""}${e}${r}`}return e}});const a=({cart:e,extensions:t})=>{if(0===Object.keys(t).length)return;const{cartTotals:n}=e,{sdevs_subscription:a}=t;if(0===a.length)return;const p=(0,o.getCurrencyFromPriceResponse)(n),l=Math.pow(10,p.minorUnit);return(0,c.jsx)(r.TotalsItem,{className:"wc-block-components-totals-footer-item",label:(0,i.__)("Recurring totals","subscription"),description:(0,c.jsx)("div",{style:{display:"grid"},children:a.map(e=>{const t=e.type.charAt(0).toUpperCase()+e.type.slice(1);return(0,c.jsxs)("div",{style:{margin:"20px 0",float:"right"},children:[(0,c.jsxs)("div",{style:{fontSize:"18px"},children:[(0,c.jsx)(s.FormattedMonetaryAmount,{currency:p,value:Math.round(e.price*l)})," /"," ",e.time&&e.time>1?e.time+"-"+t+" ":t]}),(0,c.jsx)("small",{children:e.description}),"yes"===e.can_user_cancel&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,i.__)("You can cancel subscription at any time!","subscription")," "]})]}),e.max_no_payment>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,i.__)("This subscription will be billed for","subscription")," ",e.max_no_payment," ",(0,i.__)("times.","subscription")]})]})]})})})})};(0,n.registerPlugin)("sdevs-subscription",{render:()=>(0,c.jsx)(r.ExperimentalOrderMeta,{children:(0,c.jsx)(a,{})}),scope:"woocommerce-checkout"})})();
     1(()=>{"use strict";var e={20:(e,t,r)=>{var s=r(609),n=Symbol.for("react.element"),i=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,c=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function p(e,t,r){var s,i={},p=null,l=null;for(s in void 0!==r&&(p=""+r),void 0!==t.key&&(p=""+t.key),void 0!==t.ref&&(l=t.ref),t)o.call(t,s)&&!a.hasOwnProperty(s)&&(i[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps)void 0===i[s]&&(i[s]=t[s]);return{$$typeof:n,type:e,key:p,ref:l,props:i,_owner:c.current}}t.Fragment=i,t.jsx=p,t.jsxs=p},609:e=>{e.exports=window.React},848:(e,t,r)=>{e.exports=r(20)}},t={};const r=window.wc.blocksCheckout,s=window.wc.blocksComponents,n=window.wp.i18n,i=window.wp.plugins,o=window.wc.priceFormat;var c=function r(s){var n=t[s];if(void 0!==n)return n.exports;var i=t[s]={exports:{}};return e[s](i,i.exports,r),i.exports}(848);(0,r.registerCheckoutFilters)("sdevs-subscription",{cartItemPrice:(e,t,r,s)=>{const{sdevs_subscription:i}=t,{cartItem:o}=r,{totals:c}=o;if(void 0===c)return e;if("0"===c.line_total)return`<price/> ${(0,n.__)("Due Today","subscription")}`;if(i&&i.type){const e=i.type.charAt(0).toUpperCase()+i.type.slice(1),t=parseInt(i.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> / ${i.time&&i.time>1?" "+i.time+"-":""}${e}${r}`}return e},subtotalPriceFormat:(e,t,r,s)=>{const{sdevs_subscription:i}=t,{sdevs_subscription:o}=t;if(i&&i.type){const e=i.type.charAt(0).toUpperCase()+i.type.slice(1),t=parseInt(i.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> ${(0,n.__)("Every","subscription")} ${i.time&&i.time>1?" "+i.time+"-":""}${e}${r}`}return e}});const a=({cart:e,extensions:t})=>{if(0===Object.keys(t).length)return;const{cartTotals:i}=e,{sdevs_subscription:a}=t;if(0===a.length)return;const p=(0,o.getCurrencyFromPriceResponse)(i),l=Math.pow(10,p.minorUnit);return(0,c.jsx)(r.TotalsItem,{className:"wc-block-components-totals-footer-item",label:(0,n.__)("Recurring totals","subscription"),description:(0,c.jsx)("div",{style:{display:"grid"},children:a.map(e=>{const t=e.type.charAt(0).toUpperCase()+e.type.slice(1);return(0,c.jsxs)("div",{style:{margin:"20px 0",float:"right"},children:[(0,c.jsxs)("div",{style:{fontSize:"18px"},children:[(0,c.jsx)(s.FormattedMonetaryAmount,{currency:p,value:Math.round(e.price*l)})," /"," ",e.time&&e.time>1?e.time+"-"+t+" ":t]}),(0,c.jsx)("small",{children:e.description}),"yes"===e.can_user_cancel&&0===parseInt(e.max_no_payment)&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,n.__)("You can cancel subscription at any time!","subscription")," "]})]}),e.max_no_payment>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsx)("small",{children:
     2// translators: %s: number of payments.
     3// translators: %s: number of payments.
     4(0,n.sprintf)((0,n.__)("This subscription will be billed for %s times.","subscription"),e.max_no_payment)})]})]})})})})};(0,i.registerPlugin)("sdevs-subscription",{render:()=>(0,c.jsx)(r.ExperimentalOrderMeta,{children:(0,c.jsx)(a,{})}),scope:"woocommerce-checkout"})})();
  • subscription/tags/1.8.16/changelog.txt

    r3428836 r3436966  
    11*** WPSubscription Changelog ***
     2
     32026-01-11 - version 1.8.16
     4* fix: Load translations from WP.Org.
     5* fix: Zero decimal price issue.
     6* fix: Cart description visibility issue.
    27
    382025-12-29 - version 1.8.15
  • subscription/tags/1.8.16/includes/Frontend/Cart.php

    r3428836 r3436966  
    474474                            <?php echo esc_html( $billing_text ); ?>:
    475475                            <?php echo esc_html( $recurr['trial_status'] ? $recurr['start_date'] : $recurr['next_date'] ); ?></small>
    476                         <?php if ( 'yes' === $recurr['can_user_cancel'] ) : ?>
     476                        <?php if ( 'yes' === $recurr['can_user_cancel'] && 0 !== (int) $recurr['max_no_payment'] ) : ?>
    477477                            <br>
    478478                            <small><?php esc_html_e( 'You can cancel subscription at any time!', 'subscription' ); ?></small>
     
    482482                        <?php if ( $recurr['max_no_payment'] > 0 ) : ?>
    483483                            <br>
    484                             <small><?php esc_html_e( 'This subscription will be billed for', 'subscription' ); ?> <?php echo esc_html( $recurr['max_no_payment'] ); ?> <?php esc_html_e( 'times.', 'subscription' ); ?></small>
     484                            <small>
     485                                <?php
     486                                // translators: %s: number of payments.
     487                                echo esc_html( sprintf( __( 'This subscription will be billed for %s times.', 'subscription' ), esc_html( $recurr['max_no_payment'] ) ) );
     488                                ?>
     489                            </small>
    485490                        <?php endif; ?>
    486491                    </p>
  • subscription/tags/1.8.16/includes/Utils/Product.php

    r3363714 r3436966  
    135135    }
    136136
    137     public function get_signup_fee(): int {
     137    public function get_signup_fee(): float {
    138138        return 0;
    139139    }
  • subscription/tags/1.8.16/languages/subscription.pot

    r3428836 r3436966  
    1 # Copyright (C) 2025 ConversWP
     1# Copyright (C) 2026 ConversWP
    22# This file is distributed under the same license as the Subscription for WooCommerce - WPSubscription plugin.
    33msgid ""
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2025-12-29T05:59:59+00:00\n"
     12"POT-Creation-Date: 2026-01-11T08:27:36+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1414"X-Generator: WP-CLI 2.12.0\n"
     
    935935#: includes/Frontend/ActionController.php:67
    936936#: includes/Frontend/ActionController.php:97
    937 #: includes/Frontend/Cart.php:506
     937#: includes/Frontend/Cart.php:511
    938938msgid "This subscription has reached its maximum payment limit and cannot be renewed further."
    939939msgstr ""
     
    10291029msgstr ""
    10301030
    1031 #: includes/Frontend/Cart.php:484
    1032 #: build/index.js:1
    1033 #: src/index.js:100
    1034 msgid "This subscription will be billed for"
    1035 msgstr ""
    1036 
    1037 #: includes/Frontend/Cart.php:484
    1038 #: build/index.js:1
    1039 #: src/index.js:101
    1040 msgid "times."
     1031#. translators: %s: number of payments.
     1032#: includes/Frontend/Cart.php:487
     1033#: build/index.js:4
     1034#: src/index.js:103
     1035#, php-format,js-format
     1036msgid "This subscription will be billed for %s times."
    10411037msgstr ""
    10421038
  • subscription/tags/1.8.16/src/index.js

    r3428836 r3436966  
    11import { ExperimentalOrderMeta, registerCheckoutFilters, TotalsItem } from "@woocommerce/blocks-checkout";
    22import { FormattedMonetaryAmount } from "@woocommerce/blocks-components";
    3 import { __ } from "@wordpress/i18n";
     3import { __, sprintf } from "@wordpress/i18n";
    44import { registerPlugin } from "@wordpress/plugins";
    55
     
    8888                </div>
    8989                <small>{recurring.description}</small>
    90                 {recurring.can_user_cancel === "yes" && (
     90                {recurring.can_user_cancel === "yes" && parseInt(recurring.max_no_payment) === 0 && (
    9191                  <>
    9292                    <br />
     
    9898                    <br />
    9999                    <small>
    100                       {__("This subscription will be billed for", "subscription")} {recurring.max_no_payment}{" "}
    101                       {__("times.", "subscription")}
     100                      {
     101                        // translators: %s: number of payments.
     102                        sprintf(
     103                          __("This subscription will be billed for %s times.", "subscription"),
     104                          recurring.max_no_payment,
     105                        )
     106                      }
    102107                    </small>
    103108                  </>
  • subscription/tags/1.8.16/subscription.php

    r3428836 r3436966  
    77 * Description: WPSubscription allow WooCommerce to enables recurring payments, subscriptions, and auto-renewals for digital and physical products. Supports Stripe, PayPal, Paddle, and more.
    88 *
    9  * Version: 1.8.15
     9 * Version: 1.8.16
    1010 *
    1111 * Author: ConversWP
     
    5151     * @var string
    5252     */
    53     const version = '1.8.15';
     53    const version = '1.8.16';
    5454
    5555    /**
     
    257257    public function localization_setup() {
    258258        // Explicitly load translations for local/custom installs.
     259        /*
    259260        load_plugin_textdomain(
    260261            'subscription',
     
    262263            dirname( plugin_basename( __FILE__ ) ) . '/languages'
    263264        );
     265        */
    264266    }
    265267
  • subscription/tags/1.8.16/vendor/composer/installed.php

    r3428836 r3436966  
    22    'root' => array(
    33        'name' => 'converswp/subscription',
    4         'pretty_version' => '1.8.15',
    5         'version' => '1.8.15.0',
    6         'reference' => '55a23021452ce3c3666160fdbec58ffef5082111',
     4        'pretty_version' => '1.8.16',
     5        'version' => '1.8.16.0',
     6        'reference' => '88260eb4e5c8bb3db83418ec662134c8228f19f0',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'converswp/subscription' => array(
    14             'pretty_version' => '1.8.15',
    15             'version' => '1.8.15.0',
    16             'reference' => '55a23021452ce3c3666160fdbec58ffef5082111',
     14            'pretty_version' => '1.8.16',
     15            'version' => '1.8.16.0',
     16            'reference' => '88260eb4e5c8bb3db83418ec662134c8228f19f0',
    1717            'type' => 'wordpress-plugin',
    1818            'install_path' => __DIR__ . '/../../',
  • subscription/trunk/build/index.asset.php

    r3428836 r3436966  
    1 <?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-price-format', 'wp-i18n', 'wp-plugins'), 'version' => '8c6fd5bc67240ba195d4');
     1<?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-price-format', 'wp-i18n', 'wp-plugins'), 'version' => '659ff779ee647e15719f');
  • subscription/trunk/build/index.js

    r3428836 r3436966  
    1 (()=>{"use strict";var e={20:(e,t,r)=>{var s=r(609),i=Symbol.for("react.element"),n=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,c=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function p(e,t,r){var s,n={},p=null,l=null;for(s in void 0!==r&&(p=""+r),void 0!==t.key&&(p=""+t.key),void 0!==t.ref&&(l=t.ref),t)o.call(t,s)&&!a.hasOwnProperty(s)&&(n[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps)void 0===n[s]&&(n[s]=t[s]);return{$$typeof:i,type:e,key:p,ref:l,props:n,_owner:c.current}}t.Fragment=n,t.jsx=p,t.jsxs=p},609:e=>{e.exports=window.React},848:(e,t,r)=>{e.exports=r(20)}},t={};const r=window.wc.blocksCheckout,s=window.wc.blocksComponents,i=window.wp.i18n,n=window.wp.plugins,o=window.wc.priceFormat;var c=function r(s){var i=t[s];if(void 0!==i)return i.exports;var n=t[s]={exports:{}};return e[s](n,n.exports,r),n.exports}(848);(0,r.registerCheckoutFilters)("sdevs-subscription",{cartItemPrice:(e,t,r,s)=>{const{sdevs_subscription:n}=t,{cartItem:o}=r,{totals:c}=o;if(void 0===c)return e;if("0"===c.line_total)return`<price/> ${(0,i.__)("Due Today","subscription")}`;if(n&&n.type){const e=n.type.charAt(0).toUpperCase()+n.type.slice(1),t=parseInt(n.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> / ${n.time&&n.time>1?" "+n.time+"-":""}${e}${r}`}return e},subtotalPriceFormat:(e,t,r,s)=>{const{sdevs_subscription:n}=t,{sdevs_subscription:o}=t;if(n&&n.type){const e=n.type.charAt(0).toUpperCase()+n.type.slice(1),t=parseInt(n.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> ${(0,i.__)("Every","subscription")} ${n.time&&n.time>1?" "+n.time+"-":""}${e}${r}`}return e}});const a=({cart:e,extensions:t})=>{if(0===Object.keys(t).length)return;const{cartTotals:n}=e,{sdevs_subscription:a}=t;if(0===a.length)return;const p=(0,o.getCurrencyFromPriceResponse)(n),l=Math.pow(10,p.minorUnit);return(0,c.jsx)(r.TotalsItem,{className:"wc-block-components-totals-footer-item",label:(0,i.__)("Recurring totals","subscription"),description:(0,c.jsx)("div",{style:{display:"grid"},children:a.map(e=>{const t=e.type.charAt(0).toUpperCase()+e.type.slice(1);return(0,c.jsxs)("div",{style:{margin:"20px 0",float:"right"},children:[(0,c.jsxs)("div",{style:{fontSize:"18px"},children:[(0,c.jsx)(s.FormattedMonetaryAmount,{currency:p,value:Math.round(e.price*l)})," /"," ",e.time&&e.time>1?e.time+"-"+t+" ":t]}),(0,c.jsx)("small",{children:e.description}),"yes"===e.can_user_cancel&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,i.__)("You can cancel subscription at any time!","subscription")," "]})]}),e.max_no_payment>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,i.__)("This subscription will be billed for","subscription")," ",e.max_no_payment," ",(0,i.__)("times.","subscription")]})]})]})})})})};(0,n.registerPlugin)("sdevs-subscription",{render:()=>(0,c.jsx)(r.ExperimentalOrderMeta,{children:(0,c.jsx)(a,{})}),scope:"woocommerce-checkout"})})();
     1(()=>{"use strict";var e={20:(e,t,r)=>{var s=r(609),n=Symbol.for("react.element"),i=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,c=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,a={key:!0,ref:!0,__self:!0,__source:!0};function p(e,t,r){var s,i={},p=null,l=null;for(s in void 0!==r&&(p=""+r),void 0!==t.key&&(p=""+t.key),void 0!==t.ref&&(l=t.ref),t)o.call(t,s)&&!a.hasOwnProperty(s)&&(i[s]=t[s]);if(e&&e.defaultProps)for(s in t=e.defaultProps)void 0===i[s]&&(i[s]=t[s]);return{$$typeof:n,type:e,key:p,ref:l,props:i,_owner:c.current}}t.Fragment=i,t.jsx=p,t.jsxs=p},609:e=>{e.exports=window.React},848:(e,t,r)=>{e.exports=r(20)}},t={};const r=window.wc.blocksCheckout,s=window.wc.blocksComponents,n=window.wp.i18n,i=window.wp.plugins,o=window.wc.priceFormat;var c=function r(s){var n=t[s];if(void 0!==n)return n.exports;var i=t[s]={exports:{}};return e[s](i,i.exports,r),i.exports}(848);(0,r.registerCheckoutFilters)("sdevs-subscription",{cartItemPrice:(e,t,r,s)=>{const{sdevs_subscription:i}=t,{cartItem:o}=r,{totals:c}=o;if(void 0===c)return e;if("0"===c.line_total)return`<price/> ${(0,n.__)("Due Today","subscription")}`;if(i&&i.type){const e=i.type.charAt(0).toUpperCase()+i.type.slice(1),t=parseInt(i.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> / ${i.time&&i.time>1?" "+i.time+"-":""}${e}${r}`}return e},subtotalPriceFormat:(e,t,r,s)=>{const{sdevs_subscription:i}=t,{sdevs_subscription:o}=t;if(i&&i.type){const e=i.type.charAt(0).toUpperCase()+i.type.slice(1),t=parseInt(i.max_no_payment,10),r=!isNaN(t)&&t>0?` x ${t}`:"";return`<price/> ${(0,n.__)("Every","subscription")} ${i.time&&i.time>1?" "+i.time+"-":""}${e}${r}`}return e}});const a=({cart:e,extensions:t})=>{if(0===Object.keys(t).length)return;const{cartTotals:i}=e,{sdevs_subscription:a}=t;if(0===a.length)return;const p=(0,o.getCurrencyFromPriceResponse)(i),l=Math.pow(10,p.minorUnit);return(0,c.jsx)(r.TotalsItem,{className:"wc-block-components-totals-footer-item",label:(0,n.__)("Recurring totals","subscription"),description:(0,c.jsx)("div",{style:{display:"grid"},children:a.map(e=>{const t=e.type.charAt(0).toUpperCase()+e.type.slice(1);return(0,c.jsxs)("div",{style:{margin:"20px 0",float:"right"},children:[(0,c.jsxs)("div",{style:{fontSize:"18px"},children:[(0,c.jsx)(s.FormattedMonetaryAmount,{currency:p,value:Math.round(e.price*l)})," /"," ",e.time&&e.time>1?e.time+"-"+t+" ":t]}),(0,c.jsx)("small",{children:e.description}),"yes"===e.can_user_cancel&&0===parseInt(e.max_no_payment)&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsxs)("small",{children:[(0,n.__)("You can cancel subscription at any time!","subscription")," "]})]}),e.max_no_payment>0&&(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)("br",{}),(0,c.jsx)("small",{children:
     2// translators: %s: number of payments.
     3// translators: %s: number of payments.
     4(0,n.sprintf)((0,n.__)("This subscription will be billed for %s times.","subscription"),e.max_no_payment)})]})]})})})})};(0,i.registerPlugin)("sdevs-subscription",{render:()=>(0,c.jsx)(r.ExperimentalOrderMeta,{children:(0,c.jsx)(a,{})}),scope:"woocommerce-checkout"})})();
  • subscription/trunk/changelog.txt

    r3428836 r3436966  
    11*** WPSubscription Changelog ***
     2
     32026-01-11 - version 1.8.16
     4* fix: Load translations from WP.Org.
     5* fix: Zero decimal price issue.
     6* fix: Cart description visibility issue.
    27
    382025-12-29 - version 1.8.15
  • subscription/trunk/includes/Frontend/Cart.php

    r3428836 r3436966  
    474474                            <?php echo esc_html( $billing_text ); ?>:
    475475                            <?php echo esc_html( $recurr['trial_status'] ? $recurr['start_date'] : $recurr['next_date'] ); ?></small>
    476                         <?php if ( 'yes' === $recurr['can_user_cancel'] ) : ?>
     476                        <?php if ( 'yes' === $recurr['can_user_cancel'] && 0 !== (int) $recurr['max_no_payment'] ) : ?>
    477477                            <br>
    478478                            <small><?php esc_html_e( 'You can cancel subscription at any time!', 'subscription' ); ?></small>
     
    482482                        <?php if ( $recurr['max_no_payment'] > 0 ) : ?>
    483483                            <br>
    484                             <small><?php esc_html_e( 'This subscription will be billed for', 'subscription' ); ?> <?php echo esc_html( $recurr['max_no_payment'] ); ?> <?php esc_html_e( 'times.', 'subscription' ); ?></small>
     484                            <small>
     485                                <?php
     486                                // translators: %s: number of payments.
     487                                echo esc_html( sprintf( __( 'This subscription will be billed for %s times.', 'subscription' ), esc_html( $recurr['max_no_payment'] ) ) );
     488                                ?>
     489                            </small>
    485490                        <?php endif; ?>
    486491                    </p>
  • subscription/trunk/includes/Utils/Product.php

    r3363714 r3436966  
    135135    }
    136136
    137     public function get_signup_fee(): int {
     137    public function get_signup_fee(): float {
    138138        return 0;
    139139    }
  • subscription/trunk/languages/subscription.pot

    r3428836 r3436966  
    1 # Copyright (C) 2025 ConversWP
     1# Copyright (C) 2026 ConversWP
    22# This file is distributed under the same license as the Subscription for WooCommerce - WPSubscription plugin.
    33msgid ""
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2025-12-29T05:59:59+00:00\n"
     12"POT-Creation-Date: 2026-01-11T08:27:36+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1414"X-Generator: WP-CLI 2.12.0\n"
     
    935935#: includes/Frontend/ActionController.php:67
    936936#: includes/Frontend/ActionController.php:97
    937 #: includes/Frontend/Cart.php:506
     937#: includes/Frontend/Cart.php:511
    938938msgid "This subscription has reached its maximum payment limit and cannot be renewed further."
    939939msgstr ""
     
    10291029msgstr ""
    10301030
    1031 #: includes/Frontend/Cart.php:484
    1032 #: build/index.js:1
    1033 #: src/index.js:100
    1034 msgid "This subscription will be billed for"
    1035 msgstr ""
    1036 
    1037 #: includes/Frontend/Cart.php:484
    1038 #: build/index.js:1
    1039 #: src/index.js:101
    1040 msgid "times."
     1031#. translators: %s: number of payments.
     1032#: includes/Frontend/Cart.php:487
     1033#: build/index.js:4
     1034#: src/index.js:103
     1035#, php-format,js-format
     1036msgid "This subscription will be billed for %s times."
    10411037msgstr ""
    10421038
  • subscription/trunk/src/index.js

    r3428836 r3436966  
    11import { ExperimentalOrderMeta, registerCheckoutFilters, TotalsItem } from "@woocommerce/blocks-checkout";
    22import { FormattedMonetaryAmount } from "@woocommerce/blocks-components";
    3 import { __ } from "@wordpress/i18n";
     3import { __, sprintf } from "@wordpress/i18n";
    44import { registerPlugin } from "@wordpress/plugins";
    55
     
    8888                </div>
    8989                <small>{recurring.description}</small>
    90                 {recurring.can_user_cancel === "yes" && (
     90                {recurring.can_user_cancel === "yes" && parseInt(recurring.max_no_payment) === 0 && (
    9191                  <>
    9292                    <br />
     
    9898                    <br />
    9999                    <small>
    100                       {__("This subscription will be billed for", "subscription")} {recurring.max_no_payment}{" "}
    101                       {__("times.", "subscription")}
     100                      {
     101                        // translators: %s: number of payments.
     102                        sprintf(
     103                          __("This subscription will be billed for %s times.", "subscription"),
     104                          recurring.max_no_payment,
     105                        )
     106                      }
    102107                    </small>
    103108                  </>
  • subscription/trunk/subscription.php

    r3428836 r3436966  
    77 * Description: WPSubscription allow WooCommerce to enables recurring payments, subscriptions, and auto-renewals for digital and physical products. Supports Stripe, PayPal, Paddle, and more.
    88 *
    9  * Version: 1.8.15
     9 * Version: 1.8.16
    1010 *
    1111 * Author: ConversWP
     
    5151     * @var string
    5252     */
    53     const version = '1.8.15';
     53    const version = '1.8.16';
    5454
    5555    /**
     
    257257    public function localization_setup() {
    258258        // Explicitly load translations for local/custom installs.
     259        /*
    259260        load_plugin_textdomain(
    260261            'subscription',
     
    262263            dirname( plugin_basename( __FILE__ ) ) . '/languages'
    263264        );
     265        */
    264266    }
    265267
  • subscription/trunk/vendor/composer/installed.php

    r3428836 r3436966  
    22    'root' => array(
    33        'name' => 'converswp/subscription',
    4         'pretty_version' => '1.8.15',
    5         'version' => '1.8.15.0',
    6         'reference' => '55a23021452ce3c3666160fdbec58ffef5082111',
     4        'pretty_version' => '1.8.16',
     5        'version' => '1.8.16.0',
     6        'reference' => '88260eb4e5c8bb3db83418ec662134c8228f19f0',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    1212    'versions' => array(
    1313        'converswp/subscription' => array(
    14             'pretty_version' => '1.8.15',
    15             'version' => '1.8.15.0',
    16             'reference' => '55a23021452ce3c3666160fdbec58ffef5082111',
     14            'pretty_version' => '1.8.16',
     15            'version' => '1.8.16.0',
     16            'reference' => '88260eb4e5c8bb3db83418ec662134c8228f19f0',
    1717            'type' => 'wordpress-plugin',
    1818            'install_path' => __DIR__ . '/../../',
Note: See TracChangeset for help on using the changeset viewer.