diff --git a/includes/Admin/Assets.php b/includes/Admin/Assets.php index 3fc1ffa..2452643 100644 --- a/includes/Admin/Assets.php +++ b/includes/Admin/Assets.php @@ -17,7 +17,6 @@ class Assets { // Debug logging if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[WooNooW Assets] Hook: ' . $hook); } if ($hook !== 'toplevel_page_woonoow') { @@ -32,7 +31,6 @@ class Assets // Debug logging if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[WooNooW Assets] Dev mode: ' . ($is_dev ? 'true' : 'false')); } if ($is_dev) { @@ -155,11 +153,6 @@ class Assets // Debug logging if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[WooNooW Assets] Dist dir: ' . $dist_dir); - error_log('[WooNooW Assets] CSS exists: ' . (file_exists($dist_dir . $css) ? 'yes' : 'no')); - error_log('[WooNooW Assets] JS exists: ' . (file_exists($dist_dir . $js) ? 'yes' : 'no')); - error_log('[WooNooW Assets] CSS URL: ' . $base_url . $css); - error_log('[WooNooW Assets] JS URL: ' . $base_url . $js); } if (file_exists($dist_dir . $css)) { @@ -286,7 +279,6 @@ class Assets // Debug logging (only if WP_DEBUG is enabled) if (defined('WP_DEBUG') && WP_DEBUG && $filtered !== $const_dev) { - error_log('[WooNooW Assets] Dev mode changed by filter: ' . ($filtered ? 'true' : 'false')); } return (bool) $filtered; diff --git a/includes/Admin/StandaloneAdmin.php b/includes/Admin/StandaloneAdmin.php index 770d8e1..6f944dc 100644 --- a/includes/Admin/StandaloneAdmin.php +++ b/includes/Admin/StandaloneAdmin.php @@ -53,9 +53,6 @@ class StandaloneAdmin { // Debug logging (only in WP_DEBUG mode) if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { - error_log( '[StandaloneAdmin] is_user_logged_in: ' . ( $is_logged_in ? 'true' : 'false' ) ); - error_log( '[StandaloneAdmin] has manage_woocommerce: ' . ( $has_permission ? 'true' : 'false' ) ); - error_log( '[StandaloneAdmin] is_authenticated: ' . ( $is_authenticated ? 'true' : 'false' ) ); } // Get nonce for REST API diff --git a/includes/Api/AuthController.php b/includes/Api/AuthController.php index 7f70817..17c83a0 100644 --- a/includes/Api/AuthController.php +++ b/includes/Api/AuthController.php @@ -60,9 +60,6 @@ class AuthController { // Debug logging if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { - error_log( '[AuthController::login] Login successful for user ID: ' . $user->ID ); - error_log( '[AuthController::login] Current user ID: ' . get_current_user_id() ); - error_log( '[AuthController::login] Cookies set: ' . ( headers_sent() ? 'Headers already sent!' : 'OK' ) ); } // Return user data and new nonce @@ -154,8 +151,6 @@ class AuthController { // Debug logging if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) { - error_log( '[AuthController::check] is_user_logged_in: ' . ( $is_logged_in ? 'true' : 'false' ) ); - error_log( '[AuthController::check] Cookies: ' . print_r( $_COOKIE, true ) ); } if ( ! $is_logged_in ) { diff --git a/includes/Api/OrdersController.php b/includes/Api/OrdersController.php index 6446b7f..52b2d81 100644 --- a/includes/Api/OrdersController.php +++ b/includes/Api/OrdersController.php @@ -770,16 +770,13 @@ class OrdersController { if ( null !== $status && $status !== '' ) { $order_id = $order->get_id(); add_action( 'shutdown', function() use ( $order_id, $status ) { - error_log('[WooNooW] Shutdown hook firing - scheduling email for order #' . $order_id); self::schedule_order_email( $order_id, $status ); - error_log('[WooNooW] Email scheduled successfully for order #' . $order_id); }, 999 ); } return new \WP_REST_Response( [ 'ok' => true, 'id' => $order->get_id() ], 200 ); } catch ( \Throwable $e ) { // Log the actual error for debugging - error_log('[WooNooW] Order update failed: ' . $e->getMessage()); // Return user-friendly error message return new \WP_REST_Response( [ @@ -797,13 +794,11 @@ class OrdersController { public static function on_order_status_changed( $order_id, $status_from, $status_to, $order ) { // Skip if we're in an API request (we schedule manually there) if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) { - error_log('[WooNooW] Skipping auto-schedule during API request for order #' . $order_id); return; } // Schedule email notification with 15s delay self::schedule_order_email( $order_id, $status_to ); - error_log('[WooNooW] Order #' . $order_id . ' status changed: ' . $status_from . ' → ' . $status_to . ', email scheduled'); } /** @@ -1042,7 +1037,6 @@ class OrdersController { $order->apply_coupon( $coupon ); } } catch ( \Throwable $e ) { - error_log( '[WooNooW] Coupon error: ' . $e->getMessage() ); } } @@ -1234,7 +1228,6 @@ class OrdersController { } catch ( \Throwable $e ) { // Log the actual error for debugging - error_log('[WooNooW] Order creation failed: ' . $e->getMessage()); // Return user-friendly error message return new \WP_REST_Response( [ @@ -2025,7 +2018,6 @@ class OrdersController { // Check if gateway exists if ( ! isset( $gateways[ $gateway_id ] ) ) { - error_log( '[WooNooW] Payment gateway not found: ' . $gateway_id ); return new \WP_Error( 'gateway_not_found', sprintf( __( 'Payment gateway not found: %s', 'woonoow' ), $gateway_id ) ); } @@ -2033,7 +2025,6 @@ class OrdersController { // Check if gateway has process_payment method if ( ! method_exists( $gateway, 'process_payment' ) ) { - error_log( '[WooNooW] Gateway does not have process_payment method: ' . $gateway_id ); return new \WP_Error( 'no_process_method', sprintf( __( 'Gateway does not support payment processing: %s', 'woonoow' ), $gateway_id ) ); } @@ -2045,7 +2036,6 @@ class OrdersController { // Set flag for gateways to detect admin context add_filter( 'woonoow/is_admin_order', '__return_true' ); - error_log( '[WooNooW] Processing payment for order #' . $order->get_id() . ' with gateway: ' . $gateway_id ); // Call gateway's process_payment method $result = $gateway->process_payment( $order->get_id() ); @@ -2061,11 +2051,9 @@ class OrdersController { if ( isset( $result['result'] ) && $result['result'] === 'success' ) { $order->add_order_note( __( 'Payment gateway processing completed via WooNooW', 'woonoow' ) ); - error_log( '[WooNooW] Payment processing succeeded for order #' . $order->get_id() ); } elseif ( isset( $result['result'] ) && $result['result'] === 'failure' ) { $message = isset( $result['message'] ) ? $result['message'] : __( 'Payment processing failed', 'woonoow' ); $order->add_order_note( sprintf( __( 'Payment gateway error: %s', 'woonoow' ), $message ) ); - error_log( '[WooNooW] Payment processing failed for order #' . $order->get_id() . ': ' . $message ); } $order->save(); @@ -2074,7 +2062,6 @@ class OrdersController { return $result; } catch ( \Throwable $e ) { - error_log( '[WooNooW] Payment processing exception for order #' . $order->get_id() . ': ' . $e->getMessage() ); $order->add_order_note( sprintf( __( 'Payment gateway exception: %s', 'woonoow' ), $e->getMessage() ) ); $order->save(); diff --git a/includes/Api/PaymentsController.php b/includes/Api/PaymentsController.php index cf10564..d022a89 100644 --- a/includes/Api/PaymentsController.php +++ b/includes/Api/PaymentsController.php @@ -212,12 +212,10 @@ class PaymentsController extends WP_REST_Controller { try { // Debug: Log what we're saving - error_log(sprintf('[WooNooW] Saving gateway %s settings: %s', $gateway_id, json_encode($settings))); $result = PaymentGatewaysProvider::save_gateway_settings($gateway_id, $settings); if (is_wp_error($result)) { - error_log(sprintf('[WooNooW] Save failed: %s', $result->get_error_message())); return $result; } @@ -228,7 +226,6 @@ class PaymentsController extends WP_REST_Controller { $gateway = PaymentGatewaysProvider::get_gateway($gateway_id); // Debug: Log success - error_log(sprintf('[WooNooW] Gateway %s settings saved successfully', $gateway_id)); return rest_ensure_response([ 'success' => true, @@ -236,7 +233,6 @@ class PaymentsController extends WP_REST_Controller { 'gateway' => $gateway, ]); } catch (\Exception $e) { - error_log(sprintf('[WooNooW] Save exception: %s', $e->getMessage())); return new WP_Error( 'save_gateway_failed', $e->getMessage(), @@ -268,12 +264,10 @@ class PaymentsController extends WP_REST_Controller { try { // Debug: Log what we're trying to do - error_log(sprintf('[WooNooW] Toggling gateway %s to %s', $gateway_id, $enabled ? 'enabled' : 'disabled')); $result = PaymentGatewaysProvider::toggle_gateway($gateway_id, $enabled); if (is_wp_error($result)) { - error_log(sprintf('[WooNooW] Toggle failed: %s', $result->get_error_message())); return $result; } @@ -284,7 +278,6 @@ class PaymentsController extends WP_REST_Controller { $gateway = PaymentGatewaysProvider::get_gateway($gateway_id); // Debug: Log what we got back - error_log(sprintf('[WooNooW] Gateway %s after toggle: enabled=%s', $gateway_id, $gateway['enabled'] ? 'true' : 'false')); return rest_ensure_response([ 'success' => true, @@ -292,7 +285,6 @@ class PaymentsController extends WP_REST_Controller { 'gateway' => $gateway, ]); } catch (\Exception $e) { - error_log(sprintf('[WooNooW] Toggle exception: %s', $e->getMessage())); return new WP_Error( 'toggle_gateway_failed', $e->getMessage(), @@ -333,7 +325,6 @@ class PaymentsController extends WP_REST_Controller { $option_key = 'woonoow_payment_gateway_order_' . $category; update_option($option_key, $order, false); - error_log(sprintf('[WooNooW] Saved %s gateway order: %s', $category, implode(', ', $order))); return rest_ensure_response([ 'success' => true, diff --git a/includes/Api/ShippingController.php b/includes/Api/ShippingController.php index 3314c50..f775d6d 100644 --- a/includes/Api/ShippingController.php +++ b/includes/Api/ShippingController.php @@ -454,7 +454,6 @@ class ShippingController extends WP_REST_Controller { ); } catch ( \Exception $e ) { - error_log( sprintf( '[WooNooW] Toggle exception: %s', $e->getMessage() ) ); return new WP_REST_Response( array( 'error' => 'toggle_failed', diff --git a/includes/Compat/PaymentGatewaysProvider.php b/includes/Compat/PaymentGatewaysProvider.php index 1e37faa..46fc0a7 100644 --- a/includes/Compat/PaymentGatewaysProvider.php +++ b/includes/Compat/PaymentGatewaysProvider.php @@ -391,24 +391,15 @@ class PaymentGatewaysProvider { $new_settings = array_merge($current_settings, $settings); - // Debug logging - error_log(sprintf('[WooNooW] Saving gateway %s settings: %s', $gateway_id, json_encode($settings))); - error_log(sprintf('[WooNooW] Current enabled: %s, New enabled: %s', - isset($current_settings['enabled']) ? $current_settings['enabled'] : 'not set', - isset($new_settings['enabled']) ? $new_settings['enabled'] : 'not set' - )); - // Update gateway settings directly $gateway->settings = $new_settings; // Save to database using WooCommerce's method $saved = update_option($gateway->get_option_key(), $gateway->settings, 'yes'); - error_log(sprintf('[WooNooW] update_option returned: %s', $saved ? 'true' : 'false')); // Update the enabled property specifically (WooCommerce does this) if (isset($new_settings['enabled'])) { $gateway->enabled = $new_settings['enabled']; - error_log(sprintf('[WooNooW] Set gateway->enabled to: %s', $gateway->enabled)); } // Re-enable HTTP requests diff --git a/includes/Core/Installer.php b/includes/Core/Installer.php index a650f28..6cbe951 100644 --- a/includes/Core/Installer.php +++ b/includes/Core/Installer.php @@ -58,7 +58,6 @@ class Installer { $wc_page_id = get_option($page_data['wc_option']); if ($wc_page_id && get_post($wc_page_id)) { $page_id = $wc_page_id; - error_log("WooNooW: Found existing WooCommerce {$page_data['title']} page (ID: {$page_id})"); } } @@ -67,7 +66,6 @@ class Installer { $woonoow_page_id = get_option('woonoow_' . $key . '_page_id'); if ($woonoow_page_id && get_post($woonoow_page_id)) { $page_id = $woonoow_page_id; - error_log("WooNooW: Found existing WooNooW {$page_data['title']} page (ID: {$page_id})"); } } @@ -76,7 +74,6 @@ class Installer { $existing_page = get_page_by_title($page_data['title'], OBJECT, 'page'); if ($existing_page) { $page_id = $existing_page->ID; - error_log("WooNooW: Found existing {$page_data['title']} page by title (ID: {$page_id})"); } } @@ -95,9 +92,7 @@ class Installer { 'post_content' => $page_data['content'], ]); - error_log("WooNooW: Updated {$page_data['title']} page with WooNooW shortcode"); } else { - error_log("WooNooW: {$page_data['title']} page already has WooNooW shortcode"); } } else { // No existing page found, create new one @@ -111,7 +106,6 @@ class Installer { ]); if ($page_id && !is_wp_error($page_id)) { - error_log("WooNooW: Created new {$page_data['title']} page (ID: {$page_id})"); } } @@ -162,7 +156,6 @@ class Installer { // Remove backup delete_post_meta($page_id, '_woonoow_original_content'); - error_log("WooNooW: Restored original content for page ID: {$page_id}"); } } } diff --git a/includes/Core/Notifications/EmailManager.php b/includes/Core/Notifications/EmailManager.php index aab9bfb..fda2cc2 100644 --- a/includes/Core/Notifications/EmailManager.php +++ b/includes/Core/Notifications/EmailManager.php @@ -119,7 +119,6 @@ class EmailManager { */ public function send_order_processing_email($order_id, $order = null) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] send_order_processing_email triggered for order #' . $order_id); } if (!$order) { @@ -128,7 +127,6 @@ class EmailManager { if (!$order) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Order not found for ID: ' . $order_id); } return; } @@ -136,13 +134,11 @@ class EmailManager { // Check if event is enabled if (!$this->is_event_enabled('order_processing', 'email', 'customer')) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] order_processing email is disabled in settings'); } return; } if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Sending order_processing email for order #' . $order_id); } // Send email @@ -397,7 +393,6 @@ class EmailManager { if (!$email) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Password reset email rendering failed for user: ' . $user->user_login); } return; } @@ -411,7 +406,6 @@ class EmailManager { $sent = wp_mail($email['to'], $email['subject'], $email['body'], $headers); if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Password reset email sent to ' . $email['to'] . ' - Result: ' . ($sent ? 'success' : 'failed')); } // Log email sent @@ -484,7 +478,6 @@ class EmailManager { // This allows the plugin to work out-of-the-box with default templates if ($channel_id === 'email') { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Event not configured, using default: enabled'); } return true; // Enable by default } @@ -502,7 +495,6 @@ class EmailManager { */ private function send_email($event_id, $recipient_type, $data, $extra_data = []) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] send_email called - Event: ' . $event_id . ', Recipient: ' . $recipient_type); } // Get email renderer @@ -513,13 +505,11 @@ class EmailManager { if (!$email) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Email rendering failed for event: ' . $event_id); } return; } if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] Email rendered successfully - To: ' . $email['to'] . ', Subject: ' . $email['subject']); } // Send email via wp_mail @@ -531,7 +521,6 @@ class EmailManager { $sent = wp_mail($email['to'], $email['subject'], $email['body'], $headers); if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailManager] wp_mail called - Result: ' . ($sent ? 'success' : 'failed')); } // Log email sent diff --git a/includes/Core/Notifications/EmailRenderer.php b/includes/Core/Notifications/EmailRenderer.php index 27b6bbd..a9345ae 100644 --- a/includes/Core/Notifications/EmailRenderer.php +++ b/includes/Core/Notifications/EmailRenderer.php @@ -86,13 +86,11 @@ class EmailRenderer { if (!$template) { if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailRenderer] No template found for event: ' . $event_id . ', recipient: ' . $recipient_type); } return null; } if (defined('WP_DEBUG') && WP_DEBUG) { - error_log('[EmailRenderer] Template found - Subject: ' . ($template['subject'] ?? 'no subject')); } // Get design template preference diff --git a/includes/Core/Notifications/PushNotificationHandler.php b/includes/Core/Notifications/PushNotificationHandler.php index 967b18d..9d7be9c 100644 --- a/includes/Core/Notifications/PushNotificationHandler.php +++ b/includes/Core/Notifications/PushNotificationHandler.php @@ -229,7 +229,6 @@ class PushNotificationHandler { self::queue_notification($subscription_id, $payload); $sent++; } catch (\Exception $e) { - error_log('Push notification error: ' . $e->getMessage()); } } diff --git a/includes/Frontend/TemplateOverride.php b/includes/Frontend/TemplateOverride.php index a41c137..a7caaa8 100644 --- a/includes/Frontend/TemplateOverride.php +++ b/includes/Frontend/TemplateOverride.php @@ -159,11 +159,17 @@ class TemplateOverride */ public static function redirect_wc_pages_to_spa() { - // Get SPA page URL + // Get SPA settings $appearance_settings = get_option('woonoow_appearance_settings', []); $spa_page_id = $appearance_settings['general']['spa_page'] ?? 0; + $spa_mode = $appearance_settings['general']['spa_mode'] ?? 'full'; $use_browser_router = $appearance_settings['general']['use_browser_router'] ?? true; + // Only redirect when SPA mode is 'full' + if ($spa_mode !== 'full') { + return; + } + if (!$spa_page_id) { return; // No SPA page configured } @@ -193,9 +199,10 @@ class TemplateOverride } if (is_product()) { - global $product; - if ($product) { - $slug = $product->get_slug(); + // Use get_queried_object() which returns the WP_Post, then get slug + $product_post = get_queried_object(); + if ($product_post && isset($product_post->post_name)) { + $slug = $product_post->post_name; wp_redirect($build_route('product/' . $slug), 302); exit; }