From 6ddfe7a27bc3cad94294642716ef58c158cad3e5 Mon Sep 17 00:00:00 2001 From: ilotterytea Date: Sat, 10 May 2025 21:27:08 +0500 Subject: feat: private profiles --- public/emotesets.php | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'public/emotesets.php') diff --git a/public/emotesets.php b/public/emotesets.php index 69fbea8..41257e9 100644 --- a/public/emotesets.php +++ b/public/emotesets.php @@ -34,11 +34,13 @@ if ($id == "global") { CASE WHEN esc.code IS NOT NULL THEN e.code ELSE NULL - END AS original_code + END AS original_code, + CASE WHEN up.private_profile = FALSE OR up.id = ? THEN e.uploaded_by ELSE NULL END AS uploaded_by FROM emotes e + JOIN user_preferences up ON up.id = e.uploaded_by JOIN emote_set_contents esc ON esc.emote_id = e.id WHERE esc.emote_set_id = ?"); - $stmt->execute([$emote_set["id"]]); + $stmt->execute([$_SESSION["user_id"] ?? "", $emote_set["id"]]); $emote_set["emotes"] = $stmt->fetchAll(PDO::FETCH_ASSOC); @@ -75,11 +77,13 @@ if ($id == "global") { CASE WHEN esc.code IS NOT NULL THEN e.code ELSE NULL - END AS original_code + END AS original_code, + CASE WHEN up.private_profile = FALSE OR up.id = ? THEN e.uploaded_by ELSE NULL END AS uploaded_by FROM emotes e + JOIN user_preferences up ON up.id = e.uploaded_by JOIN emote_set_contents esc ON esc.emote_set_id = ? WHERE e.id = esc.emote_id"); - $stmt->execute([$e["id"]]); + $stmt->execute([$_SESSION["user_id"] ?? "", $e["id"]]); $e["emotes"] = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($e["emotes"] as &$em) { @@ -113,11 +117,13 @@ if ($id == "global") { CASE WHEN esc.code IS NOT NULL THEN e.code ELSE NULL - END AS original_code + END AS original_code, + CASE WHEN up.private_profile = FALSE OR up.id = ? THEN e.uploaded_by ELSE NULL END AS uploaded_by FROM emotes e + JOIN user_preferences up ON up.id = e.uploaded_by JOIN emote_set_contents esc ON esc.emote_set_id = ? WHERE esc.emote_id = e.id"); - $stmt->execute([$emote_set["id"]]); + $stmt->execute([$_SESSION["user_id"] ?? "", $emote_set["id"]]); $emote_set["emotes"] = $stmt->fetchAll(PDO::FETCH_ASSOC); @@ -144,11 +150,13 @@ if ($id == "global") { CASE WHEN esc.code IS NOT NULL THEN e.code ELSE NULL - END AS original_code + END AS original_code, + CASE WHEN up.private_profile = FALSE OR up.id = ? THEN e.uploaded_by ELSE NULL END AS uploaded_by FROM emotes e + JOIN user_preferences up ON up.id = e.uploaded_by JOIN emote_set_contents esc ON esc.emote_set_id = ? WHERE esc.emote_id = e.id"); - $stmt->execute([$emote_set["id"]]); + $stmt->execute([$_SESSION["user_id"] ?? "", $emote_set["id"]]); $emote_set["emotes"] = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($emote_set["emotes"] as &$e) { -- cgit v1.2.3