| Server IP : 104.21.21.239 / Your IP : 216.73.217.134 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/home2/domains/new.davlermedia.com/wp-content/plugins/wpforms-lite/src/Logger/ |
Upload File : |
<?php
// phpcs:ignore Generic.Commenting.DocComment.MissingShort
/** @noinspection PhpIllegalPsrClassPathInspection */
namespace WPForms\Logger;
/**
* Class RecordQuery.
*
* @since 1.6.3
*/
class RecordQuery {
/**
* Build query.
*
* @since 1.6.3
*
* @param int $limit Query limit of records.
* @param int $offset Offset of records.
* @param string $search Search.
* @param string $type Type of records.
*
* @return array
*/
public function get( $limit, $offset = 0, $search = '', $type = '' ) {
global $wpdb;
//phpcs:disable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.NotPrepared
return (array) $wpdb->get_results(
$this->build_query( $limit, $offset, $search, $type )
);
//phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.NotPrepared
}
/**
* Build query.
*
* @since 1.6.3
*
* @param int $limit Query limit of records.
* @param int $offset Offset of records.
* @param string $search Search.
* @param string $type Type of records.
*
* @return string
*/
private function build_query( $limit, $offset = 0, $search = '', $type = '' ) {
global $wpdb;
$sql = 'SELECT SQL_CALC_FOUND_ROWS * FROM ' . Repository::get_table_name();
$where = [];
if ( ! empty( $search ) ) {
$where[] = $wpdb->prepare(
'`title` REGEXP %s OR `message` REGEXP %s',
$search,
$search
);
}
if ( ! empty( $type ) ) {
$where[] = $wpdb->prepare(
'`types` REGEXP %s',
$type
);
}
if ( $where ) {
$sql .= ' WHERE ' . implode( ' AND ', $where );
}
$sql .= ' ORDER BY `create_at` DESC, `id` DESC';
$sql .= $wpdb->prepare( ' LIMIT %d, %d', absint( $offset ), absint( $limit ) );
return $sql;
}
}