diff --git a/globals/Dependencies/Economy/EconomyHelper.php b/globals/Dependencies/Economy/EconomyHelper.php new file mode 100644 index 0000000..c0ad211 --- /dev/null +++ b/globals/Dependencies/Economy/EconomyHelper.php @@ -0,0 +1,64 @@ +prepare("INSERT INTO transaction_logs (info, amount, userid, whenTransaction) VALUES (:info, :amount, :userid, UNIX_TIMESTAMP())"); + $log->bindParam(":info", $description, PDO::PARAM_STR); + $log->bindParam(":amount", $amount, PDO::PARAM_INT); + $log->bindParam(":userid", $userid, PDO::PARAM_INT); + if ($log->execute()) { + return true; + } + return false; + } + + public static function HasEnoughAlphabux(int $amount, int $userid) + { + if (User::GetUserInfo($userid)->currency >= $amount) { + return true; + } + return false; + } + + public static function GiveAlphabux(int $amount, int $userid, $description="") + { + if (EconomyHelper::LogTransaction($amount, $userid, $description)) { + $check = $GLOBALS['pdo']->prepare("UPDATE users SET currency = (currency + :u) WHERE id = :i"); + $check->bindParam(":i", $userid, PDO::PARAM_INT); + $check->bindParam(":u", $amount, PDO::PARAM_INT); + $check->execute(); + if ($check->rowCount() > 0) { + return true; + } + } + return false; + } + + public static function RemoveAlphabux(int $amount, int $userid, string $description="") + { + if (EconomyHelper::HasEnoughAlphabux($amount, $userid)) { + if (EconomyHelper::LogTransaction($amount, $userid, $description)) { + $check = $GLOBALS['pdo']->prepare("UPDATE users SET currency = (currency - :u) WHERE id = :i"); + $check->bindParam(":i", $userid, PDO::PARAM_INT); + $check->bindParam(":u", $amount, PDO::PARAM_INT); + $check->execute(); + if ($check->rowCount() > 0) { + return true; + } + } + } + return false; + } + } +} diff --git a/globals/config.php b/globals/config.php index 105b6d3..587b0e9 100644 --- a/globals/config.php +++ b/globals/config.php @@ -122,6 +122,7 @@ try include "C:/Webserver/nginx/Alphaland/globals/Dependencies/Moderation/Filter.php"; include "C:/Webserver/nginx/Alphaland/globals/Dependencies/Users/Badge.php"; include "C:/Webserver/nginx/Alphaland/globals/Dependencies/Administration/SignupKey.php"; + include "C:/Webserver/nginx/Alphaland/globals/Dependencies/Economy/EconomyHelper.php"; include "C:/Webserver/nginx/Alphaland/globals/Dependencies/Groups/Group.php"; //authenticator