| Server IP : 8.134.250.228 / Your IP : 216.73.217.39 Web Server : Apache System : Linux iZ7xv33p9e9ivk7yhmj7ibZ 5.10.134-18.al8.x86_64 #1 SMP Fri Dec 13 16:56:53 CST 2024 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/www.gobluemade.com/wp-content/plugins/wp-mail-smtp/src/Queue/ |
Upload File : |
<?php
namespace WPMailSMTP\Queue;
use WPMailSMTP\MigrationAbstract;
/**
* Class Migration.
*
* @since 4.0.0
*/
class Migration extends MigrationAbstract {
/**
* Version of the database table(s) for queue functionality.
*
* @since 4.0.0
*/
const DB_VERSION = 1;
/**
* Option key where we save the current DB version for queue functionality.
*
* @since 4.0.0
*/
const OPTION_NAME = 'wp_mail_smtp_queue_db_version';
/**
* Option key where we save any errors while creating the queue DB table.
*
* @since 4.0.0
*/
const ERROR_OPTION_NAME = 'wp_mail_smtp_queue_db_error';
/**
* Whether the queue is enabled.
*
* @since 4.0.0
*
* @return bool
*/
public static function is_enabled() {
return wp_mail_smtp()->get_queue()->is_enabled();
}
/**
* Initial migration - create the table structure.
*
* @since 4.0.0
*/
protected function migrate_to_1() {
global $wpdb;
$table = Queue::get_table_name();
$collate = ! empty( $wpdb->collate ) ? "COLLATE='{$wpdb->collate}'" : '';
/*
* Create the table.
*/
$sql = "
CREATE TABLE `$table` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`data` LONGTEXT NULL,
`status` TINYINT UNSIGNED NOT NULL DEFAULT '0',
`date_enqueued` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`date_processed` TIMESTAMP NULL,
PRIMARY KEY (id),
INDEX status (status),
INDEX date_processed (date_processed)
)
ENGINE='InnoDB'
{$collate};";
$result = $wpdb->query( $sql ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared, WordPress.DB.DirectDatabaseQuery.NoCaching
if ( ! empty( $wpdb->last_error ) ) {
update_option( self::ERROR_OPTION_NAME, $wpdb->last_error, false );
}
// Save the current version to DB.
if ( $result !== false ) {
$this->update_db_ver( 1 );
}
}
}