Explorar o código

now only meetings without pros are visible in your lobby

Flavionel %!s(int64=5) %!d(string=hai) anos
pai
achega
a9cbaa03bb

+ 6 - 6
resources/js/components/pages/MeetingsAppRoot.vue

@@ -99,7 +99,7 @@ export default {
         let lobbies = this.userProp.lobbies;
         delete this.userProp.lobbies;
 
-        this.$socket.emit("userData", { user: this.userProp });
+        this.$socket.emit("userData", { user: this.userProp })
 
         lobbies.map(lobby => {
             lobby.selected_meeting = null
@@ -107,16 +107,16 @@ export default {
                 meeting.active_members = []
                 meeting.pros_online = []
             })
-        });
+        })
 
-        this.$store.commit("setInitialUser", this.userProp);
-        this.$store.commit("setLobbies", lobbies);
+        this.$store.commit("setInitialUser", this.userProp)
+        this.$store.commit("setLobbies", lobbies)
 
-        this.$socket.emit("lobbyDataRequest", lobbies);
+        this.$socket.emit("lobbyDataRequest", lobbies)
 
         this.sockets.subscribe("lobby-data", data => {
             for (let meeting of data.meetings) {
-                this.$store.commit("setLobbyActivity", meeting);
+                this.$store.commit("setLobbyActivity", meeting)
             }
         });
     }

+ 10 - 5
resources/js/components/partials/LobbyList.vue

@@ -14,16 +14,16 @@
 
     <v-divider class="mx-4"></v-divider>
 
-    <v-list dense v-if="lobby.meetings.length">
+    <v-list dense v-if="meetingListFiltered(lobby.meetings).length">
         <v-container class="overflow-y-auto px-0 pt-0">
             <v-subheader class="d-flex flex-row justify-content-between">
-                <span>Meetings ({{lobby.meetings.length}})</span>
+                <span>Meetings ({{meetingListFiltered(lobby.meetings).length}})</span>
             </v-subheader>
         </v-container>
         <v-container style="height: 210px" class="overflow-y-auto">
             <v-row>
                 <v-list-item-group class="w-100" v-model="lobby.selected_meeting" color="primary">
-                    <v-list-item v-for="(item, i) in lobby.meetings" :key="i" :value="item">
+                    <v-list-item v-for="(item, i) in meetingListFiltered(lobby.meetings)" :key="i" :value="item">
                         <v-list-item-icon>
                             <v-icon v-text="'mdi-clock'"></v-icon>
                         </v-list-item-icon>
@@ -54,7 +54,7 @@
 
     <v-list v-else>
         <v-subheader class="d-flex flex-row justify-content-between">
-            <span>Meetings ({{lobby.meetings.length}})</span>
+            <span>Meetings ({{meetingListFiltered(lobby.meetings).length}})</span>
         </v-subheader>
         <v-container style="height: 210px" class="overflow-y-auto">
             <v-row>
@@ -70,7 +70,7 @@
     </v-list>
 
     <transition-expand>
-        <div v-if="lobby.meetings.length">
+        <div v-if="meetingListFiltered(lobby.meetings).length">
             <v-divider class="mx-4"></v-divider>
 
             <v-card-actions>
@@ -95,5 +95,10 @@ export default {
   computed: {
     ...mapState(["lobbies"]),
   },
+  methods: {
+    meetingListFiltered(meetings) {
+      return meetings.filter((x) => x.pros_online.length == 0)
+    }
+  }
 }
 </script>