HEX
Server: LiteSpeed
System: Linux s3.sitechai.com 4.18.0-553.51.1.lve.1.el8.x86_64 #1 SMP Wed May 14 14:34:57 UTC 2025 x86_64
User: workzeni (2217)
PHP: 8.1.32
Disabled: mail, show_source, system, shell_exec, passthru, exec, eval, shell
Upload Files
File: /home/workzeni/ecom.workzenix.com/wp-content/plugins/shopengine/core/register/model.php
<?php

namespace ShopEngine\Core\Register;

defined('ABSPATH') || exit;

class Model {

	private $db_key;
	private static $instance;

	public static function source($source = 'settings') {
		if(!self::$instance) {
			self::$instance = new self();
		}

		self::$instance->set_db_key($source);

		return self::$instance;
	}

	private function set_db_key($source) {
		$this->db_key = 'shopengine_db_' . $source;
	}

	public function get_option($key, $default = null) {

		$db = get_option($this->db_key, []);

		return isset($db[$key]) ? $db[$key] : $default;
	}

	public function set_option($key, $value) {

		$db = get_option($this->db_key);

		if(is_object($db)) {
			$db = (array)$db;
		}

		if(!is_array($db)){
			$db = [];
		}

		$db[$key] = $value;

		return update_option($this->db_key, $db);
	}

	public function delete_option($key) {

		$db = get_option($this->db_key, []);

		if(isset($db[$key])) {
			unset($db[$key]);
		}

		return true;
	}
}