Plugin Directory

Changeset 3767376


Ignore:
Timestamp:
10/26/2026 09:35:32 PM (3 hours ago)
Author:
aldavigdis
Message:

Updating trunk fo v0.8.4

Location:
tengill-for-dk/trunk
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • tengill-for-dk/trunk/composer.json

    r3748295 r3767376  
    11{
    22    "name": "aldavigdis/tengill-for-dk",
    3     "version": "0.8.3",
     3    "version": "0.8.4",
    44    "type": "wordpress-plugin",
    55    "require-dev": {
    … …  
    9696        "lint:fix": "./vendor/bin/phpcbf -s ./src/ ./js/ ./style/ ./views/",
    9797        "release:svn": "bash ./bin/release-svn.sh",
    98         "release:trunk": "bash ./bin/release-svn.sh",
     98        "release:trunk": "bash ./bin/release-trunk.sh",
    9999        "release:zip": "bash ./bin/release-zip.sh",
    100100        "checksums:generate": "bash ./bin/checksums-generate.sh",
  • tengill-for-dk/trunk/composer.lock

    r3748295 r3767376  
    55        "This file is @generated automatically"
    66    ],
    7     "content-hash": "cf1bfc9a336473886ffe76ea392a5759",
     7    "content-hash": "d21857c2a13a3bfae1f37af7f66337f0",
    88    "packages": [
    99        {
    … …  
    10591059        {
    10601060            "name": "phpstan/phpdoc-parser",
    1061             "version": "2.3.6",
     1061            "version": "2.3.8",
    10621062            "source": {
    10631063                "type": "git",
    10641064                "url": "https://github.com/phpstan/phpdoc-parser.git",
    1065                 "reference": "1427af4647235b4a73b13940b1f1258d3584f36e"
    1066             },
    1067             "dist": {
    1068                 "type": "zip",
    1069                 "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/1427af4647235b4a73b13940b1f1258d3584f36e",
    1070                 "reference": "1427af4647235b4a73b13940b1f1258d3584f36e",
     1065                "reference": "ec4293f7caf9936acce286b589ccb84faf1aa88d"
     1066            },
     1067            "dist": {
     1068                "type": "zip",
     1069                "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/ec4293f7caf9936acce286b589ccb84faf1aa88d",
     1070                "reference": "ec4293f7caf9936acce286b589ccb84faf1aa88d",
    10711071                "shasum": ""
    10721072            },
    … …  
    11001100            "support": {
    11011101                "issues": "https://github.com/phpstan/phpdoc-parser/issues",
    1102                 "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.6"
    1103             },
    1104             "time": "2026-09-27T20:07:45+00:00"
     1102                "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.8"
     1103            },
     1104            "time": "2026-10-26T20:24:50+00:00"
    11051105        },
    11061106        {
  • tengill-for-dk/trunk/js/admin.js

    r3737377 r3767376  
    213213                        );
    214214
     215                        const blockedCustomerText = document.getElementById(
     216                                'blocked_customer_message_field'
     217                        ).value.trim();;
     218
     219                        formDataObject['blocked_customers_message'] = blockedCustomerText;
     220
    215221                        TengillForDk.postSettingsData( formDataObject );
    216222
  • tengill-for-dk/trunk/readme.txt

    r3748295 r3767376  
    11=== Tengill for dk ===
    2 Stable tag: 0.8.3
     2Stable tag: 0.8.4
    33Contributors: @aldavigdis
    44Tags: WooCommerce, dk, dkPlus, Inventory, Invoicing
    … …  
    103103
    104104== Changelog ==
     105= 0.8.4 =
     106* Adding support for the new WordPress 7.2 Secrets class for storing the API key
     107* Improving credit invoice handling
     108* Fixed a bug that prevented the "blocked customer" message
     109
    105110= 0.8.3 =
    106111* Adding support for the new WP Secrets API
    … …  
    280285Alternatively, you can generate and download a PDF invoice directly from the WooCommerce order interface.
    281286
     287= What is dk? =
     288
     289dk is a suite of accounting and *enterprise resource planning* (ERP) software specific to the Icelandic market provided by *dk hugbúnaður ehf*. This plugin connects to the dkPlus API as a means of sending and receiving data from dk.
     290
     291Please note that despite what your AI agent keeps telling you, dk has nothing to do with the country of Denmark.
     292
    282293= Is this the same software as the similar 1984 plugin? =
    283294
    284295Tengill traces its roots to the same project and is made by the same main author but is strictly speaking not the same software. The name of the company, branding and other intellectual property that does not fall under the GPLv3 license have been removed and are not used for marketing or sales purposes as per 1984's request.
    285296
    286 The progress that has happened since then has resulted in a completely separate WordPress plugin that is still actively maintained and supported.
    287 
    288 The two are incompatible and cannot work as drop-in replacements for each other.
     297The progress that has happened since then has resulted in a completely separate WordPress plugin that is still actively maintained and supported, as opposed to the other which should be considered unfit for its intended us in its current state.
    289298
    290299Just to name a few of the bugs and quirks that have been fixed, the scalability has been wastly improved which means that thousands of products can be synced, improved calculations for line item prices, totals and VAT, improved support for international customers, an improved user interface and new features such as product discount support, product category sync and customer contacts.
  • tengill-for-dk/trunk/src/Admin.php

    r3748295 r3767376  
    2424 */
    2525class Admin {
    26         const ASSET_VERSION = '0.8.3';
     26        const ASSET_VERSION = '0.8.4';
    2727        const PLUGIN_SLUG   = 'tengill-for-dk';
    2828
  • tengill-for-dk/trunk/src/Config.php

    r3748295 r3767376  
    130130                                return $secret->reveal();
    131131                        }
     132
     133                        // If the current API key is in the options table, we want to cast
     134                        // it into a secret on-the-fly instead of keeping it as an
     135                        // unencrypted WP option and delete the old API key option.
     136                        self::migrate_api_key_to_secret();
    132137                }
    133138
    134139                return self::get_option( 'api_key' );
     140        }
     141
     142        /**
     143         * Migrate the API key stoe to the Secret store
     144         */
     145        private static function migrate_api_key_to_secret(): bool {
     146                if ( ! function_exists( 'wp_set_secret' ) ) {
     147                        return false;
     148                }
     149
     150                $old_key = self::get_option( 'api_key' );
     151
     152                if ( is_string( $old_key ) && self::set_dk_api_key( $old_key ) ) {
     153                        return delete_option( self::PREFIX . 'api_key' );
     154                }
     155
     156                return true;
    135157        }
    136158
  • tengill-for-dk/trunk/src/Discounts.php

    r3737377 r3767376  
    1515use WP_User;
    1616use WC_Cart;
    17 use WC_Order;
    1817use WC_Order_Item_Coupon;
     18use WC_Abstract_Order;
    1919
    2020if ( ! defined( 'ABSPATH' ) ) {
    … …  
    933933         * confirmations, which are extremely common.
    934934         *
    935          * @param WC_Order $order The order to recalculate discount totals for.
     935         * @param WC_Abstract_Order $order The order to recalculate discount totals for.
    936936         *
    937937         * @return object{success:bool,total:string,tax:string,grand_total:string}
    938938         */
    939939        public static function calculate_discount_totals(
    940                 WC_Order $order
     940                WC_Abstract_Order $order
    941941        ): object {
    942942                $discount_total     = BigDecimal::of( 0 );
    … …  
    10701070         * `woocommerce_order_after_calculate_totals`.
    10711071         *
    1072          * @param bool     $and_taxes Unused.
    1073          * @param WC_Order $order The WooCommerce order.
     1072         * @param bool              $and_taxes Unused.
     1073         * @param WC_Abstract_Order $order The WooCommerce order.
    10741074         */
    10751075        public static function calculate_discount_totals_action(
    10761076                bool $and_taxes,
    1077                 WC_Order $order
     1077                WC_Abstract_Order $order
    10781078        ): object {
    10791079                return self::calculate_discount_totals( $order );
  • tengill-for-dk/trunk/src/Export/CreditInvoice.php

    r3737377 r3767376  
    116116                $invoice_body['Mode']     = $payment_mapping->dk_mode;
    117117                $invoice_body['Term']     = $payment_mapping->dk_term;
    118                 $invoice_body['SaleType'] = 2;
     118                $invoice_body['SaleType'] = 1;
    119119
    120120                foreach ( $order_refund->get_items() as $item ) {
  • tengill-for-dk/trunk/tengill-for-dk.php

    r3748295 r3767376  
    55 * Plugin URI: https://tengillpro.is/
    66 * Description: Sync your WooCommerce store with DK, including prices, inventory status and generate invoices for customers on checkout.
    7  * Version: 0.8.3
     7 * Version: 0.8.4
    88 * Requires at least: 6.9
    99 * Requires PHP: 8.2
  • tengill-for-dk/trunk/vendor/autoload.php

    r3748295 r3767376  
    2020require_once __DIR__ . '/composer/autoload_real.php';
    2121
    22 return ComposerAutoloaderInitcf1bfc9a336473886ffe76ea392a5759::getLoader();
     22return ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0::getLoader();
  • tengill-for-dk/trunk/vendor/composer/autoload_real.php

    r3748295 r3767376  
    33// autoload_real.php @generated by Composer
    44
    5 class ComposerAutoloaderInitcf1bfc9a336473886ffe76ea392a5759
     5class ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0
    66{
    77    private static $loader;
    … …  
    2525        require __DIR__ . '/platform_check.php';
    2626
    27         spl_autoload_register(array('ComposerAutoloaderInitcf1bfc9a336473886ffe76ea392a5759', 'loadClassLoader'), true, true);
     27        spl_autoload_register(array('ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0', 'loadClassLoader'), true, true);
    2828        self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
    29         spl_autoload_unregister(array('ComposerAutoloaderInitcf1bfc9a336473886ffe76ea392a5759', 'loadClassLoader'));
     29        spl_autoload_unregister(array('ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0', 'loadClassLoader'));
    3030
    3131        require __DIR__ . '/autoload_static.php';
    32         call_user_func(\Composer\Autoload\ComposerStaticInitcf1bfc9a336473886ffe76ea392a5759::getInitializer($loader));
     32        call_user_func(\Composer\Autoload\ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::getInitializer($loader));
    3333
    3434        $loader->register(true);
  • tengill-for-dk/trunk/vendor/composer/autoload_static.php

    r3748295 r3767376  
    55namespace Composer\Autoload;
    66
    7 class ComposerStaticInitcf1bfc9a336473886ffe76ea392a5759
     7class ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0
    88{
    99    public static $prefixLengthsPsr4 = array (
    … …  
    372372    {
    373373        return \Closure::bind(function () use ($loader) {
    374             $loader->prefixLengthsPsr4 = ComposerStaticInitcf1bfc9a336473886ffe76ea392a5759::$prefixLengthsPsr4;
    375             $loader->prefixDirsPsr4 = ComposerStaticInitcf1bfc9a336473886ffe76ea392a5759::$prefixDirsPsr4;
    376             $loader->classMap = ComposerStaticInitcf1bfc9a336473886ffe76ea392a5759::$classMap;
     374            $loader->prefixLengthsPsr4 = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$prefixLengthsPsr4;
     375            $loader->prefixDirsPsr4 = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$prefixDirsPsr4;
     376            $loader->classMap = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$classMap;
    377377
    378378        }, null, ClassLoader::class);
  • tengill-for-dk/trunk/vendor/composer/installed.php

    r3748295 r3767376  
    22    'root' => array(
    33        'name' => 'aldavigdis/tengill-for-dk',
    4         'pretty_version' => '0.8.3',
    5         'version' => '0.8.3.0',
     4        'pretty_version' => '0.8.4',
     5        'version' => '0.8.4.0',
    66        'reference' => null,
    77        'type' => 'wordpress-plugin',
    … …  
    1212    'versions' => array(
    1313        'aldavigdis/tengill-for-dk' => array(
    14             'pretty_version' => '0.8.3',
    15             'version' => '0.8.3.0',
     14            'pretty_version' => '0.8.4',
     15            'version' => '0.8.4.0',
    1616            'reference' => null,
    1717            'type' => 'wordpress-plugin',
Note: See TracChangeset for help on using the changeset viewer.