Plugin Directory

Changeset 3041433


Ignore:
Timestamp:
02/26/2024 04:07:39 PM (13 months ago)
Author:
rosua
Message:

Update to version 1.0.10 from GitHub

Location:
yabe-ukiyo
Files:
14 edited
1 copied

Legend:

Unmodified
Added
Removed
  • yabe-ukiyo/tags/1.0.10/constant.php

    r3011703 r3041433  
    2626     * @var string
    2727     */
    28     public const VERSION = '1.0.9';
     28    public const VERSION = '1.0.10';
    2929    /**
    3030     * @var int
    3131     */
    32     public const VERSION_ID = 10009;
     32    public const VERSION_ID = 10010;
    3333    /**
    3434     * @var int
     
    4242     * @var int
    4343     */
    44     public const RELEASE_VERSION = 9;
     44    public const RELEASE_VERSION = 10;
    4545    /**
    4646     * @var string
  • yabe-ukiyo/tags/1.0.10/readme.txt

    r3011703 r3041433  
    55Requires at least: 6.0
    66Tested up to: 6.4
    7 Stable tag: 1.0.9
     7Stable tag: 1.0.10
    88Requires PHP: 7.4
    99License: GPLv3
     
    6464
    6565
     66= 1.0.10 =
     67* **[WooCommerce] Fix**: Licenses doesn't showed on the receipt email
     68* **[WooCommerce] Fix**: Broken style of Licenses table on the receipt page
     69
    6670= 1.0.9 =
    6771* **New**: Yabe Ukiyo Lite is now available on [WordPress.org](https://wordpress.org/plugins/yabe-ukiyo/)
  • yabe-ukiyo/tags/1.0.10/src/Ecommerce/Platform/WooCommerce/Email.php

    r3011703 r3041433  
    3535    private function email_after_order_table(WC_Abstract_Order $wcAbstractOrder, $sent_to_admin, $plain_text, $email)
    3636    {
    37         if (!Config::get('ecommerce.woocommerce.print_receipt_email', \false)) {
    38             return;
    39         }
    4037        if (!$wcAbstractOrder) {
    4138            return;
     
    4946        $site_url = \get_site_url();
    5047        $site_name = \get_bloginfo('name');
     48        $licenseItems = [];
     49        foreach ($licenseOrders as $licenseOrder) {
     50            $row = $wpdb->get_row($wpdb->prepare("\n                    SELECT *\n                    FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                    WHERE l.id = %d\n                ", $licenseOrder->license_id));
     51            if (!$row) {
     52                continue;
     53            }
     54            $licenseItems[] = ['product_name' => wc_get_product($licenseOrder->product_id) ? wc_get_product($licenseOrder->product_id)->get_name() : null, 'expired_at' => $row->expired_at, 'license_key' => $row->license_key, 'token' => \base64_encode("{$site_url}\n{$site_name}\n{$row->license_key}")];
     55        }
     56        \do_action('f!yabe/ukiyo/ecommerce/platform/woocommerce/email:email_after_order_table', $licenseItems, $wcAbstractOrder, $plain_text, $email);
     57        if (!Config::get('ecommerce.woocommerce.print_receipt_email', \false)) {
     58            return;
     59        }
     60        $block_title = \apply_filters('f!yabe/ukiyo/ecommerce/platform/woocommerce/receipt.block_head', 'Bricks Template Licenses');
    5161        ?>
    5262        <table width="100%" border="0" cellpadding="0" cellspacing="0" style="width: 100%; vertical-align: top; margin-bottom: 40px; padding: 0;">
     
    5464                <tr>
    5565                    <td style="text-align: left; border: 0; padding: 0;" valign="top">
    56                         <h2 style="color: #7f54b3; display: block; font-size: 18px; font-weight: bold; line-height: 130%; margin: 0 0 18px; text-align: left;">Yabe Ukiyo License</h2>
    57                         <div style="padding: 12px; color: #636363; border: 1px solid #e5e5e5;" >
     66                        <h2 style="color: #7f54b3; display: block; font-size: 18px; font-weight: bold; line-height: 130%; margin: 0 0 18px; text-align: left;"><?php
     67        echo \esc_html($block_title);
     68        ?></h2>
     69                        <div style="padding: 12px; color: #636363; border: 1px solid #e5e5e5;">
    5870                            <?php
    59         foreach ($licenseOrders as $licenseOrder) {
    60             $row = $wpdb->get_row($wpdb->prepare("\n                                        SELECT *\n                                        FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                                        WHERE l.id = %d\n                                    ", $licenseOrder->license_id));
    61             if (!$row) {
    62                 continue;
    63             }
    64             if (wc_get_product($licenseOrder->product_id)) {
     71        foreach ($licenseItems as $licenseItem) {
     72            if ($licenseItem['product_name']) {
    6573                ?>
    6674                                    <br><b>Product:</b> <?php
    6775                echo \esc_html(wc_get_product($licenseOrder->product_id)->get_name());
    6876                ?>
    69                                     <?php
     77                                <?php
    7078            }
    71             if ($row->expired_at) {
     79            if ($licenseItem['expired_at']) {
    7280                ?>
    7381                                    <br><b>Expire at:</b> <?php
    74                 echo \esc_html(\date('M d, Y', (int) $row->expired_at));
     82                echo \esc_html(\date('M d, Y', (int) $licenseItem['expired_at']));
    7583                ?>
    76                                     <?php
     84                                <?php
    7785            }
    7886            ?>
    7987                                <br><b>License Key:</b> <code><?php
    80             echo \esc_html($row->license_key);
     88            echo \esc_html($licenseItem['license_key']);
    8189            ?></code>
    8290                                <br><b>Token:</b> <code><?php
    83             echo \esc_html(\base64_encode("{$site_url}\n{$site_name}\n{$row->license_key}"));
     91            echo \esc_html($licenseItem['token']);
    8492            ?></code>
    8593                                <br><br>
    86                                 <?php
     94                            <?php
    8795        }
    8896        ?>
     
    92100            </tbody>
    93101        </table>
    94         <?php
     102
     103<?php
    95104    }
    96105}
  • yabe-ukiyo/tags/1.0.10/src/Ecommerce/Platform/WooCommerce/Payment.php

    r3011703 r3041433  
    2727    {
    2828        /**
     29         * Generates and creates licenses when payment status is completed
     30         *
     31         * @package WooCommerce
     32         * @link https://woocommerce.github.io/code-reference/hooks/hooks.html
     33         */
     34        \add_action('woocommerce_order_status_completed', fn(int $order_id) => $this->order_status_completed($order_id), 10, 1);
     35        /**
     36         * Revokes and deactivates licenses when payment status is updated
     37         *
    2938         * @package WooCommerce
    3039         * @link https://woocommerce.github.io/code-reference/hooks/hooks.html
     
    6170        return (int) \get_post_meta($post_id, 'ukiyo_max_sites', \true);
    6271    }
    63     private function order_status_changed(int $order_id, string $old_status, string $new_status) : void
     72    private function order_status_completed(int $order_id) : void
    6473    {
    6574        $order = wc_get_order($order_id);
     
    6776            return;
    6877        }
    69         if ($new_status === 'completed') {
    70             $this->when_payment_status_completed($order, $old_status, $new_status);
    71         } else {
     78        $this->when_payment_status_completed($order);
     79    }
     80    private function order_status_changed(int $order_id, string $old_status, string $new_status) : void
     81    {
     82        $order = wc_get_order($order_id);
     83        if (!$order) {
     84            return;
     85        }
     86        if ($new_status !== 'completed') {
    7287            $this->when_payment_status_canceled($order, $old_status, $new_status);
    7388        }
    7489    }
    75     private function when_payment_status_completed(WC_Order $wcOrder, string $old_status, string $new_status) : void
     90    private function when_payment_status_completed(WC_Order $wcOrder) : void
    7691    {
    7792        if ($this->is_order_complete($wcOrder->get_id())) {
    7893            $this->refresh_order($wcOrder->get_id());
    7994        } else {
    80             $this->fresh_order($wcOrder, $new_status);
     95            $this->fresh_order($wcOrder);
    8196        }
    8297    }
     
    8499     * A new order was created, let's create the license
    85100     */
    86     private function fresh_order(WC_Order $wcOrder, string $new_status) : void
     101    private function fresh_order(WC_Order $wcOrder) : void
    87102    {
    88103        /** @var wpdb $wpdb */
     
    100115                $license_id = $wpdb->insert_id;
    101116                // create license order
    102                 $wpdb->insert(\sprintf('%s%s_orders', $wpdb->prefix, $wpdb->yabe_ukiyo_prefix), ['created_at' => \time(), 'updated_at' => \time(), 'uid' => Common::random_slug(10), 'vendor' => 'woocommerce', 'order_id' => $wcOrder->get_id(), 'order_type' => 'shop_order', 'product_id' => (int) $product->get_id(), 'product_type' => 'product', 'order_status' => $new_status, 'customer_id' => $wcOrder->get_user_id(), 'license_id' => $license_id], ['%d', '%d', '%s', '%s', '%d', '%s', '%d', '%s', '%s', '%d', '%d']);
     117                $wpdb->insert(\sprintf('%s%s_orders', $wpdb->prefix, $wpdb->yabe_ukiyo_prefix), ['created_at' => \time(), 'updated_at' => \time(), 'uid' => Common::random_slug(10), 'vendor' => 'woocommerce', 'order_id' => $wcOrder->get_id(), 'order_type' => 'shop_order', 'product_id' => (int) $product->get_id(), 'product_type' => 'product', 'order_status' => 'completed', 'customer_id' => $wcOrder->get_user_id(), 'license_id' => $license_id], ['%d', '%d', '%s', '%s', '%d', '%s', '%d', '%s', '%s', '%d', '%d']);
    103118            }
    104119        }
  • yabe-ukiyo/tags/1.0.10/src/Ecommerce/Platform/WooCommerce/ReceiptBlock.php

    r3011703 r3041433  
    4444        $site_url = \get_site_url();
    4545        $site_name = \get_bloginfo('name');
     46        $block_title = \apply_filters('f!yabe/ukiyo/ecommerce/platform/woocommerce/receipt.block_head', 'Bricks Template Licenses');
    4647        ?>
    4748
    48         <h3>Yabe Ukiyo License</h3>
     49        <!-- <h3>Template License</h3> -->
     50        <h3><?php
     51        echo \esc_html($block_title);
     52        ?></h3>
    4953        <table id="yabe-ukiyo_receipt" class="yabe-ukiyo_receipt">
    50             <thead>
     54            <thead class="yabe-ukiyo_head">
    5155                <tr>
    5256                    <th class="yabe-ukiyo_header_name">Product</th>
     
    5963            </thead>
    6064            <tbody>
    61         <?php
     65                <?php
    6266        foreach ($licenseOrders as $licenseOrder) {
    6367            $row = $wpdb->get_row($wpdb->prepare("\n                    SELECT \n                        l.*,\n                        COUNT(s.id) AS sites_count\n                    FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                    LEFT JOIN {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_sites s ON s.license_id = l.id\n                    WHERE l.id = %d\n                    GROUP BY l.id\n                ", $licenseOrder->license_id));
     
    6872            $total_activation = $row->sites_count;
    6973            ?>
    70                 <tr>
    71                     <td class="yabe-ukiyo_cel_name">
    72                         <span class="yabe-ukiyo_name"><?php
     74                    <tr>
     75                        <td class="yabe-ukiyo_cel_name">
     76                            <span class="yabe-ukiyo_name"><?php
    7377            echo \esc_html(\get_post($licenseOrder->product_id)->post_title);
    7478            ?></span>
    75                     </td>
    76                     <td class="yabe-ukiyo_cel_status">
    77                         <span class="yabe-ukiyo_status"><?php
     79                        </td>
     80                        <td class="yabe-ukiyo_cel_status">
     81                            <span class="yabe-ukiyo_status"><?php
    7882            echo \esc_html($row->status ? 'Active' : 'Deactive');
    7983            ?></span>
    80                     </td>
    81                     <td class="yabe-ukiyo_cel_activation">
    82                         <span class="yabe-ukiyo_activation"><?php
     84                        </td>
     85                        <td class="yabe-ukiyo_cel_activation">
     86                            <span class="yabe-ukiyo_activation"><?php
    8387            echo \esc_html($total_activation . ' / ' . $max_sites);
    8488            ?></span>
    85                     </td>
    86                     <td class="yabe-ukiyo_cel_expire">
    87                         <span class="yabe-ukiyo_expire"><?php
     89                        </td>
     90                        <td class="yabe-ukiyo_cel_expire">
     91                            <span class="yabe-ukiyo_expire"><?php
    8892            echo \esc_html($row->expired_at ? \date('M d, Y', (int) $row->expired_at) : '');
    8993            ?></span>
    90                     </td>
    91                     <td class="yabe-ukiyo_cel_license_key">
    92                         <span class="yabe-ukiyo_license_key"><code><?php
     94                        </td>
     95                        <td class="yabe-ukiyo_cel_license_key">
     96                            <span class="yabe-ukiyo_license_key"><code><?php
    9397            echo \esc_html($row->license_key);
    9498            ?></code></span>
    95                     </td>
    96                     <td class="yabe-ukiyo_cel_token">
    97                         <span class="yabe-ukiyo_token"><code><?php
     99                        </td>
     100                        <td class="yabe-ukiyo_cel_token">
     101                            <span class="yabe-ukiyo_token"><code><?php
    98102            echo \esc_html(\base64_encode("{$site_url}\n{$site_name}\n!ukiyo:{$row->license_key}"));
    99103            ?></code></span>
    100                     </td>
    101                 </tr>
    102             <?php
     104                        </td>
     105                    </tr>
     106                <?php
    103107        }
    104108        ?>
    105109            </tbody>
    106             </table>
     110        </table>
    107111
    108             <style>
    109                 .yabe-ukiyo_receipt {
    110                     width: 100%;
    111                     table-layout: auto;
     112        <style>
     113            .woocommerce-order-details table {
     114                &.yabe-ukiyo_receipt {
     115                    .yabe-ukiyo_head {
     116                        display: table-header-group;
     117                        border-bottom: 1px solid #e5e5e5;
     118                    }
    112119                }
    113 
    114                 .yabe-ukiyo_receipt .yabe-ukiyo_header_name {
    115                     text-align: left;
    116                 }
    117 
    118                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_status,
    119                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_activation,
    120                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_expire {
    121                     text-align: center;
    122                 }
    123 
    124                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_license_key,
    125                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_token {
    126                     overflow-wrap: anywhere;
    127                 }
    128             </style>
    129         <?php
     120            }
     121        </style>
     122<?php
    130123    }
    131124    private function is_order_complete(int $post_id) : bool
  • yabe-ukiyo/tags/1.0.10/vendor/composer/installed.php

    r3011703 r3041433  
    33namespace _YabeUkiyo;
    44
    5 return array('root' => array('name' => 'yabe/yabe-ukiyo-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => NULL, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('hidehalo/nanoid-php' => array('pretty_version' => '1.1.13', 'version' => '1.1.13.0', 'reference' => '3fc7c949f4e655939cc30e7110d658af3dbb0e30', 'type' => 'library', 'install_path' => __DIR__ . '/../hidehalo/nanoid-php', 'aliases' => array(), 'dev_requirement' => \false), 'paragonie/random_compat' => array('pretty_version' => 'v9.99.100', 'version' => '9.99.100.0', 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/random_compat', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'rosua/migrations' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e2f2307d71032c3707cfd25587f2132a955bcf2', 'type' => 'library', 'install_path' => __DIR__ . '/../rosua/migrations', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v5.4.27', 'version' => '5.4.27.0', 'reference' => 'ff4bce3c33451e7ec778070e45bd23f74214cd5d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-access' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '0249e46f69e92049a488f39fcf531cb42c50caaa', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-access', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-info' => array('pretty_version' => 'v5.4.24', 'version' => '5.4.24.0', 'reference' => 'd43b85b00699b4484964c297575b5c6f9dc5f6e1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-info', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/stopwatch' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'f83692cd869a6f2391691d40a01e8acb89e76fee', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/stopwatch', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '1181fe9270e373537475e826873b5867b863883c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'yabe/yabe-ukiyo-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => NULL, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false)));
     5return array('root' => array('name' => 'yabe/yabe-ukiyo-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('hidehalo/nanoid-php' => array('pretty_version' => '1.1.13', 'version' => '1.1.13.0', 'reference' => '3fc7c949f4e655939cc30e7110d658af3dbb0e30', 'type' => 'library', 'install_path' => __DIR__ . '/../hidehalo/nanoid-php', 'aliases' => array(), 'dev_requirement' => \false), 'paragonie/random_compat' => array('pretty_version' => 'v9.99.100', 'version' => '9.99.100.0', 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/random_compat', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'rosua/migrations' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e2f2307d71032c3707cfd25587f2132a955bcf2', 'type' => 'library', 'install_path' => __DIR__ . '/../rosua/migrations', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v5.4.27', 'version' => '5.4.27.0', 'reference' => 'ff4bce3c33451e7ec778070e45bd23f74214cd5d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-access' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '0249e46f69e92049a488f39fcf531cb42c50caaa', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-access', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-info' => array('pretty_version' => 'v5.4.24', 'version' => '5.4.24.0', 'reference' => 'd43b85b00699b4484964c297575b5c6f9dc5f6e1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-info', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/stopwatch' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'f83692cd869a6f2391691d40a01e8acb89e76fee', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/stopwatch', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '1181fe9270e373537475e826873b5867b863883c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'yabe/yabe-ukiyo-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false)));
  • yabe-ukiyo/tags/1.0.10/yabe-ukiyo.php

    r3011703 r3041433  
    88 * Plugin URI:          https://ukiyo.yabe.land
    99 * Description:         Bricks remote templates manager
    10  * Version:             1.0.9
     10 * Version:             1.0.10
    1111 * Requires at least:   6.0
    1212 * Requires PHP:        7.4
  • yabe-ukiyo/trunk/constant.php

    r3011703 r3041433  
    2626     * @var string
    2727     */
    28     public const VERSION = '1.0.9';
     28    public const VERSION = '1.0.10';
    2929    /**
    3030     * @var int
    3131     */
    32     public const VERSION_ID = 10009;
     32    public const VERSION_ID = 10010;
    3333    /**
    3434     * @var int
     
    4242     * @var int
    4343     */
    44     public const RELEASE_VERSION = 9;
     44    public const RELEASE_VERSION = 10;
    4545    /**
    4646     * @var string
  • yabe-ukiyo/trunk/readme.txt

    r3011703 r3041433  
    55Requires at least: 6.0
    66Tested up to: 6.4
    7 Stable tag: 1.0.9
     7Stable tag: 1.0.10
    88Requires PHP: 7.4
    99License: GPLv3
     
    6464
    6565
     66= 1.0.10 =
     67* **[WooCommerce] Fix**: Licenses doesn't showed on the receipt email
     68* **[WooCommerce] Fix**: Broken style of Licenses table on the receipt page
     69
    6670= 1.0.9 =
    6771* **New**: Yabe Ukiyo Lite is now available on [WordPress.org](https://wordpress.org/plugins/yabe-ukiyo/)
  • yabe-ukiyo/trunk/src/Ecommerce/Platform/WooCommerce/Email.php

    r3011703 r3041433  
    3535    private function email_after_order_table(WC_Abstract_Order $wcAbstractOrder, $sent_to_admin, $plain_text, $email)
    3636    {
    37         if (!Config::get('ecommerce.woocommerce.print_receipt_email', \false)) {
    38             return;
    39         }
    4037        if (!$wcAbstractOrder) {
    4138            return;
     
    4946        $site_url = \get_site_url();
    5047        $site_name = \get_bloginfo('name');
     48        $licenseItems = [];
     49        foreach ($licenseOrders as $licenseOrder) {
     50            $row = $wpdb->get_row($wpdb->prepare("\n                    SELECT *\n                    FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                    WHERE l.id = %d\n                ", $licenseOrder->license_id));
     51            if (!$row) {
     52                continue;
     53            }
     54            $licenseItems[] = ['product_name' => wc_get_product($licenseOrder->product_id) ? wc_get_product($licenseOrder->product_id)->get_name() : null, 'expired_at' => $row->expired_at, 'license_key' => $row->license_key, 'token' => \base64_encode("{$site_url}\n{$site_name}\n{$row->license_key}")];
     55        }
     56        \do_action('f!yabe/ukiyo/ecommerce/platform/woocommerce/email:email_after_order_table', $licenseItems, $wcAbstractOrder, $plain_text, $email);
     57        if (!Config::get('ecommerce.woocommerce.print_receipt_email', \false)) {
     58            return;
     59        }
     60        $block_title = \apply_filters('f!yabe/ukiyo/ecommerce/platform/woocommerce/receipt.block_head', 'Bricks Template Licenses');
    5161        ?>
    5262        <table width="100%" border="0" cellpadding="0" cellspacing="0" style="width: 100%; vertical-align: top; margin-bottom: 40px; padding: 0;">
     
    5464                <tr>
    5565                    <td style="text-align: left; border: 0; padding: 0;" valign="top">
    56                         <h2 style="color: #7f54b3; display: block; font-size: 18px; font-weight: bold; line-height: 130%; margin: 0 0 18px; text-align: left;">Yabe Ukiyo License</h2>
    57                         <div style="padding: 12px; color: #636363; border: 1px solid #e5e5e5;" >
     66                        <h2 style="color: #7f54b3; display: block; font-size: 18px; font-weight: bold; line-height: 130%; margin: 0 0 18px; text-align: left;"><?php
     67        echo \esc_html($block_title);
     68        ?></h2>
     69                        <div style="padding: 12px; color: #636363; border: 1px solid #e5e5e5;">
    5870                            <?php
    59         foreach ($licenseOrders as $licenseOrder) {
    60             $row = $wpdb->get_row($wpdb->prepare("\n                                        SELECT *\n                                        FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                                        WHERE l.id = %d\n                                    ", $licenseOrder->license_id));
    61             if (!$row) {
    62                 continue;
    63             }
    64             if (wc_get_product($licenseOrder->product_id)) {
     71        foreach ($licenseItems as $licenseItem) {
     72            if ($licenseItem['product_name']) {
    6573                ?>
    6674                                    <br><b>Product:</b> <?php
    6775                echo \esc_html(wc_get_product($licenseOrder->product_id)->get_name());
    6876                ?>
    69                                     <?php
     77                                <?php
    7078            }
    71             if ($row->expired_at) {
     79            if ($licenseItem['expired_at']) {
    7280                ?>
    7381                                    <br><b>Expire at:</b> <?php
    74                 echo \esc_html(\date('M d, Y', (int) $row->expired_at));
     82                echo \esc_html(\date('M d, Y', (int) $licenseItem['expired_at']));
    7583                ?>
    76                                     <?php
     84                                <?php
    7785            }
    7886            ?>
    7987                                <br><b>License Key:</b> <code><?php
    80             echo \esc_html($row->license_key);
     88            echo \esc_html($licenseItem['license_key']);
    8189            ?></code>
    8290                                <br><b>Token:</b> <code><?php
    83             echo \esc_html(\base64_encode("{$site_url}\n{$site_name}\n{$row->license_key}"));
     91            echo \esc_html($licenseItem['token']);
    8492            ?></code>
    8593                                <br><br>
    86                                 <?php
     94                            <?php
    8795        }
    8896        ?>
     
    92100            </tbody>
    93101        </table>
    94         <?php
     102
     103<?php
    95104    }
    96105}
  • yabe-ukiyo/trunk/src/Ecommerce/Platform/WooCommerce/Payment.php

    r3011703 r3041433  
    2727    {
    2828        /**
     29         * Generates and creates licenses when payment status is completed
     30         *
     31         * @package WooCommerce
     32         * @link https://woocommerce.github.io/code-reference/hooks/hooks.html
     33         */
     34        \add_action('woocommerce_order_status_completed', fn(int $order_id) => $this->order_status_completed($order_id), 10, 1);
     35        /**
     36         * Revokes and deactivates licenses when payment status is updated
     37         *
    2938         * @package WooCommerce
    3039         * @link https://woocommerce.github.io/code-reference/hooks/hooks.html
     
    6170        return (int) \get_post_meta($post_id, 'ukiyo_max_sites', \true);
    6271    }
    63     private function order_status_changed(int $order_id, string $old_status, string $new_status) : void
     72    private function order_status_completed(int $order_id) : void
    6473    {
    6574        $order = wc_get_order($order_id);
     
    6776            return;
    6877        }
    69         if ($new_status === 'completed') {
    70             $this->when_payment_status_completed($order, $old_status, $new_status);
    71         } else {
     78        $this->when_payment_status_completed($order);
     79    }
     80    private function order_status_changed(int $order_id, string $old_status, string $new_status) : void
     81    {
     82        $order = wc_get_order($order_id);
     83        if (!$order) {
     84            return;
     85        }
     86        if ($new_status !== 'completed') {
    7287            $this->when_payment_status_canceled($order, $old_status, $new_status);
    7388        }
    7489    }
    75     private function when_payment_status_completed(WC_Order $wcOrder, string $old_status, string $new_status) : void
     90    private function when_payment_status_completed(WC_Order $wcOrder) : void
    7691    {
    7792        if ($this->is_order_complete($wcOrder->get_id())) {
    7893            $this->refresh_order($wcOrder->get_id());
    7994        } else {
    80             $this->fresh_order($wcOrder, $new_status);
     95            $this->fresh_order($wcOrder);
    8196        }
    8297    }
     
    8499     * A new order was created, let's create the license
    85100     */
    86     private function fresh_order(WC_Order $wcOrder, string $new_status) : void
     101    private function fresh_order(WC_Order $wcOrder) : void
    87102    {
    88103        /** @var wpdb $wpdb */
     
    100115                $license_id = $wpdb->insert_id;
    101116                // create license order
    102                 $wpdb->insert(\sprintf('%s%s_orders', $wpdb->prefix, $wpdb->yabe_ukiyo_prefix), ['created_at' => \time(), 'updated_at' => \time(), 'uid' => Common::random_slug(10), 'vendor' => 'woocommerce', 'order_id' => $wcOrder->get_id(), 'order_type' => 'shop_order', 'product_id' => (int) $product->get_id(), 'product_type' => 'product', 'order_status' => $new_status, 'customer_id' => $wcOrder->get_user_id(), 'license_id' => $license_id], ['%d', '%d', '%s', '%s', '%d', '%s', '%d', '%s', '%s', '%d', '%d']);
     117                $wpdb->insert(\sprintf('%s%s_orders', $wpdb->prefix, $wpdb->yabe_ukiyo_prefix), ['created_at' => \time(), 'updated_at' => \time(), 'uid' => Common::random_slug(10), 'vendor' => 'woocommerce', 'order_id' => $wcOrder->get_id(), 'order_type' => 'shop_order', 'product_id' => (int) $product->get_id(), 'product_type' => 'product', 'order_status' => 'completed', 'customer_id' => $wcOrder->get_user_id(), 'license_id' => $license_id], ['%d', '%d', '%s', '%s', '%d', '%s', '%d', '%s', '%s', '%d', '%d']);
    103118            }
    104119        }
  • yabe-ukiyo/trunk/src/Ecommerce/Platform/WooCommerce/ReceiptBlock.php

    r3011703 r3041433  
    4444        $site_url = \get_site_url();
    4545        $site_name = \get_bloginfo('name');
     46        $block_title = \apply_filters('f!yabe/ukiyo/ecommerce/platform/woocommerce/receipt.block_head', 'Bricks Template Licenses');
    4647        ?>
    4748
    48         <h3>Yabe Ukiyo License</h3>
     49        <!-- <h3>Template License</h3> -->
     50        <h3><?php
     51        echo \esc_html($block_title);
     52        ?></h3>
    4953        <table id="yabe-ukiyo_receipt" class="yabe-ukiyo_receipt">
    50             <thead>
     54            <thead class="yabe-ukiyo_head">
    5155                <tr>
    5256                    <th class="yabe-ukiyo_header_name">Product</th>
     
    5963            </thead>
    6064            <tbody>
    61         <?php
     65                <?php
    6266        foreach ($licenseOrders as $licenseOrder) {
    6367            $row = $wpdb->get_row($wpdb->prepare("\n                    SELECT \n                        l.*,\n                        COUNT(s.id) AS sites_count\n                    FROM {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_licenses l\n                    LEFT JOIN {$wpdb->prefix}{$wpdb->yabe_ukiyo_prefix}_sites s ON s.license_id = l.id\n                    WHERE l.id = %d\n                    GROUP BY l.id\n                ", $licenseOrder->license_id));
     
    6872            $total_activation = $row->sites_count;
    6973            ?>
    70                 <tr>
    71                     <td class="yabe-ukiyo_cel_name">
    72                         <span class="yabe-ukiyo_name"><?php
     74                    <tr>
     75                        <td class="yabe-ukiyo_cel_name">
     76                            <span class="yabe-ukiyo_name"><?php
    7377            echo \esc_html(\get_post($licenseOrder->product_id)->post_title);
    7478            ?></span>
    75                     </td>
    76                     <td class="yabe-ukiyo_cel_status">
    77                         <span class="yabe-ukiyo_status"><?php
     79                        </td>
     80                        <td class="yabe-ukiyo_cel_status">
     81                            <span class="yabe-ukiyo_status"><?php
    7882            echo \esc_html($row->status ? 'Active' : 'Deactive');
    7983            ?></span>
    80                     </td>
    81                     <td class="yabe-ukiyo_cel_activation">
    82                         <span class="yabe-ukiyo_activation"><?php
     84                        </td>
     85                        <td class="yabe-ukiyo_cel_activation">
     86                            <span class="yabe-ukiyo_activation"><?php
    8387            echo \esc_html($total_activation . ' / ' . $max_sites);
    8488            ?></span>
    85                     </td>
    86                     <td class="yabe-ukiyo_cel_expire">
    87                         <span class="yabe-ukiyo_expire"><?php
     89                        </td>
     90                        <td class="yabe-ukiyo_cel_expire">
     91                            <span class="yabe-ukiyo_expire"><?php
    8892            echo \esc_html($row->expired_at ? \date('M d, Y', (int) $row->expired_at) : '');
    8993            ?></span>
    90                     </td>
    91                     <td class="yabe-ukiyo_cel_license_key">
    92                         <span class="yabe-ukiyo_license_key"><code><?php
     94                        </td>
     95                        <td class="yabe-ukiyo_cel_license_key">
     96                            <span class="yabe-ukiyo_license_key"><code><?php
    9397            echo \esc_html($row->license_key);
    9498            ?></code></span>
    95                     </td>
    96                     <td class="yabe-ukiyo_cel_token">
    97                         <span class="yabe-ukiyo_token"><code><?php
     99                        </td>
     100                        <td class="yabe-ukiyo_cel_token">
     101                            <span class="yabe-ukiyo_token"><code><?php
    98102            echo \esc_html(\base64_encode("{$site_url}\n{$site_name}\n!ukiyo:{$row->license_key}"));
    99103            ?></code></span>
    100                     </td>
    101                 </tr>
    102             <?php
     104                        </td>
     105                    </tr>
     106                <?php
    103107        }
    104108        ?>
    105109            </tbody>
    106             </table>
     110        </table>
    107111
    108             <style>
    109                 .yabe-ukiyo_receipt {
    110                     width: 100%;
    111                     table-layout: auto;
     112        <style>
     113            .woocommerce-order-details table {
     114                &.yabe-ukiyo_receipt {
     115                    .yabe-ukiyo_head {
     116                        display: table-header-group;
     117                        border-bottom: 1px solid #e5e5e5;
     118                    }
    112119                }
    113 
    114                 .yabe-ukiyo_receipt .yabe-ukiyo_header_name {
    115                     text-align: left;
    116                 }
    117 
    118                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_status,
    119                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_activation,
    120                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_expire {
    121                     text-align: center;
    122                 }
    123 
    124                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_license_key,
    125                 .yabe-ukiyo_receipt .yabe-ukiyo_cel_token {
    126                     overflow-wrap: anywhere;
    127                 }
    128             </style>
    129         <?php
     120            }
     121        </style>
     122<?php
    130123    }
    131124    private function is_order_complete(int $post_id) : bool
  • yabe-ukiyo/trunk/vendor/composer/installed.php

    r3011703 r3041433  
    33namespace _YabeUkiyo;
    44
    5 return array('root' => array('name' => 'yabe/yabe-ukiyo-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => NULL, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('hidehalo/nanoid-php' => array('pretty_version' => '1.1.13', 'version' => '1.1.13.0', 'reference' => '3fc7c949f4e655939cc30e7110d658af3dbb0e30', 'type' => 'library', 'install_path' => __DIR__ . '/../hidehalo/nanoid-php', 'aliases' => array(), 'dev_requirement' => \false), 'paragonie/random_compat' => array('pretty_version' => 'v9.99.100', 'version' => '9.99.100.0', 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/random_compat', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'rosua/migrations' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e2f2307d71032c3707cfd25587f2132a955bcf2', 'type' => 'library', 'install_path' => __DIR__ . '/../rosua/migrations', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v5.4.27', 'version' => '5.4.27.0', 'reference' => 'ff4bce3c33451e7ec778070e45bd23f74214cd5d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-access' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '0249e46f69e92049a488f39fcf531cb42c50caaa', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-access', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-info' => array('pretty_version' => 'v5.4.24', 'version' => '5.4.24.0', 'reference' => 'd43b85b00699b4484964c297575b5c6f9dc5f6e1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-info', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/stopwatch' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'f83692cd869a6f2391691d40a01e8acb89e76fee', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/stopwatch', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '1181fe9270e373537475e826873b5867b863883c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'yabe/yabe-ukiyo-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => NULL, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false)));
     5return array('root' => array('name' => 'yabe/yabe-ukiyo-src', 'pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('hidehalo/nanoid-php' => array('pretty_version' => '1.1.13', 'version' => '1.1.13.0', 'reference' => '3fc7c949f4e655939cc30e7110d658af3dbb0e30', 'type' => 'library', 'install_path' => __DIR__ . '/../hidehalo/nanoid-php', 'aliases' => array(), 'dev_requirement' => \false), 'paragonie/random_compat' => array('pretty_version' => 'v9.99.100', 'version' => '9.99.100.0', 'reference' => '996434e5492cb4c3edcb9168db6fbb1359ef965a', 'type' => 'library', 'install_path' => __DIR__ . '/../paragonie/random_compat', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.2', 'version' => '1.1.2.0', 'reference' => '513e0666f7216c7459170d56df27dfcefe1689ea', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'rosua/migrations' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e2f2307d71032c3707cfd25587f2132a955bcf2', 'type' => 'library', 'install_path' => __DIR__ . '/../rosua/migrations', 'aliases' => array(0 => '9999999-dev'), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/finder' => array('pretty_version' => 'v5.4.27', 'version' => '5.4.27.0', 'reference' => 'ff4bce3c33451e7ec778070e45bd23f74214cd5d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-access' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '0249e46f69e92049a488f39fcf531cb42c50caaa', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-access', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/property-info' => array('pretty_version' => 'v5.4.24', 'version' => '5.4.24.0', 'reference' => 'd43b85b00699b4484964c297575b5c6f9dc5f6e1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/property-info', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/stopwatch' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'f83692cd869a6f2391691d40a01e8acb89e76fee', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/stopwatch', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.26', 'version' => '5.4.26.0', 'reference' => '1181fe9270e373537475e826873b5867b863883c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'yabe/yabe-ukiyo-src' => array('pretty_version' => 'dev-main', 'version' => 'dev-main', 'reference' => null, 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false)));
  • yabe-ukiyo/trunk/yabe-ukiyo.php

    r3011703 r3041433  
    88 * Plugin URI:          https://ukiyo.yabe.land
    99 * Description:         Bricks remote templates manager
    10  * Version:             1.0.9
     10 * Version:             1.0.10
    1111 * Requires at least:   6.0
    1212 * Requires PHP:        7.4
Note: See TracChangeset for help on using the changeset viewer.