]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blame - plugins/sql_db/SQL/settings.php
Add able to change background on overview
[irc/unrealircd/unrealircd-webpanel.git] / plugins / sql_db / SQL / settings.php
CommitLineData
ce9cf366 1<?php
b41fa16f 2class 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}