poprawkiA

This commit is contained in:
Mateusz Gruszczyński
2025-07-06 11:51:07 +02:00
parent 552a26fd0e
commit b7f35c8232
2 changed files with 15 additions and 8 deletions

8
app.py
View File

@ -838,8 +838,14 @@ def handle_join(data):
room = str(data['room'])
username = data.get('username', 'Gość')
join_room(room)
# Pobierz nazwę listy (zakładam, że masz funkcję get_list_title lub query)
from your_models import ShoppingList
shopping_list = ShoppingList.query.get(int(data['room']))
list_title = shopping_list.title if shopping_list else "Twoja lista"
emit('user_joined', {'username': username}, to=room)
emit('joined_confirmation', {'room': room})
emit('joined_confirmation', {'room': room, 'list_title': list_title})
@socketio.on('add_item')
def handle_add_item(data):

View File

@ -28,13 +28,13 @@ function disableCheckboxes(disable) {
// --- Toasty przy rozłączeniu i połączeniu ---
let firstConnect = true;
let wasReconnected = false; // flaga do kontrolowania toasta
socket.on('connect', function() {
if (!firstConnect) {
showToast('Połączono z serwerem! 🔄', 'info');
// Zablokuj checkboxy tymczasowo
disableCheckboxes(true);
wasReconnected = true; // zaznacz reconnect
if (window.LIST_ID && window.usernameForReconnect) {
console.log('Ponownie wysyłam join_list:', window.LIST_ID, window.usernameForReconnect);
@ -44,17 +44,18 @@ socket.on('connect', function() {
firstConnect = false;
});
// Usuń stare nasłuchy przed dodaniem nowego
socket.off('joined_confirmation');
socket.on('joined_confirmation', function(data) {
console.log('Potwierdzenie joined:', data.room);
showToast('Pokój ponownie dołączony ✅', 'info');
// Odblokuj checkboxy
if (wasReconnected) {
showToast(`Lista: ${data.list_title} ponownie dołączono.`, 'info');
wasReconnected = false;
}
disableCheckboxes(false);
});
socket.on('disconnect', function(reason) {
showToast('Utracono połączenie z serwerem...', 'warning');
// Zablokuj checkboxy
disableCheckboxes(true);
});