Changeset 3767376
- Timestamp:
- 10/26/2026 09:35:32 PM (3 hours ago)
- Location:
- tengill-for-dk/trunk
- Files:
-
- 13 edited
-
composer.json (modified) (2 diffs)
-
composer.lock (modified) (3 diffs)
-
js/admin.js (modified) (1 diff)
-
readme.txt (modified) (3 diffs)
-
src/Admin.php (modified) (1 diff)
-
src/Config.php (modified) (1 diff)
-
src/Discounts.php (modified) (3 diffs)
-
src/Export/CreditInvoice.php (modified) (1 diff)
-
tengill-for-dk.php (modified) (1 diff)
-
vendor/autoload.php (modified) (1 diff)
-
vendor/composer/autoload_real.php (modified) (2 diffs)
-
vendor/composer/autoload_static.php (modified) (2 diffs)
-
vendor/composer/installed.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tengill-for-dk/trunk/composer.json
r3748295 r3767376 1 1 { 2 2 "name": "aldavigdis/tengill-for-dk", 3 "version": "0.8. 3",3 "version": "0.8.4", 4 4 "type": "wordpress-plugin", 5 5 "require-dev": { … … 96 96 "lint:fix": "./vendor/bin/phpcbf -s ./src/ ./js/ ./style/ ./views/", 97 97 "release:svn": "bash ./bin/release-svn.sh", 98 "release:trunk": "bash ./bin/release- svn.sh",98 "release:trunk": "bash ./bin/release-trunk.sh", 99 99 "release:zip": "bash ./bin/release-zip.sh", 100 100 "checksums:generate": "bash ./bin/checksums-generate.sh", -
tengill-for-dk/trunk/composer.lock
r3748295 r3767376 5 5 "This file is @generated automatically" 6 6 ], 7 "content-hash": " cf1bfc9a336473886ffe76ea392a5759",7 "content-hash": "d21857c2a13a3bfae1f37af7f66337f0", 8 8 "packages": [ 9 9 { … … 1059 1059 { 1060 1060 "name": "phpstan/phpdoc-parser", 1061 "version": "2.3. 6",1061 "version": "2.3.8", 1062 1062 "source": { 1063 1063 "type": "git", 1064 1064 "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", 1071 1071 "shasum": "" 1072 1072 }, … … 1100 1100 "support": { 1101 1101 "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" 1105 1105 }, 1106 1106 { -
tengill-for-dk/trunk/js/admin.js
r3737377 r3767376 213 213 ); 214 214 215 const blockedCustomerText = document.getElementById( 216 'blocked_customer_message_field' 217 ).value.trim();; 218 219 formDataObject['blocked_customers_message'] = blockedCustomerText; 220 215 221 TengillForDk.postSettingsData( formDataObject ); 216 222 -
tengill-for-dk/trunk/readme.txt
r3748295 r3767376 1 1 === Tengill for dk === 2 Stable tag: 0.8. 32 Stable tag: 0.8.4 3 3 Contributors: @aldavigdis 4 4 Tags: WooCommerce, dk, dkPlus, Inventory, Invoicing … … 103 103 104 104 == 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 105 110 = 0.8.3 = 106 111 * Adding support for the new WP Secrets API … … 280 285 Alternatively, you can generate and download a PDF invoice directly from the WooCommerce order interface. 281 286 287 = What is dk? = 288 289 dk 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 291 Please note that despite what your AI agent keeps telling you, dk has nothing to do with the country of Denmark. 292 282 293 = Is this the same software as the similar 1984 plugin? = 283 294 284 295 Tengill 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. 285 296 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. 297 The 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. 289 298 290 299 Just 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 24 24 */ 25 25 class Admin { 26 const ASSET_VERSION = '0.8. 3';26 const ASSET_VERSION = '0.8.4'; 27 27 const PLUGIN_SLUG = 'tengill-for-dk'; 28 28 -
tengill-for-dk/trunk/src/Config.php
r3748295 r3767376 130 130 return $secret->reveal(); 131 131 } 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(); 132 137 } 133 138 134 139 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; 135 157 } 136 158 -
tengill-for-dk/trunk/src/Discounts.php
r3737377 r3767376 15 15 use WP_User; 16 16 use WC_Cart; 17 use WC_Order;18 17 use WC_Order_Item_Coupon; 18 use WC_Abstract_Order; 19 19 20 20 if ( ! defined( 'ABSPATH' ) ) { … … 933 933 * confirmations, which are extremely common. 934 934 * 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. 936 936 * 937 937 * @return object{success:bool,total:string,tax:string,grand_total:string} 938 938 */ 939 939 public static function calculate_discount_totals( 940 WC_ Order $order940 WC_Abstract_Order $order 941 941 ): object { 942 942 $discount_total = BigDecimal::of( 0 ); … … 1070 1070 * `woocommerce_order_after_calculate_totals`. 1071 1071 * 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. 1074 1074 */ 1075 1075 public static function calculate_discount_totals_action( 1076 1076 bool $and_taxes, 1077 WC_ Order $order1077 WC_Abstract_Order $order 1078 1078 ): object { 1079 1079 return self::calculate_discount_totals( $order ); -
tengill-for-dk/trunk/src/Export/CreditInvoice.php
r3737377 r3767376 116 116 $invoice_body['Mode'] = $payment_mapping->dk_mode; 117 117 $invoice_body['Term'] = $payment_mapping->dk_term; 118 $invoice_body['SaleType'] = 2;118 $invoice_body['SaleType'] = 1; 119 119 120 120 foreach ( $order_refund->get_items() as $item ) { -
tengill-for-dk/trunk/tengill-for-dk.php
r3748295 r3767376 5 5 * Plugin URI: https://tengillpro.is/ 6 6 * Description: Sync your WooCommerce store with DK, including prices, inventory status and generate invoices for customers on checkout. 7 * Version: 0.8. 37 * Version: 0.8.4 8 8 * Requires at least: 6.9 9 9 * Requires PHP: 8.2 -
tengill-for-dk/trunk/vendor/autoload.php
r3748295 r3767376 20 20 require_once __DIR__ . '/composer/autoload_real.php'; 21 21 22 return ComposerAutoloaderInit cf1bfc9a336473886ffe76ea392a5759::getLoader();22 return ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0::getLoader(); -
tengill-for-dk/trunk/vendor/composer/autoload_real.php
r3748295 r3767376 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit cf1bfc9a336473886ffe76ea392a57595 class ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0 6 6 { 7 7 private static $loader; … … 25 25 require __DIR__ . '/platform_check.php'; 26 26 27 spl_autoload_register(array('ComposerAutoloaderInit cf1bfc9a336473886ffe76ea392a5759', 'loadClassLoader'), true, true);27 spl_autoload_register(array('ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0', 'loadClassLoader'), true, true); 28 28 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 29 spl_autoload_unregister(array('ComposerAutoloaderInit cf1bfc9a336473886ffe76ea392a5759', 'loadClassLoader'));29 spl_autoload_unregister(array('ComposerAutoloaderInitd21857c2a13a3bfae1f37af7f66337f0', 'loadClassLoader')); 30 30 31 31 require __DIR__ . '/autoload_static.php'; 32 call_user_func(\Composer\Autoload\ComposerStaticInit cf1bfc9a336473886ffe76ea392a5759::getInitializer($loader));32 call_user_func(\Composer\Autoload\ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::getInitializer($loader)); 33 33 34 34 $loader->register(true); -
tengill-for-dk/trunk/vendor/composer/autoload_static.php
r3748295 r3767376 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit cf1bfc9a336473886ffe76ea392a57597 class ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( … … 372 372 { 373 373 return \Closure::bind(function () use ($loader) { 374 $loader->prefixLengthsPsr4 = ComposerStaticInit cf1bfc9a336473886ffe76ea392a5759::$prefixLengthsPsr4;375 $loader->prefixDirsPsr4 = ComposerStaticInit cf1bfc9a336473886ffe76ea392a5759::$prefixDirsPsr4;376 $loader->classMap = ComposerStaticInit cf1bfc9a336473886ffe76ea392a5759::$classMap;374 $loader->prefixLengthsPsr4 = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$prefixLengthsPsr4; 375 $loader->prefixDirsPsr4 = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$prefixDirsPsr4; 376 $loader->classMap = ComposerStaticInitd21857c2a13a3bfae1f37af7f66337f0::$classMap; 377 377 378 378 }, null, ClassLoader::class); -
tengill-for-dk/trunk/vendor/composer/installed.php
r3748295 r3767376 2 2 'root' => array( 3 3 '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', 6 6 'reference' => null, 7 7 'type' => 'wordpress-plugin', … … 12 12 'versions' => array( 13 13 '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', 16 16 'reference' => null, 17 17 'type' => 'wordpress-plugin',
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)