Răsfoiți Sursa

Update site UI with changes talked about on Discord. I think they look a lot better. Added removed links to the footer. Temp. fixed not being able to chat. Added promote/demote to admins, will clean up soon.

Wesley McCann 8 ani în urmă
părinte
comite
9db367426e

+ 6 - 6
app/client/scripts/events.js

@@ -347,13 +347,13 @@ Template.profile.events({
         $("#edit-rank").hide();
         $("#cancel-rank").show();
     },
-    "click #submit-rank": function() {
-        $("#rank").show();
-        $("#rank-div").hide();
-        $("#edit-rank").show();
-        $("#cancel-rank").hide();
-        var newRank = $("#select-rank option:selected").val();
+    "click #promote-rank": function() {
+        var username = Session.get("username");
+        Meteor.call("promoteUserRank", username);
+    },
+    "click #demote-rank": function() {
         var username = Session.get("username");
+        Meteor.call("demoteUserRank", username);
     },
     "click #cancel-rank": function() {
         $("#rank").show();

+ 2 - 0
app/client/templates/footer.html

@@ -37,6 +37,8 @@
             <div class="col l2 s12 right">
                 <h5 class="grey-text text-darken-2">Links</h5>
                 <ul>
+                    <li><a class="grey-text text-darken-1" href="https://github.com/Musare/Musare">Github</a></li>
+                    <li><a class="grey-text text-darken-1" href="/feedback">Feedback</a></li>
                     <li><a class="grey-text text-darken-1" href="/faq">FAQ</a></li>
                     <li><a class="grey-text text-darken-1" href="/terms">Terms</a></li>
                     <li><a class="grey-text text-darken-1" href="/privacy">Privacy</a></li>

+ 4 - 34
app/client/templates/header.html

@@ -1,15 +1,6 @@
 <template name="header">
     <header>
         <!-- Dropdown Structure -->
-        <ul id="contributeDrop" class="dropdown-content">
-            <li><a href="https://www.github.com/Musare/Musare" target="_blank"
-                   class="grey-text text-darken-4">Github</a></li>
-            <li><a href="/feedback" class="grey-text text-darken-4">Feedback</a></li>
-        </ul>
-        <ul id="aboutDrop" class="dropdown-content">
-            <li><a href="/project" class="grey-text text-darken-4">The Project</a></li>
-            <!--<li><a href="/team" class="grey-text text-darken-4">The Team</a></li>-->
-        </ul>
         <ul id="accountDrop" class="dropdown-content">
             {{#if currentUser}}
                 <li><a href="/u/{{currentUser.profile.username}}" class="grey-text text-darken-4">Profile</a></li>
@@ -22,17 +13,14 @@
         </ul>
         <nav>
             <div class="nav-wrapper grey darken-3">
-                <a href="/" class="brand-logo"><img src="/logo.png" class="responsive-img" style="height: 60px;"/></a>
+                <a href="/" class="brand-logo">Musare</a>
                 <a href="#" data-activates="mobile-navi" class="button-collapse white-text"><i class="material-icons">menu</i></a>
                 <ul class="right hide-on-med-and-down scroll-fix">
                     {{#if isModerator}}
                         <li><a class="light-blue-text text-accent-4" href="/admin"><b>Admin</b></a></li>
                     {{/if}}
-                    <li><a href="/news" class="white-text">News</a></li>
-                    <li><a class="dropdown-button white-text" href="#!" data-activates="contributeDrop">Contribute<i
-                            class="material-icons right">arrow_drop_down</i></a></li>
-                    <li><a class="dropdown-button white-text" href="#!" data-activates="aboutDrop">About<i
-                            class="material-icons right">arrow_drop_down</i></a></li>
+                    <li><a href="/project" class="white-text">The Project</a></li>
+                    <li><a href="/" class="white-text">Donate</a></li>
                     <li><a class="dropdown-button white-text" href="#!" data-activates="accountDrop">
                         {{#if currentUser}}
                             {{currentUser.profile.username}}
@@ -47,25 +35,7 @@
                             <li><a href="/admin">Admin</a></li>
                         {{/if}}
                         <li>
-                            <a href="/news">News</a>
-                        </li>
-                        <li>
-                            <div class="collapsible-header black-text"><i class="material-icons">arrow_drop_down</i>
-                                Contribute
-                            </div>
-                            <div class="collapsible-body black-text">
-                                <a href="https://www.github.com/Musare/Musare" target="_blank">Github</a>
-                                <a href="/feedback">Feedback</a>
-                            </div>
-                        </li>
-                        <li>
-                            <div class="collapsible-header black-text"><i class="material-icons">arrow_drop_down</i>
-                                About
-                            </div>
-                            <div class="collapsible-body black-text">
-                                <a href="/project">The Project</a>
-                                <!--<a href="/team">The Team</a>-->
-                            </div>
+                            <a href="/project">The Project</a>
                         </li>
                         <li>
                             <div class="collapsible-header black-text"><i class="material-icons">arrow_drop_down</i>

+ 4 - 0
app/client/templates/profile.html

@@ -13,6 +13,10 @@
                     <div class="col s12 m12 l4">
                         <h4>User Info</h4>
                         <!--<p>Name: {{real_name}}</p>-->
+                        {{#if isModerator}}
+                          <a id="promote-rank" href="">Promote to Admin</a><br>
+                          <a id="demote-rank" href="">Demote to Admin</a>
+                        {{/if}}
                         <p>Username: {{username}}</p>
                         <p>First Joined: {{first_joined}}</p>
                         <p>Rank: {{rank}}</p>

+ 3 - 3
app/server/a.js

@@ -56,15 +56,15 @@ Meteor.updatedMethods = function(methods) {
                         if (Meteor.userId() || Meteor.user()) {
                             throw new Meteor.Error(401, "Invalid permissions.");
                         }
-                    } else if (requirement === "noMute") {
+                    } /*else if (requirement === "noMute") {
                         if (isMuted()) {
                             throw new Meteor.Error(401, "Invalid permissions.");
                         }
-                    }
+                    }*/
                 });
                 return methods[methodName].code.apply(this, arguments);
             }
         };
         Meteor.methods(method);
     });
-};
+};

+ 23 - 7
app/server/server.js

@@ -1556,6 +1556,11 @@ Meteor.updatedMethods({
         },
         requirements: []
     },
+    promoteUserMethod: {
+      code: function(user) {
+        Meteor.users.find({"profile.usernameL": username.toLowerCase()})
+      }
+    },
     createArticle: {
         code: function(data) {
             var userId = Meteor.userId();
@@ -1778,13 +1783,24 @@ Meteor.updatedMethods({
         },
         requirements: ["login"]
     },
-    /*updateUserRank: function(newRank){
-     if (Meteor.userId()) {
-     Meteor.users.update(Meteor.userId(), {$set: {"profile.rank": newRank}});
-     } else {
-     throw new Meteor.Error(403, "Invalid permissions.");
-     }
-     },*/
+    promoteUserRank: {
+      code: function(username){
+        if (Meteor.userId()) {
+          Meteor.users.update({"username": username}, {$set: {"profile.rank": "admin"}});
+        } else {
+          throw new Meteor.Error(403, "Invalid permissions.");
+        }
+      }
+    },
+    demoteUserRank: {
+      code: function(username){
+        if (Meteor.userId()) {
+          Meteor.users.update({"username": username}, {$set: {"profile.rank": "default"}});
+        } else {
+          throw new Meteor.Error(403, "Invalid permissions.");
+        }
+      }
+    },
     deleteAccount: {
         code: function () {
             var user = Meteor.users.findOne(Meteor.userId());