From e80ce3b793adee1844f826f7aa8aa41b91fd20af Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Wed, 18 Jan 2017 14:22:03 +0100 Subject: [PATCH 1/5] Improved selectAllFriends query --- website/queries/friendship.php | 46 +++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/website/queries/friendship.php b/website/queries/friendship.php index 45a599e..94cd123 100644 --- a/website/queries/friendship.php +++ b/website/queries/friendship.php @@ -1,24 +1,30 @@ query(" - SELECT - `user`.`username`, - `user`.`profilepicture`, - `user`.`onlinestatus`, - `user`.`role` - FROM - `user` - INNER JOIN - `friendship` - WHERE - `friendship`.`user1ID` = $userID AND - `friendship`.`user2ID` = `user`.`userID` OR - `friendship`.`user2ID` = $userID AND - `friendship`.`user1ID` = `user`.`userID`" - ); + $stmt = $db->prepare(" + SELECT + `username`, + IFNULL( + `profilepicture`, + 'img/notbad.png' + ) AS profilepicture, + `onlinestatus`, + `role` + FROM + `user` + INNER JOIN + `friendship` + WHERE + (`friendship`.`user1ID` = :userID AND + `friendship`.`user2ID` = `user`.`userID` OR + `friendship`.`user2ID` = :userID AND + `friendship`.`user1ID` = `user`.`userID`) AND + `role` != 5 AND + `status` = 1 + "); + + $stmt->bindParam(':userID', $userID, PDO::PARAM_INT); + $stmt->execute(); + return $stmt; } - - - -?> \ No newline at end of file From bdf5c221a7026fcd4e9a4477664e41bb776d37e1 Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Wed, 18 Jan 2017 14:23:36 +0100 Subject: [PATCH 2/5] Added queries related to users. --- website/queries/user.php | 72 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 website/queries/user.php diff --git a/website/queries/user.php b/website/queries/user.php new file mode 100644 index 0000000..a73c16c --- /dev/null +++ b/website/queries/user.php @@ -0,0 +1,72 @@ +prepare(" + SELECT + `username`, + IFNULL( + `profilepicture`, + 'img/notbad.png' + ) AS profilepicture, + `bio`, + `role`, + `onlinestatus`, + `loggedin`, + `fname`, + `lname` + FROM + `user` + WHERE + `userID` = :userID + "); + + $stmt->bindParam(':userID', $userID, PDO::PARAM_INT); + $stmt->execute(); + return $stmt->fetch(); +} + +function selectAllUserGroups($db, $userID) { + $stmt = $db->prepare(" + SELECT + `group_page`.`groupID`, + `name`, + `picture`, + `userID` + FROM + `group_page` + INNER JOIN + `group_member` + ON + `group_page`.`groupID` = `group_member`.`groupID` + WHERE + `userID` = :userID AND + `status` = 1 + "); + + $stmt->bindParam(':userID', $userID, PDO::PARAM_INT); + $stmt->execute(); + return $stmt; +} + +function selectAllUserPosts($db, $userID) { + $stmt = $db->prepare(" + SELECT + `postID`, + `author`, + `title`, + `content`, + `creationdate` + FROM + `post` + WHERE + `author` = :userID AND + `groupID` IS NULL + ORDER BY + `creationdate` DESC + "); + + $stmt->bindParam(':userID', $userID, PDO::PARAM_INT); + $stmt->execute(); + return $stmt; +} \ No newline at end of file From 62d77fc61664fca1ca266cbe753dd481e7e2bfa1 Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Wed, 18 Jan 2017 15:56:59 +0100 Subject: [PATCH 3/5] Added query needed to get userID --- website/queries/user.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/website/queries/user.php b/website/queries/user.php index a73c16c..fee8fe8 100644 --- a/website/queries/user.php +++ b/website/queries/user.php @@ -1,6 +1,21 @@ prepare(" + SELECT + `userID` + FROM + `user` + WHERE + LOWER(`username`) = LOWER(:username) + "); + + $stmt->bindParam(':username', $username, PDO::PARAM_STR); + $stmt->execute(); + return $stmt->fetch()["userID"]; +} + function selectUser($db, $userID) { $stmt = $db->prepare(" SELECT @@ -41,7 +56,7 @@ function selectAllUserGroups($db, $userID) { `group_page`.`groupID` = `group_member`.`groupID` WHERE `userID` = :userID AND - `status` = 1 + `role` = 1 "); $stmt->bindParam(':userID', $userID, PDO::PARAM_INT); From e86a6a6d6f27f187d2c74e065ebd53a0cdd42610 Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Wed, 18 Jan 2017 16:01:26 +0100 Subject: [PATCH 4/5] Changed queries include --- website/views/head.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/views/head.php b/website/views/head.php index fc28320..9306edf 100644 --- a/website/views/head.php +++ b/website/views/head.php @@ -15,6 +15,6 @@ \ No newline at end of file From 3ee5488a88ad92cd7a5fddcaeb570459b8995768 Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Wed, 18 Jan 2017 16:02:11 +0100 Subject: [PATCH 5/5] Improved profile page, profile now takes data from the DB! --- website/public/profile.php | 57 +++++++++++++++++ website/views/profile.php | 125 ++++++++++--------------------------- 2 files changed, 90 insertions(+), 92 deletions(-) diff --git a/website/public/profile.php b/website/public/profile.php index d82fe48..4854080 100644 --- a/website/public/profile.php +++ b/website/public/profile.php @@ -1,3 +1,60 @@ + $unix_date) { + $difference = $now - $unix_date; + $tense = "geleden"; + } else { + $difference = $unix_date - $now; + $tense = "vanaf nu"; + } + + for($i = 0; $difference >= $lengths[$i] && $i < count($lengths) - 1; $i++) { + $difference /= $lengths[$i]; + } + + $difference = round($difference); + + if($difference != 1) { + $period = $multiple_periods[$i]; + } else { + $period = $single_periods[$i]; + } + + return "$difference $period $tense"; +} + +if(empty($_GET["username"])) { + echo "User does not exist!"; + return; +} + +$userID = getUserID($db, $_GET["username"]); + +$user = selectUser($db, $userID); +$friends = selectAllFriends($db, $userID); +$groups = selectAllUserGroups($db, $userID); +$posts = selectAllUserPosts($db, $userID); + +?> + diff --git a/website/views/profile.php b/website/views/profile.php index 8f5efe2..395dd15 100644 --- a/website/views/profile.php +++ b/website/views/profile.php @@ -1,113 +1,54 @@
- + ">

Als vriend toevoegen

-

[gebruikersnaam]

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec dictum turpis quam, eu ultrices sapien hendrerit tincidunt. Nunc aliquam neque turpis, id porta quam iaculis id. Sed suscipit, nisl a fermentum congue, nunc augue finibus lectus, id varius nunc purus nec dolor. Integer laoreet tellus sit amet sapien auctor congue. Mauris laoreet eu elit vel rhoncus. Nam et tortor arcu. Maecenas sit amet leo quis tellus varius gravida. Sed quis fermentum odio, sed dictum nulla. Donec aliquam rutrum orci cursus tempus. Quisque sit amet ipsum eget velit aliquam facilisis ultricies quis ligula. Nunc nisi lacus, luctus non bibendum quis, sagittis sit amet odio.

+

+

Vrienden

- [gebruikersnaam]'s profielfoto - [gebruikersnaam]'s profielfoto - [gebruikersnaam]'s profielfoto - [gebruikersnaam]'s profielfoto - [gebruikersnaam]'s profielfoto - ...en nog 25 anderen! + fetch()) { + echo "" . $friend["username"] . ""; + } + + if($friends->rowCount() === 0) { + echo "

Deze gebruiker heeft nog geen vrienden gemaakt.

"; + } + ?>

Groepen

- [groepsnaam]'s logo - [groepsnaam]'s logo - [groepsnaam]'s logo - [groepsnaam]'s logo - [groepsnaam]'s logo - ...en nog 6 anderen! + fetch()) { + echo "${group["name"]}s logo"; + } + + if($groups->rowCount() === 0) { + echo "

Deze gebruiker is nog geen lid van een groep.

"; + } + ?>

-
-

Lorem

-

Lorem ipsum dolor sit amet, consectetur.

-

Enkele minuten geleden geplaatst

-
-
-

Image

- Olympic Mountains, Washington -

Gisteren geplaatst

-
-
-

Ipsum

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rem nihil alias amet dolores fuga totam sequi a cupiditate ipsa voluptas id facilis nobis.

-

Maandag geplaatst

-
-
-

Dolor

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit.

-

4 Januari geplaatst

-
-
-

Sit

-

Lorem ipsum dolor sit.

-

4 Januari geplaatst

-
-
-

Image

- Nunobiki Falls, Kobe Japan -

4 Januari geplaatst

-
-
-

Amet

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Minima asperiores eveniet vero velit eligendi aliquid in.

-

4 Januari geplaatst

-
-
-

Consectetur

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Error aliquid reprehenderit expedita odio beatae est.

-

4 Januari geplaatst

-
-
-

Adipisicing

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quaerat architecto quis tenetur fugiat veniam iste molestiae fuga labore!

-

4 Januari geplaatst

-
-
-

Elit

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rem ut debitis dolorum earum expedita eveniet voluptatem quibusdam facere eos numquam commodi ad iusto laboriosam rerum aliquam.

-

4 Januari geplaatst

-
-
-

Geen error

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Doloribus dolorem maxime minima animi cum.

-

4 Januari geplaatst

-
-
-

Image

- Oregon cliffs are no joke. -

4 Januari geplaatst

-
-
-

Aliquid

-

Lorem ipsum dolor sit amet, consectetur.

-

4 Januari geplaatst

-
-
-

Odit

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Odit accusamus tempore at porro officia rerum est impedit ea ipsa tenetur. Labore libero hic error sunt laborum expedita.

-

4 Januari geplaatst

-
-
-

Accusamus

-

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nobis quaerat suscipit ad.

-

4 Januari geplaatst

-
-
- + fetch()) { + $nicetime = nicetime($post["creationdate"]); + echo " +
+

${post["title"]}

+

${post["content"]}

+

${nicetime} geplaatst.

+
+ "; + } + ?>
\ No newline at end of file