From 031aebb1d3684efdf79c8d23992e13fdb7a18476 Mon Sep 17 00:00:00 2001 From: Astrologies Date: Wed, 22 Dec 2021 05:34:06 -0500 Subject: [PATCH] Badge impl --- globals/Dependencies/Users/Badge.php | 44 ++++++++++++++++++++++++++++ html_admin/rank-management.php | 22 +++++++------- 2 files changed, 55 insertions(+), 11 deletions(-) create mode 100644 globals/Dependencies/Users/Badge.php diff --git a/globals/Dependencies/Users/Badge.php b/globals/Dependencies/Users/Badge.php new file mode 100644 index 0000000..8962cd5 --- /dev/null +++ b/globals/Dependencies/Users/Badge.php @@ -0,0 +1,44 @@ +prepare("INSERT INTO user_badges(uid,bid,isOfficial,whenEarned) VALUES(:n, :d, 1, UNIX_TIMESTAMP())"); + $gbadge->bindParam(":n", $userid, PDO::PARAM_INT); + $gbadge->bindParam(":d", $badgeid, PDO::PARAM_INT); + if ($gbadge->execute()) { + return true; + } + return false; + } + + public static function RemoveBadge(int $badgeid, int $userid) + { + $rbadge = $GLOBALS['pdo']->prepare("DELETE FROM user_badges WHERE uid = :u AND bid = :b"); + $rbadge->bindParam(":u", $userid, PDO::PARAM_INT); + $rbadge->bindParam(":b", $badgeid, PDO::PARAM_INT); + $rbadge->execute(); + if ($rbadge->rowCount() > 0) { + return true; + } + return false; + } + + public static function UserBadgeInfo(int $badgeid) + { + $check = $GLOBALS['pdo']->prepare("SELECT * FROM badges WHERE id = :i"); + $check->bindParam(":i", $badgeid, PDO::PARAM_INT); + $check->execute(); + return $check->fetch(PDO::FETCH_OBJ); + } + } +} \ No newline at end of file diff --git a/html_admin/rank-management.php b/html_admin/rank-management.php index 3089336..b752750 100644 --- a/html_admin/rank-management.php +++ b/html_admin/rank-management.php @@ -1,5 +1,6 @@ prepare("DELETE FROM user_badges WHERE uid = :u AND (bid = 2 OR bid = 3)"); $badge->bindParam(":u", $userid, PDO::PARAM_INT); $badge->execute(); - if ($rank > 0) - { - $newbadge = 0; - if ($rank == 1) + if ($rank > 0) { + switch ($rank) { - $newbadge = 2; + case 1: + Badge::GiveOfficialBadge(2, $userid); + break; + case 2: + Badge::GiveOfficialBadge(3, $userid); + break; + default: + break; } - elseif($rank == 2) - { - $newbadge = 3; - } - - giveBadge($newbadge, $userid); } } }