From 6d5de98c1daad7b5adc41238ae4c3a282f6432ed Mon Sep 17 00:00:00 2001 From: Marijn Jansen Date: Fri, 3 Feb 2017 11:31:18 +0100 Subject: [PATCH 1/8] comments --- website/queries/checkInput.php | 43 +++++++++++++++++++++++++++++--- website/queries/createGroup.php | 3 +++ website/queries/emailconfirm.php | 9 ++++++- website/queries/login.php | 5 +++- website/queries/post.php | 6 +++++ 5 files changed, 61 insertions(+), 5 deletions(-) diff --git a/website/queries/checkInput.php b/website/queries/checkInput.php index 247050b..5680de8 100644 --- a/website/queries/checkInput.php +++ b/website/queries/checkInput.php @@ -41,7 +41,11 @@ function checkInputChoice($variable, $option){ } } -/* Checks for only letters and spaces. */ +/** + * Checks for only letters and spaces. + * @param $variable + * @throws lettersAndSpacesException + */ function checkName($variable){ if (empty($variable)) { throw new lettersAndSpacesException("Verplicht!"); @@ -52,7 +56,11 @@ function checkName($variable){ } } -/* Checks for bday */ +/** + * Checks for bday + * @param $variable + * @throws bdayException + */ function validateBday($variable){ if (empty($variable)) { throw new bdayException("Verplicht!"); @@ -219,6 +227,9 @@ function test_input($data) { return $data; } +/** + * Class lettersAndSpacesException + */ class lettersAndSpacesException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -227,7 +238,9 @@ class lettersAndSpacesException extends Exception } } - +/** + * Class bdayException + */ class bdayException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -236,6 +249,9 @@ class bdayException extends Exception } } +/** + * Class usernameException + */ class usernameException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -244,6 +260,9 @@ class usernameException extends Exception } } +/** + * Class passwordException + */ class passwordException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -252,6 +271,9 @@ class passwordException extends Exception } } +/** + * Class confirmPasswordException + */ class confirmPasswordException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -260,6 +282,9 @@ class confirmPasswordException extends Exception } } +/** + * Class fbConfirmPasswordException + */ class fbConfirmPasswordException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -268,6 +293,9 @@ class fbConfirmPasswordException extends Exception } } +/** + * Class emailException + */ class emailException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -276,6 +304,9 @@ class emailException extends Exception } } +/** + * Class confirmEmailException + */ class confirmEmailException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -284,6 +315,9 @@ class confirmEmailException extends Exception } } +/** + * Class captchaException + */ class captchaException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) @@ -292,6 +326,9 @@ class captchaException extends Exception } } +/** + * Class registerException + */ class registerException extends Exception { public function __construct($message = "", $code = 0, Exception $previous = null) diff --git a/website/queries/createGroup.php b/website/queries/createGroup.php index 1b093fb..84843d2 100644 --- a/website/queries/createGroup.php +++ b/website/queries/createGroup.php @@ -8,6 +8,7 @@ require_once "../queries/alerts.php"; */ function createGroup() { + // Creates the group. $createGroup = prepareQuery(" INSERT INTO `group_page` (`name`, `description`) @@ -17,6 +18,7 @@ function createGroup() $createGroup->bindValue(':description', test_input($_POST["bio"])); $createGroup->execute(); + // Gets the groupID just created. $getGroupID = prepareQuery(" SELECT `groupID` @@ -28,6 +30,7 @@ function createGroup() $getGroupID->execute(); $groupID = $getGroupID->fetch()["groupID"]; + // Adds the user as an admin. $makeUserAdmin = prepareQuery(" INSERT INTO `group_member` (userID, groupID, role) diff --git a/website/queries/emailconfirm.php b/website/queries/emailconfirm.php index 0e6aab1..ff9c672 100644 --- a/website/queries/emailconfirm.php +++ b/website/queries/emailconfirm.php @@ -1,5 +1,8 @@ Date: Fri, 3 Feb 2017 11:47:16 +0100 Subject: [PATCH 2/8] Added fbModal button --- website/public/js/loginRegisterModals.js | 5 ++++- website/views/facebookRegisterModal.php | 6 ++++++ website/views/homeLoginRegister.php | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/website/public/js/loginRegisterModals.js b/website/public/js/loginRegisterModals.js index 373fb7e..104dd02 100644 --- a/website/public/js/loginRegisterModals.js +++ b/website/public/js/loginRegisterModals.js @@ -7,7 +7,7 @@ var facebookModal = document.getElementById("fbModal"); // Get the button that opens the modal var registerBtn = document.getElementById("registerBtn"); var btn = document.getElementById("myBtn"); - +var fbBtn = document.getElementById("fbBtn"); // Get the element that closes the modal var span = document.getElementsByClassName("close")[0]; @@ -24,6 +24,9 @@ btn.onclick = function () { registerBtn.onclick = function () { registerModal.style.display = "block"; } +fbBtn.onclick = function () { + facebookModal.style.display = "block"; +} /** * WHen the user clicks on (X), close the modal diff --git a/website/views/facebookRegisterModal.php b/website/views/facebookRegisterModal.php index a38a3a3..17ce7ef 100644 --- a/website/views/facebookRegisterModal.php +++ b/website/views/facebookRegisterModal.php @@ -1,3 +1,9 @@ +Facebook registreer'; + +} +?> -- 2.49.1 From fb5f76c4993cab6d41ab7be8c246452a2f49a207 Mon Sep 17 00:00:00 2001 From: Lars van Hijfte Date: Fri, 3 Feb 2017 12:32:57 +0100 Subject: [PATCH 5/8] ? --- website/public/js/profile.js | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 website/public/js/profile.js diff --git a/website/public/js/profile.js b/website/public/js/profile.js deleted file mode 100644 index e69de29..0000000 -- 2.49.1 From 1ac6a7da87e1637e195e596f111df74c8742d8af Mon Sep 17 00:00:00 2001 From: Lars van Hijfte Date: Fri, 3 Feb 2017 12:40:33 +0100 Subject: [PATCH 6/8] Changed admin checkbox buttons --- website/public/styles/adminpanel.css | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/website/public/styles/adminpanel.css b/website/public/styles/adminpanel.css index 888b4ca..d04d8fa 100644 --- a/website/public/styles/adminpanel.css +++ b/website/public/styles/adminpanel.css @@ -1,9 +1,9 @@ .admin-panel input[type="radio"], input[type="checkbox"] { vertical-align: middle; - height: 28px; - width: 28px; - margin: 2px; + height: 14px; + width: 14px; + margin: 7px; } .table-checkbox { -- 2.49.1 From 4643dfcddb4f8ef314168cb0851c811d559d57bd Mon Sep 17 00:00:00 2001 From: Joey Lai Date: Fri, 3 Feb 2017 12:42:30 +0100 Subject: [PATCH 7/8] Fixed comments and links --- website/queries/register.php | 31 +++++++++++++++++++++++++++++ website/queries/requestpassword.php | 18 +++++++++++++++-- website/views/homeLoginRegister.php | 2 +- 3 files changed, 48 insertions(+), 3 deletions(-) diff --git a/website/queries/register.php b/website/queries/register.php index 3dcbed4..7f91dfa 100644 --- a/website/queries/register.php +++ b/website/queries/register.php @@ -1,5 +1,9 @@ rowCount(); } +/** + * Registers a new account with facebook register + */ function fbRegisterAccount() { $stmt = prepareQuery(" INSERT INTO @@ -158,6 +184,11 @@ function fbRegisterAccount() { return $stmt->execute(); } +/** + * Checks which dates need to be selected when there is an invalid registration. + * @param $date + * @param $value + */ function submitselect($date, $value){ if ($date == $value){ echo "selected"; diff --git a/website/queries/requestpassword.php b/website/queries/requestpassword.php index a54bd7d..daad355 100644 --- a/website/queries/requestpassword.php +++ b/website/queries/requestpassword.php @@ -1,6 +1,10 @@ getRedirectLoginHelper(); try { -- 2.49.1 From 7cc6450e6afde743509fcc83b3e8dadf0415509e Mon Sep 17 00:00:00 2001 From: "K. Nobel" Date: Fri, 3 Feb 2017 13:19:00 +0100 Subject: [PATCH 8/8] Added comments to javascript code. --- website/public/js/friendButtons.js | 8 +++++- website/public/js/groupButtons.js | 5 ++++ website/public/js/masonry.js | 44 +++++++++++++++++++----------- 3 files changed, 40 insertions(+), 17 deletions(-) diff --git a/website/public/js/friendButtons.js b/website/public/js/friendButtons.js index 47c476a..440dfe5 100644 --- a/website/public/js/friendButtons.js +++ b/website/public/js/friendButtons.js @@ -1,6 +1,8 @@ +// Show the right friendship buttonsto the user. function placeFriendButtons() { $.post("API/getFriendshipStatus.php", { usr: userID }) .done(function(data) { + //save the friendship status var friendshipStatus = data; var $buttonContainer = $("div.friend-button-container"); $("#start-profile-chat").hide(); @@ -22,6 +24,7 @@ function placeFriendButtons() { text1 = "Bevriend"; icon1 = "fa-handshake-o"; break; + // Users are friends. case "1": value1 = userID; class1 = "green"; @@ -32,12 +35,14 @@ function placeFriendButtons() { text2 = "Verwijder"; icon2 = "fa-times"; break; + // This user sent request. case "2": value1 = "delete"; class1 = "red"; text1 = "Trek verzoek in"; icon1 = "fa-cross"; break; + // Other user sent request. case "3": value1 = "accept"; class1 = "green"; @@ -50,6 +55,7 @@ function placeFriendButtons() { break; } + // Append buttons to the container. $buttonContainer.append( ""); - + // Gets triggered when a friend button is triggered. $buttonContainer.children().click(function() { if (isNaN(this.value)) editFriendship(userID, this.value); diff --git a/website/public/js/groupButtons.js b/website/public/js/groupButtons.js index e6ada67..ab86e8c 100644 --- a/website/public/js/groupButtons.js +++ b/website/public/js/groupButtons.js @@ -3,16 +3,20 @@ function placeGroupButtons() { .done(function(data) { var $buttonContainer = $("div.group-button-container"); + // Append the right group button to the button container. + // When user is not a member if(data == 'none') { $buttonContainer.append( ""); + // when user sent a request to become a member. } else if(data == 'request') { $buttonContainer.append( ""); + // When user is a member of the group. } else { $buttonContainer.append( ""); } + // Gets triggered when a group button is clicked. $buttonContainer.children().click(function() { $.post("API/editMembership.php", { grp: groupID, role: this.value }) .done(function() { diff --git a/website/public/js/masonry.js b/website/public/js/masonry.js index a628e96..eeb5cf7 100644 --- a/website/public/js/masonry.js +++ b/website/public/js/masonry.js @@ -1,3 +1,4 @@ +// Vertical margin between two posts. margin = 20; // scrolling modal taken from http://stackoverflow.com/questions/10476632/how-to-scroll-the-page-when-a-modal-dialog-is-longer-than-the-screen @@ -11,9 +12,12 @@ function scrollbarMargin(width, overflow) { }); } +// Get post from the server. function requestPost(postID) { + // Make the modal view visible. $(".modal").show(); + // Send get request to the server to load the post. $.get("API/loadPost.php", { postID : postID }).done(function(data) { $('.modal-default').hide(); var scrollBarWidth = window.innerWidth - document.body.offsetWidth; @@ -23,11 +27,14 @@ function requestPost(postID) { }); } +// Create a new post. function postPost() { title = $("input.newpost[name='title']").val(); content = $("textarea.newpost[name='content']").val(); + // Masonrymode 2: when on group page and user is an admin. if (masonryMode == 2) { + // Create the new group post. $.post("API/postPost.php", { title: title, content : content, group : groupID }) @@ -42,6 +49,7 @@ function postPost() { } }); } else { + // Create the new user post. $.post("API/postPost.php", { title: title, content : content }) .done(function(data) { @@ -68,6 +76,7 @@ var postAmount = 0; var noposts = false; $(document).ready(function () { + // Initialise variables for masonry. windowWidth = $(window).width(); columnCount = Math.floor($(".posts").width() / 250); columns = new Array(columnCount); @@ -78,6 +87,7 @@ $(window).on("load", function() { $(".modal-close").click(function (){closeModal()}); // http://stackoverflow.com/questions/9439725/javascript-how-to-detect-if-browser-window-is-scrolled-to-bottom + // Infinite scroll. window.onscroll = function(ev) { if($(window).scrollTop() + $(window).height() == $(document).height() ) { loadMorePosts(userID, groupID, postAmount, postLimit); @@ -85,6 +95,7 @@ $(window).on("load", function() { }; }); +// Hide modal view from the screen. function closeModal() { $(".modal").hide(); scrollbarMargin(0, 'auto'); @@ -92,23 +103,30 @@ function closeModal() { $('.modal-default').show(); } +// Will fire when user resizes the window. $(window).resize(function() { clearTimeout(window.resizedFinished); window.resizeFinished = setTimeout(function() { + // Check if the width of the screen changed. if ($(window).width() != windowWidth) { + // Save width. windowWidth = $(window).width(); - + // Check if there fit more or less columns in the new width. if (columnCount != Math.floor($(".posts").width() / 250)) { columnCount = Math.floor($(".posts").width() / 250); + // Respawn the masonry grid. masonry(masonryMode); } } }, 250); }); +// Select the container for masonry. var $container = $(".posts"); +// Spawn the masonry grid. function masonry(mode) { + // save the masonry mode. masonryMode = mode; $container.children().remove(); @@ -116,10 +134,7 @@ function masonry(mode) { noposts = false; postAmount = 0; - /* - * Initialise columns. - */ - + // Initialise columns. for (i = 0; i < columnCount; i++) { $column = $("
"); $column.width(100/columnCount + "%"); @@ -127,11 +142,13 @@ function masonry(mode) { columns[i] = [0, $column]; } + // Place the form for new posts. if(mode > 0) { $postInput = $("
"); $form = $(""); $postInput.append($form); + //Add extra input for group posts. if(mode == 2) { $form.append($("")); } @@ -144,17 +161,11 @@ function masonry(mode) { columns[0][0] = $postInput.height() + margin; } - /* - * Function will find the column with the shortest height. - */ - - - /* - * Get the posts from the server. - */ + // Get the posts from the server. loadMorePosts(userID, groupID, 0, postLimit); } +// Find the column with the shortest hight. function getShortestColumn(columns) { column = columns[0]; @@ -166,17 +177,20 @@ function getShortestColumn(columns) { return column; } +// Load certain range of posts. function loadMorePosts(uID, gID, offset, limit) { if (noposts) { return; } + // Get a list of posts from the server. $.post("API/getPosts.php", { usr : uID, grp : gID, offset : offset, limit : limit}) .done(function(data) { if (!data) { + // No posts were found, show noposts bar to user. $('.noposts').show(); noposts = true; return; @@ -184,9 +198,7 @@ function loadMorePosts(uID, gID, offset, limit) { posts = JSON.parse(data); - /* - * Rearange the objects. - */ + // Rearange the objects. $.each(posts, function() { $post = $("
"); $post.append($("

").html(this["title"])); -- 2.49.1