/** * Logger. * * @param string $data Data to log. */ protected function logger($data) { if (apply_filters('woocommerce_correios_enable_tracking_debug', false)) { $logger = new WC_Logger(); $logger->add('correios-tracking-history', $data); } }
/** * Test clear(). * * @since 2.4 */ public function test_clear() { $log = new WC_Logger(); $log->add('unit-tests', 'this is a message'); $log->clear('unit-tests'); $this->assertEquals('', $this->read_content('unit-tests')); }
/** * Logging method * @param string $message */ protected function log($message) { if ($this->sandbox) { if (empty($this->log)) { $this->log = new WC_Logger(); } $this->log->add('paypal', $message); } }
/** * Log something * @param string $message */ public function log($message) { if ('no' === WC_ShipStation_Integration::$logging_enabled) { return; } if (is_null($this->log)) { $this->log = new WC_Logger(); } $this->log->add('shipstation', $message); }
private static function log($msg) { if (WP_DEBUG === true) { $logger = new WC_Logger(); if (is_array($msg) || is_object($msg)) { $logger->add('woorule', print_r($msg, true)); } else { $logger->add('woorule', $msg); } } }
/** * Calculate shipping costs. * * @todo: in 2.6, the package param was added. Investigate this! */ public function calculate_shipping($package = array()) { global $woocommerce; //include_once( 'common/class-fraktguiden-packer.php' ); // Offer flat rate if the cart contents exceeds max product. if ($woocommerce->cart->get_cart_contents_count() > $this->max_products) { if ($this->alt_flat_rate == '') { return; } $rate = array('id' => $this->id . ':' . 'alt_flat_rate', 'cost' => $this->alt_flat_rate, 'label' => $this->method_title . ' flat rate'); $this->add_rate($rate); } else { $cart = $woocommerce->cart->get_cart(); $this->packages_params = $this->pack_order($cart); if (!$this->packages_params) { return; } if (is_checkout()) { $_COOKIE['_fraktguiden_packages'] = json_encode($this->packages_params); } // Request parameters. $params = array_merge($this->create_standard_url_params(), $this->packages_params); // Remove any empty elements. $params = array_filter($params); $url = add_query_arg($params, self::SERVICE_URL); // Add all the selected services to the URL $service_count = 0; if ($this->services && count($this->services) > 0) { foreach ($this->services as $service) { $url .= '&product=' . $service; } } // Make the request. $request = new WP_Bring_Request(); $response = $request->get($url); if ($response->status_code != 200) { return; } // Decode the JSON data from bring. $json = json_decode($response->get_body(), true); // Filter the response json to get only the selected services from the settings. $rates = $this->get_services_from_response($json); $rates = apply_filters('bring_shipping_rates', $rates); if ($this->debug != 'no') { $this->log->add($this->id, 'params: ' . print_r($params, true)); if ($rates) { $this->log->add($this->id, 'Rates found: ' . print_r($rates, true)); } else { $this->log->add($this->id, 'No rates found for params: ' . print_r($params, true)); } $this->log->add($this->id, 'Request url: ' . print_r($url, true)); } // Calculate rate. if ($rates) { foreach ($rates as $rate) { $this->add_rate($rate); } } } }
/** * Logger. * * @param string $data */ protected function logger($data) { $options = $this->get_method_options(); if (!empty($options) && 'yes' == $options['debug']) { $logger = new WC_Logger(); $logger->add('correios', $data); } }
/** * @param integer $order_id * * @return bool|WC_Order */ protected function get_order_by_id($order_id) { $order = new WC_Order($order_id); if (!$order) { $this->log->add('oplatamd', 'Error: Order ID not found.'); return false; } return $order; }
/** * Write the message to log * * @param String $message */ public function write($message) { // Check if enabled if ($this->is_enabled()) { // Logger object $wc_logger = new WC_Logger(); // Add to logger $wc_logger->add('xero', $message); } }
function AmzFBA_Woo_Log($level, $category, $title, $info) { $UserSettings = get_option('woocommerce_amazonfba_settings'); $DebugEnabled = $UserSettings['AmzFBA_Debug']; if ($DebugEnabled != 'no') { $handle = $category; $message = $title . ' - ' . $level . ' - ' . $info; $Logger = new WC_Logger('Woo2Amz_' . $handle); $Logger->add($handle, $message); } }
/** * Write a message to log if we're in "debug" mode. * * @param string $context * @param string $message */ public function log($context, $message) { if (!$this->debug) { return; } if (!is_a($this->logger, 'WC_Logger')) { $this->logger = new WC_Logger(); } $log_message = $context . ' - ' . $message; $this->logger->add('woocommerce-gateway-amazon-payments-advanced', $log_message); if (defined('WP_DEBUG') && WP_DEBUG) { error_log($log_message); } }
/** * Log a message via WC_Logger. * * @param string $message Message to log */ function wc_gateway_ppec_log($message) { static $wc_ppec_logger; // No need to write to log file if logging is disabled. if (!wc_gateway_ppec()->settings->is_logging_enabled()) { return false; } if (!isset($wc_ppec_logger)) { $wc_ppec_logger = new WC_Logger(); } $wc_ppec_logger->add('wc_gateway_ppec', $message); if (defined('WP_DEBUG') && WP_DEBUG) { error_log($message); } }
/** * Apply CSS to content inline. * * @param string|null $content * @param string|null $css * @return string */ function ec_apply_inline_styles($content = '', $css = '') { // load EmogrifierEC. if (!class_exists('EmogrifierEC')) { require_once WC_EMAIL_CONTROL_DIR . '/includes/emogrifier/Emogrifier.php'; } try { // Apply EmogrifierEC to inline the CSS. $emogrifier = new EmogrifierEC(); $emogrifier->setHtml($content); $emogrifier->setCss(strip_tags($css)); $content = $emogrifier->emogrify(); } catch (Exception $e) { $logger = new WC_Logger(); $logger->add('emogrifier', $e->getMessage()); } return $content; }
/** * * * @param array $request * */ function payment_callback($request) { global $woocommerce; try { $response = WebToPay::checkResponse($_REQUEST, array('projectid' => $this->projectid, 'sign_password' => $this->password)); if ($response['status'] == 1) { $order = new WC_Order($response['orderid']); if (intval(number_format($order->get_total(), 2, '', '')) > $response['amount']) { if ($this->log) { $this->log->add('paysera', 'Order #' . $order->id . ' Amounts do no match. ' . (intval(number_format($order->get_total(), 2, '', '')) . '!=' . $response['amount'])); } throw new Exception('Amounts do not match'); } if (get_woocommerce_currency() != $response['currency']) { if ($this->log) { $this->log->add('paysera', 'Order #' . $order->id . ' Currencies do not match. ' . get_woocommerce_currency() . '!=' . $response['currency']); } throw new Exception('Currencies do not match'); } if ($order->status !== 'completed') { if ($this->log) { $this->log->add('paysera', 'Order #' . $order->id . ' Callback payment completed.'); } $order->add_order_note(__('Callback payment completed', 'woocomerce')); $order->payment_complete(); } } echo 'OK'; } catch (Exception $e) { $msg = get_class($e) . ': ' . $e->getMessage(); if ($this->log) { $this->log->add('paysera', $msg); } echo $msg; } exit; }
/** * Helper log function for debugging * * @since 1.2.2 */ private function log($message) { if ($this->sswcmc->debug_enabled()) { $logger = new WC_Logger(); if (is_array($message) || is_object($message)) { $logger->add('woocommerce-mailchimp', print_r($message, true)); } else { $logger->add('woocommerce-mailchimp', $message); } } }
/** * Log messages to WooCommerce log * * @param mixed $message * @param bool $set_debug_header Set X-Mollie-Debug header (default false) */ public static function debug($message, $set_debug_header = false) { // Convert message to string if (!is_string($message)) { $message = print_r($message, true); } // Set debug header if ($set_debug_header && PHP_SAPI !== 'cli' && !headers_sent()) { header("X-Mollie-Debug: {$message}"); } // Log message if (self::getSettingsHelper()->isDebugEnabled()) { static $logger; if (empty($logger)) { // TODO: Use error_log() fallback if Wc_Logger is not available $logger = new WC_Logger(); } $logger->add(self::PLUGIN_ID . '-' . date('Y-m-d'), $message); } }
/** * Apply inline styles to dynamic content. * * @param string|null $content * @return string */ public function style_inline($content) { // make sure we only inline CSS for html emails if (in_array($this->get_content_type(), array('text/html', 'multipart/alternative')) && class_exists('DOMDocument')) { // get CSS styles ob_start(); wc_get_template('emails/email-styles.php'); $css = apply_filters('woocommerce_email_styles', ob_get_clean()); try { // apply CSS styles inline for picky email clients $emogrifier = new Emogrifier($content, $css); $content = $emogrifier->emogrify(); } catch (Exception $e) { $logger = new WC_Logger(); $logger->add('emogrifier', $e->getMessage()); } } return $content; }
/** * Update geoip database. Adapted from https://wordpress.org/plugins/geoip-detect/. */ public static function update_database() { require_once ABSPATH . 'wp-admin/includes/file.php'; $tmp_database = download_url(self::GEOLITE_DB); $logger = new WC_Logger(); if (!is_wp_error($tmp_database)) { $gzhandle = @gzopen($tmp_database, 'r'); $handle = @fopen(self::get_local_database_path(), 'w'); if ($gzhandle && $handle) { while (($string = gzread($gzhandle, 4096)) != false) { fwrite($handle, $string, strlen($string)); } gzclose($gzhandle); fclose($handle); } else { $logger->add('geolocation', 'Unable to open database file'); } @unlink($tmp_database); } else { $logger->add('geolocation', 'Unable to download GeoIP Database: ' . $tmp_database->get_error_message()); } }
/** * Update order status * * @param string $new_status * @param string $note */ public function update_status($new_status, $note = '', $manual = false) { if (!$this->id) { return; } // Standardise status names. $new_status = 'wc-' === substr($new_status, 0, 3) ? substr($new_status, 3) : $new_status; $old_status = $this->get_status(); switch (strtoupper($new_status)) { case 'COMPLETED': case 'PUBLISH': $this->post_status = 'publish'; break; case 'PROCESSING': case 'ON-HOLD': $this->post_status = 'pending'; break; case 'CANCELLED': $this->post_status = 'draft'; break; default: $this->post_status = 'draft'; break; } $this->etOrder->post_status = $this->post_status; $log = new WC_Logger(); $log->add('paypal', "Our Debug : " . $this->post_status); wp_update_post(array('ID' => $this->etOrder->ID, 'post_status' => $this->post_status)); }
/** * Easier debugging * * @param mixed $data Data to be saved * @return void */ function debug($data) { if (defined('WP_DEBUG_LOG') && WP_DEBUG_LOG === TRUE) { $logger = new WC_Logger(); $logger->add($this->id, is_array($data) || is_object($data) ? print_r($data, TRUE) : $data); } }
/** * 写日志,方便测试(看网站需求,也可以改成把记录存入数据库) * 注意:服务器需要开通fopen配置 * @param $word 要写入日志里的文本内容 默认值:空值 */ function logResult($word = '') { $log = new WC_Logger(); $log->add('alipay', $word); }
function wooccm_ce_error_log($message = '') { if ($message == '') { return; } if (class_exists('WC_Logger')) { $logger = new WC_Logger(); $logger->add('wooccm', $message); return true; } else { // Fallback where the WooCommerce logging engine is unavailable error_log(sprintf('[checkout-manager] %s', $message)); } }
/** * Push all needed DB updates to the queue for processing. */ private static function update() { $current_db_version = get_option('woocommerce_db_version'); $logger = new WC_Logger(); $update_queued = false; foreach (self::$db_updates as $version => $update_callbacks) { if (version_compare($current_db_version, $version, '<')) { foreach ($update_callbacks as $update_callback) { $logger->add('wc_db_updates', sprintf('Queuing %s - %s', $version, $update_callback)); self::$background_updater->push_to_queue($update_callback); $update_queued = true; } } } if ($update_queued) { self::$background_updater->save()->dispatch(); } }
/** * Conditionally log MailChimp API Call * @param string $resource MailChimp API Resource * @param string $method HTTP Method * @param array $args HTTP Request Body * @param array $response WP HTTP Response * @return void */ private function maybe_log($resource, $method, $args, $response) { if ($this->debug === true) { $this->log->add('woocommerce-mailchimp', "MailChimp API Call RESOURCE: {$resource} \n METHOD: {$method} \n BODY: " . print_r($args, true) . " \n RESPONSE: " . print_r($response, true)); } }
/** * @param string $msg */ public function log($msg) { if ($this->sandbox) { $log = new WC_Logger(); $log->add(self::METHOD_ID, $msg); } }
} else { $url = "https://www.hygglig.com/"; } // Billing if (strlen($order->get_formatted_billing_address()) < 10) { $order->set_address(array('first_name' => $_POST['firstName'], 'last_name' => $_POST['lastName'], 'address_1' => $_POST['address'], 'city' => $_POST['city'], 'postcode' => $_POST['postalCode'], 'email' => $_POST['email'], 'phone' => $_POST['phoneNumber'])); } // Shipping if (strlen($order->get_formatted_shipping_address()) < 10) { $order->set_address(array('first_name' => $_POST['firstName'], 'last_name' => $_POST['lastName'], 'address_1' => $_POST['address'], 'city' => $_POST['city'], 'postcode' => $_POST['postalCode']), 'shipping'); } $order->payment_complete($_POST['orderNumber']); update_post_meta($order_id, '_payment_method', 'Hygglig'); update_post_meta($order_id, '_payment_method_title', 'Hygglig'); if ($options['debug'] == 'yes') { $log->add('marginalen', "Payment for Order #" . $order_id . " completed. Stocks reduced."); } // Store user id in order so the user can keep track of track it in My account if (email_exists($order->billing_email)) { if ($options['debug'] == 'yes') { $log->add('marginalen', 'Billing email: ' . $order->billing_email); } $user = get_user_by('email', $order->billing_email); if ($options['debug'] == 'yes') { $log->add('marginalen', 'Customer User ID: ' . $user->ID); } $customer_id = $user->ID; update_post_meta($order_id, '_customer_user', $customer_id); } else { // Create new user if ($options['create_customer_account'] == 'yes') {
/** * Update geoip database. Adapted from https://wordpress.org/plugins/geoip-detect/. */ public static function update_database() { $logger = new WC_Logger(); if (!is_callable('gzopen')) { $logger->add('geolocation', 'Server does not support gzopen'); return; } require_once ABSPATH . 'wp-admin/includes/file.php'; $tmp_databases = array('v4' => download_url(self::GEOLITE_DB), 'v6' => download_url(self::GEOLITE_IPV6_DB)); foreach ($tmp_databases as $tmp_database_version => $tmp_database_path) { if (!is_wp_error($tmp_database_path)) { $gzhandle = @gzopen($tmp_database_path, 'r'); $handle = @fopen(self::get_local_database_path($tmp_database_version), 'w'); if ($gzhandle && $handle) { while ($string = gzread($gzhandle, 4096)) { fwrite($handle, $string, strlen($string)); } gzclose($gzhandle); fclose($handle); } else { $logger->add('geolocation', 'Unable to open database file'); } @unlink($tmp_database_path); } else { $logger->add('geolocation', 'Unable to download GeoIP Database: ' . $tmp_database_path->get_error_message()); } } }
function woo_ce_error_log($message = '') { if ($message == '') { return; } if (class_exists('WC_Logger')) { $logger = new WC_Logger(); $logger->add(WOO_CD_PREFIX, $message); return true; } else { // Fallback where the WooCommerce logging engine is unavailable error_log(sprintf('[store-exporter] %s', $message)); } }
/** * Complete * * Override if applicable, but ensure that the below actions are * performed, or, call parent::complete(). */ protected function complete() { $logger = new WC_Logger(); $logger->add('wc_db_updates', 'Data update complete'); WC_Install::update_db_version(); parent::complete(); }
/** * Helper log function for debugging * * @since 1.2.2 */ static function log($message) { if (WP_DEBUG === true) { $logger = new WC_Logger(); if (is_array($message) || is_object($message)) { $logger->add('mailchimp', print_r($message, true)); } else { $logger->add('mailchimp', $message); } } }