Advertisement
Guest User

commdb

a guest
Jul 28th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.33 KB | None | 0 0
  1. <?php
  2.  
  3. /*
  4. * Stuff to do when setting up db
  5. * 1. run script
  6. * 2. Add award images in `Image` table
  7. * a. name -> bronzeStar
  8. * b. description -> awards
  9. * c. link -> ../resources/img/bronzeStar.png
  10. * 3. Add awards to `Awards` table
  11. * a. name -> bronzeStar
  12. * b. image_id -> reference `Image` table
  13. */
  14.  
  15. class dbcomm
  16. {
  17. //connection that others can't modify
  18. protected $sqlconn;
  19.  
  20. //connect on startup
  21. function __construct() {
  22. $this->connect();
  23. }
  24.  
  25. //disconnect on close
  26. function __destruct() {
  27. $this->disconnect();
  28. }
  29.  
  30.  
  31. /*
  32. * GENERAL FUNCTIONS ------------------------------------------------------------
  33. * */
  34.  
  35. //connect to db or die
  36. function connect() {
  37. $this->sqlconn = mysqli_connect('mysql.planbook.xyz','pb_dev1','4FEF!j1w3KUSz0M','planbook_db1');
  38. if (mysqli_connect_errno()) {
  39. die("Connection failed: " . mysqli_connect_error());
  40. }
  41. }
  42.  
  43. //disconnect from db
  44. function disconnect() {
  45. mysqli_close($this->sqlconn);
  46. }
  47.  
  48. //send query to mysql or die
  49. function doQuery($query) {
  50. $result = mysqli_query($this->sqlconn,$query) or die(mysqli_error($this->sqlconn));
  51. return $result;
  52. }
  53.  
  54. //convert timestamp to human time
  55. function getHumanTimeFromTimestamp($timestamp) {
  56. date_default_timezone_set("America/New_York");
  57. $humantime = date("M j, Y (H:i:s)", $timestamp);
  58. return $humantime;
  59. }
  60.  
  61. //make a new timestamp
  62. function newTimestamp() {
  63. return time();
  64. }
  65.  
  66. function deleteAccountByUsername($username) {
  67. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  68. $accountID = mysqli_fetch_array($this->doQuery($query))['account_id'];
  69.  
  70. $query = "SELECT `id`,`image_id` FROM `User` WHERE `account_id`='$accountID'";
  71. $result = $this->doQuery($query);
  72. while($row = mysqli_fetch_array($result)) {
  73. $userID = $row['id'];
  74. $userImageID = $row['image_id'];
  75. echo "Deleting userID:" . $userID . " and userImageID:" . $userImageID;
  76. $query = "DELETE FROM `User_Awards` WHERE `user_id` = '$userID'";
  77. $this->doQuery($query);
  78. $query = "DELETE FROM `Image` WHERE `id` = '$userImageID'";
  79. $this->doQuery($query);
  80. $query = "DELETE FROM `User` WHERE `id` = '$userID'";
  81. $this->doQuery($query);
  82. }
  83. $query = "DELETE FROM `Account` WHERE `id` = '$accountID'";
  84. $this->doQuery($query);
  85. }
  86.  
  87. /*
  88. * SIGN-UP FUNCTIONS ------------------------------------------------------------
  89. * */
  90.  
  91. function checkIfAccountNameExists($accountName)
  92. {
  93. $query = "SELECT `id` FROM `Account` WHERE `account_name`='$accountName';";
  94. $result = $this->doQuery($query);
  95.  
  96. $SQLdataarray = mysqli_fetch_array($result);
  97. if(count($SQLdataarray) < 1) {
  98. return FALSE;
  99. }
  100. else {
  101. return TRUE;
  102. }
  103. }
  104.  
  105. function checkIfUsernameExists($username)
  106. {
  107. $query = "SELECT `id` FROM `User` WHERE `username`='$username';";
  108. $result = $this->doQuery($query);
  109.  
  110. $SQLdataarray = mysqli_fetch_array($result);
  111. if(count($SQLdataarray) < 1) {
  112. return FALSE;
  113. }
  114. else {
  115. return TRUE;
  116. }
  117. }
  118.  
  119. function checkIfPhonenumberExists($phonenumber)
  120. {
  121. $query = "SELECT `id` FROM `User` WHERE `phone_number`='$phonenumber';";
  122. $result = $this->doQuery($query);
  123.  
  124. $SQLdataarray = mysqli_fetch_array($result);
  125. if(count($SQLdataarray) < 1) {
  126. return FALSE;
  127. }
  128. else {
  129. return TRUE;
  130. }
  131. }
  132.  
  133. function checkIfEmailExists($email)
  134. {
  135. $query = "SELECT `id` FROM `User` WHERE `email`='$email';";
  136. $result = $this->doQuery($query);
  137.  
  138. $SQLdataarray = mysqli_fetch_array($result);
  139. if(count($SQLdataarray) < 1) {
  140. return FALSE;
  141. }
  142. else {
  143. return TRUE;
  144. }
  145. }
  146.  
  147. function createNewAdmin($accountName, $username, $password, $email, $phonenumber)
  148. {
  149. $query = "INSERT INTO `Account` (`account_name`) VALUES ('$accountName');";
  150. $this->doQuery($query);
  151.  
  152. $query = "SELECT `id` FROM `Account` WHERE `account_name`='$accountName'";
  153. $accountID = mysqli_fetch_array($this->doQuery($query))['id'];
  154.  
  155. $query = "INSERT INTO `Image` (`name`,`description`,`link`) VALUES ('$username','profile picture','../../resources/img/profile.png')";
  156. $this->doQuery($query);
  157.  
  158. $query = "SELECT `id` FROM `Image` WHERE `name`='$username'";
  159. $imageID = mysqli_fetch_array($this->doQuery($query))['id'];
  160.  
  161.  
  162. $query = "INSERT INTO `User` (`account_id`, `username`, `password`, `image_id`, `email`, `phone_number`) VALUES ('$accountID', '$username', '$password', '$imageID', '$email', '$phonenumber');";
  163. $this->doQuery($query);
  164.  
  165. $query = "UPDATE `User` SET `type_id`='1' WHERE `username`='$username'";
  166. $this->doQuery($query);
  167.  
  168.  
  169. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  170. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  171.  
  172. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeStar'";
  173. $bronzeStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  174. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverStar'";
  175. $silverStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  176. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldStar'";
  177. $goldStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  178. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeTrophy'";
  179. $bronzeTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  180. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverTrophy'";
  181. $silverTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  182. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldTrophy'";
  183. $goldTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  184.  
  185. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($bronzeStarID, $userID, '0');";
  186. $this->doQuery($query);
  187. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($silverStarID, $userID, '0');";
  188. $this->doQuery($query);
  189. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($goldStarID, $userID, '0');";
  190. $this->doQuery($query);
  191. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($bronzeTrophyID, $userID, '0');";
  192. $this->doQuery($query);
  193. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($silverTrophyID, $userID, '0');";
  194. $this->doQuery($query);
  195. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($goldTrophyID, $userID, '0');";
  196. $this->doQuery($query);
  197. }
  198.  
  199. function getAccountIDByUsername($username)
  200. {
  201. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  202. return mysqli_fetch_array($this->doQuery($query))['account_id'];
  203. }
  204.  
  205. function createNewUser($accountID, $username, $password, $email, $phonenumber)
  206. {
  207. $query = "INSERT INTO `Image` (`name`,`description`,`link`) VALUES ('$username','profile picture','../../resources/img/profile.png')";
  208. $this->doQuery($query);
  209.  
  210. $query = "SELECT `id` FROM `Image` WHERE `name`='$username'";
  211. $imageID = mysqli_fetch_array($this->doQuery($query))['id'];
  212.  
  213. $query = "INSERT INTO `User` (`account_id`, `username`, `password`, `image_id`, `email`, `phone_number`) VALUES ('$accountID', '$username', '$password', '$imageID', '$email', '$phonenumber');";
  214. $this->doQuery($query);
  215.  
  216. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  217. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  218.  
  219. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeStar'";
  220. $bronzeStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  221. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverStar'";
  222. $silverStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  223. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldStar'";
  224. $goldStarID = mysqli_fetch_array($this->doQuery($query))['id'];
  225. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeTrophy'";
  226. $bronzeTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  227. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverTrophy'";
  228. $silverTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  229. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldTrophy'";
  230. $goldTrophyID = mysqli_fetch_array($this->doQuery($query))['id'];
  231.  
  232. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($bronzeStarID, $userID, '0');";
  233. $this->doQuery($query);
  234. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($silverStarID, $userID, '0');";
  235. $this->doQuery($query);
  236. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($goldStarID, $userID, '0');";
  237. $this->doQuery($query);
  238. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($bronzeTrophyID, $userID, '0');";
  239. $this->doQuery($query);
  240. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($silverTrophyID, $userID, '0');";
  241. $this->doQuery($query);
  242. $query = "INSERT INTO `User_Awards` (`award_id`, `user_id`, `quantity`) VALUES ($goldTrophyID, $userID, '0');";
  243. $this->doQuery($query);
  244. }
  245.  
  246. function verifyAccountByAccountID($accountID)
  247. {
  248. $query = "UPDATE `Account` SET `verified`='1' WHERE `id`='$accountID'";
  249. return $this->doQuery($query);
  250. }
  251.  
  252. /*
  253. * SIGN-IN FUNCTIONS ------------------------------------------------------------
  254. * */
  255.  
  256. function verifyCredentials($username, $password)
  257. {
  258. $query = "SELECT `id` FROM `User` WHERE `username`='$username' AND `password`='$password';";
  259. $result = $this->doQuery($query);
  260.  
  261. $SQLdataarray = mysqli_fetch_array($result);
  262. if(count($SQLdataarray) < 1) {
  263. return FALSE;
  264. }
  265. else {
  266. return TRUE;
  267. }
  268. }
  269.  
  270. function isAccountVerified($username)
  271. {
  272. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  273. $accountID = mysqli_fetch_array($this->doQuery($query))['account_id'];
  274. $query = "SELECT `verified` FROM `Account` WHERE `id`='$accountID'";
  275. $verified = mysqli_fetch_array($this->doQuery($query))['verified'];
  276. if ($verified > 0){
  277. return True;
  278. }
  279. else{
  280. return False;
  281. }
  282. }
  283.  
  284. function getUserIDFromUsername($username)
  285. {
  286. $query = "SELECT `id` FROM `User` WHERE `username`='$username';";
  287. return mysqli_fetch_array($this->doQuery($query))['id'];
  288. }
  289.  
  290. function getTypeByUsername($username)
  291. {
  292. $query = "SELECT `type_id` FROM `User` WHERE `username`='$username'";
  293. $type = mysqli_fetch_array($this->doQuery($query))['type_id'];
  294. $query = "SELECT `name` FROM `Type` WHERE `id`='$type'";
  295. return mysqli_fetch_array($this->doQuery($query))['name'];
  296. }
  297.  
  298. /*
  299. * Verify FUNCTIONS ------------------------------------------------------------
  300. * */
  301.  
  302. function getEmailByUsername($username) {
  303. $query = "SELECT `email` FROM `User` WHERE `username`='$username'";
  304. return mysqli_fetch_array($this->doQuery($query))['email'];
  305. }
  306.  
  307. function getPhoneNumberByUsername($username) {
  308. $query = "SELECT `phone_number` FROM `User` WHERE `username`='$username'";
  309. $phonenumber = mysqli_fetch_array($this->doQuery($query))['phone_number'];
  310. $phonenumber = "(" . substr($phonenumber,0,3) . ") " . substr($phonenumber,3,3) . "-" . substr($phonenumber,6,4);
  311. return $phonenumber;
  312. }
  313.  
  314. function verifyAccountByUsername($username) {
  315. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  316. $accountID = mysqli_fetch_array($this->doQuery($query))['account_id'];
  317. $this->verifyAccountByAccountID($accountID);
  318. }
  319.  
  320. /*
  321. * Recovery FUNCTIONS ------------------------------------------------------------
  322. * */
  323.  
  324. // check if email exists uses the function in the sign-up section
  325.  
  326. function getUsernameByEmail($email) {
  327. $query = "SELECT `username` FROM `User` WHERE `email`='$email'";
  328. return mysqli_fetch_array($this->doQuery($query))['username'];
  329. }
  330.  
  331. function resetPasswordByUsername($username, $password) {
  332. $query = "UPDATE `User` SET `password`='$password' WHERE `username`='$username'";
  333. return $this->doQuery($query);
  334. }
  335.  
  336. /*
  337. * Admin Panel FUNCTIONS ------------------------------------------------------------
  338. * */
  339.  
  340. function getAccountNameByUsername($username) {
  341. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  342. $accountID = mysqli_fetch_array($this->doQuery($query))['account_id'];
  343. $query = "SELECT `account_name` FROM `Account` WHERE `id`='$accountID'";
  344. return mysqli_fetch_array($this->doQuery($query))['account_name'];
  345. }
  346.  
  347. function getAllUsersByAdminUsername($username) {
  348. $query = "SELECT `account_id` FROM `User` WHERE `username`='$username'";
  349. $accountID = mysqli_fetch_array($this->doQuery($query))['account_id'];
  350.  
  351. $query = "SELECT * FROM `User` WHERE `account_id`='$accountID'";
  352. $result = $this->doQuery($query);
  353.  
  354. $users = Array();
  355. while($row = mysqli_fetch_array($result)) {
  356. $users[$row['id']] = Array("username"=>$row['username'], "total_points"=>$row['total_points']);
  357. }
  358. ksort($users);
  359. return $users;
  360. }
  361.  
  362. function deleteUserByUsername($username) {
  363. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  364. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  365.  
  366. $query = "DELETE FROM `User_Awards` WHERE `user_id`='$userID'";
  367. $this->doQuery($query);
  368.  
  369. $query = "SELECT `image_id` FROM `User` WHERE `username`='$username'";
  370. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  371.  
  372. $query = "DELETE FROM `Image` WHERE `id`='$imageID'";
  373. $this->doQuery($query);
  374.  
  375. $query = "DELETE FROM `User` WHERE `username`='$username'";
  376. $this->doQuery($query);
  377. }
  378.  
  379. function getAdminUsernameByAccountID($accountID) {
  380. $query = "SELECT `username` FROM `User` WHERE `account_id`='$accountID' AND `type_id`='1'";
  381. return mysqli_fetch_array($this->doQuery($query))['username'];
  382. }
  383.  
  384. function getEncodedUsernamesByAccountID($accountID) {
  385. $query = "SELECT `username` FROM `User` WHERE `account_id`='$accountID'";
  386. $result = $this->doQuery($query);
  387.  
  388. $users = Array();
  389. while($row = mysqli_fetch_array($result)) {
  390. $encryptedUsername = openssl_encrypt($row['username'], 'DES-EDE3', 'viewUserProfilePassword');
  391. $encryptedUsername = str_replace("+", "!!!", $encryptedUsername);
  392. $encryptedUsername = str_replace("%", "$$$", $encryptedUsername);
  393. array_push($users, $encryptedUsername);
  394. }
  395. return $users;
  396. }
  397.  
  398. /*
  399. * Awards FUNCTIONS ------------------------------------------------------------
  400. * */
  401.  
  402. function getNumCurrentPointsByUsername($username) {
  403. $query = "SELECT `current_points` FROM `User` WHERE `username`='$username'";
  404. return mysqli_fetch_array($this->doQuery($query))['current_points'];
  405. }
  406.  
  407. function getNumTotalPointsByUsername($username) {
  408. $query = "SELECT `total_points` FROM `User` WHERE `username`='$username'";
  409. return mysqli_fetch_array($this->doQuery($query))['total_points'];
  410. }
  411.  
  412. function getNumBronzeStarsByUsername($username) {
  413. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  414. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  415. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeStar'";
  416. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  417.  
  418. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  419. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  420. }
  421.  
  422. function getNumSilverStarsByUsername($username) {
  423. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  424. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  425. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverStar'";
  426. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  427.  
  428. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  429. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  430. }
  431.  
  432. function getNumGoldStarsByUsername($username) {
  433. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  434. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  435. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldStar'";
  436. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  437.  
  438. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  439. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  440. }
  441.  
  442. function getNumBronzeTrophiesByUsername($username) {
  443. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  444. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  445. $query = "SELECT `id` FROM `Awards` WHERE `name`='bronzeTrophy'";
  446. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  447.  
  448. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  449. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  450. }
  451.  
  452. function getNumSilverTrophiesByUsername($username) {
  453. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  454. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  455. $query = "SELECT `id` FROM `Awards` WHERE `name`='silverTrophy'";
  456. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  457.  
  458. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  459. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  460. }
  461.  
  462. function getNumGoldTrophiesByUsername($username) {
  463. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  464. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  465. $query = "SELECT `id` FROM `Awards` WHERE `name`='goldTrophy'";
  466. $awardID = mysqli_fetch_array($this->doQuery($query))['id'];
  467.  
  468. $query = "SELECT `quantity` FROM `User_Awards` WHERE `user_id`='$userID' AND `award_id`='$awardID'";
  469. return mysqli_fetch_array($this->doQuery($query))['quantity'];
  470. }
  471.  
  472. function getBronzeStarImageSource() {
  473. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='bronzeStar'";
  474. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  475. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  476. return mysqli_fetch_array($this->doQuery($query))['link'];
  477. }
  478.  
  479. function getSilverStarImageSource() {
  480. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='silverStar'";
  481. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  482. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  483. return mysqli_fetch_array($this->doQuery($query))['link'];
  484. }
  485.  
  486. function getGoldStarImageSource() {
  487. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='goldStar'";
  488. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  489. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  490. return mysqli_fetch_array($this->doQuery($query))['link'];
  491. }
  492.  
  493. function getBronzeTrophyImageSource() {
  494. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='bronzeTrophy'";
  495. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  496. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  497. return mysqli_fetch_array($this->doQuery($query))['link'];
  498. }
  499.  
  500. function getSilverTrophyImageSource() {
  501. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='silverTrophy'";
  502. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  503. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  504. return mysqli_fetch_array($this->doQuery($query))['link'];
  505. }
  506.  
  507. function getGoldTrophyImageSource() {
  508. $query = "SELECT `image_id` FROM `Awards` WHERE `name`='goldTrophy'";
  509. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  510. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  511. return mysqli_fetch_array($this->doQuery($query))['link'];
  512. }
  513.  
  514. /*
  515. * Profile FUNCTIONS ------------------------------------------------------------
  516. * */
  517.  
  518. function updateEmailByUsername($username, $email) {
  519. $query = "UPDATE `User` SET `email`='$email' WHERE `username`='$username'";
  520. $this->doQuery($query);
  521. }
  522.  
  523. function updatePhoneNumberByUsername($username, $phonenumber) {
  524. $query = "UPDATE `User` SET `phone_number`='$phonenumber' WHERE `username`='$username'";
  525. $this->doQuery($query);
  526. }
  527.  
  528. function getProfileImageByUsername($username) {
  529. $query = "SELECT `image_id` FROM `User` WHERE `username`='$username'";
  530. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  531.  
  532. $query = "SELECT `link` FROM `Image` WHERE `id`='$imageID'";
  533. return mysqli_fetch_array($this->doQuery($query))['link'];
  534. }
  535.  
  536. function updateProfileImageByUsername($username, $imageSource) {
  537. $query = "SELECT `image_id` FROM `User` WHERE `username`='$username'";
  538. $imageID = mysqli_fetch_array($this->doQuery($query))['image_id'];
  539.  
  540. $query = "UPDATE `Image` SET `link`='$imageSource' WHERE `id`='$imageID'";
  541. $this->doQuery($query);
  542. }
  543.  
  544. /*
  545. * Rewards FUNCTIONS ------------------------------------------------------------
  546. * */
  547.  
  548. function getAllRewardsByUsername($username) {
  549. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  550. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  551.  
  552. $query = "SELECT `reward`,`points`,`completed`,`redeem_date` FROM `Redeem` WHERE `user_id`='$userID'";
  553. $result = $this->doQuery($query);
  554.  
  555. $users = Array();
  556. $counter = 0;
  557. while($row = mysqli_fetch_array($result)) {
  558. $row['redeem_date'] = substr($row['redeem_date'],5,2) . '/' . substr($row['redeem_date'],8,2) . '/' . substr($row['redeem_date'],0,4);
  559. $users[$counter] = Array("name"=>$row['reward'], "points"=>$row['points'], "completed"=>$row['completed'], "redeem_date"=>$row['redeem_date']);
  560. $counter += 1;
  561. }
  562. return $users;
  563. }
  564.  
  565. function redeemRewardByUsername($username, $rewardName) {
  566. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  567. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  568.  
  569. date_default_timezone_set("America/New_York");
  570. $datetime = date('Y-m-d H:i:s');
  571. $query = "UPDATE `Redeem` SET `completed`='1', `redeem_date`='$datetime' WHERE `user_id`='$userID' AND `reward`='$rewardName'";
  572. $this->doQuery($query);
  573. }
  574.  
  575. function addRewardByUsername($username, $rewardName, $points) {
  576. $query = "SELECT `id` FROM `User` WHERE `username`='$username'";
  577. $userID = mysqli_fetch_array($this->doQuery($query))['id'];
  578.  
  579. $query = "INSERT INTO `Redeem` (`user_id`,`reward`,`points`) VALUES ('$userID','$rewardName','$points')";
  580. $this->doQuery($query);
  581. }
  582.  
  583.  
  584. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement