Changeset 3416745
- Timestamp:
- 12/10/2025 07:59:39 PM (4 months ago)
- Location:
- flx-woo/trunk
- Files:
-
- 6 edited
-
flx-woo.php (modified) (1 diff)
-
readme.txt (modified) (1 diff)
-
src/Admin/PerformanceDashboard.php (modified) (1 diff)
-
src/Admin/SettingsManager.php (modified) (4 diffs)
-
src/Admin/assets/js/performance-dashboard.js (modified) (1 diff)
-
src/Admin/views/performance-dashboard.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
flx-woo/trunk/flx-woo.php
r3416692 r3416745 4 4 Plugin URI: https://flxwoo.com 5 5 Description: Headless WooCommerce checkout with FlxWoo — keep all payment gateways, shipping, and coupons working. 6 Version: 2.2. 06 Version: 2.2.1 7 7 Text Domain: flx-woo 8 8 Domain Path: /languages -
flx-woo/trunk/readme.txt
r3416692 r3416745 7 7 Requires PHP: 8.0 8 8 Requires Plugins: woocommerce 9 Stable tag: 2.2. 09 Stable tag: 2.2.1 10 10 License: MIT 11 11 License URI: https://opensource.org/license/mit -
flx-woo/trunk/src/Admin/PerformanceDashboard.php
r3416692 r3416745 169 169 $new_settings['dev_mode'] = !empty($_POST['dev_mode']); 170 170 171 // Cache enabled (checkbox: checked = '1', unchecked = not present)172 $new_settings['cache_enabled'] = !empty($_POST['cache_enabled']);173 174 171 Logger::debug('Saving dashboard settings', [ 175 172 'new_settings' => $new_settings, -
flx-woo/trunk/src/Admin/SettingsManager.php
r3416692 r3416745 40 40 public function get_all_settings() { 41 41 $settings = get_option(self::OPTION_NAME, []); 42 $defaults = $this->get_default_settings(); 42 43 43 44 // Ensure all keys exist with defaults 44 return array_merge($this->get_default_settings(), $settings); 45 $merged = array_merge($defaults, $settings); 46 47 // Fix null values from database - use defaults instead 48 foreach ($merged as $key => $value) { 49 if ($value === null && isset($defaults[$key])) { 50 $merged[$key] = $defaults[$key]; 51 } 52 } 53 54 return $merged; 45 55 } 46 56 … … 213 223 // 'cache_ttl' => NOT applicable 214 224 225 // User-configurable settings 226 'fallback_enabled' => true, // Enable fallback to native WooCommerce by default 227 'active_pages' => ['cart', 'checkout', 'thank-you'], // All pages enabled by default 228 'dev_mode' => false, // Development mode disabled by default (requires HTTPS) 229 215 230 'settings_version' => self::SETTINGS_VERSION, 216 231 ]; … … 239 254 // case 'cache_ttl': NOT applicable 240 255 256 // User-configurable settings 257 case 'fallback_enabled': 258 case 'dev_mode': 259 return $this->validate_boolean($value); 260 261 case 'active_pages': 262 return $this->validate_active_pages($value); 263 241 264 case 'settings_version': 242 265 // Version is read-only, always return current version … … 398 421 // Renderer errors removed - hardcoded in Constants.php 399 422 // Cache errors removed - not applicable to dynamic e-commerce pages 423 'fallback_enabled' => 'Fallback mode must be a boolean value.', 424 'active_pages' => 'Active pages must be an array of valid page types (cart, checkout, thank-you).', 425 'dev_mode' => 'Development mode must be a boolean value.', 400 426 'settings_version' => 'Settings version is read-only.', 401 427 ]; -
flx-woo/trunk/src/Admin/assets/js/performance-dashboard.js
r3416692 r3416745 41 41 return $(this).val(); 42 42 }).get(), 43 dev_mode: $('#dev_mode').is(':checked') ? '1' : '', 44 cache_enabled: $('#cache_enabled').is(':checked') ? '1' : '' 43 dev_mode: $('#dev_mode').is(':checked') ? '1' : '' 45 44 }; 46 45 -
flx-woo/trunk/src/Admin/views/performance-dashboard.php
r3416692 r3416745 22 22 $user_settings = $settings_manager->get_all_settings(); 23 23 24 // Ensure active_pages is always an array (handle null/empty from database) 25 $active_pages = $user_settings['active_pages'] ?? ['cart', 'checkout', 'thank-you']; 26 if (!is_array($active_pages)) { 27 $active_pages = ['cart', 'checkout', 'thank-you']; 28 } 29 24 30 $settings = [ 25 31 'renderer_url' => defined('FLX_WOO_RENDERER_URL') ? FLX_WOO_RENDERER_URL : 'https://flx01.flxwoo.com', 26 32 'timeout' => defined('FLX_WOO_RENDERER_TIMEOUT') ? FLX_WOO_RENDERER_TIMEOUT : 5, 27 'fallback_enabled' => $user_settings['fallback_enabled'], 28 'active_pages' => $user_settings['active_pages'], 29 'dev_mode' => $user_settings['dev_mode'], 30 'cache_enabled' => $user_settings['cache_enabled'], 33 'fallback_enabled' => $user_settings['fallback_enabled'] ?? true, 34 'active_pages' => $active_pages, 35 'dev_mode' => $user_settings['dev_mode'] ?? false, 31 36 ]; 32 37
Note: See TracChangeset
for help on using the changeset viewer.