X7ROOT File Manager
Current Path:
/home/hikrsdyp/public_html/wp-content/plugins/wpforms-lite/src/Migrations
home
/
hikrsdyp
/
public_html
/
wp-content
/
plugins
/
wpforms-lite
/
src
/
Migrations
/
??
..
??
Base.php
(12 KB)
??
Migrations.php
(972 B)
??
Tasks
??
Upgrade159.php
(707 B)
??
Upgrade1672.php
(863 B)
??
Upgrade168.php
(1.24 KB)
??
Upgrade175.php
(2.67 KB)
??
Upgrade1751.php
(562 B)
??
Upgrade177.php
(1.21 KB)
??
Upgrade182.php
(3.04 KB)
??
Upgrade183.php
(769 B)
??
Upgrade184.php
(909 B)
??
Upgrade186.php
(395 B)
??
Upgrade187.php
(1.35 KB)
??
Upgrade1_9_1.php
(1.37 KB)
??
Upgrade1_9_2.php
(911 B)
??
Upgrade1_9_7.php
(333 B)
??
UpgradeBase.php
(3.43 KB)
Editing: Upgrade175.php
<?php namespace WPForms\Migrations; use WPForms\Tasks\Meta; use WPForms\Tasks\Tasks; /** * Class v1.7.5 upgrade. * * @since 1.7.5 * * @noinspection PhpUnused */ class Upgrade175 extends UpgradeBase { /** * Delete all task meta of not active tasks. * * @since 1.7.5 * * @noinspection ElvisOperatorCanBeUsedInspection * * @return bool|null Upgrade result: * true - the upgrade completed successfully, * false - in the case of failure, * null - upgrade started but not yet finished (background task). */ public function run() { global $wpdb; if ( ! $this->as_tables_exist() ) { return true; } $group = Tasks::GROUP; $sql = "SELECT DISTINCT a.args FROM {$wpdb->prefix}actionscheduler_actions a JOIN {$wpdb->prefix}actionscheduler_groups g ON g.group_id = a.group_id WHERE g.slug = '$group' AND a.status IN ( 'pending', 'in-progress' )"; // phpcs:disable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.NotPrepared $results = $wpdb->get_results( $sql, 'ARRAY_A' ); // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.NotPrepared $results = $results ? $results : []; $meta_ids = []; foreach ( $results as $result ) { $args = isset( $result['args'] ) ? json_decode( $result['args'], true ) : null; if ( $args && ! empty( $args['tasks_meta_id'] ) ) { $meta_ids[] = $args['tasks_meta_id']; } } $table_name = Meta::get_table_name(); $not_in = $meta_ids ? wpforms_wpdb_prepare_in( $meta_ids ) : '0'; // phpcs:disable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.NoCaching $wpdb->query( "DELETE FROM $table_name WHERE id NOT IN ( $not_in )" ); // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.InterpolatedNotPrepared, WordPress.DB.DirectDatabaseQuery.NoCaching return true; } /** * Check whether AS tables exist. * * @since 1.7.6 * * @return bool */ private function as_tables_exist() { global $wpdb; $required_tables = [ $wpdb->prefix . 'actionscheduler_actions', $wpdb->prefix . 'actionscheduler_groups', ]; // phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching $tables = $wpdb->get_col( "SHOW TABLES LIKE '{$wpdb->prefix}actionscheduler%'" ); $intersect = array_values( array_intersect( $tables, $required_tables ) ); sort( $intersect ); sort( $required_tables ); return $intersect === $required_tables; } }
Upload File
Create Folder