403Webshell
Server IP : 91.240.85.141  /  Your IP : 216.73.216.223
Web Server : nginx/1.28.0
System : Linux nuevo.ru 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64
User :  ( 1029)
PHP Version : 8.3.6
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/wpface_ru_usr/data/www/wpface.ru/wp-content/plugins/plh/inc/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/wpface_ru_usr/data/www/wpface.ru/wp-content/plugins/plh/inc/db.php
<?php
if (!defined('ABSPATH')) exit;
new TgSupDB;

class TgSupDB {
	function __construct() {
		$this->createTables();
	}

	private static function messages_table_name() {
		global $wpdb;

		return $wpdb->prefix . 'scot_messages';
	}

	function createTables() {
		global $wpdb;
		require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
		$messages_table_name = self::messages_table_name();
		$users_table_name    = ScotUser::usersTableName();
		$threads_table_name  = ScotThread::threadsTableName();
		$charset_collate     = $wpdb->get_charset_collate();

		$sql = "CREATE TABLE $threads_table_name (
        tg_supp_thread_id bigint(20) NOT NULL AUTO_INCREMENT,
        thread_id varchar(40) UNIQUE NOT NULL,
        user_id bigint(20) NOT NULL,
        responder_nickname varchar(255),
        PRIMARY KEY (tg_supp_thread_id)
      ) $charset_collate;";
		dbDelta( $sql );

		$sql = "CREATE TABLE $users_table_name (
            user_id bigint(20) NOT NULL AUTO_INCREMENT,
            user_hash varchar(40) UNIQUE NOT NULL,
            wp_user bigint(20),
            user_data longtext,
            PRIMARY KEY (user_id)
         ) $charset_collate;";
		dbDelta( $sql );

		$sql = "CREATE TABLE $messages_table_name (
        message_id bigint(20) DEFAULT '0' NOT NULL,
        thread_id bigint(20) NOT NULL,
        message longtext NOT NULL,
        file_id longtext,
        message_data longtext NOT NULL,
        tg_user bigint(20),
        is_response boolean,
        date bigint(20) NOT NULL DEFAULT '0',
        message_type longtext NOT NULL,
        PRIMARY KEY (message_id)
    ) $charset_collate;";
		dbDelta( $sql );
	}

	static function update_user( $user_id, $wp_user = '', $thread_id = '', $user_data = '' ) {
		global $wpdb;

		$update_data = [];
		if(!empty($wp_user)) {
			$update_data['wp_user'] = $wp_user;
		}
		if(!empty($thread_id)) {
			$update_data['thread_id'] = $thread_id;
		}
		if(!empty($user_data)) {
			$update_data['user_data'] = $user_data;
		}
		
		return $wpdb->update(
			ScotUser::usersTableName(),
			$update_data,
			[
				"user_id" => $user_id,
			]
		); //db call ok; no-cache ok
	}

	static function insert_message( $message_id, $thread_id, $message, $message_data, $tg_user, $is_response, $date, $message_type, $file_id = '' ) {
		global $wpdb;
		$insert = $wpdb->insert( self::messages_table_name(), [
			"message_id"   => $message_id,
			"thread_id"    => $thread_id,
			"message"      => $message,
			"file_id"     => $file_id,
			"message_data" => $message_data,
			"tg_user"      => $tg_user,
			"is_response"  => $is_response,
			"date"         => $date,
			"message_type" => $message_type,
		] ); //db call ok; no-cache ok

		return $insert;
	}

	public static function getThreadMessages( $thread_id, $last_message_date = 0 ) {
		global $wpdb;
		$messages_table_name = self::messages_table_name();

		return $wpdb->get_results(
			$wpdb->prepare(
				"SELECT * FROM %i WHERE thread_id = %d AND date > %d ORDER BY date ASC",
				$messages_table_name,
				$thread_id,
				$last_message_date
			),
			ARRAY_A
		); //db call ok; no-cache ok
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit