aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--assets/js/admin_panel.js53
-rw-r--r--assets/js/home_page.js26
-rw-r--r--assets/js/user_profile.js54
3 files changed, 133 insertions, 0 deletions
diff --git a/assets/js/admin_panel.js b/assets/js/admin_panel.js
new file mode 100644
index 0000000..2d8757f
--- /dev/null
+++ b/assets/js/admin_panel.js
@@ -0,0 +1,53 @@
+function main(){
+ // ********* Admin Panel Scripts *********** //
+ var adminOptions = [
+ $("#cpnl-addExam"),
+ $("#cpnl-addCourse"),
+ $("#cpnl-addAdmin"),
+ $("#cpnl-removeExam"),
+ $("#cpnl-removeCourse"),
+ $("#cpnl-removeUser")
+ ];
+
+ function hideCpnlPages(){
+ adminOptions.forEach(function(item){
+ item.hide();
+ });
+ }
+
+ hideCpnlPages();
+
+ // Show General page
+ adminOptions[0].show();
+ $('.cpnl-page').bind('click', function(e){
+
+ e.preventDefault();
+ hideCpnlPages();
+
+ /* Each case will need to be changed to call a handler for fetching data
+ * from server*/
+ switch($(this).text()) {
+ case "Add Exam":
+ $("#cpnl-addExam").show();
+ break;
+ case "Add Course":
+ $("#cpnl-addCourse").show();
+ break;
+ case "Add Admin":
+ $("#cpnl-addAdmin").show();
+ break;
+ case "Remove Exam":
+ $("#cpnl-removeExam").show();
+ break;
+ case "Remove Course":
+ $("#cpnl-removeCourse").show();
+ break;
+ case "Remove User":
+ $("#cpnl-removeUser").show();
+ break;
+ default:
+ console.log("Error: User page not found");
+ }
+ });
+}
+$(document).ready(main); \ No newline at end of file
diff --git a/assets/js/home_page.js b/assets/js/home_page.js
new file mode 100644
index 0000000..449461d
--- /dev/null
+++ b/assets/js/home_page.js
@@ -0,0 +1,26 @@
+function main(){
+
+ // Search bar drop down scripting (some of it is shared with nav panel
+ // in script.js but this code in this file is exclusive to search bar
+ $('.search-menu').bind('click', function(e) {
+ e.preventDefault();
+ $("#search-drop-down").click();
+ var type = $(this).text();
+
+ switch(type) {
+ case "Courses":
+ $("#search-field").attr("action","/search/courses");
+ $("#user-input").attr("placeholder", "Enter coure code");
+ $("#drop-down-value").text("Courses");
+ break;
+ case "Users":
+ $("#search-field").attr("action","/search/users");
+ $("#user-input").attr("placeholder", "Enter user info");
+ $("#drop-down-value").text("Users");
+ break;
+ default:
+ console.log("Error: Click not registered");
+ }
+ });
+}
+$(document).ready(main); \ No newline at end of file
diff --git a/assets/js/user_profile.js b/assets/js/user_profile.js
new file mode 100644
index 0000000..fa7add4
--- /dev/null
+++ b/assets/js/user_profile.js
@@ -0,0 +1,54 @@
+function main(){
+ // User-profile dynamic paging
+ var items = [
+ $("#profile-general"),
+ $("#profile-follows"),
+ $("#profile-friends"),
+ $("#profile-inbox"),
+ $("#profile-comments"),
+ $('#profile-send-message')];
+
+ function hidePages(){
+ items.forEach(function(item){
+ item.hide();
+ });
+ }
+
+ // Hide all pages at load
+ hidePages();
+
+ // Show General page
+ items[0].show();
+
+ $('.prf-page').bind('click', function(e){
+
+ e.preventDefault();
+ hidePages();
+
+ /* Each case will need to be changed to call a handler for fetching data
+ * from server*/
+ switch($(this).text()) {
+ case "General":
+ console.log("clicked general");
+ $("#profile-general").show();
+ break;
+ case "Following":
+ $("#profile-follows").show();
+ break;
+ case "Friends":
+ $("#profile-friends").show();
+ break;
+ case "Inbox":
+ $("#profile-inbox").show();
+ break;
+ case "Comments":
+ $("#profile-comments").show();
+ break;
+ case "Send Message":
+ $('#profile-send-message').show();
+ break;
+ default:
+ console.log("Error: User page not found");
+ }
+ });}
+$(document).ready(main); \ No newline at end of file