| Server IP : 185.21.40.28 / Your IP : 216.73.216.64 Web Server : LiteSpeed System : Linux vm1413.enterprisecloud.nu 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64 User : nordisk-netvaerk-neuro_s2rzzojuo ( 10433) PHP Version : 8.3.32 Disable Function : opcache_get_status MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/vhosts/nordisk-netvaerk-neurorehab.com/httpdocs/wp-content/plugins/gpltimes/ |
Upload File : |
# Changelog ## v5.11.0 ### 🌍 Internationalization * Added 7 new language translations (below). Together with Spanish (`es_ES`) shipped in v5.10.0, the plugin now includes **8** translated locales in `languages/`; English strings remain the default when no matching translation is loaded: * French (`fr_FR`) * Portuguese Brazil (`pt_BR`) * German (`de_DE`) * Italian (`it_IT`) * Dutch (`nl_NL`) * Russian (`ru_RU`) * Chinese Simplified (`zh_CN`) * All 230+ translatable strings covered across admin pages, AJAX responses, email notifications, and JavaScript * Russian locale uses correct 3-form plural rules (`nplurals=3`) * Chinese Simplified locale uses `nplurals=1` (no plural distinction) * Set your site language under **Settings → General** to switch the plugin UI automatically --- ## v5.10.0 ### 🌍 Internationalization * Full translation support via WordPress i18n (`gpltimes` text domain) with Spanish (`es_ES`) included * Admin UI strings, AJAX messages, emails, and JavaScript (inline + `admin.js` / `beta-updates.js`) are translatable * Translation files: `languages/gpltimes.pot`, `gpltimes-es_ES.po`, `gpltimes-es_ES.mo` --- ## v5.9.0 ### ✨ New Feature: API Key Authentication * Added API key-based authentication as the primary activation method — simpler and more reliable than username/password * Dashboard now shows a tabbed interface: "API Key" (default) and "Username & Password" for backward compatibility * Existing authenticated sites automatically receive their API key from the server on the next update check — zero user action required for migration * API key is used for all server communication: version checks, downloads, domain registration, and deactivation * Twice-daily auth recheck no longer requires stored password when API key is present * JWT (username/password) authentication remains fully supported for users on older versions ### 🔧 Under the Hood * Server endpoints (version check, download, domain registration, deactivation) now accept both API key and JWT authentication * Added unified token validation across all server endpoints * Plugin version bump to 5.9.0 --- ## v5.8.7 ### 🐛 Bug Fixes * Fixed horizontal scroll on all plugin admin pages — `.gplt-wrap` used negative margins that extended the layout width and caused overflow. Container now uses `margin: 0`, `padding: 20px 20px 20px 0`, `max-width: 100%`, and `overflow-x: hidden` so the wrap stays within the viewport with no scroll * Made `.gplt-wrap` background transparent so the admin area uses the default WordPress background * Added `box-sizing: border-box` to `.gplt-wrap` for consistent layout * Removed box shadow from `.gplt-page-header` for a flatter look --- ## v5.8.6 ### ✨ Enhancements * Rollback feature now supports manual ZIP upload updates — when a user uploads a plugin/theme ZIP via "Upload Plugin/Theme" that overwrites an existing GPL Times-managed item, a backup is automatically created before the overwrite * Upload-overwrite updates for GPL Times-managed items are now logged in the Update Log --- ## v5.8.5 ### 🐛 Bug Fixes * Fixed Auto-Update Scheduling custom days selection reverting to default (Mon/Wed/Fri) after save — selecting only Saturday now correctly persists as just Saturday --- ## v5.8.4 ### 🐛 Bug Fixes * Fixed whitelabel not working with external services like modulards.com that read the plugin file header directly instead of using WordPress runtime filters * Whitelabel settings (Plugin Name, Description, Author, Author URI) are now physically written to the `gpltimes.php` file header when saved, reset, or imported * File header is automatically re-applied after plugin updates (both automatic and manual ZIP uploads) so whitelabel branding persists across all update methods * Added lightweight admin_init check that detects when the file header doesn't match whitelabel settings and rewrites it — catches manual ZIP uploads, FTP replacements, or any file overwrite * Existing installs with whitelabel configured will have the file header rewritten automatically upon upgrading to this version — no manual re-save needed * Gracefully falls back to the original runtime filter method if file permissions prevent writing, ensuring whitelabel always works within WordPress admin regardless of server configuration * Fixed rolling back GPL Times plugin via the Rollback feature causing activation status (login credentials) to be lost, requiring re-login — self-rollback now replaces files directly without triggering deactivation/reactivation cycle * Whitelabel file header is automatically re-applied after self-rollback to the restored plugin files --- ## v5.8.3 ### ✨ Enhancements * "View version details" popup now shows the original plugin/theme homepage link (from Plugin URI or Author URI in the plugin header) instead of hardcoded gpltimes.com * Falls back to gpltimes.com only when no original author link is found in the plugin/theme metadata * Plugin name references in version details description and installation instructions are now dynamic, respecting whitelabel settings --- ## v5.8.2 ### 🐛 Bug Fixes * Fixed authentication failing for passwords containing special characters (`<`, `>`, `&`, etc.) * Replaced `sanitize_text_field()` with `wp_unslash()` for password handling to preserve all characters * Added custom sanitize callback for password settings registration --- ## v5.8.1 ### 🐛 Bug Fixes * Fixed "Disable Updates" feature blocking updates from original developers - When disabling GPL Times updates for a plugin/theme, updates from WordPress.org and premium vendors now work correctly * Updated Disable Updates page description to clarify that developer updates will continue to work --- ## v5.8.0 - Major Feature Release *Two powerful new features: Auto-Update Scheduling and Rollback* ### 🚀 New Feature: Auto-Update Scheduling * **Automatic Updates** - Schedule automatic updates for GPL Times plugins and themes * **Flexible Scheduling** - Daily, Weekly, or Custom day schedules with time selection * **Safety Rules** - Minor updates only, skip beta versions, limit updates per run * **Per-Item Control** - Set individual items to Auto or Manual mode with bulk actions (Set All Auto/Manual buttons) * **Email Notifications** - HTML email reports on successful/failed updates ### 🚀 New Feature: Rollback * **One-Click Rollback** - Restore plugins/themes to previous version if an update causes issues * **Automatic Backups** - Creates backup before each update (auto and manual) for easy recovery * **Rollback Link** - "Rollback to vX.X" appears in plugin/theme row actions on Plugins & Themes pages * **Rollback Settings** - Enable/disable feature, configure retention period (7-90 days), max backups per item * **Storage Management** - View backup count/size, delete all backups option * **Smart Cleanup** - Automatic cleanup of old backups based on retention settings ### 🚀 New Feature: Update Log * **Dedicated Update Log Page** - Comprehensive history of all updates: - Statistics cards showing total, auto, manual, and rollback counts - Filter tabs (All, Auto, Manual, Rollback) - Detailed table with date/time, item name, type badge, version changes, and status - Pagination for large logs - Clear log functionality (preserves backup files for rollback) * **Manual Update Logging** - Tracks manual updates of GPL Times items alongside auto-updates ### ✨ Enhancements * **Export/Import** - Now includes all settings (whitelabel, visibility, rollback, auto-update schedule & per-item settings) with backward compatibility * **Settings Page** - Reorganized layout: Visibility → Rollback → Export/Import * **Visibility Settings** - Option to hide Auto-Updates menu * **Code Quality** - Moved all inline CSS to `admin.css` for better maintainability * **Code Refactoring** - Created shared `Helpers` class to eliminate duplicate code: - Centralized `determine_type()`, `get_current_version()`, `get_item_name()`, `is_beta_version()`, `is_major_update()`, and `format_size()` methods - Standardized nonce verification across all AJAX handlers using consistent `verify_nonce()` helper * Current server time display alongside timezone in schedule settings * Protected backup directory with .htaccess * Proper cleanup on plugin uninstall ### 🐛 Bug Fixes * Fixed PHP 8.x deprecation warnings for hidden admin pages * Fixed WordPress compatibility for manual update backups (detects via `temp_backup` presence) * Fixed duplicate log entries during auto-updates (manual update hooks now skip when auto-update is running) * Fixed rollback activating deactivated plugins (now preserves plugin activation state) * Styled toast notifications for all actions (replaced browser alerts) --- ## v5.1.1 ### ✨ Enhancements * Added remote changelog support - changelogs now fetched from GPL Times server * Implemented 6-hour caching for remote changelog to reduce server requests * Added fallback to local changelog if remote server is unavailable --- ## v5.1.0 ### 🔧 Fixes * Fixed "View version details" popup for premium plugins (WP-Rocket, etc.) * Added `plugins_api_result` filter to ensure GPL Times info overrides third-party updaters * Improved slug matching for plugin information requests * Removed unused debug template --- ## v5.0.0 - Major Release *Complete plugin rewrite with enhanced security, performance, and modern UI* ### 🔒 Security * Consistent nonce verification across all AJAX handlers * Proper capability checks on all admin actions * Input sanitization and output escaping throughout * Fixed `plugins_api` filter priority to prevent third-party plugin conflicts ### ⚡ Performance * Reduced database queries with smarter caching * Optimized asset loading with version-based cache busting * Improved transient management with automatic recovery * More reliable cron job scheduling * PSR-4 autoloading for efficient class loading ### 🚀 Architecture * Complete plugin rewrite with clean, modern codebase * Full backward compatibility - all existing settings retained * Backward compatibility toggle for future migration * Proper uninstall handler for clean removal * WordPress 6.7 compatible, PHP 7.4+ required ### 🎨 UI Improvements * Redesigned admin interface with modern, responsive layout * Custom modals for confirmations and error handling * Toast notifications for all actions * New plugin icon and branding ### ✨ Benefits * Faster dashboard loading and smoother interactions * Better compatibility with other plugins (no more conflicts) * Cleaner, more intuitive user experience * Future-proof codebase for upcoming features * Easier troubleshooting with improved error messages --- ## v4.0.17 ### UI Improvements * Redesigned admin dashboard with modern, consistent interface across all pages * Updated input fields, toggle switches, and buttons with improved styling * Added compact admin notice design with global styles * New plugin/theme icons on Disable Updates page * Enhanced plugin description * Various responsive design improvements ## v4.0.16 ### Enhancements * Renamed generic function names to prevent conflicts with other plugins * Improved plugin compatibility with other WordPress plugins by using consistent function name prefixing ## v4.0.15 ### Enhancements * Improved code organization by moving Site Editor compatibility fix to a proper class structure * Added GPLTIMES_WEBSITE constant for better maintainability of API endpoints and URLs * Reorganized file structure with dedicated Compatibility directory for fixes ## v4.0.14 ### Enhancements * Updated brand colors from pink/purple to blue color scheme (#1a8fc4) ## v4.0.13 ### UI Improvements * Removed feature cards from the dashboard for a cleaner interface * Made the status card more compact and modern * Optimized icon sizes and spacing ## v4.0.12 ### Enhancements * Redesigned the main dashboard layout * Relocated "Hide whitelabel settings page?" option for better organization * Improved visual design of whitelabel settings ## v4.0.11 ### Major Changes * Restructured the settings pages for improved usability * Combined plugin configuration options into a centralized interface ### Fixes * Fixed nonce mismatch causing "Security check failed" errors * Fixed styling issues across settings pages ## v4.0.10 ### Enhancements * Improved toast notification system consistency * Fixed UI consistency issues across the plugin interface ## v4.0.9 ### Enhancements * Added modern toast notifications across all pages * Implemented BEM methodology for CSS * Redesigned dashboard login page with modern UI ### Fixes * Fixed toast notification JavaScript errors * Resolved deactivation plugin errors ## v4.0.8 * Fixed beta updates checkbox alignment * Optimized update checking mechanism * Re-added "Disable All Admin Notices" option ## v4.0.7 * Change GET to POST for version check and customer validation * POST request token based cache for 30 min ## v4.0.6 * Fixed "Function _load_textdomain_just_in_time was called incorrectly" error * Redesigned interface ## v4.0.5 * CSS changes as per new color scheme * Plugin Icon change to SVG ## v4.0.4 * Fixed a small bug during plugin deactivation ## v4.0.3 * Fixed theme updates from developer, if disabled via "disable Update" page ## v4.0.2 * Bug fixes ## v4.0.1 * Bug fixes * Added banner and icon for plugin version details section ## v4.0 * Membership Details added in the GPL Times Dashboard Panel * Redesigned "View version details" section