Plugin Directory

Changeset 3320657


Ignore:
Timestamp:
07/01/2025 01:14:42 PM (9 months ago)
Author:
lwsdevelopers
Message:

Tag - Require PHP 7.3. Tag - WooCommerce 9.9. Fix - Duration: a const method modifies the value of the argument. Fix - Point discount block may display wrong. Dev - PHP 8.4 support. Dev - new filter 'lws_woorewards_order_sponsored_by'. Tweak - responsive for Storefront theme

Location:
woorewards/trunk
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • woorewards/trunk/assets/lws-adminpanel/functions.php

    r3188612 r3320657  
    1818    function lws_admin_delete_notice($key)
    1919    {
    20         $notices = get_site_option('lws_adminpanel_notices', array());
     20        $notices = (array)get_site_option('lws_adminpanel_notices', array());
    2121        if( isset($notices[$key]) )
    2222        {
     
    3333    {
    3434        $options['message'] = $message;
    35         \update_site_option('lws_adminpanel_notices', array_merge(get_site_option('lws_adminpanel_notices', array()), array($key => $options)));
     35        \update_site_option('lws_adminpanel_notices', array_merge((array)get_site_option('lws_adminpanel_notices', array()), array($key => $options)));
    3636    }
    3737}
  • woorewards/trunk/assets/lws-adminpanel/include/internal/ajax.php

    r3284714 r3320657  
    4343                'lws_adminpanel_notices',
    4444                array_filter(
    45                     \get_site_option('lws_adminpanel_notices', array()),
     45                    (array)\get_site_option('lws_adminpanel_notices', array()),
    4646                    function($k)use($key){return $key!=$k;},
    4747                    ARRAY_FILTER_USE_KEY
  • woorewards/trunk/assets/lws-adminpanel/include/legacy/duration.php

    r3198286 r3320657  
    108108    /** @return \DateTimeInterface clone of given arg.
    109109     * @param $d if null, use now(). */
    110     function addDate(\DateTimeInterface $d=null)
     110    function addDate(?\DateTimeInterface $d=null): \DateTimeInterface
    111111    {
    112112        $d = $d ? clone $d : \date_create();
     
    116116    /** @return \DateTimeInterface clone of given arg.
    117117     * @param $d if null, use now(). */
    118     function subDate(\DateTimeInterface $d=null)
     118    function subDate(?\DateTimeInterface $d=null): \DateTimeInterface
    119119    {
    120120        $d = $d ? clone $d : \date_create();
     
    123123
    124124    /** Compute the date at end of duration.
    125      * @param $from (false|\DateTime) Starting date, default false means today.
     125     * @param $from (null|false|\DateTimeInterface) Starting date, default false means today.
    126126     * @return \DateTime = $form + interval  */
    127     function getEndingDate($from=false)
    128     {
    129         if( false === $from )
    130             $from = \date_create();
     127    function getEndingDate($from=false): \DateTimeInterface
     128    {
     129        $from = $from ? clone $from : \date_create();
    131130        return $from->add($this->toInterval());
    132131    }
     
    156155    }
    157156
     157    /** @param \DateInterval $interval
     158     * @return \LWS\Adminpanel\Tools\Duration */
    158159    static function fromInterval($interval)
    159160    {
     
    161162        if( !$def )
    162163        {
    163             $def = array(
     164            $def = array_intersect_key(array(
    164165                'Y' => '%y',
    165166                'M' => '%m',
     
    168169                'I' => '%i',
    169170                'S' => '%s',
    170             );
     171            ), \array_fill_keys(self::getSupportedPeriodsKeys(true), true));
    171172        }
    172173        foreach( $def as $out => $in )
     
    182183    /** @param $interval first int is assumed as delay and first [YMD] as unit. if unit is omitted, day is assumed.
    183184     * A starting 'P' is ignored. */
    184     static function fromString($interval)
     185    static function fromString($interval, $falseOnError=false)
    185186    {
    186187        if( empty($interval) )
     
    196197            return new self($match[2], $match[3]);
    197198        }
    198         else
     199        elseif ($falseOnError) {
     200            if (\is_numeric($interval))
     201                return new self(intval($interval), 'D');
     202            else
     203                return false;
     204        } else
    199205            return new self(intval($interval), 'D');
    200206    }
     
    271277    }
    272278
    273     protected function __construct($n=0, $p='D')
     279    function __construct($n=0, $p='D')
    274280    {
    275281        $this->number = abs(intval($n));
     
    296302                'Y' => __("Years", 'lws-adminpanel'),
    297303            );
    298             $allPeriods =  array_merge($periods, array(
     304            $allPeriods =  array(
     305                'S' => __("Seconds", 'lws-adminpanel'),
     306                'I' => __("Minutes", 'lws-adminpanel'),
     307                'H' => __("Hours", 'lws-adminpanel'),
     308                'D' => __("Days", 'lws-adminpanel'),
    299309                'W' => __("Weeks", 'lws-adminpanel'),
    300                 'H' => __("Hours", 'lws-adminpanel'),
    301                 'I' => __("Minutes", 'lws-adminpanel'),
    302                 'S' => __("Seconds", 'lws-adminpanel'),
    303             ));
     310                'M' => __("Months", 'lws-adminpanel'),
     311                'Y' => __("Years", 'lws-adminpanel'),
     312            );
    304313        }
    305314        return \apply_filters('lws_adminpanel_duration_supported_periods', $extended ? $allPeriods : $periods);
  • woorewards/trunk/assets/lws-adminpanel/include/pages/field/wpeditor.php

    r3234695 r3320657  
    99    {
    1010        $name = $this->extra['name'] ?? $this->m_Id;
    11         $settings = $this->extra['settings'] ?? $this->extra;
     11        $settings = (array)($this->extra['settings'] ?? $this->extra);
     12        $rename = \str_replace(['[', ']'], '_', $name);
     13        if ($rename !== $name && !isset($settings['textarea_name'])) {
     14            $settings['textarea_name'] = $name;
     15        }
    1216        $value = $this->readOption(false);
    13         \wp_editor($value, $name, $settings);
     17        \wp_editor($value, $rename, $settings);
    1418    }
    1519}
  • woorewards/trunk/assets/lws-adminpanel/include/pages/head.php

    r3253191 r3320657  
    310310            'support'  => __("Support", 'lws-adminpanel'),
    311311            'tshooting'=> __("Troubleshooting", 'lws-adminpanel'),
    312             'chat'     => __("Live Chat", 'lws-adminpanel'),
     312        //  'chat'     => __("Live Chat", 'lws-adminpanel'),
    313313            'doc'      => __("Documentation", 'lws-adminpanel'),
    314314            'patch'    => __("Patch Notes", 'lws-adminpanel'),
     
    379379        */
    380380
    381         /** Live Chat */
    382         echo "<a href='{$settings['chat']}' target='_blank' class='top-menu-item'>";
    383         echo "<div class='top-menu-item-icon lws-icon-discord'></div>";
    384         echo "<div class='top-menu-item-text'>{$labels['chat']}</div></a>";
    385 
    386         /** Live Chat */
     381        // Live Chat
     382        // echo "<a href='{$settings['chat']}' target='_blank' class='top-menu-item'>";
     383        // echo "<div class='top-menu-item-icon lws-icon-discord'></div>";
     384        // echo "<div class='top-menu-item-text'>{$labels['chat']}</div></a>";
     385
     386        /** Web documentation */
    387387        echo "<a href='{$settings['doc']}' target='_blank' class='top-menu-item separator'>";
    388388        echo "<div class='top-menu-item-icon lws-icon-books'></div>";
     
    560560            'origin'     => \apply_filters('lws_adminpanel_plugin_origin_'      . $id, array('LWS', 'Long Watch Studio'), $this->id),
    561561            'doc'        => \apply_filters('lws_adminpanel_documentation_url_'  . $id, __('https://plugins.longwatchstudio.com/knowledge-base/', 'lws-adminpanel'), $this->id),
    562             'chat'       => \apply_filters('lws_adminpanel_plugin_chat_url_'    . $id, self::CHAT, $this->id),
     562        //  'chat'       => \apply_filters('lws_adminpanel_plugin_chat_url_'    . $id, self::CHAT, $this->id),
    563563            'mailto'     => \apply_filters('lws_adminpanel_plugin_support_email'. $id, self::MAILTO, $this->id),
    564564            'purchase'   => false,
  • woorewards/trunk/assets/lws-adminpanel/include/tools/duration.php

    r3198286 r3320657  
    108108    /** @return \DateTimeInterface clone of given arg.
    109109     * @param $d if null, use now(). */
    110     function addDate(\DateTimeInterface $d=null)
     110    function addDate(?\DateTimeInterface $d=null): \DateTimeInterface
    111111    {
    112112        $d = $d ? clone $d : \date_create();
     
    116116    /** @return \DateTimeInterface clone of given arg.
    117117     * @param $d if null, use now(). */
    118     function subDate(\DateTimeInterface $d=null)
     118    function subDate(?\DateTimeInterface $d=null): \DateTimeInterface
    119119    {
    120120        $d = $d ? clone $d : \date_create();
     
    123123
    124124    /** Compute the date at end of duration.
    125      * @param $from (false|\DateTime) Starting date, default false means today.
     125     * @param $from (null|false|\DateTimeInterface) Starting date, default false means today.
    126126     * @return \DateTime = $form + interval  */
    127     function getEndingDate($from=false)
    128     {
    129         if( false === $from )
    130             $from = \date_create();
     127    function getEndingDate($from=false): \DateTimeInterface
     128    {
     129        $from = $from ? clone $from : \date_create();
    131130        return $from->add($this->toInterval());
    132131    }
     
    156155    }
    157156
     157    /** @param \DateInterval $interval
     158     * @return \LWS\Adminpanel\Tools\Duration */
    158159    static function fromInterval($interval)
    159160    {
  • woorewards/trunk/assets/lws-adminpanel/lws-adminpanel.php

    r3288989 r3320657  
    66 * Author: Long Watch Studio
    77 * Author URI: https://longwatchstudio.com
    8  * Version: 5.6.2.2
     8 * Version: 5.6.4
    99 * Text Domain: lws-adminpanel
    1010 *
     
    5858
    5959add_filter('lws_adminpanel_versions', function($versions){
    60     $versions['5.6.2.2'] = __FILE__;
     60    $versions['5.6.4'] = __FILE__;
    6161    return $versions;
    6262});
  • woorewards/trunk/build/index.asset.php

    r3227529 r3320657  
    1 <?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-settings', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => '97c8cf19b7dc954deff2');
     1<?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-settings', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => 'd91cf270554b7db6d5ed');
  • woorewards/trunk/build/index.js

    r3227529 r3320657  
    1 (()=>{"use strict";var e,s={980:(e,s,t)=>{t(439)},439:(e,s,t)=>{const n=window.wp.i18n,l=window.wp.element,o=window.wc.wcSettings,r=window.wc.blocksComponents,a=window.wp.plugins,c=window.wc.blocksCheckout;var i=t(848);const d=({system:e})=>{const s=()=>null==e.values||e.values.used<=0?"":e.values.used,[t,o]=(0,l.useState)(s);(0,l.useEffect)((()=>{if(t.length)try{let e=t.replace(/\s/,"").match(/\d*/);o(null==e?"":e[0])}catch(e){o("")}}),[t]);const[a,d]=(0,l.useState)(!1);(0,l.useEffect)((()=>{a||o(s())}),[a]);const[u,w]=(0,l.useState)(!0),p=e=>{e.preventDefault(),w(!u)};let m="XX";return null!=e.values&&(m=e.values.amount_formated),(0,i.jsx)(i.Fragment,{children:u?(0,i.jsxs)("a",{role:"button",className:"lws-wr-blocks pointsoncart-component_unfold","aria-label":(0,n.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,i.jsxs)("span",{className:"wr-label",children:[(0,i.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.field}})," ",e.labels.show?(0,i.jsx)("b",{title:(0,n.__)("balance","woorewards-lite"),dangerouslySetInnerHTML:{__html:m}}):""]}),(0,i.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,i.jsx)("path",{d:"M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z"})})]}):(0,i.jsxs)("div",{className:"lws-wr-blocks pointsoncart-component"+(a?" is_loading":""),children:[(0,i.jsxs)("label",{role:"button",className:"pointsoncart-component_fold","aria-label":(0,n.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,i.jsxs)("span",{children:[(0,i.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.title}})," ",(0,i.jsx)("b",{dangerouslySetInnerHTML:{__html:m}})]}),(0,i.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,i.jsx)("path",{d:"M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z"})})]}),void 0===e.values||e.values.max>0?(0,i.jsxs)("form",{className:"pointsoncart-component_form",id:"lws-wr-blocks_pointsoncart-component_form",children:[(0,i.jsx)(r.ValidatedTextInput,{id:"lws-wr-blocks_pointsoncart-component_input",errorId:"wr-pointsoncart-value",className:"pointsoncart-component_input",label:e.labels.input,value:t,onChange:e=>{o(e)},focusOnMount:!0,validateOnMount:!1,showError:!1}),(0,i.jsx)("button",{className:"wc-block-components-button wp-element-button",id:"lws-wr-blocks_pointsoncart-component_apply",type:"submit",disabled:a||void 0===e.values||t==e.values.used,onClick:s=>{s.preventDefault(),null!=e.values&&(d(!0),(0,c.extensionCartUpdate)({namespace:"lws_woorewards",data:{action:"use_points",system:e.values.name,value:t}}).then((()=>{d(!1)})))},children:a?(0,i.jsxs)("span",{className:"loading-dots",children:[(0,i.jsx)("span",{className:"dot1",children:"."})," ",(0,i.jsx)("span",{className:"dot2",children:"."})," ",(0,i.jsx)("span",{className:"dot3",children:"."})]}):e.labels.apply})]}):"",Object.entries(e.labels.details).map((([e,s])=>(0,i.jsx)("label",{className:"points-on-cart-details details-"+e,dangerouslySetInnerHTML:{__html:s}})))]})})},u=({cart:e,extensions:s,context:t})=>{try{const n=(0,o.getSetting)("lws-wr-blocks_data");return n.enable&&n["logged-user"]&&void 0!==n.systems&&Object.entries(n.systems).length?(0,i.jsx)(i.Fragment,{children:Object.entries(n.systems).map((([l,o])=>(0,i.jsx)(d,{cart:e,context:t,system:{enable:n.enable,logged:n["logged-user"],labels:o,values:null!=s.lws_woorewards&&(null!=s.lws_woorewards.systems[l]?s.lws_woorewards.systems[l]:void 0)}},l)))}):""}catch(e){return""}};(0,a.registerPlugin)("lws-wr-blocks",{render:function(){return(0,i.jsx)(c.ExperimentalDiscountsMeta,{children:(0,i.jsx)(u,{})},"lwspointsoncart")},scope:"woocommerce-checkout"})},20:(e,s,t)=>{var n=t(609),l=Symbol.for("react.element"),o=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,a=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function i(e,s,t){var n,o={},i=null,d=null;for(n in void 0!==t&&(i=""+t),void 0!==s.key&&(i=""+s.key),void 0!==s.ref&&(d=s.ref),s)r.call(s,n)&&!c.hasOwnProperty(n)&&(o[n]=s[n]);if(e&&e.defaultProps)for(n in s=e.defaultProps)void 0===o[n]&&(o[n]=s[n]);return{$$typeof:l,type:e,key:i,ref:d,props:o,_owner:a.current}}s.Fragment=o,s.jsx=i,s.jsxs=i},848:(e,s,t)=>{e.exports=t(20)},609:e=>{e.exports=window.React}},t={};function n(e){var l=t[e];if(void 0!==l)return l.exports;var o=t[e]={exports:{}};return s[e](o,o.exports,n),o.exports}n.m=s,e=[],n.O=(s,t,l,o)=>{if(!t){var r=1/0;for(d=0;d<e.length;d++){t=e[d][0],l=e[d][1],o=e[d][2];for(var a=!0,c=0;c<t.length;c++)(!1&o||r>=o)&&Object.keys(n.O).every((e=>n.O[e](t[c])))?t.splice(c--,1):(a=!1,o<r&&(r=o));if(a){e.splice(d--,1);var i=l();void 0!==i&&(s=i)}}return s}o=o||0;for(var d=e.length;d>0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[t,l,o]},n.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={57:0,59:0,350:0};n.O.j=s=>0===e[s];var s=(s,t)=>{var l,o,r=t[0],a=t[1],c=t[2],i=0;if(r.some((s=>0!==e[s]))){for(l in a)n.o(a,l)&&(n.m[l]=a[l]);if(c)var d=c(n)}for(s&&s(t);i<r.length;i++)o=r[i],n.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return n.O(d)},t=self.webpackChunklws_wr_blocks=self.webpackChunklws_wr_blocks||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})();var l=n.O(void 0,[350],(()=>n(980)));l=n.O(l)})()
     1(()=>{"use strict";var e,s={980:(e,s,t)=>{t(439)},439:(e,s,t)=>{const o=window.wp.i18n,n=window.wp.element,l=window.wc.wcSettings,r=window.wc.blocksComponents,a=window.wp.plugins,i=window.wc.blocksCheckout;var c=t(848);const d=({system:e})=>{const s=()=>void 0===e.values||void 0===e.values.used||e.values.used<=0?"":e.values.used.toString(),[t,l]=(0,n.useState)(s);(0,n.useEffect)((()=>{if(void 0!==t&&t.length){let e=t;try{let s=t.replace(/\s/,"").match(/\d*/);e=null===s?"":s[0]}catch(s){e=""}e.toString()!==t.toString()&&l(e)}}),[t]);const[a,d]=(0,n.useState)(!1);(0,n.useEffect)((()=>{void 0!==t&&void 0!==a&&(a||l(s()))}),[a]);const[u,w]=(0,n.useState)(!0),p=e=>{e.preventDefault(),w(!u)};let m="XX";return void 0!==e.values&&(m=e.values.amount_formated),(0,c.jsx)(c.Fragment,{children:u?(0,c.jsxs)("a",{role:"button",className:"lws-wr-blocks pointsoncart-component_unfold","aria-label":(0,o.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,c.jsxs)("span",{className:"wr-label",children:[(0,c.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.field}})," ",e.labels.show?(0,c.jsx)("b",{title:(0,o.__)("balance","woorewards-lite"),dangerouslySetInnerHTML:{__html:m}}):""]}),(0,c.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,c.jsx)("path",{d:"M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z"})})]}):(0,c.jsxs)("div",{className:"lws-wr-blocks pointsoncart-component"+(a?" is_loading":""),children:[(0,c.jsxs)("label",{role:"button",className:"pointsoncart-component_fold","aria-label":(0,o.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.title}})," ",(0,c.jsx)("b",{dangerouslySetInnerHTML:{__html:m}})]}),(0,c.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,c.jsx)("path",{d:"M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z"})})]}),void 0===e.values||e.values.max>0?(0,c.jsxs)("form",{className:"pointsoncart-component_form",id:"lws-wr-blocks_pointsoncart-component_form",children:[(0,c.jsx)(r.ValidatedTextInput,{id:"lws-wr-blocks_pointsoncart-component_input",errorId:"wr-pointsoncart-value",className:"pointsoncart-component_input",label:e.labels.input,value:t,onChange:e=>{l(e)},focusOnMount:!0,validateOnMount:!1,showError:!1}),(0,c.jsx)("button",{className:"wc-block-components-button wp-element-button",id:"lws-wr-blocks_pointsoncart-component_apply",type:"submit",disabled:a||void 0===e.values||t.toString()===e.values.used.toString(),onClick:s=>{s.preventDefault(),void 0!==e.values&&(d(!0),(0,i.extensionCartUpdate)({namespace:"lws_woorewards",data:{action:"use_points",system:e.values.name,value:t}}).then((()=>{d(!1)})))},children:a?(0,c.jsxs)("span",{className:"loading-dots",children:[(0,c.jsx)("span",{className:"dot1",children:"."})," ",(0,c.jsx)("span",{className:"dot2",children:"."})," ",(0,c.jsx)("span",{className:"dot3",children:"."})]}):e.labels.apply})]}):"",Object.entries(e.labels.details).map((([e,s])=>(0,c.jsx)("label",{className:"points-on-cart-details details-"+e,dangerouslySetInnerHTML:{__html:s}},e)))]})})},u=({cart:e,extensions:s,context:t})=>{try{const o=(0,l.getSetting)("lws-wr-blocks_data");return o.enable&&o["logged-user"]&&void 0!==o.systems&&Object.entries(o.systems).length?(0,c.jsx)(c.Fragment,{children:Object.entries(o.systems).map((([n,l])=>(0,c.jsx)(d,{cart:e,context:t,system:{enable:o.enable,logged:o["logged-user"],labels:l,values:void 0!==s.lws_woorewards&&(void 0!==s.lws_woorewards.systems[n]?s.lws_woorewards.systems[n]:void 0)}},n)))}):""}catch(e){return""}};(0,a.registerPlugin)("lws-wr-blocks",{render:function(){return(0,c.jsx)(i.ExperimentalDiscountsMeta,{children:(0,c.jsx)(u,{})},"lwspointsoncart")},scope:"woocommerce-checkout"})},20:(e,s,t)=>{var o=t(609),n=Symbol.for("react.element"),l=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,a=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function c(e,s,t){var o,l={},c=null,d=null;for(o in void 0!==t&&(c=""+t),void 0!==s.key&&(c=""+s.key),void 0!==s.ref&&(d=s.ref),s)r.call(s,o)&&!i.hasOwnProperty(o)&&(l[o]=s[o]);if(e&&e.defaultProps)for(o in s=e.defaultProps)void 0===l[o]&&(l[o]=s[o]);return{$$typeof:n,type:e,key:c,ref:d,props:l,_owner:a.current}}s.Fragment=l,s.jsx=c,s.jsxs=c},848:(e,s,t)=>{e.exports=t(20)},609:e=>{e.exports=window.React}},t={};function o(e){var n=t[e];if(void 0!==n)return n.exports;var l=t[e]={exports:{}};return s[e](l,l.exports,o),l.exports}o.m=s,e=[],o.O=(s,t,n,l)=>{if(!t){var r=1/0;for(d=0;d<e.length;d++){for(var[t,n,l]=e[d],a=!0,i=0;i<t.length;i++)(!1&l||r>=l)&&Object.keys(o.O).every((e=>o.O[e](t[i])))?t.splice(i--,1):(a=!1,l<r&&(r=l));if(a){e.splice(d--,1);var c=n();void 0!==c&&(s=c)}}return s}l=l||0;for(var d=e.length;d>0&&e[d-1][2]>l;d--)e[d]=e[d-1];e[d]=[t,n,l]},o.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={57:0,59:0,350:0};o.O.j=s=>0===e[s];var s=(s,t)=>{var n,l,[r,a,i]=t,c=0;if(r.some((s=>0!==e[s]))){for(n in a)o.o(a,n)&&(o.m[n]=a[n]);if(i)var d=i(o)}for(s&&s(t);c<r.length;c++)l=r[c],o.o(e,l)&&e[l]&&e[l][0](),e[l]=0;return o.O(d)},t=globalThis.webpackChunklws_wr_blocks=globalThis.webpackChunklws_wr_blocks||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})();var n=o.O(void 0,[350],(()=>o(980)));n=o.O(n)})()
  • woorewards/trunk/build/pointsoncart.asset.php

    r3227529 r3320657  
    1 <?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-settings', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => '060c95b90786c21bf89e');
     1<?php return array('dependencies' => array('react', 'wc-blocks-checkout', 'wc-blocks-components', 'wc-settings', 'wp-element', 'wp-i18n', 'wp-plugins'), 'version' => '160323f8252a9612eeb4');
  • woorewards/trunk/build/pointsoncart.js

    r3227529 r3320657  
    1 (()=>{"use strict";var e,s={439:(e,s,t)=>{const n=window.wp.i18n,l=window.wp.element,o=window.wc.wcSettings,r=window.wc.blocksComponents,a=window.wp.plugins,c=window.wc.blocksCheckout;var i=t(848);const d=({system:e})=>{const s=()=>null==e.values||e.values.used<=0?"":e.values.used,[t,o]=(0,l.useState)(s);(0,l.useEffect)((()=>{if(t.length)try{let e=t.replace(/\s/,"").match(/\d*/);o(null==e?"":e[0])}catch(e){o("")}}),[t]);const[a,d]=(0,l.useState)(!1);(0,l.useEffect)((()=>{a||o(s())}),[a]);const[u,w]=(0,l.useState)(!0),p=e=>{e.preventDefault(),w(!u)};let m="XX";return null!=e.values&&(m=e.values.amount_formated),(0,i.jsx)(i.Fragment,{children:u?(0,i.jsxs)("a",{role:"button",className:"lws-wr-blocks pointsoncart-component_unfold","aria-label":(0,n.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,i.jsxs)("span",{className:"wr-label",children:[(0,i.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.field}})," ",e.labels.show?(0,i.jsx)("b",{title:(0,n.__)("balance","woorewards-lite"),dangerouslySetInnerHTML:{__html:m}}):""]}),(0,i.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,i.jsx)("path",{d:"M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z"})})]}):(0,i.jsxs)("div",{className:"lws-wr-blocks pointsoncart-component"+(a?" is_loading":""),children:[(0,i.jsxs)("label",{role:"button",className:"pointsoncart-component_fold","aria-label":(0,n.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,i.jsxs)("span",{children:[(0,i.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.title}})," ",(0,i.jsx)("b",{dangerouslySetInnerHTML:{__html:m}})]}),(0,i.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,i.jsx)("path",{d:"M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z"})})]}),void 0===e.values||e.values.max>0?(0,i.jsxs)("form",{className:"pointsoncart-component_form",id:"lws-wr-blocks_pointsoncart-component_form",children:[(0,i.jsx)(r.ValidatedTextInput,{id:"lws-wr-blocks_pointsoncart-component_input",errorId:"wr-pointsoncart-value",className:"pointsoncart-component_input",label:e.labels.input,value:t,onChange:e=>{o(e)},focusOnMount:!0,validateOnMount:!1,showError:!1}),(0,i.jsx)("button",{className:"wc-block-components-button wp-element-button",id:"lws-wr-blocks_pointsoncart-component_apply",type:"submit",disabled:a||void 0===e.values||t==e.values.used,onClick:s=>{s.preventDefault(),null!=e.values&&(d(!0),(0,c.extensionCartUpdate)({namespace:"lws_woorewards",data:{action:"use_points",system:e.values.name,value:t}}).then((()=>{d(!1)})))},children:a?(0,i.jsxs)("span",{className:"loading-dots",children:[(0,i.jsx)("span",{className:"dot1",children:"."})," ",(0,i.jsx)("span",{className:"dot2",children:"."})," ",(0,i.jsx)("span",{className:"dot3",children:"."})]}):e.labels.apply})]}):"",Object.entries(e.labels.details).map((([e,s])=>(0,i.jsx)("label",{className:"points-on-cart-details details-"+e,dangerouslySetInnerHTML:{__html:s}})))]})})},u=({cart:e,extensions:s,context:t})=>{try{const n=(0,o.getSetting)("lws-wr-blocks_data");return n.enable&&n["logged-user"]&&void 0!==n.systems&&Object.entries(n.systems).length?(0,i.jsx)(i.Fragment,{children:Object.entries(n.systems).map((([l,o])=>(0,i.jsx)(d,{cart:e,context:t,system:{enable:n.enable,logged:n["logged-user"],labels:o,values:null!=s.lws_woorewards&&(null!=s.lws_woorewards.systems[l]?s.lws_woorewards.systems[l]:void 0)}},l)))}):""}catch(e){return""}};(0,a.registerPlugin)("lws-wr-blocks",{render:function(){return(0,i.jsx)(c.ExperimentalDiscountsMeta,{children:(0,i.jsx)(u,{})},"lwspointsoncart")},scope:"woocommerce-checkout"})},20:(e,s,t)=>{var n=t(609),l=Symbol.for("react.element"),o=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,a=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function i(e,s,t){var n,o={},i=null,d=null;for(n in void 0!==t&&(i=""+t),void 0!==s.key&&(i=""+s.key),void 0!==s.ref&&(d=s.ref),s)r.call(s,n)&&!c.hasOwnProperty(n)&&(o[n]=s[n]);if(e&&e.defaultProps)for(n in s=e.defaultProps)void 0===o[n]&&(o[n]=s[n]);return{$$typeof:l,type:e,key:i,ref:d,props:o,_owner:a.current}}s.Fragment=o,s.jsx=i,s.jsxs=i},848:(e,s,t)=>{e.exports=t(20)},609:e=>{e.exports=window.React}},t={};function n(e){var l=t[e];if(void 0!==l)return l.exports;var o=t[e]={exports:{}};return s[e](o,o.exports,n),o.exports}n.m=s,e=[],n.O=(s,t,l,o)=>{if(!t){var r=1/0;for(d=0;d<e.length;d++){t=e[d][0],l=e[d][1],o=e[d][2];for(var a=!0,c=0;c<t.length;c++)(!1&o||r>=o)&&Object.keys(n.O).every((e=>n.O[e](t[c])))?t.splice(c--,1):(a=!1,o<r&&(r=o));if(a){e.splice(d--,1);var i=l();void 0!==i&&(s=i)}}return s}o=o||0;for(var d=e.length;d>0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[t,l,o]},n.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={59:0,350:0};n.O.j=s=>0===e[s];var s=(s,t)=>{var l,o,r=t[0],a=t[1],c=t[2],i=0;if(r.some((s=>0!==e[s]))){for(l in a)n.o(a,l)&&(n.m[l]=a[l]);if(c)var d=c(n)}for(s&&s(t);i<r.length;i++)o=r[i],n.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return n.O(d)},t=self.webpackChunklws_wr_blocks=self.webpackChunklws_wr_blocks||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})();var l=n.O(void 0,[350],(()=>n(439)));l=n.O(l)})()
     1(()=>{"use strict";var e,s={439:(e,s,t)=>{const o=window.wp.i18n,n=window.wp.element,l=window.wc.wcSettings,r=window.wc.blocksComponents,a=window.wp.plugins,i=window.wc.blocksCheckout;var c=t(848);const d=({system:e})=>{const s=()=>void 0===e.values||void 0===e.values.used||e.values.used<=0?"":e.values.used.toString(),[t,l]=(0,n.useState)(s);(0,n.useEffect)((()=>{if(void 0!==t&&t.length){let e=t;try{let s=t.replace(/\s/,"").match(/\d*/);e=null===s?"":s[0]}catch(s){e=""}e.toString()!==t.toString()&&l(e)}}),[t]);const[a,d]=(0,n.useState)(!1);(0,n.useEffect)((()=>{void 0!==t&&void 0!==a&&(a||l(s()))}),[a]);const[u,w]=(0,n.useState)(!0),p=e=>{e.preventDefault(),w(!u)};let m="XX";return void 0!==e.values&&(m=e.values.amount_formated),(0,c.jsx)(c.Fragment,{children:u?(0,c.jsxs)("a",{role:"button",className:"lws-wr-blocks pointsoncart-component_unfold","aria-label":(0,o.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,c.jsxs)("span",{className:"wr-label",children:[(0,c.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.field}})," ",e.labels.show?(0,c.jsx)("b",{title:(0,o.__)("balance","woorewards-lite"),dangerouslySetInnerHTML:{__html:m}}):""]}),(0,c.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,c.jsx)("path",{d:"M17.5 11.6L12 16l-5.5-4.4.9-1.2L12 14l4.5-3.6 1 1.2z"})})]}):(0,c.jsxs)("div",{className:"lws-wr-blocks pointsoncart-component"+(a?" is_loading":""),children:[(0,c.jsxs)("label",{role:"button",className:"pointsoncart-component_fold","aria-label":(0,o.__)("Use your points","woorewards-lite"),onClick:p,children:[(0,c.jsxs)("span",{children:[(0,c.jsx)("span",{dangerouslySetInnerHTML:{__html:e.labels.title}})," ",(0,c.jsx)("b",{dangerouslySetInnerHTML:{__html:m}})]}),(0,c.jsx)("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24","aria-hidden":"true",className:"wr-unfold-icon",focusable:"false",children:(0,c.jsx)("path",{d:"M6.5 12.4L12 8l5.5 4.4-.9 1.2L12 10l-4.5 3.6-1-1.2z"})})]}),void 0===e.values||e.values.max>0?(0,c.jsxs)("form",{className:"pointsoncart-component_form",id:"lws-wr-blocks_pointsoncart-component_form",children:[(0,c.jsx)(r.ValidatedTextInput,{id:"lws-wr-blocks_pointsoncart-component_input",errorId:"wr-pointsoncart-value",className:"pointsoncart-component_input",label:e.labels.input,value:t,onChange:e=>{l(e)},focusOnMount:!0,validateOnMount:!1,showError:!1}),(0,c.jsx)("button",{className:"wc-block-components-button wp-element-button",id:"lws-wr-blocks_pointsoncart-component_apply",type:"submit",disabled:a||void 0===e.values||t.toString()===e.values.used.toString(),onClick:s=>{s.preventDefault(),void 0!==e.values&&(d(!0),(0,i.extensionCartUpdate)({namespace:"lws_woorewards",data:{action:"use_points",system:e.values.name,value:t}}).then((()=>{d(!1)})))},children:a?(0,c.jsxs)("span",{className:"loading-dots",children:[(0,c.jsx)("span",{className:"dot1",children:"."})," ",(0,c.jsx)("span",{className:"dot2",children:"."})," ",(0,c.jsx)("span",{className:"dot3",children:"."})]}):e.labels.apply})]}):"",Object.entries(e.labels.details).map((([e,s])=>(0,c.jsx)("label",{className:"points-on-cart-details details-"+e,dangerouslySetInnerHTML:{__html:s}},e)))]})})},u=({cart:e,extensions:s,context:t})=>{try{const o=(0,l.getSetting)("lws-wr-blocks_data");return o.enable&&o["logged-user"]&&void 0!==o.systems&&Object.entries(o.systems).length?(0,c.jsx)(c.Fragment,{children:Object.entries(o.systems).map((([n,l])=>(0,c.jsx)(d,{cart:e,context:t,system:{enable:o.enable,logged:o["logged-user"],labels:l,values:void 0!==s.lws_woorewards&&(void 0!==s.lws_woorewards.systems[n]?s.lws_woorewards.systems[n]:void 0)}},n)))}):""}catch(e){return""}};(0,a.registerPlugin)("lws-wr-blocks",{render:function(){return(0,c.jsx)(i.ExperimentalDiscountsMeta,{children:(0,c.jsx)(u,{})},"lwspointsoncart")},scope:"woocommerce-checkout"})},20:(e,s,t)=>{var o=t(609),n=Symbol.for("react.element"),l=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,a=o.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function c(e,s,t){var o,l={},c=null,d=null;for(o in void 0!==t&&(c=""+t),void 0!==s.key&&(c=""+s.key),void 0!==s.ref&&(d=s.ref),s)r.call(s,o)&&!i.hasOwnProperty(o)&&(l[o]=s[o]);if(e&&e.defaultProps)for(o in s=e.defaultProps)void 0===l[o]&&(l[o]=s[o]);return{$$typeof:n,type:e,key:c,ref:d,props:l,_owner:a.current}}s.Fragment=l,s.jsx=c,s.jsxs=c},848:(e,s,t)=>{e.exports=t(20)},609:e=>{e.exports=window.React}},t={};function o(e){var n=t[e];if(void 0!==n)return n.exports;var l=t[e]={exports:{}};return s[e](l,l.exports,o),l.exports}o.m=s,e=[],o.O=(s,t,n,l)=>{if(!t){var r=1/0;for(d=0;d<e.length;d++){for(var[t,n,l]=e[d],a=!0,i=0;i<t.length;i++)(!1&l||r>=l)&&Object.keys(o.O).every((e=>o.O[e](t[i])))?t.splice(i--,1):(a=!1,l<r&&(r=l));if(a){e.splice(d--,1);var c=n();void 0!==c&&(s=c)}}return s}l=l||0;for(var d=e.length;d>0&&e[d-1][2]>l;d--)e[d]=e[d-1];e[d]=[t,n,l]},o.o=(e,s)=>Object.prototype.hasOwnProperty.call(e,s),(()=>{var e={59:0,350:0};o.O.j=s=>0===e[s];var s=(s,t)=>{var n,l,[r,a,i]=t,c=0;if(r.some((s=>0!==e[s]))){for(n in a)o.o(a,n)&&(o.m[n]=a[n]);if(i)var d=i(o)}for(s&&s(t);c<r.length;c++)l=r[c],o.o(e,l)&&e[l]&&e[l][0](),e[l]=0;return o.O(d)},t=globalThis.webpackChunklws_wr_blocks=globalThis.webpackChunklws_wr_blocks||[];t.forEach(s.bind(null,0)),t.push=s.bind(null,t.push.bind(t))})();var n=o.O(void 0,[350],(()=>o(439)));n=o.O(n)})()
  • woorewards/trunk/include/core/pool.php

    r3284714 r3320657  
    3434    protected $drmCats             = array();          /// directRewardMode restriction: assign category to virtual coupon
    3535
     36    public $cmpData = null;
     37
    3638    /** A pool is active if set as activated */
    3739    public function isActive()
     
    5254     *  @param $reason (string) optional, the cause of the earning.
    5355     *  @param $origin (\LWS\WOOREWARDS\Abstracts\Event) optional, the source Event. */
    54     public function addPoints($userId, $value, $reason='', \LWS\WOOREWARDS\Abstracts\Event $origin=null, $origin2=false)
     56    public function addPoints($userId, $value, $reason='', ?\LWS\WOOREWARDS\Abstracts\Event $origin=null, $origin2=false)
    5557    {
    5658        $old = $this->getPoints($userId);
     
    9698     *  @param $reason (string|\LWS\WOOREWARDS\Core\Trace) optional, the cause of the earning.
    9799     *  @param $origin (\LWS\WOOREWARDS\Abstracts\Unlockable) optional, the source Event. */
    98     public function usePoints($userId, $value, $reason='', \LWS\WOOREWARDS\Abstracts\Unlockable $origin=null, $origin2=false)
     100    public function usePoints($userId, $value, $reason='', ?\LWS\WOOREWARDS\Abstracts\Unlockable $origin=null, $origin2=false)
    99101    {
    100102        $old = $this->getPoints($userId);
     
    10171019        }
    10181020
    1019         if( !isset($a->cmpData) ) {
     1021        if( null === $a->cmpData ) {
    10201022            $a->cmpData = array(
    10211023//              'label' => $a->getOption('display_title'),
     
    10241026            );
    10251027        }
    1026         if( !isset($b->cmpData) ) {
     1028        if( null === $b->cmpData ) {
    10271029            $b->cmpData = array(
    10281030//              'label' => $b->getOption('display_title'),
  • woorewards/trunk/include/core/sponsorship.php

    r3188612 r3320657  
    322322            if (!$users->sponsor_id)
    323323                $users->origin = false;
    324             return $users;
     324
     325            return \apply_filters('lws_woorewards_order_sponsored_by', $users, $order, $guestAllowed, $ref);
    325326        }
    326327
  • woorewards/trunk/readme.txt

    r3288989 r3320657  
    44Requires at least: 5.3
    55Tested up to: 6.8
    6 Requires PHP: 7.0.0
    7 Stable tag: 5.4.13.1
     6Requires PHP: 7.3.0
     7Stable tag: 5.4.14
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    110110== Changelog ==
    111111
     112= 5.4.14 =
     113* Tag - Require PHP 7.3
     114* Tag - WooCommerce 9.9
     115* Fix - Duration: a const method modifies the value of the argument.
     116* Fix - Point discount block may display wrong
     117* Dev - PHP 8.4 support
     118* Dev - new filter 'lws_woorewards_order_sponsored_by'
     119* Tweak - responsive for Storefront theme
     120
    112121= 5.4.13.1 =
    113122* Update - translation templates
  • woorewards/trunk/styling/css/pointsoncart.css

    r3188612 r3320657  
    102102    width: 41%;
    103103}
     104@media screen and (orientation:portrait) {
     105    body.theme-storefront form.woocommerce-checkout .lws-wr-pointsoncart {
     106        float: none;
     107        width: 100%;
     108    }
     109}
    104110body.theme-storefront form.woocommerce-checkout .woocommerce-billing-fields .lws-wr-pointsoncart {
    105111    float: left;
  • woorewards/trunk/woorewards.php

    r3288989 r3320657  
    77 * Author: Long Watch Studio
    88 * Author URI: https://longwatchstudio.com
    9  * Version: 5.4.13.1
     9 * Version: 5.4.14
    1010 * License: Copyright LongWatchStudio 2022
    1111 * Text Domain: woorewards-lite
    1212 * Domain Path: /languages
    1313 * WC requires at least: 7.1.0
    14  * WC tested up to: 9.8
     14 * WC tested up to: 9.9
    1515 *
    1616 * Copyright (c) 2022 Long Watch Studio (email: plugins@longwatchstudio.com). All rights reserved.
     
    111111    private function defineConstants()
    112112    {
    113         define('LWS_WOOREWARDS_VERSION', '5.4.13.1');
     113        define('LWS_WOOREWARDS_VERSION', '5.4.14');
    114114        define('LWS_WOOREWARDS_FILE', __FILE__);
    115115        define('LWS_WOOREWARDS_DOMAIN', 'woorewards-lite');
     
    149149    public function addPluginVersion($url)
    150150    {
    151         return '5.4.13.1';
     151        return '5.4.14';
    152152    }
    153153
Note: See TracChangeset for help on using the changeset viewer.