*** GP Product Logs *** 2026-10-26 - version 1.0.4 * Fixed - Stock changes from refunds with "Restock refunded items", and from adding, editing or removing items on an existing order, are now logged. Stock is now read just before WooCommerce writes the new value, so every stock change is logged once with the correct old and new quantity. * Fixed - A stock change made with Quick Edit (or bulk edit) was logged and emailed twice. * Fixed - Stock history of variations is now visible: selecting a variable product in the product picker, All logs, and the product editor's Stock log box include all its variations. * Fixed - All logs could leave out older entries and report a wrong total; it now lists every entry, and the total matches what is shown. * Fixed - Order notes and status changes were listed once per product for multi-product orders; each now appears once. * Changed - All logs shows every order note (including WooCommerce's stock and email notes). WooCommerce's "Order status changed" note is only left out when the plugin's own status entry already records that change. * Changed - Variations are named in full everywhere: product, chosen attributes and SKU (e.g. "T-shirt – Color: Blue, Size: L (SKU: TS-BL) × 2"), in the logs table, saved logs, stock emails, and a new Variation column in the product editor's Stock log box. * Fixed - WooCommerce's "Stock hold" notes no longer trigger the GP order notes email. * Fixed - Shortcodes showed store figures (revenue, sales, best sellers, stock) to anyone who could view the page. Output is now only shown to logged-in users with the view_woocommerce_reports capability (filterable with gppl_shortcode_capability). * Fixed - Critical errors on the Dashboard, on pages with shortcodes, and on the plugin's page when WooCommerce is inactive. The plugin now shows a notice and stays idle until WooCommerce is active. * Fixed - Log times are now shown in the store's timezone (like order notes), and entries are sorted correctly. * Fixed - The dashboard revenue widget now uses the store currency. * Changed - Chart.js and the shortcode CSS only load where a shortcode is used, instead of on every page. * Changed - Removed the non-existent [gppl_analytics] shortcode from the Help page and added FAQs. * Changed - Readme no longer mentions a license or other products. * Changed - Remaining strings on the logs screens are now translatable. * Changed - Order links work with High-Performance Order Storage. 2026-09-17 - version 1.0.3 * Fixed - An order note could trigger a repeating loop of GP order-notes emails; email dispatch is now guarded against re-entrant triggers, and WooCommerce's own automated status/stock notes and "Email ... sent" log notes no longer trigger a GP order-notes email. * Changed - The GP stock change, GP order notes, and GP order status email notifications (WooCommerce > Settings > Emails) are now disabled by default, and the Help page FAQ now describes these optional emails accurately. * Changed - Log type filters, the per-page selector, and the Plugins screen Settings link are now translatable. * Fixed - The Low stock card and the Low stock products table on the Analytics page could disagree; both (and the dashboard widget) now read from the same set of managed-stock products, including variations, and the table lists every product in the 1-10 range. * Fixed - The per-page selector on the All Logs table had an unclosed