| Server IP : 185.143.234.238 / Your IP : 185.215.232.195 Web Server : LiteSpeed System : Linux saman.shetabanhost.com 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64 User : behrakir ( 1361) PHP Version : 8.1.34 Disable Function : symlink,shell_exec,show_source,exec,popen,system,passthru,proc_open,proc_close,pcntl_exec,mail MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/behrakir/khanomam.com/wp-content/plugins/wp-score-gamification/app/classes/ |
Upload File : |
<?php namespace Avans;
class db
{
public static $log_tbl_score = 'avans_log_score';
public static $log_tbl_visit = 'avans_log_visit';
public static $log_tbl_score_meta = 'avans_log_meta';
public static $log_tbl_gifts_getted = 'avans_log_gifts_getted';
public static $log_tbl_refs_logs = 'avans_log_refs';
public static $log_tbl_vouchers = 'avans_log_vouchers';
public static $log_tbl_notifications = 'avans_log_notifications';
public function __construct()
{
$this->create_tables();
}
private function create_tables()
{
global $wpdb;
if (AVANS_DB_VERSION == get_option('avans_db_version', '1.0.0')) {
return;
}
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
$charset_collate = $wpdb->get_charset_collate();
$table_log_score = $wpdb->prefix.self::$log_tbl_score;
$table_log_visit = $wpdb->prefix.self::$log_tbl_visit;
$table_log_score_meta = $wpdb->prefix.self::$log_tbl_score_meta;
$table_log_gifts_getted = $wpdb->prefix.self::$log_tbl_gifts_getted;
$table_log_refs = $wpdb->prefix.self::$log_tbl_refs_logs;
$table_log_vouchers = $wpdb->prefix.self::$log_tbl_vouchers;
// $table_log_notifications = $wpdb->prefix.self::$log_tbl_notifications;
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_score}'") != $table_log_score) {
$this->create_log_score_table($table_log_score, $charset_collate);
}
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_visit}'") != $table_log_visit) {
$this->create_log_visit_table($table_log_visit, $charset_collate);
}
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_score_meta}'") != $table_log_score_meta) {
$this->create_log_meta_table($table_log_score_meta, $charset_collate);
}
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_gifts_getted}'") != $table_log_gifts_getted) {
$this->create_log_getted_gift_table($table_log_gifts_getted, $charset_collate);
}
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_refs}'") != $table_log_refs) {
$this->create_log_refs_table($table_log_refs, $charset_collate);
}
if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_vouchers}'") != $table_log_vouchers) {
$this->create_log_vouchers_table($table_log_vouchers, $charset_collate);
}
// if ($wpdb->get_var("SHOW TABLES LIKE '{$table_log_notifications}'") != $table_log_notifications) {
// $this->create_log_notification_table($table_log_notifications, $charset_collate);
// }
update_option('avans_db_version', AVANS_DB_VERSION);
}
private function create_log_notification_table($table_name, $charset_collate){
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
user_id bigint(20) NOT NULL,
msg_type varchar(30) NOT NULL,
msg_status varchar(30) NOT NULL,
msg_title varchar(200) NOT NULL,
msg_content longtext NOT NULL,
msg_extera text NOT NULL,
scheduled_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
private function create_log_score_table($table_name, $charset_collate)
{
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
user bigint(20) NOT NULL,
type varchar(50) NOT NULL,
score int(11) NOT NULL,
total int(11) NOT NULL,
status tinyint(1) NOT NULL,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
expire_date datetime NULL,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
private function create_log_visit_table($table_name, $charset_collate)
{
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
ip varchar(30) NOT NULL,
page_id bigint(20) NOT NULL,
details longtext NOT NULL,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
private function create_log_meta_table($table_name, $charset_collate)
{
$sql = "CREATE TABLE $table_name (
meta_id bigint(20) NOT NULL AUTO_INCREMENT,
log_id bigint(20) NOT NULL,
meta_key varchar(50) NOT NULL,
meta_value longtext NOT NULL,
PRIMARY KEY (meta_id)
) $charset_collate;";
dbDelta($sql);
}
private function create_log_getted_gift_table($table_name, $charset_collate)
{
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
user bigint(20) NOT NULL,
gift bigint(20) NOT NULL,
content longtext NOT NULL,
status varchar(20) NOT NULL,
create_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
public function create_log_vouchers_table($table_name, $charset_collate){
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
code varchar(50) NOT NULL,
form_id bigint(20) NOT NULL,
users longtext NULL,
used tinyint(1) NULL,
used_at timestamp NULL,
create_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
public function create_log_refs_table($table_name, $charset_collate){
$sql = "CREATE TABLE $table_name (
id bigint(20) NOT NULL AUTO_INCREMENT,
ref_id bigint(20) NOT NULL,
user_id bigint(20) NOT NULL,
type varchar(40) NOT NULL,
amount bigint(20) NOT NULL,
order_id bigint(20) NOT NULL,
status varchar(30) NOT NULL,
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) $charset_collate;";
dbDelta($sql);
}
}