![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/www/wp-content/plugins/post-smtp/includes/ |
<?php if( !class_exists( 'PostmanEmailLogs' ) ) { require_once POST_SMTP_PATH . '/Postman/PostmanEmailLogs.php'; } /** * Adds a meta field to the given log. * * @since 2.5.0 * @version 1.0.0 */ if( !function_exists( 'postman_add_log_meta' ) ): function postman_add_log_meta( $log_id, $meta_key, $meta_value ) { global $wpdb; $email_logs = new PostmanEmailLogs(); return $wpdb->insert( $wpdb->prefix . $email_logs->meta_table, array( 'log_id' => $log_id, 'meta_key' => $meta_key, 'meta_value' => $meta_value ), array( '%d', '%s', '%s' ) ); } endif; /** * Updates a log meta field based on the given log ID. * * @since 2.5.0 * @version 1.0.0 */ if ( ! function_exists( 'postman_update_log_meta' ) ) { function postman_update_log_meta( $log_id, $meta_key, $meta_value ) { global $wpdb; $email_logs = new PostmanEmailLogs(); $existing_meta = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->prefix}{$email_logs->meta_table} WHERE log_id = %d AND meta_key = %s", $log_id, $meta_key ) ); if ( $existing_meta ) { return $wpdb->update( $wpdb->prefix . $email_logs->meta_table, array( 'meta_value' => $meta_value ), array( 'log_id' => $log_id, 'meta_key' => $meta_key ), array( '%s' ), array( '%d', '%s' ) ); } else { return $wpdb->insert( $wpdb->prefix . $email_logs->meta_table, array( 'log_id' => $log_id, 'meta_key' => $meta_key, 'meta_value' => $meta_value ), array( '%d', '%s', '%s' ) ); } } } /** * Retrieves a log meta field for the given log ID. * * @since 2.5.0 * @version 1.0.0 */ if( !function_exists( 'postman_get_log_meta' ) ): function postman_get_log_meta( $log_id, $key = '' ) { global $wpdb; $email_logs = new PostmanEmailLogs(); if( empty( $key ) ) { return $wpdb->get_results( $wpdb->prepare( "SELECT `meta_key`, `meta_value` FROM {$wpdb->prefix}{$email_logs->meta_table} WHERE `log_id` = %d", $log_id ) ); } $result = $wpdb->get_row( $wpdb->prepare( "SELECT `meta_value` FROM {$wpdb->prefix}{$email_logs->meta_table} WHERE `log_id` = %d && `meta_key` = %s", $log_id, $key ) ); return $result ? $result->meta_value : false; } endif; /** * Deletes a log meta field for the given log ID. * * @since 2.5.0 * @version 1.0.0 */ if( !function_exists( 'postman_delete_log_meta' ) ): function postman_delete_log_meta( $log_id, $meta_key, $meta_value = '' ) { global $wpdb; $email_logs = new PostmanEmailLogs(); $where = array( 'log_id' => $log_id, 'meta_key' => $meta_key ); $where_format = array( '%d', '%s' ); if( !empty( $meta_value ) ) { $where['meta_value'] = $meta_value; $where_format[] = '%s'; } return $wpdb->delete( $wpdb->prefix . $email_logs->meta_table, $where, $where_format ); } endif; /** * Sanitizes an array of values. * * @since 2.7.0 * @version 1.0.0 */ if( !function_exists( 'post_smtp_sanitize_array' ) ): function post_smtp_sanitize_array( $_array ) { $array = array(); foreach( $_array as $key => $value ) { $array[$key] = sanitize_text_field( $value ); } return $array; } endif; /** * Check pro extenstions is activated or not * * @since 2.8.6 * @version 1.0 */ if( !function_exists( 'post_smtp_has_pro' )): function post_smtp_has_pro(){ if( is_plugin_active( 'zoho-premium/postsmtp-extension-zoho-mail.php' ) || is_plugin_active( 'twilio-notifications-postsmtp-extension-premium/plugin.php' ) || is_plugin_active( 'post-smtp-extension-amazon-ses-premium/plugin.php' ) || is_plugin_active( 'report-and-tracking-addon-premium/post-smtp-report-and-tracking.php' ) || is_plugin_active( 'post-smtp-extension-office365-premium/plugin.php' ) || is_plugin_active( 'attachment-support-premium/post-smtp-attachment-support.php' ) || is_plugin_active( 'advance-email-delivery-and-logs-premium/post-smtp-advanced-email-delivery-and-logs.php' ) || is_plugin_active( 'post-smtp-pro/post-smtp-pro.php' ) ){ return true; } else{ return false; } } endif; /** * Check if the BFCM is active. * * @since 2.9.10 */ if( ! function_exists( 'postman_is_bfcm' ) ): function postman_is_bfcm() { if( get_transient( 'ps-skip-bfcm' ) || post_smtp_has_pro() ) { return false; } $promotion = Postman_Promotion_Manager::get_instance()->is_promotion_active( 'bfcm-2024' ); return $promotion; } endif;