]>
Commit | Line | Data |
---|---|---|
ce9cf366 | 1 | <?php |
b41fa16f | 2 | class DbSettings { |
65fcaafb | 3 | public static function get() |
b41fa16f BM |
4 | { |
5 | $conn = sqlnew(); | |
7cc3b4a0 | 6 | $query = "SELECT * FROM " . get_config("mysql::table_prefix") . "settings"; |
b41fa16f BM |
7 | $result = $conn->query($query); |
8 | $list = []; | |
9 | while ($row = $result->fetch()) | |
10 | { | |
65fcaafb | 11 | $list[$row['setting_key']] = unserialize($row['setting_value']); |
b41fa16f BM |
12 | } |
13 | return $list; | |
14 | } | |
65fcaafb | 15 | public static function set($key, $val) : int |
b41fa16f BM |
16 | { |
17 | $conn = sqlnew(); | |
7cc3b4a0 | 18 | $stmt = $conn->prepare("SELECT * FROM " . get_config("mysql::table_prefix") . "settings WHERE setting_key = :name LIMIT 1"); |
b41fa16f BM |
19 | $stmt->execute(["name" => $key]); |
20 | if ($stmt->rowCount()) // if it already exists update it | |
7cc3b4a0 | 21 | $stmt = $conn->prepare("UPDATE " . get_config("mysql::table_prefix") . "settings SET setting_value = :value WHERE setting_key = :name"); |
b41fa16f BM |
22 | |
23 | else // otherwise create it | |
7cc3b4a0 | 24 | $stmt = $conn->prepare("INSERT INTO " . get_config("mysql::table_prefix") . "settings (setting_key, setting_value) VALUES (:name, :value)"); |
ce9cf366 | 25 | |
b41fa16f | 26 | // make sure it's there/correct |
65fcaafb | 27 | $stmt->execute(["name" => $key, "value" => serialize($val)]); |
7cc3b4a0 | 28 | $stmt = $conn->prepare("SELECT * FROM " . get_config("mysql::table_prefix") . "settings WHERE setting_key = :name LIMIT 1"); |
b41fa16f BM |
29 | $stmt->execute(["name" => $key]); |
30 | return $stmt->rowCount(); // return 1 or 0 bool-like int | |
31 | } | |
d72d1923 | 32 | } |