Compare commits
99 Commits
marijn-set
...
marijn-fav
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e3f4fa0b3c | ||
|
|
16f83d93ce | ||
|
|
306fd3090f | ||
|
|
771567660c | ||
|
|
4eae09dfc7 | ||
|
|
53e1d7fef3 | ||
|
|
c29be662bc | ||
|
|
000d1f4072 | ||
|
|
d260bf04bc | ||
|
|
a0ef234b79 | ||
|
|
da061de226 | ||
|
|
f18088d8d2 | ||
|
|
ba6f86e70e | ||
|
|
c69b5d8ed3 | ||
|
|
5de3a84683 | ||
|
|
b8d6136a9d | ||
|
|
1862369013 | ||
|
|
8d70804155 | ||
|
|
0ac12f5110 | ||
|
|
5e8fa6791f | ||
|
|
28e9269b52 | ||
|
|
bb352c7a7a | ||
|
|
fe190975d5 | ||
|
|
0f202088a1 | ||
|
|
87b0ab5892 | ||
|
|
c8dbdfe70e | ||
|
|
8949d14a5e | ||
|
|
ecd24ef442 | ||
|
|
50e94fb8ed | ||
|
|
fde736b8c5 | ||
|
|
127162b938 | ||
|
|
02349dbe28 | ||
|
|
da01729b61 | ||
|
|
820ffb4a62 | ||
|
|
1a3efe9669 | ||
|
|
6d739a4480 | ||
|
|
ab21226925 | ||
|
|
7e4107ac8b | ||
|
|
de96ae8263 | ||
|
|
74e91ed7cb | ||
|
|
e9468b0ec8 | ||
|
|
839fb247b4 | ||
|
|
bf298f4b43 | ||
|
|
74145d5d1c | ||
|
|
1486e71207 | ||
|
|
b206d243b9 | ||
|
|
4f731e12fe | ||
|
|
f8c9454b85 | ||
|
|
93b908fb13 | ||
|
|
6fd5401c86 | ||
|
|
9165f8fa1b | ||
|
|
380d8fa83a | ||
|
|
afb45d6709 | ||
|
|
1c53eab2fa | ||
|
|
28254d98e4 | ||
|
|
8a3cfebf55 | ||
|
|
b1941f0191 | ||
|
|
a27a4881c3 | ||
|
|
cfa7c870f0 | ||
|
|
e60578dc43 | ||
|
|
9426f4d6ac | ||
|
|
7f48cae019 | ||
|
|
33399639b1 | ||
|
|
52e40242e6 | ||
|
|
8a6acbc52a | ||
|
|
6fc2f71517 | ||
|
|
1672ce6086 | ||
|
|
188741ddf5 | ||
|
|
4a7a91ecd9 | ||
|
|
1c1283243c | ||
|
|
417124a1fe | ||
|
|
d24ed89096 | ||
|
|
a92b0fe892 | ||
|
|
5c1b2d1b21 | ||
|
|
3abaeba52c | ||
|
|
93e63111de | ||
|
|
feba1d9786 | ||
|
|
6ed19d9060 | ||
|
|
d4d16661df | ||
|
|
044ed6a9d3 | ||
|
|
328ce69144 | ||
|
|
9d675dd897 | ||
|
|
86b02973e4 | ||
|
|
ab5f243281 | ||
|
|
327a6a8f5c | ||
|
|
d03d58ce37 | ||
|
|
487e0a0523 | ||
|
|
1dfc14e6f0 | ||
|
|
cc9866d3dd | ||
|
|
67eb7b991e | ||
|
|
90ac38acdd | ||
|
|
60b55b3f04 | ||
|
|
70b7e12559 | ||
|
|
d9c68d5f5f | ||
|
|
d027333bd7 | ||
|
|
0546b8689d | ||
|
|
6c43cae1cb | ||
|
|
3af38cd088 | ||
|
|
cfe2928f7b |
@@ -3,9 +3,9 @@ session_start();
|
|||||||
|
|
||||||
require_once "../../queries/post.php";
|
require_once "../../queries/post.php";
|
||||||
require_once "../../queries/user.php";
|
require_once "../../queries/user.php";
|
||||||
|
if (!isset($_SESSION["userID"])) {
|
||||||
if (isset($_SESSION["userID"]) and
|
echo "logged out";
|
||||||
getRoleByID($_SESSION["userID"]) != 'frozen' and
|
} else if (getRoleByID($_SESSION["userID"]) != 'frozen' and
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
|
|
||||||
if (empty($_POST["postID"]) or empty($_SESSION["userID"])) {
|
if (empty($_POST["postID"]) or empty($_SESSION["userID"])) {
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ require_once ("../../queries/connect.php");
|
|||||||
require_once ("../../queries/private_message.php");
|
require_once ("../../queries/private_message.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
|
// Check if the user is allowed to load them.
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
echo selectAllUnreadChat();
|
echo selectAllUnreadChat();
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ require_once ("../../queries/connect.php");
|
|||||||
require_once ("../../queries/friendship.php");
|
require_once ("../../queries/friendship.php");
|
||||||
require_once ("../../queries/user.php");
|
require_once ("../../queries/user.php");
|
||||||
|
|
||||||
|
// Check if the user is allowed to load them.
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
|
|||||||
@@ -7,9 +7,11 @@ require_once ("../../queries/checkInput.php");
|
|||||||
require_once ("../../queries/friendship.php");
|
require_once ("../../queries/friendship.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
|
// Check if the user is allowed to load them.
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
if (isset($_SESSION["userID"])) {
|
if (isset($_SESSION["userID"])) {
|
||||||
|
// Echo the limited or unlimited users.
|
||||||
if (isset($_POST["limit"])) {
|
if (isset($_POST["limit"])) {
|
||||||
echo selectLimitedFriends($_SESSION["userID"], (int)test_input($_POST["limit"]));
|
echo selectLimitedFriends($_SESSION["userID"], (int)test_input($_POST["limit"]));
|
||||||
} else if (isset($_GET["limit"])) {
|
} else if (isset($_GET["limit"])) {
|
||||||
|
|||||||
@@ -8,8 +8,10 @@ require_once ("../../queries/group_member.php");
|
|||||||
|
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
|
// Check if the user is allowed to load them.
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
|
// Echo the limited or unlimited groups.
|
||||||
if (isset($_POST["limit"])) {
|
if (isset($_POST["limit"])) {
|
||||||
echo selectLimitedGroupsFromUser($_SESSION["userID"], (int)test_input($_POST["limit"]));
|
echo selectLimitedGroupsFromUser($_SESSION["userID"], (int)test_input($_POST["limit"]));
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -8,8 +8,10 @@ require_once("../../queries/checkInput.php");
|
|||||||
require_once("../../queries/friendship.php");
|
require_once("../../queries/friendship.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
|
// Check if the user is allowed to get the messages.
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
|
// Check if the users wants new messages or old ones, and give the right one back.
|
||||||
if (isset($_POST["lastID"]) && $_POST["lastID"] != "") {
|
if (isset($_POST["lastID"]) && $_POST["lastID"] != "") {
|
||||||
setLastVisited(test_input($_POST["destination"]));
|
setLastVisited(test_input($_POST["destination"]));
|
||||||
echo getNewChatMessages(test_input($_POST["lastID"]), test_input($_POST["destination"]));
|
echo getNewChatMessages(test_input($_POST["lastID"]), test_input($_POST["destination"]));
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ require_once("../../queries/connect.php");
|
|||||||
require_once("../../queries/checkInput.php");
|
require_once("../../queries/checkInput.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
|
if (!isset($_SESSION["userID"])) {
|
||||||
if (isset($_SESSION["userID"]) &&
|
echo "logged out";
|
||||||
getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
} else if (getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
if ($_POST['button'] == 'reaction') {
|
if ($_POST['button'] == 'reaction') {
|
||||||
if (empty($_POST['newcomment-content'])) {
|
if (empty($_POST['newcomment-content'])) {
|
||||||
|
|||||||
@@ -8,17 +8,20 @@ require_once("../../queries/connect.php");
|
|||||||
require_once("../../queries/checkInput.php");
|
require_once("../../queries/checkInput.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (!isset($_SESSION["userID"])) {
|
||||||
getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
echo "logged out";
|
||||||
|
} else if (getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
|
|
||||||
if (empty($_POST["title"]) or
|
if (empty($_SESSION["userID"])) {
|
||||||
empty($_POST["content"]) or
|
|
||||||
empty($_SESSION["userID"])
|
|
||||||
) {
|
|
||||||
header('HTTP/1.1 500 Non enough arguments');
|
header('HTTP/1.1 500 Non enough arguments');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (empty(test_input($_POST["title"])) or
|
||||||
|
empty(test_input($_POST["content"]))
|
||||||
|
) {
|
||||||
|
echo "empty";
|
||||||
|
} else {
|
||||||
if (empty($_POST["group"])) {
|
if (empty($_POST["group"])) {
|
||||||
// User Post
|
// User Post
|
||||||
makePost(
|
makePost(
|
||||||
@@ -43,6 +46,7 @@ if (isset($_SESSION["userID"]) &&
|
|||||||
test_input($_POST["content"])
|
test_input($_POST["content"])
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
echo "frozen";
|
echo "frozen";
|
||||||
}
|
}
|
||||||
@@ -6,11 +6,11 @@ require_once ("../../queries/connect.php");
|
|||||||
require_once ("../../queries/checkInput.php");
|
require_once ("../../queries/checkInput.php");
|
||||||
require_once ("../../queries/user.php");
|
require_once ("../../queries/user.php");
|
||||||
require_once ("../../queries/group_page.php");
|
require_once ("../../queries/group_page.php");
|
||||||
|
require_once ("../../queries/friendship.php");
|
||||||
|
require_once ("../../queries/group_member.php");
|
||||||
|
|
||||||
if (isset($_SESSION["userID"]) &&
|
if (isset($_SESSION["userID"]) &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {$user_perpage = $group_perpage = 20;
|
||||||
|
|
||||||
$user_perpage = $group_perpage = 20;
|
|
||||||
|
|
||||||
$user_currentpage = $group_currentpage = 1;
|
$user_currentpage = $group_currentpage = 1;
|
||||||
if (isset($_POST['user-pageselect'])) {
|
if (isset($_POST['user-pageselect'])) {
|
||||||
@@ -28,14 +28,20 @@ if (isset($_SESSION["userID"]) &&
|
|||||||
$search = test_input($_POST['search']);
|
$search = test_input($_POST['search']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$user_count = countSomeUsers($search)->fetchColumn();
|
|
||||||
$group_count = countSomeGroups($search)->fetchColumn();
|
|
||||||
|
|
||||||
$filter = "all";
|
$filter = "all";
|
||||||
if (isset($_POST['filter'])) {
|
if (isset($_POST['filter'])) {
|
||||||
$filter = test_input($_POST['filter']);
|
$filter = test_input($_POST['filter']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($filter == "all") {
|
||||||
|
$user_count = countSomeUsers($search)->fetchColumn();
|
||||||
|
$group_count = countSomeGroups($search)->fetchColumn();
|
||||||
|
} else {
|
||||||
|
$user_count = countSomeFriends($search);
|
||||||
|
$group_count = countSomeOwnGroups($search);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$option = "user";
|
$option = "user";
|
||||||
if (isset($_POST['option'])) {
|
if (isset($_POST['option'])) {
|
||||||
$option = test_input($_POST['option']);
|
$option = test_input($_POST['option']);
|
||||||
|
|||||||
@@ -6,12 +6,16 @@ require_once("../../queries/private_message.php");
|
|||||||
require_once("../../queries/checkInput.php");
|
require_once("../../queries/checkInput.php");
|
||||||
require_once("../../queries/user.php");
|
require_once("../../queries/user.php");
|
||||||
|
|
||||||
if (isset($_SESSION["userID"]) &&
|
// Check if the user is allowed to send a message.
|
||||||
getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
if (!isset($_SESSION["userID"])) {
|
||||||
|
echo "logged out";
|
||||||
|
} else if (getRoleByID($_SESSION["userID"]) != 'frozen' &&
|
||||||
getRoleByID($_SESSION["userID"]) != 'banned') {
|
getRoleByID($_SESSION["userID"]) != 'banned') {
|
||||||
if (!empty(test_input($_POST["destination"])) &&
|
if (!empty(test_input($_POST["destination"])) &&
|
||||||
!empty(test_input($_POST["content"]))
|
!empty(test_input($_POST["content"]))
|
||||||
) {
|
) {
|
||||||
|
// Send the message.
|
||||||
|
// Returns false when it didn't succeed sending the message.
|
||||||
if (sendMessage(test_input($_POST["destination"]), test_input($_POST["content"]))) {
|
if (sendMessage(test_input($_POST["destination"]), test_input($_POST["content"]))) {
|
||||||
echo 1;
|
echo 1;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
BIN
website/public/apple-touch-icon-114x114-precomposed.png
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
BIN
website/public/apple-touch-icon-120x120-precomposed.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
website/public/apple-touch-icon-144x144-precomposed.png
Normal file
|
After Width: | Height: | Size: 7.2 KiB |
BIN
website/public/apple-touch-icon-152x152-precomposed.png
Normal file
|
After Width: | Height: | Size: 7.7 KiB |
BIN
website/public/apple-touch-icon-180x180-precomposed.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
website/public/apple-touch-icon-57x57-precomposed.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
website/public/apple-touch-icon-60x60-precomposed.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
website/public/apple-touch-icon-72x72-precomposed.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
website/public/apple-touch-icon-76x76-precomposed.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
website/public/apple-touch-icon-precomposed.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
@@ -4,6 +4,7 @@ session_start();
|
|||||||
|
|
||||||
include_once ("../../queries/friendship.php");
|
include_once ("../../queries/friendship.php");
|
||||||
|
|
||||||
|
// Initialize variables to given or default values.
|
||||||
if (isset($_POST["action"])) {
|
if (isset($_POST["action"])) {
|
||||||
$action = $_POST["action"];
|
$action = $_POST["action"];
|
||||||
} else {
|
} else {
|
||||||
@@ -18,6 +19,8 @@ if (isset($_POST["actionType"])) {
|
|||||||
|
|
||||||
$friends = json_decode($_POST["friends"]);
|
$friends = json_decode($_POST["friends"]);
|
||||||
|
|
||||||
|
|
||||||
|
// Foreach friend, return them as list item.
|
||||||
foreach($friends as $i => $friend) {
|
foreach($friends as $i => $friend) {
|
||||||
$friendshipStatus = getFriendshipStatus($friend->userID);
|
$friendshipStatus = getFriendshipStatus($friend->userID);
|
||||||
?>
|
?>
|
||||||
@@ -38,7 +41,7 @@ foreach($friends as $i => $friend) {
|
|||||||
<?= $friend->fullname ?><br/>
|
<?= $friend->fullname ?><br/>
|
||||||
<span style='color: #666'><?php
|
<span style='color: #666'><?php
|
||||||
if (isset($friend->username)) {
|
if (isset($friend->username)) {
|
||||||
echo $friend->username;
|
echo $friend->usernameshort;
|
||||||
} else if (isset($friend->content)) {
|
} else if (isset($friend->content)) {
|
||||||
echo $friend->content;
|
echo $friend->content;
|
||||||
}
|
}
|
||||||
@@ -48,6 +51,7 @@ foreach($friends as $i => $friend) {
|
|||||||
</button>
|
</button>
|
||||||
</form>
|
</form>
|
||||||
<?php
|
<?php
|
||||||
|
// Add friendship options if possible.
|
||||||
if ($friendshipStatus > 1) {
|
if ($friendshipStatus > 1) {
|
||||||
if ($friendshipStatus == 2) {
|
if ($friendshipStatus == 2) {
|
||||||
$denyName = "Annuleer";
|
$denyName = "Annuleer";
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ include_once ("../../queries/group_member.php");
|
|||||||
|
|
||||||
$groups = json_decode($_POST["groups"]);
|
$groups = json_decode($_POST["groups"]);
|
||||||
|
|
||||||
|
// Add each group as list item.
|
||||||
foreach($groups as $i => $group) {
|
foreach($groups as $i => $group) {
|
||||||
?>
|
?>
|
||||||
<li class='group-item'>
|
<li class='group-item'>
|
||||||
|
|||||||
8
website/public/bits/niet-slecht.php
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
if (isset($_GET["groupname"])) {
|
||||||
|
$url = "https://myhyvesbookplus.nl/~lars/group.php?groupname=" . $_GET["groupname"];
|
||||||
|
} else {
|
||||||
|
$url = "https://myhyvesbookplus.nl/";
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<a href="<?= $url ?>" target='_blank'><img style="width: 100%; height: auto;" src="../external/nietslecht_button.png" alt='\"Niet slecht\" ons op MyHyvesbook+' /></a>
|
||||||
12
website/public/browserconfig.xml
Executable file
@@ -0,0 +1,12 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<browserconfig>
|
||||||
|
<msapplication>
|
||||||
|
<tile>
|
||||||
|
<square70x70logo src="tiny.png"/>
|
||||||
|
<square150x150logo src="square.jpg"/>
|
||||||
|
<wide310x150logo src="wide.jpg"/>
|
||||||
|
<square310x310logo src="large.jpg"/>
|
||||||
|
<TileColor>#000000</TileColor>
|
||||||
|
</tile>
|
||||||
|
</msapplication>
|
||||||
|
</browserconfig>
|
||||||
36
website/public/createGroup.php
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
require_once "../queries/createGroup.php";
|
||||||
|
require_once "../queries/connect.php";
|
||||||
|
require_once "../queries/alerts.php"?>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<?php include("../views/head.php"); ?>
|
||||||
|
<style>
|
||||||
|
@import url("styles/settings.css");
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* This view adds the main layout over the screen.
|
||||||
|
* Header and menu.
|
||||||
|
*/
|
||||||
|
include("../views/main.php");
|
||||||
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||||
|
try {
|
||||||
|
createGroup();
|
||||||
|
} catch (AlertMessage $e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
$groupname = $_POST["groupName"];
|
||||||
|
header("location: group.php?groupname=$groupname");
|
||||||
|
}
|
||||||
|
/* Add your view files here. */
|
||||||
|
include("../views/createGroup.php");
|
||||||
|
|
||||||
|
/* This adds the footer. */
|
||||||
|
include("../views/footer.php");
|
||||||
|
?>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
BIN
website/public/favicon-1.png
Normal file
|
After Width: | Height: | Size: 492 B |
BIN
website/public/favicon-2.png
Normal file
|
After Width: | Height: | Size: 782 B |
BIN
website/public/favicon-3.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
website/public/favicon-4.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
website/public/favicon.ico
Normal file
|
After Width: | Height: | Size: 97 KiB |
@@ -1,71 +0,0 @@
|
|||||||
<?php
|
|
||||||
$fb = new Facebook\Facebook([
|
|
||||||
'app_id' => $appID, // Replace {app-id} with your app id
|
|
||||||
'app_secret' => $appSecret,
|
|
||||||
'default_graph_version' => 'v2.2',
|
|
||||||
]);
|
|
||||||
|
|
||||||
$helper = $fb->getRedirectLoginHelper();
|
|
||||||
|
|
||||||
try {
|
|
||||||
$accessToken = $helper->getAccessToken();
|
|
||||||
} catch(Facebook\Exceptions\FacebookResponseException $e) {
|
|
||||||
// When Graph returns an error
|
|
||||||
echo 'Graph returned an error: ' . $e->getMessage();
|
|
||||||
exit;
|
|
||||||
} catch(Facebook\Exceptions\FacebookSDKException $e) {
|
|
||||||
// When validation fails or other local issues
|
|
||||||
echo 'Facebook SDK returned an error: ' . $e->getMessage();
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (! isset($accessToken)) {
|
|
||||||
if ($helper->getError()) {
|
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
|
||||||
echo "Error: " . $helper->getError() . "\n";
|
|
||||||
echo "Error Code: " . $helper->getErrorCode() . "\n";
|
|
||||||
echo "Error Reason: " . $helper->getErrorReason() . "\n";
|
|
||||||
echo "Error Description: " . $helper->getErrorDescription() . "\n";
|
|
||||||
} else {
|
|
||||||
header('HTTP/1.0 400 Bad Request');
|
|
||||||
echo 'Bad request';
|
|
||||||
}
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Logged in
|
|
||||||
echo '<h3>Access Token</h3>';
|
|
||||||
var_dump($accessToken->getValue());
|
|
||||||
|
|
||||||
// The OAuth 2.0 client handler helps us manage access tokens
|
|
||||||
$oAuth2Client = $fb->getOAuth2Client();
|
|
||||||
|
|
||||||
// Get the access token metadata from /debug_token
|
|
||||||
$tokenMetadata = $oAuth2Client->debugToken($accessToken);
|
|
||||||
echo '<h3>Metadata</h3>';
|
|
||||||
var_dump($tokenMetadata);
|
|
||||||
|
|
||||||
// Validation (these will throw FacebookSDKException's when they fail)
|
|
||||||
$tokenMetadata->validateAppId($appID); // Replace {app-id} with your app id
|
|
||||||
// If you know the user ID this access token belongs to, you can validate it here
|
|
||||||
//$tokenMetadata->validateUserId('123');
|
|
||||||
$tokenMetadata->validateExpiration();
|
|
||||||
|
|
||||||
if (! $accessToken->isLongLived()) {
|
|
||||||
// Exchanges a short-lived access token for a long-lived one
|
|
||||||
try {
|
|
||||||
$accessToken = $oAuth2Client->getLongLivedAccessToken($accessToken);
|
|
||||||
} catch (Facebook\Exceptions\FacebookSDKException $e) {
|
|
||||||
echo "<p>Error getting long-lived access token: " . $helper->getMessage() . "</p>\n\n";
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
|
|
||||||
echo '<h3>Long-lived</h3>';
|
|
||||||
var_dump($accessToken->getValue());
|
|
||||||
}
|
|
||||||
|
|
||||||
$_SESSION['fb_access_token'] = (string) $accessToken;
|
|
||||||
|
|
||||||
// User is logged in with a long-lived access token.
|
|
||||||
// You can redirect them to a members-only page.
|
|
||||||
//header('Location: https://example.com/members.php');
|
|
||||||
@@ -13,13 +13,15 @@
|
|||||||
|
|
||||||
include_once("../queries/group_page.php");
|
include_once("../queries/group_page.php");
|
||||||
|
|
||||||
$group = selectGroupByName($_GET["groupname"]);
|
if(isset($_SESSION["userID"]) and !$group = selectGroupByName($_GET["groupname"])) {
|
||||||
$members = selectGroupMembers(2);
|
header("HTTP/1.0 404 Not Found");
|
||||||
|
header("Location: error/404.php");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$members = selectGroupMembers($group["groupID"]);
|
||||||
|
|
||||||
?>
|
|
||||||
<script>alert("<?= $members[0] ?>");</script>
|
|
||||||
<script>alert("<?= $members[1] ?>");</script>
|
|
||||||
<?php
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This view adds the main layout over the screen.
|
* This view adds the main layout over the screen.
|
||||||
|
|||||||
72
website/public/groupAdmin.php
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
<?php
|
||||||
|
require_once "../queries/picture.php";
|
||||||
|
require_once "../queries/groupAdmin.php";
|
||||||
|
require_once "../queries/alerts.php";
|
||||||
|
?>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<?php include("../views/head.php"); ?>
|
||||||
|
<style>
|
||||||
|
/*Insert own stylesheet here ;)*/
|
||||||
|
@import url("styles/settings.css");
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php
|
||||||
|
/*
|
||||||
|
* This view adds the main layout over the screen.
|
||||||
|
* Header and menu.
|
||||||
|
*/
|
||||||
|
include("../views/main.php");
|
||||||
|
$alertClass;
|
||||||
|
$alertMessage;
|
||||||
|
|
||||||
|
// Select which button has been pressed.
|
||||||
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||||
|
try {
|
||||||
|
switch ($_POST["form"]) {
|
||||||
|
case "group":
|
||||||
|
updateGroupSettings($_POST["groupID"]);
|
||||||
|
break;
|
||||||
|
case "picture":
|
||||||
|
if (checkGroupAdmin($_POST["groupID"], $_SESSION["userID"])) {
|
||||||
|
updateAvatar($_POST["groupID"]);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "mod":
|
||||||
|
if (!array_key_exists("userID", $_POST)) {
|
||||||
|
throw new AngryAlert("Geen gebruiker geselecteerd.");
|
||||||
|
}
|
||||||
|
upgradeUser($_POST["groupID"], $_POST["userID"], "mod");
|
||||||
|
break;
|
||||||
|
case "admin":
|
||||||
|
if (!array_key_exists("userID", $_POST)) {
|
||||||
|
throw new AngryAlert("Geen gebruiker geselecteerd.");
|
||||||
|
}
|
||||||
|
upgradeUser($_POST["groupID"], $_POST["userID"], "admin");
|
||||||
|
break;
|
||||||
|
case "deadmin":
|
||||||
|
if (!array_key_exists("userID", $_POST)) {
|
||||||
|
throw new AngryAlert("Geen gebruiker geselecteerd.");
|
||||||
|
}
|
||||||
|
upgradeUser($_POST["groupID"], $_POST["userID"], "member");
|
||||||
|
break;
|
||||||
|
case "delete":
|
||||||
|
deleteGroup();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} catch (AlertMessage $w) {
|
||||||
|
$alertClass = $w->getClass();
|
||||||
|
$alertMessage = $w->getMessage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Add your view files here. */
|
||||||
|
include("../views/groupAdmin.php");
|
||||||
|
|
||||||
|
/* This adds the footer. */
|
||||||
|
include("../views/footer.php");
|
||||||
|
?>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -24,12 +24,14 @@ $(window).on("load", function () {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Toggles all checkboxes based on one.
|
||||||
function checkAll() {
|
function checkAll() {
|
||||||
$('.checkbox-list').each(function () {
|
$('.checkbox-list').each(function () {
|
||||||
$(this).prop('checked', $('#checkall').prop('checked'));
|
$(this).prop('checked', $('#checkall').prop('checked'));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Simple function that checks if checkall should stay checked.
|
||||||
function checkCheckAll() {
|
function checkCheckAll() {
|
||||||
var checked = true;
|
var checked = true;
|
||||||
|
|
||||||
@@ -43,6 +45,7 @@ function checkCheckAll() {
|
|||||||
$('#checkall').prop('checked', checked);
|
$('#checkall').prop('checked', checked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Toggle of filter options.
|
||||||
function changeFilter() {
|
function changeFilter() {
|
||||||
if ($('#pagetype').find(":selected").val() == "group") {
|
if ($('#pagetype').find(":selected").val() == "group") {
|
||||||
document.getElementById('admin-filter').style.display = 'none';
|
document.getElementById('admin-filter').style.display = 'none';
|
||||||
@@ -59,11 +62,13 @@ function changeFilter() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Sets the search page to one, relevant when changing filter or search.
|
||||||
function searchFromOne() {
|
function searchFromOne() {
|
||||||
$('#currentpage').prop('value', 1);
|
$('#currentpage').prop('value', 1);
|
||||||
adminSearch();
|
adminSearch();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AJAX live search.
|
||||||
function adminSearch() {
|
function adminSearch() {
|
||||||
$.post(
|
$.post(
|
||||||
"API/adminSearchUsers.php",
|
"API/adminSearchUsers.php",
|
||||||
@@ -74,6 +79,7 @@ function adminSearch() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AJAX live update.
|
||||||
function adminUpdate(form) {
|
function adminUpdate(form) {
|
||||||
$.post(
|
$.post(
|
||||||
"API/adminChangeUser.php",
|
"API/adminChangeUser.php",
|
||||||
@@ -83,6 +89,7 @@ function adminUpdate(form) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AJAX pagenumber functionality.
|
||||||
function updatePageN() {
|
function updatePageN() {
|
||||||
$.post(
|
$.post(
|
||||||
"API/adminPageNumber.php",
|
"API/adminPageNumber.php",
|
||||||
@@ -92,11 +99,13 @@ function updatePageN() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Intended for the edit button to show a form.
|
||||||
function toggleBancomment(button) {
|
function toggleBancomment(button) {
|
||||||
$(button).siblings("div").toggle();
|
$(button).siblings("div").toggle();
|
||||||
$(button).toggle();
|
$(button).toggle();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AJAX value editing.
|
||||||
function editComment(form) {
|
function editComment(form) {
|
||||||
$.post(
|
$.post(
|
||||||
"API/adminChangeUser.php",
|
"API/adminChangeUser.php",
|
||||||
|
|||||||
@@ -9,18 +9,25 @@ $(document).ready(function() {
|
|||||||
$(".chat-field").hide();
|
$(".chat-field").hide();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// This function loads the new messages and runs the addMessages function to show them.
|
||||||
function loadMessages() {
|
function loadMessages() {
|
||||||
|
// If the function is not running elsewhere, run it here.
|
||||||
if (!gettingMessages) {
|
if (!gettingMessages) {
|
||||||
gettingMessages = true;
|
gettingMessages = true;
|
||||||
|
// Get the messages.
|
||||||
$.post(
|
$.post(
|
||||||
"API/loadMessages.php",
|
"API/loadMessages.php",
|
||||||
$("#lastIDForm").serialize()
|
$("#lastIDForm").serialize()
|
||||||
).done(function (data) {
|
).done(function (data) {
|
||||||
|
// Post the messages in the chat.
|
||||||
if (data && data != "[]") {
|
if (data && data != "[]") {
|
||||||
messages = JSON.parse(data);
|
messages = JSON.parse(data);
|
||||||
addMessages(messages);
|
addMessages(messages);
|
||||||
$("#lastID").val(messages[messages.length - 1].messageID);
|
$("#lastID").val(messages[messages.length - 1].messageID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
loadUnreadMessages();
|
||||||
|
|
||||||
gettingMessages = false;
|
gettingMessages = false;
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
@@ -28,7 +35,7 @@ function loadMessages() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Send a message to a friend of the user.
|
||||||
function sendMessage() {
|
function sendMessage() {
|
||||||
$.post(
|
$.post(
|
||||||
"API/sendMessage.php",
|
"API/sendMessage.php",
|
||||||
@@ -36,43 +43,60 @@ function sendMessage() {
|
|||||||
).done(function(response) {
|
).done(function(response) {
|
||||||
if (response == "frozen") {
|
if (response == "frozen") {
|
||||||
alert("Je account is bevroren, dus je kan niet chat berichten versturen. Contacteer een admin als je denkt dat dit onjuist is.");
|
alert("Je account is bevroren, dus je kan niet chat berichten versturen. Contacteer een admin als je denkt dat dit onjuist is.");
|
||||||
|
} else if (response == "logged out") {
|
||||||
|
window.location.href = "login.php?url=" + window.location.pathname;
|
||||||
}
|
}
|
||||||
|
// Load messages if the message has been send, so it shows in the chat.
|
||||||
|
loadMessages();
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#newContent").val("");
|
$("#newContent").val("");
|
||||||
loadMessages();
|
$("#newContent").focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Add messages to the chat.
|
||||||
function addMessages(messages) {
|
function addMessages(messages) {
|
||||||
var messagesText = "";
|
var messagesText = "";
|
||||||
|
|
||||||
|
// Loop over all the messages.
|
||||||
for(var i in messages) {
|
for(var i in messages) {
|
||||||
// Initialize message variables
|
// Initialize message variables.
|
||||||
var thisDate = new Date(messages[i].creationdate.replace(/ /,"T"));
|
var thisDate = new Date(messages[i].creationdate.replace(/ /,"T"));
|
||||||
var thisTime = thisDate.getHours() + ":" + thisDate.getMinutes();
|
var thisTime = thisDate.getHours() + ":" + ('0' + thisDate.getMinutes()).slice(-2);
|
||||||
var type;
|
var type;
|
||||||
thisDate.setHours(0,0,0,0);
|
thisDate.setHours(0,0,0,0);
|
||||||
|
|
||||||
|
// See where the message has been send from, so it shows on the right side.
|
||||||
if (messages[i].destination == $(".destinationID").val()) {
|
if (messages[i].destination == $(".destinationID").val()) {
|
||||||
type = "chat-message-self";
|
type = "chat-message-self";
|
||||||
} else {
|
} else {
|
||||||
type = "chat-message-other";
|
type = "chat-message-other";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If it is the first message, open the message box and maybe add a year.
|
||||||
if (i == 0) {
|
if (i == 0) {
|
||||||
previousDate = thisDate;
|
if (thisDate.getTime() > previousDate.getTime()) {
|
||||||
messagesText += '\
|
messagesText += '\
|
||||||
<div class="day-message"> \
|
<div class="day-message"> \
|
||||||
<div class="day-message-content">\
|
<div class="day-message-content">\
|
||||||
' + days[thisDate.getDay()] + " " + thisDate.getDate() + " " + months[thisDate.getMonth()] + " " + thisDate.getFullYear() + '\
|
' + days[thisDate.getDay()] + " " + thisDate.getDate() + " " + months[thisDate.getMonth()] + " " + thisDate.getFullYear() + '\
|
||||||
</div> \
|
</div> \
|
||||||
</div>';
|
</div>';
|
||||||
|
}
|
||||||
|
previousDate = thisDate;
|
||||||
|
previousTime = thisTime;
|
||||||
|
previousType = type;
|
||||||
messagesText += '<div class="chat-message"><div class="' + type + '">';
|
messagesText += '<div class="chat-message"><div class="' + type + '">';
|
||||||
|
// If it is not the first message, and has a different date/time/type then the previous message,
|
||||||
} else if (type != previousType || thisTime != previousTime || thisDate.getTime() > previousDate.getTime()) {
|
} else if (type != previousType || thisTime != previousTime || thisDate.getTime() > previousDate.getTime()) {
|
||||||
|
// Close the previous message.
|
||||||
messagesText += '<div class="chat-time">\
|
messagesText += '<div class="chat-time">\
|
||||||
' + thisTime + '\
|
' + thisTime + '\
|
||||||
</div></div></div>';
|
</div></div></div>';
|
||||||
|
|
||||||
previousTime = thisTime;
|
previousTime = thisTime;
|
||||||
previousType = type;
|
previousType = type;
|
||||||
|
// If the date is different, add a new date.
|
||||||
if (thisDate > previousDate) {
|
if (thisDate > previousDate) {
|
||||||
previousDate = thisDate;
|
previousDate = thisDate;
|
||||||
messagesText += '\
|
messagesText += '\
|
||||||
@@ -83,8 +107,11 @@ function addMessages(messages) {
|
|||||||
</div>';
|
</div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Open the new message.
|
||||||
messagesText += '<div class="chat-message"><div class="' + type + '">';
|
messagesText += '<div class="chat-message"><div class="' + type + '">';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Add the content of the message in the new box.
|
||||||
messagesText += fancyText(messages[i].content) + "<br />";
|
messagesText += fancyText(messages[i].content) + "<br />";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -93,11 +120,14 @@ function addMessages(messages) {
|
|||||||
' + thisTime + '\
|
' + thisTime + '\
|
||||||
</div></div></div>';
|
</div></div></div>';
|
||||||
|
|
||||||
|
// Add all the new created messaged to the chat.
|
||||||
$("#chat-history").append(messagesText);
|
$("#chat-history").append(messagesText);
|
||||||
|
|
||||||
|
// Scroll down, so the user can see the new messages.
|
||||||
$("#chat-history").scrollTop($("#chat-history")[0].scrollHeight - $('#chat-history')[0].clientHeight);
|
$("#chat-history").scrollTop($("#chat-history")[0].scrollHeight - $('#chat-history')[0].clientHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Switch to a different user.
|
||||||
function switchUser(userID) {
|
function switchUser(userID) {
|
||||||
previousDate = new Date("1970-01-01 00:00:00");
|
previousDate = new Date("1970-01-01 00:00:00");
|
||||||
$(".chat-field").show();
|
$(".chat-field").show();
|
||||||
@@ -108,6 +138,7 @@ function switchUser(userID) {
|
|||||||
$("#friend-item-" + userID).addClass("active-friend-chat");
|
$("#friend-item-" + userID).addClass("active-friend-chat");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Insert a message in the chat, this is used when it is empty.
|
||||||
function sayEmpty() {
|
function sayEmpty() {
|
||||||
$("#chat-history").html("Probeer ook eens foto's en video's te sturen");
|
$("#chat-history").html("Probeer ook eens foto's en video's te sturen");
|
||||||
}
|
}
|
||||||
@@ -1,123 +0,0 @@
|
|||||||
/**
|
|
||||||
* jQuery DOB Picker
|
|
||||||
* Website: https://github.com/tyea/dobpicker
|
|
||||||
* Version: 1.0
|
|
||||||
* Author: Tom Yeadon
|
|
||||||
* License: BSD 3-Clause
|
|
||||||
*/
|
|
||||||
|
|
||||||
jQuery.extend({
|
|
||||||
|
|
||||||
dobPicker: function(params) {
|
|
||||||
|
|
||||||
// set the defaults
|
|
||||||
if (typeof(params.dayDefault)==='undefined') params.dayDefault = 'Day';
|
|
||||||
if (typeof(params.monthDefault)==='undefined') params.monthDefault = 'Month';
|
|
||||||
if (typeof(params.yearDefault)==='undefined') params.yearDefault = 'Year';
|
|
||||||
if (typeof(params.minimumAge)==='undefined') params.minimumAge = 12;
|
|
||||||
if (typeof(params.maximumAge)==='undefined') params.maximumAge = 80;
|
|
||||||
|
|
||||||
// set the default messages
|
|
||||||
$(params.daySelector).append('<option value="">' + params.dayDefault + '</option>');
|
|
||||||
$(params.monthSelector).append('<option value="">' + params.monthDefault + '</option>');
|
|
||||||
$(params.yearSelector).append('<option value="">' + params.yearDefault + '</option>');
|
|
||||||
|
|
||||||
// populate the day select
|
|
||||||
for (i = 1; i <= 31; i++) {
|
|
||||||
if (i <= 9) {
|
|
||||||
var val = '0' + i;
|
|
||||||
} else {
|
|
||||||
var val = i;
|
|
||||||
}
|
|
||||||
$(params.daySelector).append('<option value="' + val + '">' + i + '</option>');
|
|
||||||
}
|
|
||||||
|
|
||||||
// populate the month select
|
|
||||||
var months = [
|
|
||||||
"January",
|
|
||||||
"February",
|
|
||||||
"March",
|
|
||||||
"April",
|
|
||||||
"May",
|
|
||||||
"June",
|
|
||||||
"July",
|
|
||||||
"August",
|
|
||||||
"September",
|
|
||||||
"October",
|
|
||||||
"November",
|
|
||||||
"December"
|
|
||||||
];
|
|
||||||
|
|
||||||
for (i = 1; i <= 12; i++) {
|
|
||||||
if (i <= 9) {
|
|
||||||
var val = '0' + i;
|
|
||||||
} else {
|
|
||||||
var val = i;
|
|
||||||
}
|
|
||||||
$(params.monthSelector).append('<option value="' + val + '">' + months[i - 1] + '</option>');
|
|
||||||
}
|
|
||||||
|
|
||||||
// populate the year select
|
|
||||||
var date = new Date();
|
|
||||||
var year = date.getFullYear();
|
|
||||||
var start = year - params.minimumAge;
|
|
||||||
var count = start - params.maximumAge;
|
|
||||||
|
|
||||||
for (i = start; i >= count; i--) {
|
|
||||||
$(params.yearSelector).append('<option value="' + i + '">' + i + '</option>');
|
|
||||||
}
|
|
||||||
|
|
||||||
// do the logic for the day select
|
|
||||||
$(params.daySelector).change(function() {
|
|
||||||
|
|
||||||
$(params.monthSelector)[0].selectedIndex = 0;
|
|
||||||
$(params.yearSelector)[0].selectedIndex = 0;
|
|
||||||
$(params.yearSelector + ' option').removeAttr('disabled');
|
|
||||||
|
|
||||||
if ($(params.daySelector).val() >= 1 && $(params.daySelector).val() <= 29) {
|
|
||||||
|
|
||||||
$(params.monthSelector + ' option').removeAttr('disabled');
|
|
||||||
|
|
||||||
} else if ($(params.daySelector).val() == 30) {
|
|
||||||
|
|
||||||
$(params.monthSelector + ' option').removeAttr('disabled');
|
|
||||||
$(params.monthSelector + ' option[value="02"]').attr('disabled', 'disabled');
|
|
||||||
|
|
||||||
} else if($(params.daySelector).val() == 31) {
|
|
||||||
|
|
||||||
$(params.monthSelector + ' option').removeAttr('disabled');
|
|
||||||
$(params.monthSelector + ' option[value="02"]').attr('disabled', 'disabled');
|
|
||||||
$(params.monthSelector + ' option[value="04"]').attr('disabled', 'disabled');
|
|
||||||
$(params.monthSelector + ' option[value="06"]').attr('disabled', 'disabled');
|
|
||||||
$(params.monthSelector + ' option[value="09"]').attr('disabled', 'disabled');
|
|
||||||
$(params.monthSelector + ' option[value="11"]').attr('disabled', 'disabled');
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
// do the logic for the month select
|
|
||||||
$(params.monthSelector).change(function() {
|
|
||||||
|
|
||||||
$(params.yearSelector)[0].selectedIndex = 0;
|
|
||||||
$(params.yearSelector + ' option').removeAttr('disabled');
|
|
||||||
|
|
||||||
if ($(params.daySelector).val() == 29 && $(params.monthSelector).val() == '02') {
|
|
||||||
|
|
||||||
$(params.yearSelector + ' option').each(function(index) {
|
|
||||||
if (index !== 0) {
|
|
||||||
var year = $(this).attr('value');
|
|
||||||
var leap = !((year % 4) || (!(year % 100) && (year % 400)));
|
|
||||||
if (leap === false) {
|
|
||||||
$(this).attr('disabled', 'disabled');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
1
website/public/js/dobPicker.min.js
vendored
@@ -1 +0,0 @@
|
|||||||
jQuery.extend({dobPicker:function(a){for("undefined"==typeof a.dayDefault&&(a.dayDefault="Day"),"undefined"==typeof a.monthDefault&&(a.monthDefault="Month"),"undefined"==typeof a.yearDefault&&(a.yearDefault="Year"),"undefined"==typeof a.minimumAge&&(a.minimumAge=12),"undefined"==typeof a.maximumAge&&(a.maximumAge=80),$(a.daySelector).append('<option value="">'+a.dayDefault+"</option>"),$(a.monthSelector).append('<option value="">'+a.monthDefault+"</option>"),$(a.yearSelector).append('<option value="">'+a.yearDefault+"</option>"),i=1;i<=31;i++){if(i<=9)var b="0"+i;else var b=i;$(a.daySelector).append('<option value="'+b+'">'+i+"</option>")}var c=["January","February","March","April","May","June","July","August","September","October","November","December"];for(i=1;i<=12;i++){if(i<=9)var b="0"+i;else var b=i;$(a.monthSelector).append('<option value="'+b+'">'+c[i-1]+"</option>")}var d=new Date,e=d.getFullYear(),f=e-a.minimumAge,g=f-a.maximumAge;for(i=f;i>=g;i--)$(a.yearSelector).append('<option value="'+i+'">'+i+"</option>");$(a.daySelector).change(function(){$(a.monthSelector)[0].selectedIndex=0,$(a.yearSelector)[0].selectedIndex=0,$(a.yearSelector+" option").removeAttr("disabled"),$(a.daySelector).val()>=1&&$(a.daySelector).val()<=29?$(a.monthSelector+" option").removeAttr("disabled"):30==$(a.daySelector).val()?($(a.monthSelector+" option").removeAttr("disabled"),$(a.monthSelector+' option[value="02"]').attr("disabled","disabled")):31==$(a.daySelector).val()&&($(a.monthSelector+" option").removeAttr("disabled"),$(a.monthSelector+' option[value="02"]').attr("disabled","disabled"),$(a.monthSelector+' option[value="04"]').attr("disabled","disabled"),$(a.monthSelector+' option[value="06"]').attr("disabled","disabled"),$(a.monthSelector+' option[value="09"]').attr("disabled","disabled"),$(a.monthSelector+' option[value="11"]').attr("disabled","disabled"))}),$(a.monthSelector).change(function(){$(a.yearSelector)[0].selectedIndex=0,$(a.yearSelector+" option").removeAttr("disabled"),29==$(a.daySelector).val()&&"02"==$(a.monthSelector).val()&&$(a.yearSelector+" option").each(function(a){if(0!==a){var b=$(this).attr("value"),c=!(b%4||!(b%100)&&b%400);c===!1&&$(this).attr("disabled","disabled")}})})}});
|
|
||||||
@@ -19,24 +19,24 @@ function placeFriendButtons() {
|
|||||||
case "0":
|
case "0":
|
||||||
value1 = "request";
|
value1 = "request";
|
||||||
class1 = "green";
|
class1 = "green";
|
||||||
text1 = "Bevriend";
|
text1 = "Word vrienden";
|
||||||
icon1 = "fa-handshake-o";
|
icon1 = "fa-user-plus";
|
||||||
break;
|
break;
|
||||||
case "1":
|
case "1":
|
||||||
value1 = userID;
|
value1 = userID;
|
||||||
class1 = "green";
|
class1 = "green";
|
||||||
text1 = "Chat";
|
text1 = "Chat";
|
||||||
icon1 = "fa-comment-o";
|
icon1 = "fa-comment";
|
||||||
value2 = "delete";
|
value2 = "delete";
|
||||||
class2 = "red";
|
class2 = "red";
|
||||||
text2 = "Verwijder";
|
text2 = "Ontvriend";
|
||||||
icon2 = "fa-times";
|
icon2 = "fa-user-times";
|
||||||
break;
|
break;
|
||||||
case "2":
|
case "2":
|
||||||
value1 = "delete";
|
value1 = "delete";
|
||||||
class1 = "red";
|
class1 = "red";
|
||||||
text1 = "Trek verzoek in";
|
text1 = "Trek verzoek in";
|
||||||
icon1 = "fa-cross";
|
icon1 = "fa-times";
|
||||||
break;
|
break;
|
||||||
case "3":
|
case "3":
|
||||||
value1 = "accept";
|
value1 = "accept";
|
||||||
@@ -51,16 +51,18 @@ function placeFriendButtons() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$buttonContainer.append(
|
$buttonContainer.append(
|
||||||
"<button class='"+ class1 +" friend-button' value='"+ value1 +"'>" +
|
"<div><button class='"+ class1 +" fancy-button friend-button' value='"+ value1 +"'>" +
|
||||||
"<i class='fa "+ icon1 +"'></i> " + text1 +
|
"<span>"+ text1 +"</span>" +
|
||||||
"</button>");
|
"<i class='fa fa-fw "+ icon1 +"'></i> " +
|
||||||
|
"</button></div>");
|
||||||
$buttonContainer.append(
|
$buttonContainer.append(
|
||||||
"<button class='"+ class2 +" friend-button' value='"+ value2 +"'>" +
|
"<div><button class='"+ class2 +" fancy-button friend-button' value='"+ value2 +"'>" +
|
||||||
"<i class='fa "+ icon2 +"'></i> " + text2 +
|
"<span>"+ text2 +"</span>" +
|
||||||
"</button>");
|
"<i class='fa fa-fw "+ icon2 +"'></i> " +
|
||||||
|
"</button></div>");
|
||||||
|
|
||||||
|
|
||||||
$buttonContainer.children().click(function() {
|
$buttonContainer.find("button").click(function() {
|
||||||
if (isNaN(this.value))
|
if (isNaN(this.value))
|
||||||
editFriendship(userID, this.value);
|
editFriendship(userID, this.value);
|
||||||
else if (this.value != "")
|
else if (this.value != "")
|
||||||
|
|||||||
@@ -5,22 +5,31 @@ function placeGroupButtons() {
|
|||||||
|
|
||||||
if (data == 'none') {
|
if (data == 'none') {
|
||||||
$buttonContainer.append(
|
$buttonContainer.append(
|
||||||
"<button class='green group-button' value='request'>" +
|
"<button class='green group-button fancy-button' value='request'>" +
|
||||||
"<i class='fa fa-plus'></i> Voeg toe" +
|
"<span>Treed toe</span><i class='fa fa-plus'></i>" +
|
||||||
"</button>");
|
"</button>");
|
||||||
} else if (data == 'request') {
|
} else if (data == 'request') {
|
||||||
$buttonContainer.append(
|
$buttonContainer.append(
|
||||||
"<button class='red group-button' value='none'>" +
|
"<button class='red group-button fancy-button' value='none'>" +
|
||||||
"<i class='fa fa-times'></i> Trek verzoek in" +
|
"<span>Trek verzoek in</span><i class='fa fa-times'></i>" +
|
||||||
"</button>");
|
"</button>");
|
||||||
|
} else if (data == 'admin') {
|
||||||
|
$buttonContainer.append(
|
||||||
|
"<button class='group-button fancy-button' value='admin'>" +
|
||||||
|
"<span>Instellingen</span><i class='fa fa-cogs'></i>" +
|
||||||
|
"</button>"
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
$buttonContainer.append(
|
$buttonContainer.append(
|
||||||
"<button class='red group-button' value='none'>" +
|
"<button class='red group-button fancy-button' value='none'>" +
|
||||||
"<i class='fa fa-times'></i> Verlaat groep" +
|
"<span>Verlaat groep</span><i class='fa fa-sign-out'></i>" +
|
||||||
"</button>");
|
"</button>");
|
||||||
}
|
}
|
||||||
|
|
||||||
$buttonContainer.children().click(function() {
|
$buttonContainer.children().click(function() {
|
||||||
|
if (this.value == 'admin') {
|
||||||
|
window.location.href='groupAdmin.php?groupID=' + groupID;
|
||||||
|
} else {
|
||||||
$.post("API/editMembership.php", {grp: groupID, role: this.value})
|
$.post("API/editMembership.php", {grp: groupID, role: this.value})
|
||||||
.done(function () {
|
.done(function () {
|
||||||
$buttonContainer.children().remove();
|
$buttonContainer.children().remove();
|
||||||
@@ -28,6 +37,7 @@ function placeGroupButtons() {
|
|||||||
updateMenus();
|
updateMenus();
|
||||||
}).fail(function () {
|
}).fail(function () {
|
||||||
});
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
68
website/public/js/loginRegisterModals.js
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
|
||||||
|
// Get the modal
|
||||||
|
var modal = document.getElementById('myModal');
|
||||||
|
var registerModal = document.getElementById('registerModal');
|
||||||
|
var facebookModal = document.getElementById("fbModal");
|
||||||
|
|
||||||
|
// Get the button that opens the modal
|
||||||
|
var registerBtn = document.getElementById("registerBtn");
|
||||||
|
var btn = document.getElementById("myBtn");
|
||||||
|
|
||||||
|
|
||||||
|
// Get the <span> element that closes the modal
|
||||||
|
var span = document.getElementsByClassName("close")[0];
|
||||||
|
var registerSpan = document.getElementsByClassName("close")[1];
|
||||||
|
var facebookCLose = document.getElementsByClassName("close")[2];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When the user clicks the button, open the modal
|
||||||
|
*/
|
||||||
|
btn.onclick = function () {
|
||||||
|
modal.style.display = "block";
|
||||||
|
|
||||||
|
}
|
||||||
|
registerBtn.onclick = function () {
|
||||||
|
registerModal.style.display = "block";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WHen the user clicks on (X), close the modal
|
||||||
|
*/
|
||||||
|
span.onclick = function () {
|
||||||
|
modal.style.display = "none";
|
||||||
|
}
|
||||||
|
registerSpan.onclick = function () {
|
||||||
|
registerModal.style.display = "none";
|
||||||
|
}
|
||||||
|
facebookCLose.onclick = function () {
|
||||||
|
facebookModal.style.display = "none";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When the user clicks anywhere outside of the modal, close it
|
||||||
|
*/
|
||||||
|
window.onclick = function (event) {
|
||||||
|
if (event.target == modal) {
|
||||||
|
modal.style.display = "none";
|
||||||
|
}
|
||||||
|
if (event.target == registerModal) {
|
||||||
|
registerModal.style.display = "none";
|
||||||
|
}
|
||||||
|
if (event.target == facebookModal) {
|
||||||
|
facebookModal.style.display = "none";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When ESC is pressed, close modal
|
||||||
|
*/
|
||||||
|
document.addEventListener('keyup', function(e) {
|
||||||
|
if (e.keyCode == 27) {
|
||||||
|
modal.style.display = "none";
|
||||||
|
registerModal.style.display = "none";
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
/**
|
||||||
|
* Created by joey on 2-2-17.
|
||||||
|
*/
|
||||||
@@ -3,8 +3,7 @@ var months = ["januari", "februari", "maart", "april", "mei", "juni", "juli", "a
|
|||||||
|
|
||||||
function fancyText(text) {
|
function fancyText(text) {
|
||||||
// Add links, images, gifs and (youtube) video's.
|
// Add links, images, gifs and (youtube) video's.
|
||||||
var regex = /(https?:\/\/.[^ <>"]*)/ig;
|
text = text.replace(/(https?:\/\/.[^ \n<>"]*)/ig, function(link) {
|
||||||
text = text.replace(regex, function(link) {
|
|
||||||
// Add images
|
// Add images
|
||||||
if (link.match(/(https?:\/\/.[^ ]*\.(?:png|jpg|jpeg|gif))/ig)) {
|
if (link.match(/(https?:\/\/.[^ ]*\.(?:png|jpg|jpeg|gif))/ig)) {
|
||||||
return "<img alt='" + link + "' src='" + link + "' />";
|
return "<img alt='" + link + "' src='" + link + "' />";
|
||||||
@@ -14,14 +13,14 @@ function fancyText(text) {
|
|||||||
return "<video width='100%'>" +
|
return "<video width='100%'>" +
|
||||||
"<source src='"+ link +"' type='video/mp4'>" +
|
"<source src='"+ link +"' type='video/mp4'>" +
|
||||||
"<b>Je browser ondersteund geen video</b>" +
|
"<b>Je browser ondersteund geen video</b>" +
|
||||||
"</video><button class='gray' onclick='$(this).prev().get(0).play();'>Speel af</button>";
|
"</video><button class='gray' onclick='$(this).prev().get(0).play();'><i class='fa fa-play'></i></button>";
|
||||||
}
|
}
|
||||||
// Add ogg video's
|
// Add ogg video's
|
||||||
else if (link.match(/(https?:\/\/.[^ ]*\.(?:ogg))/ig)) {
|
else if (link.match(/(https?:\/\/.[^ ]*\.(?:ogg))/ig)) {
|
||||||
return "<video width='100%'>" +
|
return "<video width='100%'>" +
|
||||||
"<source src='"+ link +"' type='video/ogg'>" +
|
"<source src='"+ link +"' type='video/ogg'>" +
|
||||||
"<b>Je browser ondersteund geen video</b>" +
|
"<b>Je browser ondersteund geen video</b>" +
|
||||||
"</video><button onclick='$(this).prev().get(0).play();'>Speel af</button>";
|
"</video><button class='gray' onclick='$(this).prev().get(0).play();'><i class='fa fa-play'></i></button>";
|
||||||
}
|
}
|
||||||
// Add youtube video's
|
// Add youtube video's
|
||||||
else if (link.match(/(https?:\/\/.(www.)?youtube|youtu.be)*watch/ig)) {
|
else if (link.match(/(https?:\/\/.(www.)?youtube|youtu.be)*watch/ig)) {
|
||||||
@@ -31,13 +30,15 @@ function fancyText(text) {
|
|||||||
}
|
}
|
||||||
// Add links
|
// Add links
|
||||||
else {
|
else {
|
||||||
return "<a href='" + link + "'>" + link + "</a>";
|
return "<a href='" + link + "' target='_blank'>" + link + "</a>";
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
return text;
|
return text;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This function gets the value of a cookie when given a key.
|
||||||
|
// If it didn´t find any compatible cookie, it returns false.
|
||||||
function getCookie(key) {
|
function getCookie(key) {
|
||||||
cookies = document.cookie.split("; ");
|
cookies = document.cookie.split("; ");
|
||||||
for (var i in cookies) {
|
for (var i in cookies) {
|
||||||
@@ -49,6 +50,7 @@ function getCookie(key) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Edit the friendship status of two users.
|
||||||
function editFriendship(userID, value) {
|
function editFriendship(userID, value) {
|
||||||
$.post("API/editFriendship.php", { usr: userID, action: value })
|
$.post("API/editFriendship.php", { usr: userID, action: value })
|
||||||
.done(function() {
|
.done(function() {
|
||||||
@@ -57,6 +59,8 @@ function editFriendship(userID, value) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Show the given friends in the given list.
|
||||||
|
// The friends are giving in JSON, and the list is giving with a hashtag.
|
||||||
function showFriends(friends, list) {
|
function showFriends(friends, list) {
|
||||||
if(friends && friends != "[]") {
|
if(friends && friends != "[]") {
|
||||||
$(list).load("bits/friend-item.php", {
|
$(list).load("bits/friend-item.php", {
|
||||||
@@ -69,6 +73,8 @@ function showFriends(friends, list) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Show the given friends in the given list.
|
||||||
|
// This function supports more options given as parameters. This adds extra functionality.
|
||||||
function showFriendsPlus(friends, list, limit, action, actionType) {
|
function showFriendsPlus(friends, list, limit, action, actionType) {
|
||||||
if(friends && friends != "[]") {
|
if(friends && friends != "[]") {
|
||||||
$(list).load("bits/friend-item.php", {
|
$(list).load("bits/friend-item.php", {
|
||||||
@@ -84,6 +90,7 @@ function showFriendsPlus(friends, list, limit, action, actionType) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Show the given groups in the given list.
|
||||||
function showGroups(groups, list) {
|
function showGroups(groups, list) {
|
||||||
if(groups && groups != "[]") {
|
if(groups && groups != "[]") {
|
||||||
$(list).load("bits/group-item.php", {
|
$(list).load("bits/group-item.php", {
|
||||||
|
|||||||
@@ -26,19 +26,41 @@ function requestPost(postID) {
|
|||||||
function postPost() {
|
function postPost() {
|
||||||
title = $("input.newpost[name='title']").val();
|
title = $("input.newpost[name='title']").val();
|
||||||
content = $("textarea.newpost[name='content']").val();
|
content = $("textarea.newpost[name='content']").val();
|
||||||
|
console.log(masonryMode);
|
||||||
if (masonryMode == 2) {
|
if (masonryMode == 2) {
|
||||||
$.post("API/postPost.php", { title: title,
|
$.post("API/postPost.php", { title: title,
|
||||||
content : content,
|
content : content,
|
||||||
group : groupID })
|
group : groupID })
|
||||||
.done(function() {
|
.done(function(data) {
|
||||||
|
if (data == "empty") {
|
||||||
|
$('#alertbox').show();
|
||||||
|
$('#alerttext').html("Geen titel of inhoud; vul a.u.b. in.");
|
||||||
|
window.scrollTo(0,0);
|
||||||
|
} else if (data == "logged out") {
|
||||||
|
window.location.href = "login.php?url=" + window.location.pathname;
|
||||||
|
} else if (data == "frozen") {
|
||||||
|
alert("Je account is bevroren, dus je kan geen posts plaatsen. Contacteer een admin als je denkt dat dit onjuist is.");
|
||||||
|
} else {
|
||||||
|
$('#alertbox').hide();
|
||||||
masonry(masonryMode);
|
masonry(masonryMode);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
$.post("API/postPost.php", { title: title,
|
$.post("API/postPost.php", { title: title,
|
||||||
content : content })
|
content : content })
|
||||||
.done(function() {
|
.done(function(data) {
|
||||||
|
if (data == "empty") {
|
||||||
|
$('#alertbox').show();
|
||||||
|
$('#alerttext').html("Geen titel of inhoud; vul a.u.b. in.");
|
||||||
|
window.scrollTo(0,0);
|
||||||
|
} else if (data == "logged out") {
|
||||||
|
window.location.href = "login.php?url=" + window.location.pathname;
|
||||||
|
} else if (data == "frozen") {
|
||||||
|
alert("Je account is bevroren, dus je kan geen posts plaatsen. Contacteer een admin als je denkt dat dit onjuist is.");
|
||||||
|
} else {
|
||||||
|
$('#alertbox').hide();
|
||||||
masonry(masonryMode);
|
masonry(masonryMode);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -69,6 +91,21 @@ $(window).on("load", function() {
|
|||||||
loadMorePosts(userID, groupID, postAmount, postLimit);
|
loadMorePosts(userID, groupID, postAmount, postLimit);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
$(document).keyup(function(e) {
|
||||||
|
if (e.keyCode == 27) {
|
||||||
|
closeModal();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('.modal').click(function() {
|
||||||
|
closeModal();
|
||||||
|
});
|
||||||
|
|
||||||
|
$('.modal-content').click(function(event){
|
||||||
|
event.stopPropagation();
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function closeModal() {
|
function closeModal() {
|
||||||
@@ -98,6 +135,10 @@ function masonry(mode) {
|
|||||||
masonryMode = mode;
|
masonryMode = mode;
|
||||||
$container.children().remove();
|
$container.children().remove();
|
||||||
|
|
||||||
|
// reinit posts
|
||||||
|
noposts = false;
|
||||||
|
postAmount = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Initialise columns.
|
* Initialise columns.
|
||||||
*/
|
*/
|
||||||
@@ -153,9 +194,6 @@ function loadMorePosts(uID, gID, offset, limit) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(uID, gID, offset, limit);
|
|
||||||
|
|
||||||
|
|
||||||
$.post("API/getPosts.php", { usr : uID,
|
$.post("API/getPosts.php", { usr : uID,
|
||||||
grp : gID,
|
grp : gID,
|
||||||
offset : offset,
|
offset : offset,
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ function postComment(buttonValue) {
|
|||||||
).done(function (response) {
|
).done(function (response) {
|
||||||
if (response == "frozen") {
|
if (response == "frozen") {
|
||||||
alert("Je account is bevroren, dus je kan geen comments plaatsen of \"niet slechten\". Contacteer een admin als je denkt dat dit onjuist is.");
|
alert("Je account is bevroren, dus je kan geen comments plaatsen of \"niet slechten\". Contacteer een admin als je denkt dat dit onjuist is.");
|
||||||
|
} else if (response == "logged out") {
|
||||||
|
window.location.href = "login.php?url=" + window.location.pathname;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -30,6 +32,8 @@ function deletePost(postID) {
|
|||||||
).done(function (response) {
|
).done(function (response) {
|
||||||
if (response == "frozen") {
|
if (response == "frozen") {
|
||||||
alert("Je account is bevroren, dus je kan geen posts verwijderen. Contacteer een admin als je denkt dat dit onjuist is.");
|
alert("Je account is bevroren, dus je kan geen posts verwijderen. Contacteer een admin als je denkt dat dit onjuist is.");
|
||||||
|
} else if (response == "logged out") {
|
||||||
|
window.location.href = "login.php?url=" + window.location.pathname;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
closeModal();
|
closeModal();
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ $(window).on('load', function () {
|
|||||||
pageNumber();
|
pageNumber();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Search for the users and put them in the user list.
|
||||||
function searchUsers() {
|
function searchUsers() {
|
||||||
$.post(
|
$.post(
|
||||||
"API/searchUsers.php",
|
"API/searchUsers.php",
|
||||||
@@ -13,6 +14,7 @@ function searchUsers() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Search for the groups and put them in the group list.
|
||||||
function searchGroups() {
|
function searchGroups() {
|
||||||
$.post(
|
$.post(
|
||||||
"API/searchGroups.php",
|
"API/searchGroups.php",
|
||||||
@@ -24,6 +26,7 @@ function searchGroups() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get the page numbers and return them in the select.
|
||||||
function pageNumber() {
|
function pageNumber() {
|
||||||
var input = input2 = $('#search-form').serialize();
|
var input = input2 = $('#search-form').serialize();
|
||||||
$.post(
|
$.post(
|
||||||
|
|||||||
BIN
website/public/large.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
website/public/launcher-icon-0-75x.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
website/public/launcher-icon-1-5x.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
website/public/launcher-icon-1x.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
website/public/launcher-icon-2x.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
BIN
website/public/launcher-icon-3x.png
Normal file
|
After Width: | Height: | Size: 7.2 KiB |
BIN
website/public/launcher-icon-4x.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
@@ -13,18 +13,12 @@
|
|||||||
?>
|
?>
|
||||||
<body>
|
<body>
|
||||||
<?php
|
<?php
|
||||||
session_start();
|
|
||||||
|
|
||||||
// Checks if there's an user already logged in
|
|
||||||
if(isset($_SESSION["userID"])){
|
|
||||||
echo "<script>
|
|
||||||
window.onload=checkLoggedIn();
|
|
||||||
</script>";
|
|
||||||
}
|
|
||||||
include("../views/homeLoginRegister.php");
|
include("../views/homeLoginRegister.php");
|
||||||
|
|
||||||
/* This view adds login view */
|
/* This view adds login view */
|
||||||
include("../views/login-view.php");
|
include("../views/login-view.php");
|
||||||
?>
|
?>
|
||||||
|
<script src="js/loginRegisterModals.js"></script>;
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
44
website/public/manifest.json
Executable file
@@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
"name": "Web Application Manifest Sample",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-0-75x.png",
|
||||||
|
"sizes": "36x36",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "0.75"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-1x.png",
|
||||||
|
"sizes": "48x48",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "1.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-1-5x.png",
|
||||||
|
"sizes": "72x72",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "1.5"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-2x.png",
|
||||||
|
"sizes": "96x96",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "2.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-3x.png",
|
||||||
|
"sizes": "144x144",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "3.0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"src": "launcher-icon-4x.png",
|
||||||
|
"sizes": "192x192",
|
||||||
|
"type": "image/png",
|
||||||
|
"density": "4.0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"start_url": "index.html",
|
||||||
|
"display": "standalone",
|
||||||
|
"orientation": "portrait"
|
||||||
|
}
|
||||||
@@ -25,9 +25,16 @@ if(empty($_GET["username"])) {
|
|||||||
$userID = getUserID($_GET["username"]);
|
$userID = getUserID($_GET["username"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = selectUser($_SESSION["userID"], $userID);
|
|
||||||
|
if (isset($_SESSION["userID"]) and !$user = selectUser($_SESSION["userID"], $userID)) {
|
||||||
|
header("HTTP/1.0 404 Not Found");
|
||||||
|
header("Location: error/404.php");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
$profile_friends = selectAllFriends($userID);
|
$profile_friends = selectAllFriends($userID);
|
||||||
$profile_groups = selectAllUserGroups($userID);
|
$profile_groups = selectAllUserGroups($userID);
|
||||||
|
$showProfile = $user["showProfile"] || ($user["status"] == 'confirmed') || $_SESSION["userID"] == $userID;
|
||||||
|
|
||||||
|
|
||||||
if ($userID == $_SESSION["userID"]) {
|
if ($userID == $_SESSION["userID"]) {
|
||||||
|
|||||||
@@ -1,116 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<?php
|
|
||||||
include("../views/login_head.php");
|
|
||||||
require_once("../queries/connect.php");
|
|
||||||
include_once("../queries/register.php");
|
|
||||||
include_once("../queries/checkInput.php");
|
|
||||||
include_once("../queries/emailconfirm.php");
|
|
||||||
?>
|
|
||||||
<body>
|
|
||||||
<?php
|
|
||||||
session_start();
|
|
||||||
|
|
||||||
if(isset($_SESSION["userID"])){
|
|
||||||
header("location: login.php");
|
|
||||||
}
|
|
||||||
// define variables and set to empty values
|
|
||||||
$name = $surname = $bday = $username = $password = $confirmpassword = $location = $housenumber = $email = $confirmEmail = $captcha = $ip = "";
|
|
||||||
$genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $locationErr = $housenumberErr = $emailErr = $confirmEmailErr = $captchaErr = "";
|
|
||||||
$correct = true;
|
|
||||||
$day_date = "dag";
|
|
||||||
$month_date = "maand";
|
|
||||||
$year_date = "jaar";
|
|
||||||
|
|
||||||
// Trying to register an account
|
|
||||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|
||||||
try {
|
|
||||||
$name = test_input(($_POST["name"]));
|
|
||||||
checkInputChoice($name, "lettersAndSpaces");
|
|
||||||
} catch(lettersAndSpacesException $e){
|
|
||||||
$correct = false;
|
|
||||||
$nameErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
$surname = test_input(($_POST["surname"]));
|
|
||||||
checkInputChoice($surname, "lettersAndSpaces");
|
|
||||||
}
|
|
||||||
catch(lettersAndSpacesException $e){
|
|
||||||
$correct = false;
|
|
||||||
$surnameErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$day_date = test_input(($_POST["day_date"]));
|
|
||||||
$month_date = test_input(($_POST["month_date"]));
|
|
||||||
$year_date = test_input(($_POST["year_date"]));
|
|
||||||
$bday = $year_date . "-" . $month_date . "-" . $day_date;
|
|
||||||
checkInputChoice($bday, "bday");
|
|
||||||
} catch(bdayException $e){
|
|
||||||
$correct = false;
|
|
||||||
$bdayErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$username = str_replace(' ', '', test_input(($_POST["username"])));
|
|
||||||
checkInputChoice($username, "username");
|
|
||||||
} catch(usernameException $e){
|
|
||||||
$correct = false;
|
|
||||||
$usernameErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$password = str_replace(' ', '', test_input(($_POST["password"])));
|
|
||||||
checkInputChoice($password, "longerEight");
|
|
||||||
matchPassword();
|
|
||||||
} catch(passwordException $e){
|
|
||||||
$correct = false;
|
|
||||||
$passwordErr = $e->getMessage();
|
|
||||||
} catch(confirmPasswordException $e){
|
|
||||||
$correct = false;
|
|
||||||
$confirmPasswordErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$location = test_input(($_POST["location"]));
|
|
||||||
checkInputChoice($location, "lettersAndSpaces");
|
|
||||||
} catch(lettersAndSpacesException $e){
|
|
||||||
$correct = false;
|
|
||||||
$locationErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$email = test_input(($_POST["email"]));
|
|
||||||
checkInputChoice($email, "email");
|
|
||||||
$confirmEmail = test_input(($_POST["confirmEmail"]));
|
|
||||||
matchEmail();
|
|
||||||
} catch(emailException $e){
|
|
||||||
$correct = false;
|
|
||||||
$emailErr = $e->getMessage();
|
|
||||||
} catch(confirmEmailException $e){
|
|
||||||
$correct = false;
|
|
||||||
$confirmEmailErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try{
|
|
||||||
$captcha = $_POST['g-recaptcha-response'];
|
|
||||||
checkCaptcha($captcha);
|
|
||||||
} catch(captchaException $e){
|
|
||||||
$correct = false;
|
|
||||||
$captchaErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
|
||||||
getIp();
|
|
||||||
registerCheck($correct);
|
|
||||||
sendConfirmEmailUsername($username);
|
|
||||||
} catch(registerException $e){
|
|
||||||
$genericErr = $e->getMessage();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* This view adds register view */
|
|
||||||
include("../views/register-view.php");
|
|
||||||
?>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -14,11 +14,13 @@
|
|||||||
<?php
|
<?php
|
||||||
$alertClass;
|
$alertClass;
|
||||||
$alertMessage;
|
$alertMessage;
|
||||||
|
|
||||||
|
// Select which button has been pressed.
|
||||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||||
try {
|
try {
|
||||||
switch ($_POST["form"]) {
|
switch ($_POST["form"]) {
|
||||||
case "profile":
|
case "profile":
|
||||||
updateSettings();
|
checkUpdateSettings();
|
||||||
break;
|
break;
|
||||||
case "password":
|
case "password":
|
||||||
changePassword();
|
changePassword();
|
||||||
@@ -29,7 +31,6 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|||||||
case "picture":
|
case "picture":
|
||||||
updateAvatar();
|
updateAvatar();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
} catch (AlertMessage $w) {
|
} catch (AlertMessage $w) {
|
||||||
$alertClass = $w->getClass();
|
$alertClass = $w->getClass();
|
||||||
|
|||||||
BIN
website/public/square.png
Normal file
|
After Width: | Height: | Size: 7.7 KiB |
@@ -1,13 +1,15 @@
|
|||||||
.admin-panel {
|
|
||||||
min-width: 800px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.admin-panel input[type="radio"], input[type="checkbox"] {
|
.admin-panel input[type="radio"], input[type="checkbox"] {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
height: 28px;
|
height: 28px;
|
||||||
|
width: 28px;
|
||||||
margin: 2px;
|
margin: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.table-checkbox {
|
||||||
|
width: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
.admin-searchform {
|
.admin-searchform {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@@ -34,13 +36,15 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.usertable .table-username {width: 150px}
|
.table-checkbox {width: 20px}
|
||||||
.usertable .table-status {width: 100px}
|
.table-username {width: 150px}
|
||||||
.usertable .table-action {width: 200px}
|
.table-status {width: 100px}
|
||||||
|
.table-action {width: 200px}
|
||||||
|
|
||||||
.usertable th, td {
|
.usertable th, td {
|
||||||
border-bottom: 1px solid #ddd;
|
border-bottom: 1px solid #ddd;
|
||||||
padding: 3px;
|
padding: 3px;
|
||||||
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
.usertable th, tr {
|
.usertable th, tr {
|
||||||
@@ -51,6 +55,10 @@
|
|||||||
background-color: #f5f5f5;
|
background-color: #f5f5f5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bancomment {
|
||||||
|
width: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
.bancommentedit {
|
.bancommentedit {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -133,6 +133,12 @@ label {
|
|||||||
color: red;
|
color: red;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.login_containerNoscript {
|
||||||
|
padding: 4px;
|
||||||
|
text-align: center;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
@keyframes animatezoom {
|
@keyframes animatezoom {
|
||||||
from {transform: scale(0)}
|
from {transform: scale(0)}
|
||||||
to {transform: scale(1)}
|
to {transform: scale(1)}
|
||||||
@@ -150,7 +156,7 @@ label {
|
|||||||
margin: 16px auto;
|
margin: 16px auto;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
width: 600px;
|
width: 650px;
|
||||||
}
|
}
|
||||||
|
|
||||||
select{
|
select{
|
||||||
@@ -192,12 +198,6 @@ ul {
|
|||||||
animation-duration: 0.4s
|
animation-duration: 0.4s
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add Animation */
|
|
||||||
@-webkit-keyframes animatetop {
|
|
||||||
from {top:-300px; opacity:0}
|
|
||||||
to {top:0; opacity:1}
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes animatetop {
|
@keyframes animatetop {
|
||||||
from {top:-300px; opacity:0}
|
from {top:-300px; opacity:0}
|
||||||
to {top:0; opacity:1}
|
to {top:0; opacity:1}
|
||||||
|
|||||||
@@ -102,7 +102,6 @@ p {
|
|||||||
|
|
||||||
.group-picture {
|
.group-picture {
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
border: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.item-box, .item-box-full-width {
|
.item-box, .item-box-full-width {
|
||||||
@@ -117,7 +116,7 @@ p {
|
|||||||
|
|
||||||
@media only screen and (max-width: 1400px) {
|
@media only screen and (max-width: 1400px) {
|
||||||
.item-box {
|
.item-box {
|
||||||
width: calc(100% - 50px);
|
width: calc(100% - 50px)!important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -257,8 +256,6 @@ div[data-title]:hover:after {
|
|||||||
top: 150%;
|
top: 150%;
|
||||||
z-index: 200;
|
z-index: 200;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
-moz-border-radius: 3px;
|
|
||||||
-webkit-border-radius: 3px;
|
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
|
box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
|
||||||
background-color: #333;
|
background-color: #333;
|
||||||
@@ -291,19 +288,6 @@ div[data-title]:hover:after {
|
|||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
|
||||||
width: 5px;
|
|
||||||
height: 5px;
|
|
||||||
}
|
|
||||||
::-webkit-scrollbar-track {
|
|
||||||
background: none;
|
|
||||||
}
|
|
||||||
::-webkit-scrollbar-thumb {
|
|
||||||
-webkit-border-radius: 20px;
|
|
||||||
border-radius: 20px;
|
|
||||||
background: #4CAF50;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media only screen and (max-width: 1080px) {
|
@media only screen and (max-width: 1080px) {
|
||||||
body {
|
body {
|
||||||
font-size: 28px!important;
|
font-size: 28px!important;
|
||||||
|
|||||||
@@ -48,6 +48,10 @@
|
|||||||
width: 90%;
|
width: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.post-content a {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
.commentfield {
|
.commentfield {
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
@@ -87,17 +91,5 @@
|
|||||||
|
|
||||||
.deleteButton {
|
.deleteButton {
|
||||||
background-color: firebrick;
|
background-color: firebrick;
|
||||||
|
float: right;
|
||||||
}
|
|
||||||
|
|
||||||
.deleteButton i {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.deleteButton:hover span {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.deleteButton span {
|
|
||||||
display: none;
|
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,14 @@
|
|||||||
/* New */
|
/* New */
|
||||||
|
|
||||||
|
.alertbox {
|
||||||
|
display: none;
|
||||||
|
background-color: firebrick;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alerttext {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
.user-box {
|
.user-box {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
@@ -11,21 +20,29 @@
|
|||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
.friend-button-container {
|
.friend-button-container, .group-button-container {
|
||||||
position: relative;
|
position: relative;
|
||||||
float: right;
|
float: right;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.friend-button-container div, .status-buttons-container div {
|
||||||
|
width: 200px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
.friend-button-container button, .status-buttons-container button, .group-button-container button {
|
.friend-button-container button, .status-buttons-container button, .group-button-container button {
|
||||||
display: block;
|
display: block;
|
||||||
|
float: right;
|
||||||
|
|
||||||
margin: 7px 0;
|
margin: 7px 0;
|
||||||
width: 200px;
|
|
||||||
|
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
}
|
}
|
||||||
|
.status-buttons-container button {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
.group-button-container button {
|
.group-button-container button {
|
||||||
float: right;
|
float: right;
|
||||||
@@ -62,10 +79,24 @@
|
|||||||
|
|
||||||
.group-picture {
|
.group-picture {
|
||||||
border: none;
|
border: none;
|
||||||
margin-bottom: 0;
|
|
||||||
margin-right: 15px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.fancy-button span {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancy-button:hover {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancy-button i {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancy-button:hover span {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
/* Old */
|
/* Old */
|
||||||
|
|
||||||
@@ -90,6 +121,10 @@ div.posts div.post {
|
|||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.posts div.post a {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
div.posts div.post:hover {
|
div.posts div.post:hover {
|
||||||
box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
|
box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,6 +32,11 @@
|
|||||||
text-align: right;
|
text-align: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.settings-password, .settings-email {
|
||||||
|
width: calc(50% - 60px);
|
||||||
|
display: inline-flex;
|
||||||
|
}
|
||||||
|
|
||||||
.settings-password label, .settings-email label {
|
.settings-password label, .settings-email label {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
website/public/tiny.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
website/public/wide.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
@@ -47,6 +47,8 @@ function checkName($variable){
|
|||||||
throw new lettersAndSpacesException("Verplicht!");
|
throw new lettersAndSpacesException("Verplicht!");
|
||||||
} else if (!preg_match("/^[a-zA-Z ]*$/", $variable)) {
|
} else if (!preg_match("/^[a-zA-Z ]*$/", $variable)) {
|
||||||
throw new lettersAndSpacesException("Alleen letters en spaties zijn toegestaan!");
|
throw new lettersAndSpacesException("Alleen letters en spaties zijn toegestaan!");
|
||||||
|
} else if (strlen($variable) > 63){
|
||||||
|
throw new lettersAndSpacesException(("Mag maximaal 63 karakters hebben!"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -66,7 +68,7 @@ function validateBday($variable){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Checks for date
|
/* Checks for date */
|
||||||
function validateDate($date, $format)
|
function validateDate($date, $format)
|
||||||
{
|
{
|
||||||
$d = DateTime::createFromFormat($format, $date);
|
$d = DateTime::createFromFormat($format, $date);
|
||||||
@@ -81,6 +83,8 @@ function username($variable){
|
|||||||
throw new usernameException("Moet minstens 6 karakters bevatten");
|
throw new usernameException("Moet minstens 6 karakters bevatten");
|
||||||
} else if (getExistingUsername() == 1) {
|
} else if (getExistingUsername() == 1) {
|
||||||
throw new usernameException("Gebruikersnaam bestaal al");
|
throw new usernameException("Gebruikersnaam bestaal al");
|
||||||
|
} else if (strlen($variable) > 50) {
|
||||||
|
throw new usernameException("Mag maximaal 50 karakters!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -92,6 +96,8 @@ function fbUsername($variable){
|
|||||||
throw new usernameException("Moet minstens 6 karakters bevatten");
|
throw new usernameException("Moet minstens 6 karakters bevatten");
|
||||||
} else if (getExistingFBUsername() == 1) {
|
} else if (getExistingFBUsername() == 1) {
|
||||||
throw new usernameException("Gebruikersnaam bestaal al");
|
throw new usernameException("Gebruikersnaam bestaal al");
|
||||||
|
} else if (strlen($variable) > 50) {
|
||||||
|
throw new usernameException("Mag maximaal 50 karakters!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -101,6 +107,8 @@ function longerEight($variable){
|
|||||||
throw new passwordException("Verplicht!");
|
throw new passwordException("Verplicht!");
|
||||||
} else if (strlen($variable) < 8) {
|
} else if (strlen($variable) < 8) {
|
||||||
throw new passwordException("Moet minstens 8 karakters bevatten");
|
throw new passwordException("Moet minstens 8 karakters bevatten");
|
||||||
|
} else if (strlen($variable) > 50) {
|
||||||
|
throw new usernameException("Mag maximaal 50 karakters!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,6 +120,8 @@ function validateEmail($variable){
|
|||||||
throw new emailException("Geldige email invullen");
|
throw new emailException("Geldige email invullen");
|
||||||
} else if (getExistingEmail() == 1){
|
} else if (getExistingEmail() == 1){
|
||||||
throw new emailException("Email bestaal al!");
|
throw new emailException("Email bestaal al!");
|
||||||
|
} else if (strlen($variable) > 255) {
|
||||||
|
throw new emailException("Mag maximaal 50 karakters!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,10 +132,13 @@ function validateFBEmail($variable){
|
|||||||
} else if (!filter_var($variable, FILTER_VALIDATE_EMAIL)) {
|
} else if (!filter_var($variable, FILTER_VALIDATE_EMAIL)) {
|
||||||
throw new emailException("Geldige email invullen");
|
throw new emailException("Geldige email invullen");
|
||||||
} else if (getExistingFBEmail() == 1){
|
} else if (getExistingFBEmail() == 1){
|
||||||
throw new emailException("Email bestaal al!");
|
throw new emailException("Uw email wordt al gebruikt voor een ander account!");
|
||||||
|
} else if (strlen($variable) > 255) {
|
||||||
|
throw new emailException("Mag maximaal 50 karakters!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* checks if email is the same */
|
||||||
function matchEmail(){
|
function matchEmail(){
|
||||||
if (strtolower($_POST["email"]) != strtolower($_POST["confirmEmail"])){
|
if (strtolower($_POST["email"]) != strtolower($_POST["confirmEmail"])){
|
||||||
throw new confirmEmailException("Emails matchen niet!");
|
throw new confirmEmailException("Emails matchen niet!");
|
||||||
@@ -141,7 +154,6 @@ function resetEmail($variable){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* checks if two passwords matches. */
|
/* checks if two passwords matches. */
|
||||||
function matchPassword(){
|
function matchPassword(){
|
||||||
if ($_POST["password"] != $_POST["confirmpassword"]) {
|
if ($_POST["password"] != $_POST["confirmpassword"]) {
|
||||||
@@ -204,6 +216,7 @@ function test_input($data) {
|
|||||||
$data = trim($data);
|
$data = trim($data);
|
||||||
$data = stripslashes($data);
|
$data = stripslashes($data);
|
||||||
$data = htmlspecialchars($data);
|
$data = htmlspecialchars($data);
|
||||||
|
$data = trim($data);
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,11 @@ else {
|
|||||||
or die('Error connecting to mysql server');
|
or die('Error connecting to mysql server');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helperfunction to create a database query.
|
||||||
|
* @param string $query
|
||||||
|
* @return PDOStatement
|
||||||
|
*/
|
||||||
function prepareQuery(string $query) : PDOStatement {
|
function prepareQuery(string $query) : PDOStatement {
|
||||||
return $GLOBALS["db"]->prepare($query);
|
return $GLOBALS["db"]->prepare($query);
|
||||||
}
|
}
|
||||||
41
website/queries/createGroup.php
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
<?php
|
||||||
|
require_once "../queries/checkInput.php";
|
||||||
|
require_once "../queries/picture.php";
|
||||||
|
require_once "../queries/alerts.php";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a group.
|
||||||
|
*/
|
||||||
|
function createGroup()
|
||||||
|
{
|
||||||
|
$createGroup = prepareQuery("
|
||||||
|
INSERT INTO
|
||||||
|
`group_page` (`name`, `description`)
|
||||||
|
VALUES (:name, :description);
|
||||||
|
");
|
||||||
|
$createGroup->bindValue(':name', test_input($_POST["groupName"]), PDO::PARAM_STR);
|
||||||
|
$createGroup->bindValue(':description', test_input($_POST["bio"]));
|
||||||
|
$createGroup->execute();
|
||||||
|
|
||||||
|
$getGroupID = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
`groupID`
|
||||||
|
FROM
|
||||||
|
`group_page`
|
||||||
|
WHERE
|
||||||
|
`name` LIKE :name");
|
||||||
|
$getGroupID->bindValue(':name', test_input($_POST["groupName"]), PDO::PARAM_STR);
|
||||||
|
$getGroupID->execute();
|
||||||
|
$groupID = $getGroupID->fetch()["groupID"];
|
||||||
|
|
||||||
|
$makeUserAdmin = prepareQuery("
|
||||||
|
INSERT INTO
|
||||||
|
`group_member` (userID, groupID, role)
|
||||||
|
VALUES (:userID, :groupID, 'admin')
|
||||||
|
");
|
||||||
|
$makeUserAdmin->bindValue(":userID", $_SESSION["userID"]);
|
||||||
|
$makeUserAdmin->bindValue("groupID", $groupID);
|
||||||
|
$makeUserAdmin->execute();
|
||||||
|
|
||||||
|
updateAvatar($groupID);
|
||||||
|
}
|
||||||
@@ -10,13 +10,14 @@ function selectLimitedFriends($userID, $limit) {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
`userID`,
|
`userID`,
|
||||||
|
LEFT(`username`, 12) as `usernameshort`,
|
||||||
`username`,
|
`username`,
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) as `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`,
|
END AS `onlinestatus`,
|
||||||
@@ -50,13 +51,14 @@ function selectAllFriends($userID) {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
`userID`,
|
`userID`,
|
||||||
|
LEFT(`username`, 12) as `usernameshort`,
|
||||||
`username`,
|
`username`,
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) as `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`,
|
END AS `onlinestatus`,
|
||||||
@@ -85,13 +87,14 @@ function selectAllFriendRequests() {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
`userID`,
|
`userID`,
|
||||||
|
LEFT(`username`, 12) as `usernameshort`,
|
||||||
`username`,
|
`username`,
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) as `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`,
|
END AS `onlinestatus`,
|
||||||
@@ -235,13 +238,14 @@ function searchSomeFriends($n, $m, $search) {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
`userID`,
|
`userID`,
|
||||||
|
LEFT(`username`, 12) as `usernameshort`,
|
||||||
`username`,
|
`username`,
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) as `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`,
|
END AS `onlinestatus`,
|
||||||
@@ -276,3 +280,34 @@ function searchSomeFriends($n, $m, $search) {
|
|||||||
$stmt->execute();
|
$stmt->execute();
|
||||||
return json_encode($stmt->fetchAll());
|
return json_encode($stmt->fetchAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function countSomeFriends($search) {
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
COUNT(*)
|
||||||
|
FROM
|
||||||
|
`user`
|
||||||
|
INNER JOIN
|
||||||
|
`friendship`
|
||||||
|
WHERE
|
||||||
|
((`friendship`.`user1ID` = :userID AND
|
||||||
|
`friendship`.`user2ID` = `user`.`userID` OR
|
||||||
|
`friendship`.`user2ID` = :userID AND
|
||||||
|
`friendship`.`user1ID` = `user`.`userID`) AND
|
||||||
|
`user`.`role` != 'banned' AND
|
||||||
|
`friendship`.`status` = 'confirmed') AND
|
||||||
|
(`username` LIKE :keyword OR
|
||||||
|
`fname` LIKE :keyword OR
|
||||||
|
`lname` LIKE :keyword)
|
||||||
|
ORDER BY
|
||||||
|
`fname`,
|
||||||
|
`lname`,
|
||||||
|
`username`
|
||||||
|
");
|
||||||
|
|
||||||
|
$search = "%$search%";
|
||||||
|
$stmt->bindParam(':keyword', $search);
|
||||||
|
$stmt->bindParam(':userID', $_SESSION["userID"], PDO::PARAM_INT);
|
||||||
|
$stmt->execute();
|
||||||
|
return $stmt->fetchColumn();
|
||||||
|
}
|
||||||
192
website/queries/groupAdmin.php
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Gets the current settings for a group.
|
||||||
|
* @param int $groupID
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
function getGroupSettings(int $groupID) {
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
`name`,
|
||||||
|
`picture`,
|
||||||
|
`description`
|
||||||
|
FROM
|
||||||
|
`group_page`
|
||||||
|
WHERE
|
||||||
|
`groupID` = :groupID
|
||||||
|
");
|
||||||
|
$stmt->bindParam(":groupID", $groupID);
|
||||||
|
$stmt->execute();
|
||||||
|
return $stmt->fetch();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updates the settings for a group.
|
||||||
|
* @param int $groupID
|
||||||
|
* @throws AngryAlert
|
||||||
|
* @throws HappyAlert
|
||||||
|
*/
|
||||||
|
function updateGroupSettings(int $groupID)
|
||||||
|
{
|
||||||
|
if (!checkGroupAdmin($groupID, $_SESSION["userID"])) {
|
||||||
|
throw new AngryAlert("Je hebt geen rechten in deze groep");
|
||||||
|
}
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
UPDATE
|
||||||
|
`group_page`
|
||||||
|
SET
|
||||||
|
`name` = :name,
|
||||||
|
`description` = :bio
|
||||||
|
WHERE
|
||||||
|
`groupID` = :groupID
|
||||||
|
");
|
||||||
|
$stmt->bindValue(":bio", test_input($_POST["bio"]));
|
||||||
|
$stmt->bindValue(":name", test_input($_POST["name"]));
|
||||||
|
$stmt->bindValue(":groupID", test_input($_POST["groupID"]));
|
||||||
|
$stmt->execute();
|
||||||
|
if ($stmt->rowCount()) {
|
||||||
|
throw new HappyAlert("Groep aangepast!");
|
||||||
|
} else {
|
||||||
|
throw new AngryAlert("Er is iets mis gegaan");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if an user is an admin for a page.
|
||||||
|
* @param int $groupID
|
||||||
|
* @param int $userID
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
function checkGroupAdmin(int $groupID, int $userID) : bool {
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
`role`
|
||||||
|
FROM
|
||||||
|
`group_member`
|
||||||
|
WHERE
|
||||||
|
`groupID` = :groupID AND
|
||||||
|
`userID` = :userID
|
||||||
|
");
|
||||||
|
$stmt->bindValue(":userID", $userID);
|
||||||
|
$stmt->bindValue(":groupID", $groupID);
|
||||||
|
$stmt->execute();
|
||||||
|
if (!$stmt->rowCount()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
$role = $stmt->fetch()["role"];
|
||||||
|
return ($role == "admin");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all normal members for a group.
|
||||||
|
* @param int $groupID
|
||||||
|
* @return array|bool
|
||||||
|
*/
|
||||||
|
function getAllGroupUsers(int $groupID) {
|
||||||
|
return getAllGroupMembers($groupID, 'member');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all admin for a group.
|
||||||
|
* @param int $groupID
|
||||||
|
* @return array|bool
|
||||||
|
*/
|
||||||
|
function getAllGroupAdmins(int $groupID) {
|
||||||
|
return getAllGroupMembers($groupID, 'admin');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all Moderators for a group.
|
||||||
|
* @param int $groupID
|
||||||
|
* @return array|bool
|
||||||
|
*/
|
||||||
|
function getAllGroupMods(int $groupID) {
|
||||||
|
return getAllGroupMembers($groupID, 'mod');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns all members for a group specified by a string.
|
||||||
|
* @param int $groupID
|
||||||
|
* @param string $role
|
||||||
|
* @return array|bool
|
||||||
|
*/
|
||||||
|
function getAllGroupMembers(int $groupID, string $role) {
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
`username`,
|
||||||
|
`user`.`userID`,
|
||||||
|
CONCAT(`fname`, ' ', `lname`) AS `fullname`,
|
||||||
|
`group_member`.`role`
|
||||||
|
FROM
|
||||||
|
`group_member`
|
||||||
|
LEFT JOIN
|
||||||
|
`user`
|
||||||
|
ON
|
||||||
|
`group_member`.`userID` = `user`.`userID`
|
||||||
|
WHERE
|
||||||
|
`groupID` = :groupID AND `group_member`.`role` = :role
|
||||||
|
");
|
||||||
|
|
||||||
|
$stmt->bindParam(':groupID', $groupID);
|
||||||
|
$stmt->bindParam(":role", $role);
|
||||||
|
if (!$stmt->execute()) {
|
||||||
|
return False;
|
||||||
|
}
|
||||||
|
return $stmt->fetchAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Upgrades or downgrades a groupmember to a different role.
|
||||||
|
* @param int $groupID
|
||||||
|
* @param int $userID
|
||||||
|
* @param string $role
|
||||||
|
* @throws AngryAlert
|
||||||
|
* @throws HappyAlert
|
||||||
|
*/
|
||||||
|
function upgradeUser(int $groupID, int $userID, string $role) {
|
||||||
|
if (!checkGroupAdmin($groupID, $_SESSION["userID"])) {
|
||||||
|
throw new AngryAlert("Geen toestemming om te wijzigen");
|
||||||
|
}
|
||||||
|
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
UPDATE
|
||||||
|
`group_member`
|
||||||
|
SET
|
||||||
|
`role` = :role
|
||||||
|
WHERE
|
||||||
|
`userID` = :userID AND `groupID` = :groupID
|
||||||
|
");
|
||||||
|
$stmt->bindValue(":groupID", $groupID);
|
||||||
|
$stmt->bindValue(":userID", $userID);
|
||||||
|
$stmt->bindValue(":role", $role);
|
||||||
|
$stmt->execute();
|
||||||
|
if ($stmt->rowCount()) {
|
||||||
|
throw new HappyAlert("Permissie aangepast!");
|
||||||
|
} else {
|
||||||
|
throw new AngryAlert("Er is iets mis gegaan");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Removes a group form the database.
|
||||||
|
* @throws AngryAlert
|
||||||
|
* @throws HappyAlert
|
||||||
|
*/
|
||||||
|
function deleteGroup() {
|
||||||
|
if (!checkGroupAdmin($_POST["groupID"], $_SESSION["userID"])) {
|
||||||
|
throw new AngryAlert("Geen toestemming om de groep te verwijderen!");
|
||||||
|
}
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
DELETE FROM
|
||||||
|
`group_page`
|
||||||
|
WHERE
|
||||||
|
`groupID` = :groupID
|
||||||
|
");
|
||||||
|
$stmt->bindValue(":groupID", $_POST["groupID"]);
|
||||||
|
$stmt->execute();
|
||||||
|
if ($stmt->rowCount()) {
|
||||||
|
throw new HappyAlert("Group verwijderd!");
|
||||||
|
} else {
|
||||||
|
throw new AngryAlert("Er is iets mis gegaan");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -55,6 +55,29 @@ function searchSomeOwnGroups($n, $m, $search) {
|
|||||||
return json_encode($stmt->fetchAll());
|
return json_encode($stmt->fetchAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function countSomeOwnGroups($search) {
|
||||||
|
$stmt = prepareQuery("
|
||||||
|
SELECT
|
||||||
|
COUNT(*)
|
||||||
|
FROM
|
||||||
|
`group_page`
|
||||||
|
INNER JOIN
|
||||||
|
`group_member`
|
||||||
|
WHERE
|
||||||
|
`group_member`.`userID` = :userID AND
|
||||||
|
`group_member`.`groupID` = `group_page`.`groupID` AND
|
||||||
|
`group_page`.`status` != 'hidden' AND
|
||||||
|
`name` LIKE :keyword
|
||||||
|
");
|
||||||
|
|
||||||
|
$search = "%$search%";
|
||||||
|
$stmt->bindParam(':keyword', $search);
|
||||||
|
$stmt->bindParam(':userID', $_SESSION["userID"], PDO::PARAM_INT);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
return $stmt->fetchColumn();
|
||||||
|
}
|
||||||
|
|
||||||
function addMember($groupID, $userID, $role) {
|
function addMember($groupID, $userID, $role) {
|
||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
INSERT INTO
|
INSERT INTO
|
||||||
|
|||||||
@@ -33,7 +33,12 @@ function selectGroupByName($name) {
|
|||||||
if (!$stmt->execute()) {
|
if (!$stmt->execute()) {
|
||||||
return False;
|
return False;
|
||||||
}
|
}
|
||||||
return $stmt->fetch();
|
$row = $stmt->fetch();
|
||||||
|
if($row["groupID"] == null) {
|
||||||
|
return False;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $row;
|
||||||
}
|
}
|
||||||
|
|
||||||
function selectGroupRole(int $groupID) {
|
function selectGroupRole(int $groupID) {
|
||||||
@@ -81,7 +86,10 @@ function selectGroupMembers(int $groupID) {
|
|||||||
`username`,
|
`username`,
|
||||||
`fname`,
|
`fname`,
|
||||||
`lname`,
|
`lname`,
|
||||||
`profilepicture`
|
IFNULL(
|
||||||
|
`profilepicture`,
|
||||||
|
'../img/avatar-standard.png'
|
||||||
|
) AS profilepicture
|
||||||
FROM
|
FROM
|
||||||
`group_member`
|
`group_member`
|
||||||
LEFT JOIN
|
LEFT JOIN
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
//Find matching password with the inputted username/emailadress.
|
||||||
function getUser() {
|
function getUser() {
|
||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
@@ -33,7 +34,7 @@ function getUserID() {
|
|||||||
return $stmt->fetch(PDO::FETCH_ASSOC);
|
return $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
}
|
}
|
||||||
|
|
||||||
function validateLogin($username, $password){
|
function validateLogin($username, $password, $url){
|
||||||
// Empty username or password field
|
// Empty username or password field
|
||||||
if (empty($username) || empty($password)) {
|
if (empty($username) || empty($password)) {
|
||||||
throw new loginException("Inloggegevens zijn niet ingevuld");
|
throw new loginException("Inloggegevens zijn niet ingevuld");
|
||||||
@@ -44,26 +45,42 @@ function validateLogin($username, $password){
|
|||||||
$userID = getUser()["userID"];
|
$userID = getUser()["userID"];
|
||||||
$role = getUser()["role"];
|
$role = getUser()["role"];
|
||||||
|
|
||||||
// If there's an account, go to the profile page
|
// If there's an account, check if the account is banned, frozen or unconfirmed.
|
||||||
if(password_verify($psw, $hash)) {
|
if(password_verify($psw, $hash)) {
|
||||||
if ($role == "banned"){
|
if ($role == "banned"){
|
||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload=bannedAlert();
|
window.onload=bannedAlert();
|
||||||
</script>";
|
</script>";
|
||||||
|
|
||||||
} else if ($role == "frozen") {
|
} else if ($role == "frozen") {
|
||||||
$_SESSION["userID"] = $userID;
|
$_SESSION["userID"] = $userID;
|
||||||
|
if (!isset($url) or $url = "") {
|
||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload=frozenAlert();
|
window.onload=frozenAlert();
|
||||||
window.location.href= 'profile.php';
|
window.location.href= 'profile.php';
|
||||||
</script>";
|
</script>";
|
||||||
|
} else {
|
||||||
|
echo "<script>
|
||||||
|
window.onload=frozenAlert();
|
||||||
|
window.location.href= $url;
|
||||||
|
</script>";
|
||||||
|
}
|
||||||
|
|
||||||
} else if ($role == "unconfirmed"){
|
} else if ($role == "unconfirmed"){
|
||||||
sendConfirmEmail(getUser()["userID"]);
|
sendConfirmEmail(getUser()["userID"]);
|
||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload=emailNotConfirmed();
|
window.onload=emailNotConfirmed();
|
||||||
</script>";
|
</script>";
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$_SESSION["userID"] = $userID;
|
$_SESSION["userID"] = $userID;
|
||||||
|
if(!isset($url) or $url == "") {
|
||||||
header("location: profile.php");
|
header("location: profile.php");
|
||||||
|
echo "succes";
|
||||||
|
} else{
|
||||||
|
header("location: ".$url);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
throw new loginException("Inloggevens zijn niet correct");
|
throw new loginException("Inloggevens zijn niet correct");
|
||||||
|
|||||||
@@ -6,7 +6,10 @@
|
|||||||
* @throws AngryAlert
|
* @throws AngryAlert
|
||||||
* @throws HappyAlert
|
* @throws HappyAlert
|
||||||
*/
|
*/
|
||||||
function updateAvatar(bool $group = false) {
|
function updateAvatar(int $group = 0) {
|
||||||
|
if (!array_key_exists("pp", $_FILES)) {
|
||||||
|
throw new AngryAlert("Geen afbeelding meegegeven!");
|
||||||
|
}
|
||||||
$publicDir = "/var/www/html/public/";
|
$publicDir = "/var/www/html/public/";
|
||||||
$tmpImg = $_FILES["pp"]["tmp_name"];
|
$tmpImg = $_FILES["pp"]["tmp_name"];
|
||||||
$avatarDir = $group ? "uploads/groupavatar/" : "uploads/profilepictures/";
|
$avatarDir = $group ? "uploads/groupavatar/" : "uploads/profilepictures/";
|
||||||
@@ -16,17 +19,17 @@ function updateAvatar(bool $group = false) {
|
|||||||
if ($_FILES["pp"]["size"] > 4000000) {
|
if ($_FILES["pp"]["size"] > 4000000) {
|
||||||
throw new AngryAlert("Bestand is te groot, maximaal 4MB toegestaan.");
|
throw new AngryAlert("Bestand is te groot, maximaal 4MB toegestaan.");
|
||||||
}
|
}
|
||||||
$relativePath = $avatarDir . $_SESSION["userID"] . "_avatar.gif";
|
$relativePath = $group ? $avatarDir . $group . "_avatar.gif" : $avatarDir . $_SESSION["userID"] . "_avatar.gif";
|
||||||
$group ? removeOldGroupAvatar($_POST["groupID"]) : removeOldUserAvatar();
|
$group ? removeOldGroupAvatar($group) : removeOldUserAvatar();
|
||||||
move_uploaded_file($tmpImg, $publicDir . $relativePath);
|
move_uploaded_file($tmpImg, $publicDir . $relativePath);
|
||||||
} else {
|
} else {
|
||||||
$relativePath = $avatarDir . $_SESSION["userID"] . "_avatar.png";
|
$relativePath = $group ? $avatarDir . $group . "_avatar.png": $avatarDir . $_SESSION["userID"] . "_avatar.png";
|
||||||
$scaledImg = scaleAvatar($tmpImg);
|
$scaledImg = scaleAvatar($tmpImg);
|
||||||
$group ? removeOldGroupAvatar($_POST["groupID"]) : removeOldUserAvatar();
|
$group ? removeOldGroupAvatar($group) : removeOldUserAvatar();
|
||||||
imagepng($scaledImg, $publicDir . $relativePath);
|
imagepng($scaledImg, $publicDir . $relativePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
$group ? setGroupAvatarToDatabase("../" . $relativePath, $_POST["groupID"]) : setUserAvatarToDatabase("../" . $relativePath);
|
$group ? setGroupAvatarToDatabase("../" . $relativePath, $group) : setUserAvatarToDatabase("../" . $relativePath);
|
||||||
throw new HappyAlert("Profielfoto veranderd.");
|
throw new HappyAlert("Profielfoto veranderd.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ function getOldChatMessages($user2ID) {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
*
|
*
|
||||||
|
FROM
|
||||||
|
(SELECT
|
||||||
|
*
|
||||||
FROM
|
FROM
|
||||||
`private_message`
|
`private_message`
|
||||||
WHERE
|
WHERE
|
||||||
@@ -15,9 +18,11 @@ function getOldChatMessages($user2ID) {
|
|||||||
`origin` = :user2 AND
|
`origin` = :user2 AND
|
||||||
`destination` = :user1
|
`destination` = :user1
|
||||||
ORDER BY
|
ORDER BY
|
||||||
`creationdate` ASC
|
`messageID` DESC
|
||||||
LIMIT
|
LIMIT
|
||||||
100
|
100) sub
|
||||||
|
ORDER BY
|
||||||
|
`messageID` ASC
|
||||||
");
|
");
|
||||||
|
|
||||||
$stmt->bindParam(":user1", $user1ID);
|
$stmt->bindParam(":user1", $user1ID);
|
||||||
@@ -76,7 +81,7 @@ function getNewChatMessages($lastID, $destination) {
|
|||||||
`destination` = :user1) AND
|
`destination` = :user1) AND
|
||||||
`messageID` > :lastID
|
`messageID` > :lastID
|
||||||
ORDER BY
|
ORDER BY
|
||||||
`creationdate` ASC
|
`messageID` ASC
|
||||||
");
|
");
|
||||||
|
|
||||||
$stmt->bindParam(':user1', $_SESSION["userID"]);
|
$stmt->bindParam(':user1', $_SESSION["userID"]);
|
||||||
@@ -95,7 +100,7 @@ function getNewChatMessages($lastID, $destination) {
|
|||||||
function selectAllUnreadChat() {
|
function selectAllUnreadChat() {
|
||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) AS `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
`user`.`userID`,
|
`user`.`userID`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
|
|||||||
@@ -16,7 +16,10 @@ function getSettings() {
|
|||||||
`location`,
|
`location`,
|
||||||
`birthdate`,
|
`birthdate`,
|
||||||
`bio`,
|
`bio`,
|
||||||
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
|
'../img/avatar-standard.png'
|
||||||
|
) AS profilepicture,
|
||||||
`showBday`,
|
`showBday`,
|
||||||
`showEmail`,
|
`showEmail`,
|
||||||
`showProfile`
|
`showProfile`
|
||||||
@@ -50,6 +53,15 @@ function getPasswordHash() {
|
|||||||
return $stmt->fetch();
|
return $stmt->fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function checkUpdateSettings() {
|
||||||
|
if (empty(test_input($_POST['fname'])) || empty(test_input($_POST['lname']))) {
|
||||||
|
throw new AngryAlert("Geen voornaam of achternaam.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
updateSettings();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Changes the setting from post.
|
* Changes the setting from post.
|
||||||
* @throws HappyAlert
|
* @throws HappyAlert
|
||||||
@@ -139,6 +151,10 @@ function doChangePassword() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Changes the users email if it is valid.
|
||||||
|
* @throws AngryAlert
|
||||||
|
*/
|
||||||
function changeEmail() {
|
function changeEmail() {
|
||||||
|
|
||||||
if (test_input($_POST["email"]) == test_input($_POST["email-confirm"])) {
|
if (test_input($_POST["email"]) == test_input($_POST["email-confirm"])) {
|
||||||
@@ -155,6 +171,11 @@ function changeEmail() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if an emailadres is available in the database.
|
||||||
|
* @param $email
|
||||||
|
* @throws AngryAlert
|
||||||
|
*/
|
||||||
function emailIsAvailableInDatabase($email) {
|
function emailIsAvailableInDatabase($email) {
|
||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
@@ -172,6 +193,12 @@ function emailIsAvailableInDatabase($email) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Does the actual changing of an email-adress.
|
||||||
|
* @param $email
|
||||||
|
* @throws AngryAlert
|
||||||
|
* @throws HappyAlert
|
||||||
|
*/
|
||||||
function doChangeEmail($email) {
|
function doChangeEmail($email) {
|
||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
UPDATE
|
UPDATE
|
||||||
|
|||||||
@@ -52,19 +52,27 @@ function selectUser($me, $other) {
|
|||||||
`username`,
|
`username`,
|
||||||
`birthdate`,
|
`birthdate`,
|
||||||
`location`,
|
`location`,
|
||||||
|
`showBday`,
|
||||||
|
`showEmail`,
|
||||||
|
`showProfile`,
|
||||||
|
`email`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
`bio`,
|
`bio`,
|
||||||
`user`.`creationdate`,
|
`user`.`creationdate`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`,
|
END AS `onlinestatus`,
|
||||||
`role`,
|
`role`,
|
||||||
`fname`,
|
`fname`,
|
||||||
`lname`,
|
`lname`,
|
||||||
|
`showBday`,
|
||||||
|
`showEmail`,
|
||||||
|
`showProfile`,
|
||||||
|
`status`,
|
||||||
CASE `status` IS NULL
|
CASE `status` IS NULL
|
||||||
WHEN TRUE THEN 0
|
WHEN TRUE THEN 0
|
||||||
WHEN FALSE THEN
|
WHEN FALSE THEN
|
||||||
@@ -93,7 +101,9 @@ function selectUser($me, $other) {
|
|||||||
|
|
||||||
$stmt->bindParam(':me', $me, PDO::PARAM_INT);
|
$stmt->bindParam(':me', $me, PDO::PARAM_INT);
|
||||||
$stmt->bindParam(':other', $other, PDO::PARAM_INT);
|
$stmt->bindParam(':other', $other, PDO::PARAM_INT);
|
||||||
$stmt->execute();
|
if(!$stmt->execute() || $stmt->rowCount() == 0) {
|
||||||
|
return False;
|
||||||
|
}
|
||||||
return $stmt->fetch();
|
return $stmt->fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,7 +122,7 @@ function selectAllUserGroups($userID) {
|
|||||||
`group_page`.`groupID` = `group_member`.`groupID`
|
`group_page`.`groupID` = `group_member`.`groupID`
|
||||||
WHERE
|
WHERE
|
||||||
`userID` = :userID AND
|
`userID` = :userID AND
|
||||||
`role` = 'member'
|
`role` IN ('member', 'mod', 'admin')
|
||||||
");
|
");
|
||||||
|
|
||||||
$stmt->bindParam(':userID', $userID, PDO::PARAM_INT);
|
$stmt->bindParam(':userID', $userID, PDO::PARAM_INT);
|
||||||
@@ -127,7 +137,7 @@ function select20UsersFromN($n) {
|
|||||||
`username`,
|
`username`,
|
||||||
`role`,
|
`role`,
|
||||||
`bancomment`,
|
`bancomment`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`
|
END AS `onlinestatus`
|
||||||
@@ -152,7 +162,7 @@ function search20UsersFromN($n, $keyword) {
|
|||||||
`username`,
|
`username`,
|
||||||
`role`,
|
`role`,
|
||||||
`bancomment`,
|
`bancomment`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`
|
END AS `onlinestatus`
|
||||||
@@ -180,7 +190,7 @@ function search20UsersFromNByStatus($n, $keyword, $status) {
|
|||||||
`username`,
|
`username`,
|
||||||
`role`,
|
`role`,
|
||||||
`bancomment`,
|
`bancomment`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`
|
END AS `onlinestatus`
|
||||||
@@ -214,7 +224,7 @@ function searchSomeUsersByStatus($n, $m, $search, $status) {
|
|||||||
`username`,
|
`username`,
|
||||||
`role`,
|
`role`,
|
||||||
`bancomment`,
|
`bancomment`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`
|
END AS `onlinestatus`
|
||||||
@@ -351,13 +361,14 @@ function searchSomeUsers($n, $m, $search) {
|
|||||||
$stmt = prepareQuery("
|
$stmt = prepareQuery("
|
||||||
SELECT
|
SELECT
|
||||||
`userID`,
|
`userID`,
|
||||||
|
LEFT(`username`, 12) as `usernameshort`,
|
||||||
`username`,
|
`username`,
|
||||||
IFNULL(
|
IFNULL(
|
||||||
`profilepicture`,
|
`profilepicture`,
|
||||||
'../img/avatar-standard.png'
|
'../img/avatar-standard.png'
|
||||||
) AS profilepicture,
|
) AS profilepicture,
|
||||||
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 15) as `fullname`,
|
LEFT(CONCAT(`user`.`fname`, ' ', `user`.`lname`), 12) as `fullname`,
|
||||||
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 15 MINUTE)
|
CASE `lastactivity` >= DATE_SUB(NOW(),INTERVAL 5 MINUTE)
|
||||||
WHEN TRUE THEN 'online'
|
WHEN TRUE THEN 'online'
|
||||||
WHEN FALSE THEN 'offline'
|
WHEN FALSE THEN 'offline'
|
||||||
END AS `onlinestatus`
|
END AS `onlinestatus`
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th><input class="table-checkbox" type="checkbox" id="checkall" name="checkall" onchange="checkAll(this)"></th>
|
<th><input class="table-checkbox" type="checkbox" id="checkall" name="checkall" onchange="checkAll(this)"></th>
|
||||||
<th class="table-username">Gebruikersnaam</th>
|
<th class="table-username">Groepsnaam</th>
|
||||||
<th class="table-status">Status</th>
|
<th class="table-status">Status</th>
|
||||||
<th class="table-comment">Aantekening</th>
|
<th class="table-comment">Beschrijving</th>
|
||||||
<th class="table-action">Actie</th>
|
<th class="table-action">Zichtbaarheid</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
@@ -33,9 +33,9 @@ while ($group = $q->fetch(PDO::FETCH_ASSOC)) {
|
|||||||
<form class='admin-groupaction'
|
<form class='admin-groupaction'
|
||||||
onsubmit=\"adminUpdate(this); return false;\">
|
onsubmit=\"adminUpdate(this); return false;\">
|
||||||
<select class='action' name='actions'>
|
<select class='action' name='actions'>
|
||||||
<option value='hidden'>Hidden</option>
|
<option value='hidden'>Verborgen</option>
|
||||||
<option value='public'>Public</option>
|
<option value='public'>Publiek</option>
|
||||||
<option value='membersonly'>Members</option>
|
<option value='membersonly'>Alleen Leden</option>
|
||||||
</select>
|
</select>
|
||||||
<input type='hidden' name='groupID' value='$groupID'>
|
<input type='hidden' name='groupID' value='$groupID'>
|
||||||
<input type='submit' value='Confirm'>
|
<input type='submit' value='Confirm'>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th><input class="table-checkbox" type="checkbox" id="checkall" name="checkall" onchange="checkAll()"></th>
|
<th class="table-checkbox"><input class="table-checkbox" type="checkbox" id="checkall" name="checkall" onchange="checkAll()"></th>
|
||||||
<th class="table-username">Gebruikersnaam</th>
|
<th class="table-username">Gebruikersnaam</th>
|
||||||
<th class="table-status">Status</th>
|
<th class="table-status">Status</th>
|
||||||
<th class="table-comment">Aantekening</th>
|
<th class="table-comment">Aantekening</th>
|
||||||
@@ -55,7 +55,8 @@ while($user = $q->fetch(PDO::FETCH_ASSOC)) {
|
|||||||
OR $user['role'] == 'owner'))) {
|
OR $user['role'] == 'owner'))) {
|
||||||
echo "<option value='frozen'>Bevries</option>
|
echo "<option value='frozen'>Bevries</option>
|
||||||
<option value='banned'>Ban</option>
|
<option value='banned'>Ban</option>
|
||||||
<option value='user'>Activeer</option>";
|
<option value='user'>Activeer</option>
|
||||||
|
<option value='unconfirmed'>Ongevalideerd</option>";
|
||||||
|
|
||||||
if ($userinfo == 'owner') {
|
if ($userinfo == 'owner') {
|
||||||
echo "<option value='admin'>Admin</option>
|
echo "<option value='admin'>Admin</option>
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
|
<!-- Form value holding. -->
|
||||||
<!-- function test_input taken from http://www.w3schools.com/php/php_form_validation.asp -->
|
|
||||||
<?php
|
<?php
|
||||||
$search = "";
|
$search = "";
|
||||||
$status = array("user", "frozen", "banned", "unconfirmed", "admin", "owner");
|
$status = array("user", "frozen", "banned", "unconfirmed", "admin", "owner");
|
||||||
@@ -67,13 +66,13 @@ if (isset($_GET["groupstatus"])) {
|
|||||||
id="frozen"
|
id="frozen"
|
||||||
value="frozen"
|
value="frozen"
|
||||||
<?php if (in_array("frozen", $status)) echo "checked";?>>
|
<?php if (in_array("frozen", $status)) echo "checked";?>>
|
||||||
<label for="frozen">Gefrozen</label><br>
|
<label for="frozen">Bevroren</label><br>
|
||||||
<input type="checkbox"
|
<input type="checkbox"
|
||||||
name="status[]"
|
name="status[]"
|
||||||
id="banned"
|
id="banned"
|
||||||
value="banned"
|
value="banned"
|
||||||
<?php if (in_array("banned", $status)) echo "checked";?>>
|
<?php if (in_array("banned", $status)) echo "checked";?>>
|
||||||
<label for="banned">Gebant</label><br>
|
<label for="banned">Verbannen</label><br>
|
||||||
<input type="checkbox"
|
<input type="checkbox"
|
||||||
name="status[]"
|
name="status[]"
|
||||||
id="admin"
|
id="admin"
|
||||||
@@ -91,7 +90,7 @@ if (isset($_GET["groupstatus"])) {
|
|||||||
id="owner"
|
id="owner"
|
||||||
value="owner"
|
value="owner"
|
||||||
<?php if (in_array("owner", $status)) echo "checked";?>>
|
<?php if (in_array("owner", $status)) echo "checked";?>>
|
||||||
<label for="owner">Owner</label>
|
<label for="owner">Eigenaar</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="admin-groupfilter">
|
<div id="admin-groupfilter">
|
||||||
@@ -122,16 +121,17 @@ if (isset($_GET["groupstatus"])) {
|
|||||||
<button type="submit" name="batchactions" id="freeze" value="frozen">Bevries</button>
|
<button type="submit" name="batchactions" id="freeze" value="frozen">Bevries</button>
|
||||||
<button type="submit" name="batchactions" id="ban" value="banned">Ban</button>
|
<button type="submit" name="batchactions" id="ban" value="banned">Ban</button>
|
||||||
<button type="submit" name="batchactions" id="restore" value="user">Activeer</button>
|
<button type="submit" name="batchactions" id="restore" value="user">Activeer</button>
|
||||||
|
<button type="submit" name="batchactions" id="unconfirm" value="unconfirmed">Maak Ongevalideerd</button>
|
||||||
<?php
|
<?php
|
||||||
if ($userinfo == 'owner') {
|
if ($userinfo == 'owner') {
|
||||||
echo "<button type=\"submit\"
|
echo "<button type=\"submit\"
|
||||||
name=\"batchactions\"
|
name=\"batchactions\"
|
||||||
id=\"admin\"
|
id=\"batch-admin\"
|
||||||
value=\"admin\">Maak Admin</button>
|
value=\"admin\">Maak Admin</button>
|
||||||
<button type=\"submit\"
|
<button type=\"submit\"
|
||||||
name=\"batchactions\"
|
name=\"batchactions\"
|
||||||
id=\"owner\"
|
id=\"batch-owner\"
|
||||||
value=\"owner\">Maak Owner</button>";
|
value=\"owner\">Maak Eigenaar</button>";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
</form>
|
</form>
|
||||||
@@ -139,9 +139,9 @@ if (isset($_GET["groupstatus"])) {
|
|||||||
onsubmit="adminUpdate(this); return false;">
|
onsubmit="adminUpdate(this); return false;">
|
||||||
|
|
||||||
<input type="hidden" name="groupbatchactions" id="groupbatchinput">
|
<input type="hidden" name="groupbatchactions" id="groupbatchinput">
|
||||||
<button type="submit" name="batchactions" id="hide" value="hidden">Hide</button>
|
<button type="submit" name="batchactions" id="batch-hide" value="hidden">Verborgen</button>
|
||||||
<button type="submit" name="batchactions" id="ban" value="public">Public</button>
|
<button type="submit" name="batchactions" id="batch-public" value="public">Publiek</button>
|
||||||
<button type="submit" name="batchactions" id="members" value="membersonly">Members</button>
|
<button type="submit" name="batchactions" id="batch-members" value="membersonly">Alleen Leden</button>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -151,5 +151,3 @@ if (isset($_GET["groupstatus"])) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
42
website/views/createGroup.php
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
<?php
|
||||||
|
?>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<div class="createGroup">
|
||||||
|
<form class="platform settings" method="post" action="createGroup.php" enctype="multipart/form-data">
|
||||||
|
<h5>Maak een groep!</h5>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label for="groupName">Groepsnaam</label>
|
||||||
|
<input type="text"
|
||||||
|
name="groupName"
|
||||||
|
id="groupName"
|
||||||
|
maxlength="63"
|
||||||
|
placeholder="Groepsnaam"
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="bio">Bio</label>
|
||||||
|
<textarea name="bio"
|
||||||
|
rows="5"
|
||||||
|
title="bio"
|
||||||
|
id="bio"
|
||||||
|
maxlength="1000"
|
||||||
|
></textarea>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>Selecteer foto</label>
|
||||||
|
<input type="file"
|
||||||
|
name="pp"
|
||||||
|
accept="image/*"
|
||||||
|
size="4000000"
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<button type="submit">Maak Groep</button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
<!-- The Modal -->
|
<!-- The Modal -->
|
||||||
<div id="fbModal" class="modal">
|
<div id="fbModal" class="modal">
|
||||||
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
||||||
return= $correct
|
|
||||||
method="post"
|
method="post"
|
||||||
name="fbModal">
|
name="fbModal">
|
||||||
|
|
||||||
@@ -55,7 +54,6 @@
|
|||||||
*<span class="error"> <?php echo $fbConfirmpasswordErr;?></span>
|
*<span class="error"> <?php echo $fbConfirmpasswordErr;?></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<?php if(empty($userBday)) { ?>
|
<?php if(empty($userBday)) { ?>
|
||||||
<!-- Register birthday -->
|
<!-- Register birthday -->
|
||||||
<div class="login_containerregister">
|
<div class="login_containerregister">
|
||||||
@@ -67,17 +65,16 @@
|
|||||||
</div>
|
</div>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
</div>
|
</div>
|
||||||
|
<span class="error"> <?php echo $fbEmailErr;?></span>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="submit"
|
<button type="submit"
|
||||||
value="fbRegister"
|
value="fbRegister"
|
||||||
name="submit"
|
name="submit">
|
||||||
id="frm1_submit">
|
|
||||||
Registreer account
|
Registreer account
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- Facebook information-->
|
||||||
|
|
||||||
<input type="hidden"
|
<input type="hidden"
|
||||||
name="fbName"
|
name="fbName"
|
||||||
value="<?php echo $fbName ?>">
|
value="<?php echo $fbName ?>">
|
||||||
|
|||||||
@@ -4,7 +4,6 @@
|
|||||||
<!-- The Modal -->
|
<!-- The Modal -->
|
||||||
<div id="myModal" class="modal">
|
<div id="myModal" class="modal">
|
||||||
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
||||||
return= $correct
|
|
||||||
method="post"
|
method="post"
|
||||||
name="forgotPassword">
|
name="forgotPassword">
|
||||||
|
|
||||||
@@ -26,8 +25,7 @@
|
|||||||
<div class="login_containerfault"><span><?php echo $resetErr; ?></span></div>
|
<div class="login_containerfault"><span><?php echo $resetErr; ?></span></div>
|
||||||
<button type="submit"
|
<button type="submit"
|
||||||
value="reset"
|
value="reset"
|
||||||
name="submit"
|
name="submit">
|
||||||
id="frm1_submit">
|
|
||||||
Reset password
|
Reset password
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,12 +1,17 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
<div class="profile-box platform">
|
<div class="user-box">
|
||||||
<img class="left main-picture group-picture" src="<?= $group['picture'] ?>">
|
<img alt="<?= $group["name"] ?>" class="group-picture main-picture" src="<?= $group["picture"] ?>"><br />
|
||||||
<div class="group-button-container"></div>
|
<div class="platform">
|
||||||
<h1 class="profile-username"><?= $group['name'] ?></h1>
|
<div class="status-buttons-container">
|
||||||
<p><?= $group['description'] ?></p>
|
<button disabled class="gray"><?= $group["status"] ?></button>
|
||||||
|
</div>
|
||||||
|
<div class="group-button-container"></div>
|
||||||
|
<div class="profile-info">
|
||||||
|
<h2><?= $group["name"]?></h2>
|
||||||
|
<?= $group["description"] ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="item-box-full-width platform">
|
<div class="item-box-full-width platform">
|
||||||
<h2>Leden (<?= $group['members'] ?>)</h2>
|
<h2>Leden (<?= $group['members'] ?>)</h2>
|
||||||
<p>
|
<p>
|
||||||
@@ -22,6 +27,10 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="noposts platform">
|
||||||
|
<p>Geen posts meer!</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="modal">
|
<div class="modal">
|
||||||
<div class="modal-content platform">
|
<div class="modal-content platform">
|
||||||
<div class="modal-close">
|
<div class="modal-close">
|
||||||
|
|||||||
168
website/views/groupAdmin.php
Normal file
@@ -0,0 +1,168 @@
|
|||||||
|
<?php
|
||||||
|
require_once "../queries/connect.php";
|
||||||
|
require_once "../queries/groupAdmin.php";
|
||||||
|
require_once "../queries/checkInput.php";
|
||||||
|
$groupinfo = getGroupSettings($_GET["groupID"]);
|
||||||
|
?>
|
||||||
|
<div class="content">
|
||||||
|
<div class="settings">
|
||||||
|
<?php if ($_SERVER["REQUEST_METHOD"] == "POST"): ?>
|
||||||
|
<div class='platform settings-message <?=$alertClass?>'>
|
||||||
|
<?=$alertMessage?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="platform">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<a href="group.php?groupname=<?=$groupinfo["name"]?>">
|
||||||
|
<button><i class="fa fa-chevron-left"></i> Terug naar de groep</button>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<form class="platform" method="post">
|
||||||
|
<h5>Groep Instellingen</h5>
|
||||||
|
<input type="hidden" name="groupID" value="<?=$_GET["groupID"]?>">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label for="name">Groepsnaam</label>
|
||||||
|
<input type="text"
|
||||||
|
name="name"
|
||||||
|
id="name"
|
||||||
|
maxlength="63"
|
||||||
|
placeholder="Groepsnaam"
|
||||||
|
title="Groepsnaam"
|
||||||
|
value="<?=$groupinfo["name"]?>"
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="bio">Bio</label>
|
||||||
|
<textarea name="bio"
|
||||||
|
rows="5"
|
||||||
|
title="bio"
|
||||||
|
id="bio"
|
||||||
|
maxlength="1000"
|
||||||
|
><?=$groupinfo["description"]?></textarea>
|
||||||
|
<label></label>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<button type="submit"
|
||||||
|
name="form"
|
||||||
|
value="group"
|
||||||
|
><i class="fa fa-save"></i> Opslaan</button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
<form class="platform" method="post" enctype="multipart/form-data">
|
||||||
|
<h5>Verander groepsafbeelding.</h5>
|
||||||
|
<input type="hidden" name="groupID" value="<?=$_GET["groupID"]?>">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label>Huidige profielfoto</label>
|
||||||
|
<img src="<?=$groupinfo["picture"]?>"
|
||||||
|
class="group-picture"
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label>Selecteer foto</label>
|
||||||
|
<input type="file"
|
||||||
|
name="pp"
|
||||||
|
accept="image/*"
|
||||||
|
size="4000000"
|
||||||
|
required
|
||||||
|
>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<button type="submit"
|
||||||
|
name="form"
|
||||||
|
value="picture"
|
||||||
|
><i class="fa fa-picture-o"></i> Verander profielfoto</button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
<form class="platform" method="post">
|
||||||
|
<h5>Voeg een admin/mod toe</h5>
|
||||||
|
<ul>
|
||||||
|
<il>
|
||||||
|
<input name="groupID" value="<?=$_GET["groupID"]?>" type="hidden">
|
||||||
|
<label>Selecteer gebruiker</label>
|
||||||
|
<select name="userID">
|
||||||
|
<option disabled selected>Geen gebruiker geselecteerd:</option>
|
||||||
|
<?php
|
||||||
|
$groupMembers = getAllGroupUsers($_GET["groupID"]);
|
||||||
|
foreach ($groupMembers as $groupMember) {?>
|
||||||
|
<option value="<?=$groupMember["userID"]?>">
|
||||||
|
<?=$groupMember["fullname"]?> (<?=$groupMember["username"]?>)
|
||||||
|
</option>
|
||||||
|
<?php } ?>
|
||||||
|
</select>
|
||||||
|
<button name="form"
|
||||||
|
value="admin"
|
||||||
|
>
|
||||||
|
Maak Admin
|
||||||
|
</button>
|
||||||
|
<button name="form"
|
||||||
|
value="mod"
|
||||||
|
>
|
||||||
|
Maak Moderator
|
||||||
|
</button>
|
||||||
|
</il>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
<form class="platform" method="post">
|
||||||
|
<h5>Verwijder een admin/mod</h5>
|
||||||
|
<ul>
|
||||||
|
<il>
|
||||||
|
<input name="groupID" value="<?=$_GET["groupID"]?>" type="hidden">
|
||||||
|
<label>Selecteer gebruiker</label>
|
||||||
|
<select name="userID">
|
||||||
|
<option disabled selected>Geen gebruiker geselecteerd:</option>
|
||||||
|
<?php
|
||||||
|
$groupAdmins = getAllGroupAdmins($_GET["groupID"]);
|
||||||
|
foreach ($groupAdmins as $groupAdmin) {?>
|
||||||
|
<option value="<?=$groupAdmin["userID"]?>">
|
||||||
|
<?=$groupAdmin["fullname"]?> (<?=$groupAdmin["username"]?>) (<?=$groupAdmin["role"]?>)
|
||||||
|
</option>
|
||||||
|
<?php } ?>
|
||||||
|
<?php
|
||||||
|
$groupMods = getAllGroupMods($_GET["groupID"]);
|
||||||
|
foreach ($groupMods as $groupMod) {?>
|
||||||
|
<option value="<?=$groupMod["userID"]?>">
|
||||||
|
<?=$groupMod["fullname"]?> (<?=$groupMod["username"]?>) (<?=$groupMod["role"]?>)
|
||||||
|
</option>
|
||||||
|
<?php } ?>
|
||||||
|
</select>
|
||||||
|
<button name="form"
|
||||||
|
value="deadmin"
|
||||||
|
>
|
||||||
|
Verwijder
|
||||||
|
</button>
|
||||||
|
</il>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
<form class="platform" method="post">
|
||||||
|
<ul>
|
||||||
|
<h5>Verwijder groep</h5>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<input name="groupID" value="<?=$_GET["groupID"]?>" type="hidden">
|
||||||
|
<button class="red"
|
||||||
|
name="form"
|
||||||
|
value="delete"
|
||||||
|
><i class="fa fa-trash"></i> Verwijder groep</button>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</form>
|
||||||
|
<div class="platform">
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<label></label>
|
||||||
|
<a href="group.php?groupname=<?=$groupinfo["name"]?>"><button><i class="fa fa-chevron-left"></i> Terug naar de groep</button></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -1,4 +1,41 @@
|
|||||||
<meta charset="utf-8">
|
<meta charset="UTF-8">
|
||||||
|
<meta name="description" content="MyHyvesbook+ is het sociaal medium voor alle coole mensen. Stap nu over van facebook op het gloednieuwe en betere sociaal medium.">
|
||||||
|
<meta name="keywords" content="MyHyvesbookPlus,Myhyvesbook+,sociaal,media">
|
||||||
|
<meta name="author" content="MyHyvesbookplus corporation">
|
||||||
|
<!--Favicon-->
|
||||||
|
<!-- Desktop Browsers -->
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
|
||||||
|
|
||||||
|
<!-- Android: Chrome M39 and up-->
|
||||||
|
<link rel="manifest" href="manifest.json">
|
||||||
|
<!-- Android: Chrome M31 and up, ignored if manifest is present-->
|
||||||
|
<meta name="mobile-web-app-capable" content="yes">
|
||||||
|
<link rel="icon" sizes="192x192" href="icon-192x192.png">
|
||||||
|
<!-- iOS -->
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
|
<meta name="apple-mobile-web-app-title" content="My Awesome Web App">
|
||||||
|
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon-180x180-precomposed.png">
|
||||||
|
<link href="apple-touch-icon-152x152-precomposed.png" sizes="152x152" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-144x144-precomposed.png" sizes="144x144" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-120x120-precomposed.png" sizes="120x120" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-114x114-precomposed.png" sizes="114x114" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-76x76-precomposed.png" sizes="76x76" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-72x72-precomposed.png" sizes="72x72" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-60x60-precomposed.png" sizes="60x60" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-57x57-precomposed.png" sizes="57x57" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-precomposed.png" rel="apple-touch-icon">
|
||||||
|
|
||||||
|
<!-- Windows 8 and IE 11 -->
|
||||||
|
<meta name="msapplication-config" content="browserconfig.xml" />
|
||||||
|
|
||||||
|
<!-- Windows -->
|
||||||
|
<meta name="application-name" content="My Awesome Web App" />
|
||||||
|
<meta name="msapplication-tooltip" content="Get the latest updates!" />
|
||||||
|
<meta name="msapplication-window" content="width=1024;height=768" />
|
||||||
|
<meta name="msapplication-navbutton-color" content="#FF3300" />
|
||||||
|
<meta name="msapplication-starturl" content="./" />
|
||||||
|
|
||||||
<title>MyHyvesbook+</title>
|
<title>MyHyvesbook+</title>
|
||||||
<!-- Add your javascript files here. -->
|
<!-- Add your javascript files here. -->
|
||||||
<script src="js/jquery.js"></script>
|
<script src="js/jquery.js"></script>
|
||||||
@@ -24,7 +61,7 @@ require_once ("../queries/user.php");
|
|||||||
session_start();
|
session_start();
|
||||||
|
|
||||||
if(!isset($_SESSION["userID"])) {
|
if(!isset($_SESSION["userID"])) {
|
||||||
header("location:login.php");
|
header("location:login.php?url=" . "$_SERVER[REQUEST_URI]");
|
||||||
} else {
|
} else {
|
||||||
updateLastActivity();
|
updateLastActivity();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ $userinfo = getHeaderInfo();
|
|||||||
</div>
|
</div>
|
||||||
<?= $userinfo["fname"] ?>
|
<?= $userinfo["fname"] ?>
|
||||||
</div>
|
</div>
|
||||||
<img id="own-profile-picture" class="profile-picture" src="<?=$userinfo["profilepicture"]?>"/><i id="open-notifications" class="fa fa-bars"></i>
|
<img alt="<?= $userinfo["lname"] ?>" id="own-profile-picture" class="profile-picture" src="<?=$userinfo["profilepicture"]?>"/><i id="open-notifications" class="fa fa-bars"></i>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<?php include("notification-center.php"); ?>
|
<?php include("notification-center.php"); ?>
|
||||||
|
|||||||
@@ -1,19 +1,26 @@
|
|||||||
<?php
|
<?php
|
||||||
|
session_start();
|
||||||
|
|
||||||
|
// Checks if there's an user already logged in
|
||||||
|
if(isset($_SESSION["userID"])){
|
||||||
|
echo "<script>
|
||||||
|
window.onload=checkLoggedIn();
|
||||||
|
</script>";
|
||||||
|
}
|
||||||
|
|
||||||
// Facebook variables
|
// Facebook variables
|
||||||
$appID = "353857824997532";
|
$appID = "353857824997532";
|
||||||
$appSecret = "db47e91ffbfd355fdd11b4b65eade851";
|
$appSecret = "db47e91ffbfd355fdd11b4b65eade851";
|
||||||
$fbUsername = $fbPassword = $fbConfirmpassword = "";
|
$fbUsername = $fbPassword = $fbConfirmpassword = $fbName = $fbSurname = $fbBday = $fbEmail = $fbUserID = "";
|
||||||
$fbUsernameErr = $fbPasswordErr = $fbConfirmpasswordErr = $fbEmailErr = $fbBdayErr = "";
|
$fbUsernameErr = $fbPasswordErr = $fbConfirmpasswordErr = $fbEmailErr = $fbBdayErr = "";
|
||||||
$fbCorrect = true;
|
$fbCorrect = true;
|
||||||
$fbName = $fbSurname = $fbBday = $fbEmail = $fbUserID = "";
|
|
||||||
$bdayExist = false;
|
|
||||||
|
|
||||||
// Register variables
|
// Register variables
|
||||||
$name = $surname = $bday = $username = $password = $confirmpassword = $location = $housenumber = $email = $confirmEmail = $captcha = $ip = "";
|
$name = $surname = $bday = $username = $password = $confirmpassword = $location = $housenumber = $email = $confirmEmail = $captcha = $ip = "";
|
||||||
$genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $locationErr = $housenumberErr = $emailErr = $confirmEmailErr = $captchaErr = "";
|
$genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $locationErr = $housenumberErr = $emailErr = $confirmEmailErr = $captchaErr = "";
|
||||||
$correct = true;
|
$correct = true;
|
||||||
|
|
||||||
|
// Bday dates
|
||||||
$day_date = $month_date = $year_date = "";
|
$day_date = $month_date = $year_date = "";
|
||||||
$fbDay_date = $fbMonth_date = $fbYear_date = "";
|
$fbDay_date = $fbMonth_date = $fbYear_date = "";
|
||||||
|
|
||||||
@@ -27,7 +34,7 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|||||||
case "login":
|
case "login":
|
||||||
try {
|
try {
|
||||||
$user = ($_POST["user"]);
|
$user = ($_POST["user"]);
|
||||||
validateLogin($_POST["user"], $_POST["psw"]);
|
validateLogin($_POST["user"], $_POST["psw"], $_POST["url"]);
|
||||||
} catch(loginException $e) {
|
} catch(loginException $e) {
|
||||||
$loginErr = $e->getMessage();
|
$loginErr = $e->getMessage();
|
||||||
}
|
}
|
||||||
@@ -46,18 +53,22 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "register":
|
case "register":
|
||||||
include("register.php");
|
include("../views/register.php");
|
||||||
break;
|
break;
|
||||||
case "fbRegister":
|
case "fbRegister":
|
||||||
include("fbRegister.php");
|
include("../views/fbRegister.php");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get facebook information with facebook PHP SDK.
|
||||||
$fb = new Facebook\Facebook([
|
$fb = new Facebook\Facebook([
|
||||||
'app_id' => $appID,
|
'app_id' => $appID,
|
||||||
'app_secret' => $appSecret,
|
'app_secret' => $appSecret,
|
||||||
'default_graph_version' => 'v2.2',
|
'default_graph_version' => 'v2.2',
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
// Redirect back to login.php after logging/canceling with facebook.
|
||||||
$redirect = "https://myhyvesbookplus.nl/login.php";
|
$redirect = "https://myhyvesbookplus.nl/login.php";
|
||||||
$helper = $fb->getRedirectLoginHelper();
|
$helper = $fb->getRedirectLoginHelper();
|
||||||
|
|
||||||
@@ -72,6 +83,7 @@ try {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If theres no facebook account logged in, ask for permission.
|
||||||
if(!isset($acces_token)){
|
if(!isset($acces_token)){
|
||||||
$permission=["email", "user_birthday"];
|
$permission=["email", "user_birthday"];
|
||||||
$loginurl=$helper->getLoginUrl($redirect,$permission);
|
$loginurl=$helper->getLoginUrl($redirect,$permission);
|
||||||
@@ -80,13 +92,14 @@ if(!isset($acces_token)){
|
|||||||
$response = $fb->get('/me?fields=email,name,birthday');
|
$response = $fb->get('/me?fields=email,name,birthday');
|
||||||
$usernode = $response->getGraphUser();
|
$usernode = $response->getGraphUser();
|
||||||
|
|
||||||
|
// Get facebook information
|
||||||
$nameSplit = explode(" ", $usernode->getName());
|
$nameSplit = explode(" ", $usernode->getName());
|
||||||
$fbName = $nameSplit[0];
|
$fbName = $nameSplit[0];
|
||||||
$fbSurname = $nameSplit[1];
|
$fbSurname = $nameSplit[1];
|
||||||
$fbUserID = $usernode->getID();
|
$fbUserID = $usernode->getID();
|
||||||
$fbEmail = $usernode->getProperty("email");
|
$fbEmail = $usernode->getProperty("email");
|
||||||
// $image = 'https://graph.facebook.com/' . $usernode->getId() . '/picture?width=200';
|
|
||||||
|
|
||||||
|
// If there is an account, check if the account is banned or frozen.
|
||||||
if (fbLogin($fbUserID) == 1) {
|
if (fbLogin($fbUserID) == 1) {
|
||||||
$fbID = getfbUserID($fbUserID)["userID"];
|
$fbID = getfbUserID($fbUserID)["userID"];
|
||||||
$fbRole = getfbUserID($fbUserID)["role"];
|
$fbRole = getfbUserID($fbUserID)["role"];
|
||||||
@@ -94,16 +107,20 @@ if(!isset($acces_token)){
|
|||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload=bannedAlert();
|
window.onload=bannedAlert();
|
||||||
</script>";
|
</script>";
|
||||||
|
|
||||||
} else if($fbRole == "frozen"){
|
} else if($fbRole == "frozen"){
|
||||||
$_SESSION["userID"] = $fbID;
|
$_SESSION["userID"] = $fbID;
|
||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload=frozenAlert();
|
window.onload=frozenAlert();
|
||||||
window.location.href= 'profile.php';
|
window.location.href= 'profile.php';
|
||||||
</script>";
|
</script>";
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$_SESSION["userID"] = $fbID;
|
$_SESSION["userID"] = $fbID;
|
||||||
header("location: profile.php");
|
header("location: profile.php");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// Registration with faceobook if theres no account.
|
||||||
} else {
|
} else {
|
||||||
echo "<script>
|
echo "<script>
|
||||||
window.onload = function() {
|
window.onload = function() {
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
<div class="login_containerNoscript">
|
||||||
|
<noscript>
|
||||||
|
<a href="http://www.enable-javascript.com/nl/" target="_blank">Om deze site te gebruiken is het noodzakelijk om Javascript aan te zetten.
|
||||||
|
Klikt hier voor de instructies om je Javascript te activeren</a>.
|
||||||
|
</noscript>
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<img style="width:50%;margin-left:25%"
|
<img style="width:50%;margin-left:25%"
|
||||||
src="/img/top-logo.png"
|
src="/img/top-logo.png"
|
||||||
@@ -7,10 +13,17 @@
|
|||||||
<h1>Welkom bij MyHyvesbook+</h1>
|
<h1>Welkom bij MyHyvesbook+</h1>
|
||||||
<!-- Login content -->
|
<!-- Login content -->
|
||||||
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
||||||
return=$correct
|
|
||||||
method="post"
|
method="post"
|
||||||
name="login">
|
name="login">
|
||||||
|
|
||||||
|
<!-- Url parameter -->
|
||||||
|
<input type="hidden"
|
||||||
|
name="url"
|
||||||
|
value="<?php
|
||||||
|
if(isset($_GET["url"])) {
|
||||||
|
echo $_GET["url"];
|
||||||
|
} ?>"/>
|
||||||
|
|
||||||
<!-- Login name -->
|
<!-- Login name -->
|
||||||
<div class="login_containerlogin">
|
<div class="login_containerlogin">
|
||||||
<label><b>Gebruikersnaam/Email</b></label>
|
<label><b>Gebruikersnaam/Email</b></label>
|
||||||
@@ -41,8 +54,7 @@
|
|||||||
<div class="login_containerlogin">
|
<div class="login_containerlogin">
|
||||||
<button type="submit"
|
<button type="submit"
|
||||||
value="login"
|
value="login"
|
||||||
name="submit"
|
name="submit">
|
||||||
id="frm1_submit">
|
|
||||||
Inloggen
|
Inloggen
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@@ -62,74 +74,8 @@
|
|||||||
<!--Login with facebook button-->
|
<!--Login with facebook button-->
|
||||||
<?php
|
<?php
|
||||||
if(!isset($acces_token)) {
|
if(!isset($acces_token)) {
|
||||||
echo '<div class="login_containerlogin"><a class="fbButton" href="' . $loginurl . '">login with Facebook!</a></div>';
|
echo '<div class="login_containerlogin"><a class="fbButton" href="' . $loginurl . '"><i class="fa fa-facebook-square"></i> login met Facebook!</a></div>';
|
||||||
|
} else {
|
||||||
|
echo '<div class="login_containerlogin"><a class="fbButton" href="' . "https://myhyvesbookplus.nl/login.php" . '"><i class="fa fa-facebook-square"></i> loguit Facebook sessie</a></div>';
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<script>
|
|
||||||
// Get the modal
|
|
||||||
var modal = document.getElementById('myModal');
|
|
||||||
var registerModal = document.getElementById('registerModal');
|
|
||||||
var facebookModal = document.getElementById("fbModal");
|
|
||||||
|
|
||||||
// Get the button that opens the modal
|
|
||||||
var registerBtn = document.getElementById("registerBtn");
|
|
||||||
var btn = document.getElementById("myBtn");
|
|
||||||
|
|
||||||
|
|
||||||
// Get the <span> element that closes the modal
|
|
||||||
var span = document.getElementsByClassName("close")[0];
|
|
||||||
var registerSpan = document.getElementsByClassName("close")[1];
|
|
||||||
var facebookCLose = document.getElementsByClassName("close")[2];
|
|
||||||
|
|
||||||
/**
|
|
||||||
* When the user clicks the button, open the modal
|
|
||||||
*/
|
|
||||||
btn.onclick = function () {
|
|
||||||
modal.style.display = "block";
|
|
||||||
|
|
||||||
}
|
|
||||||
registerBtn.onclick = function () {
|
|
||||||
registerModal.style.display = "block";
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* WHen the user clicks on (X), close the modal
|
|
||||||
*/
|
|
||||||
span.onclick = function () {
|
|
||||||
modal.style.display = "none";
|
|
||||||
}
|
|
||||||
registerSpan.onclick = function () {
|
|
||||||
registerModal.style.display = "none";
|
|
||||||
}
|
|
||||||
facebookCLose.onclick = function () {
|
|
||||||
facebookModal.style.display = "none";
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* When the user clicks anywhere outside of the modal, close it
|
|
||||||
*/
|
|
||||||
window.onclick = function (event) {
|
|
||||||
if (event.target == modal) {
|
|
||||||
modal.style.display = "none";
|
|
||||||
}
|
|
||||||
if (event.target == registerModal) {
|
|
||||||
registerModal.style.display = "none";
|
|
||||||
}
|
|
||||||
if (event.target == facebookModal) {
|
|
||||||
facebookModal.style.display = "none";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* When ESC is pressed, close modal
|
|
||||||
*/
|
|
||||||
document.addEventListener('keyup', function(e) {
|
|
||||||
if (e.keyCode == 27) {
|
|
||||||
modal.style.display = "none";
|
|
||||||
registerModal.style.display = "none";
|
|
||||||
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
|
||||||
@@ -1,5 +1,42 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="UTF-8">
|
||||||
|
<meta name="description" content="MyHyvesbook+ is het sociaal medium voor alle coole mensen. Stap nu over van facebook op het gloednieuwe en betere sociaal medium.">
|
||||||
|
<meta name="keywords" content="MyHyvesbookPlus,Myhyvesbook+,sociaal,media">
|
||||||
|
<meta name="author" content="MyHyvesbookplus corporation">
|
||||||
|
<!-- Favicon-->
|
||||||
|
<!-- Desktop Browsers -->
|
||||||
|
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
|
||||||
|
|
||||||
|
<!-- Android: Chrome M39 and up-->
|
||||||
|
<link rel="manifest" href="manifest.json">
|
||||||
|
<!-- Android: Chrome M31 and up, ignored if manifest is present-->
|
||||||
|
<meta name="mobile-web-app-capable" content="yes">
|
||||||
|
<link rel="icon" sizes="192x192" href="icon-192x192.png">
|
||||||
|
<!-- iOS -->
|
||||||
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
|
<meta name="apple-mobile-web-app-title" content="My Awesome Web App">
|
||||||
|
|
||||||
|
<link rel="apple-touch-icon" sizes="180x180" href="apple-touch-icon-180x180-precomposed.png">
|
||||||
|
<link href="apple-touch-icon-152x152-precomposed.png" sizes="152x152" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-144x144-precomposed.png" sizes="144x144" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-120x120-precomposed.png" sizes="120x120" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-114x114-precomposed.png" sizes="114x114" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-76x76-precomposed.png" sizes="76x76" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-72x72-precomposed.png" sizes="72x72" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-60x60-precomposed.png" sizes="60x60" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-57x57-precomposed.png" sizes="57x57" rel="apple-touch-icon">
|
||||||
|
<link href="apple-touch-icon-precomposed.png" rel="apple-touch-icon">
|
||||||
|
|
||||||
|
<!-- Windows 8 and IE 11 -->
|
||||||
|
<meta name="msapplication-config" content="browserconfig.xml" />
|
||||||
|
|
||||||
|
<!-- Windows -->
|
||||||
|
<meta name="application-name" content="My Awesome Web App" />
|
||||||
|
<meta name="msapplication-tooltip" content="Get the latest updates!" />
|
||||||
|
<meta name="msapplication-window" content="width=1024;height=768" />
|
||||||
|
<meta name="msapplication-navbutton-color" content="#FF3300" />
|
||||||
|
<meta name="msapplication-starturl" content="./" />
|
||||||
|
|
||||||
<title>MyHyvesbook+</title>
|
<title>MyHyvesbook+</title>
|
||||||
<link rel="stylesheet"
|
<link rel="stylesheet"
|
||||||
type="text/css"
|
type="text/css"
|
||||||
@@ -7,7 +44,11 @@
|
|||||||
<link rel="stylesheet"
|
<link rel="stylesheet"
|
||||||
type="text/css"
|
type="text/css"
|
||||||
href="styles/index.css">
|
href="styles/index.css">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
type="text/css"
|
||||||
|
href="styles/font-awesome.css">
|
||||||
<script src="js/jquery.js"></script>
|
<script src="js/jquery.js"></script>
|
||||||
<script src="js/registerAndLogin.js"></script>
|
<script src="js/registerAndLogin.js"></script>
|
||||||
<script src='https://www.google.com/recaptcha/api.js'></script>
|
<script src='https://www.google.com/recaptcha/api.js'></script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
@@ -12,9 +12,11 @@
|
|||||||
</h4>
|
</h4>
|
||||||
<ul id="menu-groups-list" class="nav-list">
|
<ul id="menu-groups-list" class="nav-list">
|
||||||
</ul>
|
</ul>
|
||||||
|
</section>
|
||||||
|
<section>
|
||||||
<ul class="nav-list">
|
<ul class="nav-list">
|
||||||
<li>
|
<li>
|
||||||
<a href="#">
|
<a href="createGroup.php">
|
||||||
Maak een groep aan
|
Maak een groep aan
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
echo "<style>@import url('styles/adminbutton.css'); </style>";
|
echo "<style>@import url('styles/adminbutton.css'); </style>";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<a href="logout.php" data-title="Admin"><i class="fa fa-sign-out"></i></a>
|
<a href="logout.php" data-title="Uitloggen"><i class="fa fa-sign-out"></i></a>
|
||||||
</section>
|
</section>
|
||||||
<section id="friend-request-section">
|
<section id="friend-request-section">
|
||||||
<h4>
|
<h4>
|
||||||
|
|||||||
@@ -5,14 +5,6 @@ $fullname = $post['fname'] . " " . $post['lname'] . " (" . $post['username'] . "
|
|||||||
?>
|
?>
|
||||||
<div class='post-header header'>
|
<div class='post-header header'>
|
||||||
<h4><?=$post['title']?></h4>
|
<h4><?=$post['title']?></h4>
|
||||||
<?php if (checkPermissionOnPost($postID, $_SESSION["userID"])) {?>
|
|
||||||
<button class="deleteButton"
|
|
||||||
onclick="deletePost('<?=$postID?>')"
|
|
||||||
type="submit">
|
|
||||||
<i class="fa fa-trash"></i>
|
|
||||||
<span>Verwijder post</span>
|
|
||||||
</button><br />
|
|
||||||
<?php } ?>
|
|
||||||
<span class='postinfo'>
|
<span class='postinfo'>
|
||||||
gepost door <?=$fullname?>,
|
gepost door <?=$fullname?>,
|
||||||
<span class='posttime' title='<?=$post['creationdate']?>'>
|
<span class='posttime' title='<?=$post['creationdate']?>'>
|
||||||
@@ -20,7 +12,14 @@ $fullname = $post['fname'] . " " . $post['lname'] . " (" . $post['username'] . "
|
|||||||
</span>
|
</span>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
<?php if (checkPermissionOnPost($postID, $_SESSION["userID"])) {?>
|
||||||
|
<button class="deleteButton fancy-button"
|
||||||
|
onclick="deletePost('<?=$postID?>')"
|
||||||
|
type="submit">
|
||||||
|
<span>Verwijder post</span>
|
||||||
|
<i class="fa fa-trash"></i>
|
||||||
|
</button><br />
|
||||||
|
<?php } ?>
|
||||||
<div class='post-content'>
|
<div class='post-content'>
|
||||||
<p><?=$post['content']?></p>
|
<p><?=$post['content']?></p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,12 +1,22 @@
|
|||||||
<div class="content">
|
<div class="content">
|
||||||
|
<div class='platform alertbox' id="alertbox">
|
||||||
|
<span class="alerttext" id="alerttext"></span>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="user-box">
|
<div class="user-box">
|
||||||
<img class="profile-picture main-picture <?= $user["onlinestatus"] ?>" src="<?= $user["profilepicture"] ?>"><br />
|
<img alt="<?= $user["fname"] ?>" class="profile-picture main-picture <?= $user["onlinestatus"] ?>" src="<?= $user["profilepicture"] ?>"><br />
|
||||||
<div class="platform">
|
<div class="platform">
|
||||||
<div class="status-buttons-container">
|
<div class="status-buttons-container">
|
||||||
|
<div>
|
||||||
<button disabled class="gray">
|
<button disabled class="gray">
|
||||||
<?= $user["onlinestatus"] ?>
|
<?= $user["onlinestatus"] ?>
|
||||||
</button>
|
</button>
|
||||||
<button disabled class="gray"><?= $user["role"] ?></button>
|
</div>
|
||||||
|
<div>
|
||||||
|
<button disabled class="gray">
|
||||||
|
<?= $user["role"] ?>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="friend-button-container">
|
<div class="friend-button-container">
|
||||||
<p>:)</p>
|
<p>:)</p>
|
||||||
@@ -15,35 +25,47 @@
|
|||||||
<div class="profile-info">
|
<div class="profile-info">
|
||||||
<h2><?= $user["fname"]?> <?=$user["lname"]?></h2>
|
<h2><?= $user["fname"]?> <?=$user["lname"]?></h2>
|
||||||
<h5><?=$user["username"]?></h5>
|
<h5><?=$user["username"]?></h5>
|
||||||
<?php if (strlen($user["bio"]) <= 50) {
|
<?php
|
||||||
|
if (strlen($user["bio"]) <= 50 and $showProfile) {
|
||||||
echo "<p>" . $user["bio"] . "</p>";
|
echo "<p>" . $user["bio"] . "</p>";
|
||||||
} ?>
|
} ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php if (strlen($user["bio"]) > 50) {
|
<?php if (strlen($user["bio"]) > 50 and $showProfile) {
|
||||||
echo "<div class='platform'><h3>Bio:</h3><p>" . $user["bio"] . "</p></div>";
|
echo "<div class='platform'><h3>Bio:</h3><p>" . $user["bio"] . "</p></div>";
|
||||||
} ?>
|
} ?>
|
||||||
|
|
||||||
|
<?php if($showProfile) { ?>
|
||||||
<div class="item-box platform">
|
<div class="item-box platform">
|
||||||
<h3>Informatie</h3>
|
<h3>Informatie</h3>
|
||||||
<p>
|
|
||||||
<ul>
|
<ul>
|
||||||
|
<?php if ($user["showBday"]) { ?>
|
||||||
<li>Leeftijd: <?= getAge($user["birthdate"]) ?> jaar</li>
|
<li>Leeftijd: <?= getAge($user["birthdate"]) ?> jaar</li>
|
||||||
|
<?php } ?>
|
||||||
|
<?php if ($user["showEmail"]) { ?>
|
||||||
|
<li>Email: <?= $user["email"] ?></li>
|
||||||
|
<?php } ?>
|
||||||
<li>Locatie: <?= $user["location"] ?></li>
|
<li>Locatie: <?= $user["location"] ?></li>
|
||||||
<li>Lid sinds: <?= nicetime($user["creationdate"]) ?></li>
|
<li>Lid sinds: <?= nicetime($user["creationdate"]) ?></li>
|
||||||
</ul>
|
</ul>
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="item-box platform">
|
<div class="item-box platform">
|
||||||
<h3>Vrienden</h3>
|
<h3>Vrienden</h3>
|
||||||
<p>
|
<p>
|
||||||
<?php
|
<?php
|
||||||
while($friend = $profile_friends->fetch()) {
|
$friendcount = $profile_friends->rowCount();
|
||||||
echo "<a href='profile.php?username=${friend["username"]}' data-title='${friend["username"]}'><img class='profile-picture' src='${friend["profilepicture"]}' alt='${friend["username"]}'s profielfoto></a>";
|
$frienddif = $friendcount - 7;
|
||||||
|
|
||||||
|
for ($i = 0; $i < min($friendcount, 7); $i += 1) {
|
||||||
|
$friend = $profile_friends->fetch();
|
||||||
|
echo "<a href='profile.php?username=${friend["username"]}' data-title='${friend["username"]}'><img class='profile-picture' height='42' width='42' src='${friend["profilepicture"]}' alt='${friend["username"]}' /></a>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($frienddif > 0) {
|
||||||
|
echo $frienddif === 1 ? "en nog 1 andere." : "...en nog $frienddif anderen.";
|
||||||
|
}
|
||||||
|
|
||||||
if($profile_friends->rowCount() === 0) {
|
if($profile_friends->rowCount() === 0) {
|
||||||
echo "<p>Deze gebruiker heeft nog geen vrienden gemaakt.</p>";
|
echo "<p>Deze gebruiker heeft nog geen vrienden gemaakt.</p>";
|
||||||
@@ -56,10 +78,18 @@
|
|||||||
<h3>Groepen</h3>
|
<h3>Groepen</h3>
|
||||||
<p>
|
<p>
|
||||||
<?php
|
<?php
|
||||||
while($group = $profile_groups->fetch()) {
|
$groupcount = $profile_groups->rowCount();
|
||||||
|
$groupdif = $groupcount - 7;
|
||||||
|
|
||||||
|
for ($i = 0; $i < min($groupcount, 7); $i += 1) {
|
||||||
|
$group = $profile_groups->fetch();
|
||||||
echo "<a href='group.php?groupname=${group['name']}' data-title='${group["name"]}'><img class='group-picture' src='${group["picture"]}' alt='${group["name"]}s logo'></a>";
|
echo "<a href='group.php?groupname=${group['name']}' data-title='${group["name"]}'><img class='group-picture' src='${group["picture"]}' alt='${group["name"]}s logo'></a>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($groupdif > 0) {
|
||||||
|
echo $groupdif === 1 ? "en nog 1 andere." : "...en nog $groupdif anderen.";
|
||||||
|
}
|
||||||
|
|
||||||
if($profile_groups->rowCount() === 0) {
|
if($profile_groups->rowCount() === 0) {
|
||||||
echo "<p>Deze gebruiker is nog geen lid van een groep.</p>";
|
echo "<p>Deze gebruiker is nog geen lid van een groep.</p>";
|
||||||
}
|
}
|
||||||
@@ -85,4 +115,5 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<?php } ?>
|
||||||
</div>
|
</div>
|
||||||
@@ -4,7 +4,6 @@
|
|||||||
<!-- The Modal -->
|
<!-- The Modal -->
|
||||||
<div id="registerModal" class="modal">
|
<div id="registerModal" class="modal">
|
||||||
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
||||||
return= $correct
|
|
||||||
method="post"
|
method="post"
|
||||||
name="forgotPassword">
|
name="forgotPassword">
|
||||||
|
|
||||||
@@ -15,14 +14,11 @@
|
|||||||
<h3>Registreer uw account</h3>
|
<h3>Registreer uw account</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
|
|
||||||
return= $correct
|
|
||||||
method="post">
|
|
||||||
|
|
||||||
<div class="login_containerregister"><label>U krijgt een bevestigingsemail na het registreren</label></div>
|
<div class="login_containerregister"><label>U krijgt een bevestigingsemail na het registreren</label></div>
|
||||||
|
|
||||||
<!-- Error message -->
|
<!-- Error message -->
|
||||||
<div class="login_containerfault"><?php echo $genericErr;?></span></div>
|
<div class="login_containerfault"><span><?php echo $genericErr;?></span></div>
|
||||||
|
|
||||||
<!-- Register name -->
|
<!-- Register name -->
|
||||||
<div class="login_containerregister">
|
<div class="login_containerregister">
|
||||||
@@ -82,7 +78,6 @@
|
|||||||
placeholder="Voer uw wachtwoord in"
|
placeholder="Voer uw wachtwoord in"
|
||||||
name="password"
|
name="password"
|
||||||
value="<?php echo $password ?>"
|
value="<?php echo $password ?>"
|
||||||
id="password"
|
|
||||||
required>
|
required>
|
||||||
*<span class="error"> <?php echo $passwordErr;?></span>
|
*<span class="error"> <?php echo $passwordErr;?></span>
|
||||||
<ul>
|
<ul>
|
||||||
@@ -96,7 +91,6 @@
|
|||||||
placeholder="Herhaal wachtwoord"
|
placeholder="Herhaal wachtwoord"
|
||||||
name="confirmpassword"
|
name="confirmpassword"
|
||||||
value="<?php echo $confirmpassword ?>"
|
value="<?php echo $confirmpassword ?>"
|
||||||
id="confirmpassword"
|
|
||||||
title="Herhaal wachtwoord"
|
title="Herhaal wachtwoord"
|
||||||
required>
|
required>
|
||||||
*<span class="error"> <?php echo $confirmpasswordErr;?></span>
|
*<span class="error"> <?php echo $confirmpasswordErr;?></span>
|
||||||
@@ -120,7 +114,6 @@
|
|||||||
placeholder="Voer uw email in"
|
placeholder="Voer uw email in"
|
||||||
name="email"
|
name="email"
|
||||||
value="<?php echo $email ?>"
|
value="<?php echo $email ?>"
|
||||||
id="email"
|
|
||||||
title="Voer een geldige email in"
|
title="Voer een geldige email in"
|
||||||
required>
|
required>
|
||||||
*<span class="error"> <?php echo $emailErr;?></span>
|
*<span class="error"> <?php echo $emailErr;?></span>
|
||||||
@@ -133,7 +126,6 @@
|
|||||||
placeholder="Herhaal uw email"
|
placeholder="Herhaal uw email"
|
||||||
name="confirmEmail"
|
name="confirmEmail"
|
||||||
value="<?php echo $confirmEmail ?>"
|
value="<?php echo $confirmEmail ?>"
|
||||||
id="email"
|
|
||||||
title="Herhaal uw email"
|
title="Herhaal uw email"
|
||||||
required>
|
required>
|
||||||
*<span class="error"> <?php echo $confirmEmailErr;?></span>
|
*<span class="error"> <?php echo $confirmEmailErr;?></span>
|
||||||
@@ -152,8 +144,7 @@
|
|||||||
<!-- Register button -->
|
<!-- Register button -->
|
||||||
<button type="submit"
|
<button type="submit"
|
||||||
value="register"
|
value="register"
|
||||||
name="submit"
|
name="submit">
|
||||||
id="frm1_submit">
|
|
||||||
Registreer
|
Registreer
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -48,7 +48,12 @@ $group_n = ($group_currentpage - 1) * $group_perpage;
|
|||||||
<label for="filter">
|
<label for="filter">
|
||||||
Filter:
|
Filter:
|
||||||
</label>
|
</label>
|
||||||
<select name="filter" id="search-filter">
|
<select name="filter"
|
||||||
|
id="search-filter"
|
||||||
|
onchange="$('#user-pagenumber, #group-pagenumber').prop('value', 1);
|
||||||
|
searchUsers();
|
||||||
|
searchGroups();
|
||||||
|
pageNumber();">
|
||||||
<option value="personal"
|
<option value="personal"
|
||||||
<?php if ($filter == "personal") echo "selected";?>>
|
<?php if ($filter == "personal") echo "selected";?>>
|
||||||
Persoonlijk</option>
|
Persoonlijk</option>
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ $settings = getSettings();
|
|||||||
<input type="text"
|
<input type="text"
|
||||||
name="fname"
|
name="fname"
|
||||||
id="fname"
|
id="fname"
|
||||||
|
maxlength="63"
|
||||||
placeholder="Voornaam"
|
placeholder="Voornaam"
|
||||||
title="Voornaam"
|
title="Voornaam"
|
||||||
value="<?=$settings["fname"]?>"
|
value="<?=$settings["fname"]?>"
|
||||||
@@ -27,6 +28,7 @@ $settings = getSettings();
|
|||||||
<input type="text"
|
<input type="text"
|
||||||
name="lname"
|
name="lname"
|
||||||
id="lname"
|
id="lname"
|
||||||
|
maxlength="63"
|
||||||
placeholder="Achternaam"
|
placeholder="Achternaam"
|
||||||
value="<?=$settings["lname"]?>"
|
value="<?=$settings["lname"]?>"
|
||||||
>
|
>
|
||||||
@@ -36,14 +38,15 @@ $settings = getSettings();
|
|||||||
<input type="text"
|
<input type="text"
|
||||||
name="location"
|
name="location"
|
||||||
id="location"
|
id="location"
|
||||||
|
maxlength="50"
|
||||||
placeholder="Locatie"
|
placeholder="Locatie"
|
||||||
value="<?=$settings["location"]?>"
|
value="<?=$settings["location"]?>"
|
||||||
>
|
>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<?php $currentbday = new DateTime($settings["birthdate"]); ?>
|
<?php $currentbday = new DateTime($settings["birthdate"]); ?>
|
||||||
<label for="bday">Geboortedatum</label>
|
<label>Geboortedatum</label>
|
||||||
<select name='day' id="bday">
|
<select name='day'>
|
||||||
<?php for ($day = 1; $day <= 31; $day++): ?>
|
<?php for ($day = 1; $day <= 31; $day++): ?>
|
||||||
<option value='<?=$day?>'
|
<option value='<?=$day?>'
|
||||||
<?=($day == $currentbday->format("d")) ? "selected" : ""?>
|
<?=($day == $currentbday->format("d")) ? "selected" : ""?>
|
||||||
@@ -52,7 +55,7 @@ $settings = getSettings();
|
|||||||
</option>
|
</option>
|
||||||
<?php endfor; ?>
|
<?php endfor; ?>
|
||||||
</select>
|
</select>
|
||||||
<select name='month' id="bday">
|
<select name='month'>
|
||||||
<?php
|
<?php
|
||||||
$months = array ("januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus",
|
$months = array ("januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus",
|
||||||
"september", "oktober", "november", "december");
|
"september", "oktober", "november", "december");
|
||||||
@@ -65,7 +68,7 @@ $settings = getSettings();
|
|||||||
</option>
|
</option>
|
||||||
<?php endfor; ?>
|
<?php endfor; ?>
|
||||||
</select>
|
</select>
|
||||||
<select name='year' id="bday">
|
<select name='year'>
|
||||||
<?php
|
<?php
|
||||||
$now = (new DateTime)->format("Y");
|
$now = (new DateTime)->format("Y");
|
||||||
for ($year = $now; $year >= 1900; $year--): ?>
|
for ($year = $now; $year >= 1900; $year--): ?>
|
||||||
@@ -194,6 +197,7 @@ $settings = getSettings();
|
|||||||
<label for="email-old">Huidig Email </label>
|
<label for="email-old">Huidig Email </label>
|
||||||
<input type="email"
|
<input type="email"
|
||||||
id="email-old"
|
id="email-old"
|
||||||
|
maxlength="255"
|
||||||
value="<?=$settings["email"]?>"
|
value="<?=$settings["email"]?>"
|
||||||
disabled
|
disabled
|
||||||
>
|
>
|
||||||
@@ -202,6 +206,7 @@ $settings = getSettings();
|
|||||||
<label for="email">Nieuw Email</label>
|
<label for="email">Nieuw Email</label>
|
||||||
<input type="email"
|
<input type="email"
|
||||||
name="email"
|
name="email"
|
||||||
|
maxlength="255"
|
||||||
id="email"
|
id="email"
|
||||||
placeholder="Nieuw Email"
|
placeholder="Nieuw Email"
|
||||||
>
|
>
|
||||||
@@ -211,14 +216,16 @@ $settings = getSettings();
|
|||||||
<input type="email"
|
<input type="email"
|
||||||
name="email-confirm"
|
name="email-confirm"
|
||||||
id="email-confirm"
|
id="email-confirm"
|
||||||
|
maxlength="255"
|
||||||
placeholder="Bevestig Email"
|
placeholder="Bevestig Email"
|
||||||
>
|
>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<button type="submit"
|
<button type="submit"
|
||||||
name="form"
|
name="form"
|
||||||
value="email"
|
value="email">
|
||||||
>Verander Email</button>
|
Verander Email
|
||||||
|
</button>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</form>
|
</form>
|
||||||
|
|||||||