Browse Source

Made img not required to add songs, added voteSkipSong functionality. Wesley has to fix the badge,

KrisVos130 9 năm trước cách đây
mục cha
commit
9b49906bef
3 tập tin đã thay đổi với 5 bổ sung18 xóa
  1. 2 10
      app/client/scripts/events.js
  2. 1 6
      app/client/templates/room.html
  3. 2 2
      app/server/server.js

+ 2 - 10
app/client/scripts/events.js

@@ -1214,25 +1214,18 @@ Template.room.events({
         Session.set("editingSong", true);
         var title = currentSong.title;
         var artist = currentSong.artist;
-        var img = currentSong.img;
         getSpotifyInfo(title.replace(/\[.*\]/g, ""), function (data) {
             if (data.tracks.items.length > 0) {
                 title = data.tracks.items[0].name;
                 var artists = [];
-                img = data.tracks.items[0].album.images[2].url;
-                data.tracks.items[0].artists.forEach(function (artist) {
-                    artists.push(artist.name);
-                });
                 artist = artists.join(", ");
                 $("#title").val(title).change();
                 $("#artist").val(artist).change();
-                $("#img").val(img).change();
                 $("#id").val(id).change();
                 $("#genres").val(null).change();
             } else {
                 $("#title").val(title).change();
                 $("#artist").val(artist).change();
-                $("#img").val(img).change();
                 $("#id").val(id).change();
                 $("#genres").val(null).change();
                 // I give up for now... Will fix this later. -Kris
@@ -1445,7 +1438,7 @@ Template.room.events({
         Meteor.call("dislikeSong", Session.get("currentSong").mid);
     },
     "click #vote-skip": function () {
-        Meteor.call("voteSkip", type, function (err, res) {
+        Meteor.call("voteSkip", Session.get("type"), function (err, res) {
             $("#vote-skip").attr("disabled", true);
         });
     },
@@ -1474,9 +1467,8 @@ Template.room.events({
         id = $("#id").val();
         var title = $("#title").val();
         var artist = $("#artist").val();
-        var img = $("#img").val();
         var genres = $("#genres").val() || [];
-        var songData = {type: type, id: id, title: title, artist: artist, img: img, genres: genres};
+        var songData = {type: type, id: id, title: title, artist: artist, genres: genres};
         if (Songs.find({"id": songData.id}).count() > 0) {
             var $toastContent = $('<span><strong>Song not added.</strong> This song has already been added.</span>');
             Materialize.toast($toastContent, 8000);

+ 1 - 6
app/client/templates/room.html

@@ -9,7 +9,7 @@
                         <li><a href="#add_song_modal" id="add-song-modal-button"><i
                                 class="material-icons">playlist_add</i></a></li>
                         <li><a href="#bug_report_modal"><i class="material-icons">bug_report</i></a></li>
-                        <li><a href="#vote_to_skip" id="skip_vote"><i class="material-icons">skip_next</i></a></li>
+                        <li><a href="#" id="vote-skip"><i class="material-icons">skip_next</i> <span class="new badge">{{votes}}</span></a></li>
                     </ul>
                     <span class="brand-logo center">{{type}}</span>
                     <ul class="right hide-on-med-and-down">
@@ -138,11 +138,6 @@
                                             <label for="title" class="teal-text">Song Title</label>
                                             <input class="validate required" name="title" id="title" type="text"/>
                                         </div>
-                                        <div class="input-field col l8 m8 s12 offset-l2 offset-m2">
-                                            <i class="material-icons prefix">image</i>
-                                            <label for="img" class="teal-text">Song Image</label>
-                                            <input class="validate" name="img" id="img" type="url"/>
-                                        </div>
                                         <button type="button" id="add-song-button" class="btn btn-large col l6 m6 s10 offset-l3 offset-m3 offset-s1 waves-effect waves-light">Add Song</button>
                                     </div>
                                     <script>

+ 2 - 2
app/server/server.js

@@ -1025,7 +1025,7 @@ Meteor.methods({
     addSongToQueue: function (songData) {
         if (Meteor.userId() && !isBanned()) {
             var userId = Meteor.userId();
-            var requiredProperties = ["title", "artist", "img", "id", "genres"];
+            var requiredProperties = ["title", "artist", "id", "genres"];
             if (songData !== undefined && Object.keys(songData).length === requiredProperties.length) {
                 for (var property in requiredProperties) {
                     if (songData[requiredProperties[property]] === undefined) {
@@ -1033,7 +1033,7 @@ Meteor.methods({
                     }
                 }
                 songData.duration = Number(getSongDuration(songData.title, songData.artist));
-                songData.img = getSongAlbumArt(songData.title, songData.artist) || "";
+                songData.img = getSongAlbumArt(songData.title, songData.artist) | "";
                 songData.skipDuration = 0;
                 songData.likes = 0;
                 songData.dislikes = 0;