diff --git a/ba/ba1100.cpp b/ba/ba1100.cpp index 08a9c0680..fedd60e08 100755 --- a/ba/ba1100.cpp +++ b/ba/ba1100.cpp @@ -1392,19 +1392,30 @@ void TManutenzione_app::load_des(const int maxfdir) void TManutenzione_app::update() { - bool ok = true; + bool ok = false; TIsamfile utenti(LF_USER); utenti.open(_excllock); #ifndef DBG - for (int err = utenti.first(); err == NOERR; err = utenti.next()) + while (!ok) { - const TString& u = utenti.get(USR_USERNAME); - if (u != ::dongle().administrator() && utenti.get_bool(USR_CONNECTED)) + TToken_string utonti(64, ','); + for (int err = utenti.first(); err == NOERR; err = utenti.next()) { - ok = error_box(FR("La conversione non puo' essere effettuata\nmentre l'utente %s e' collegato"), (const char*)u); - break; + const TString& u = utenti.get(USR_USERNAME); + if (u != ::dongle().administrator() && utenti.get_bool(USR_CONNECTED)) + utonti.add(u); + } + ok = utonti.empty(); + if (!ok) + { + TToken_string message(80, '\n'); + message = TR("Conversione archivi impossibile mentre ci sono utenti collegati!"); + message.add(TR("Qualora uno degli utenti elencati non fosse effettivamente connesso, "); + message.add("effettuare una sua connessione e disconnessione immediata per sbloccarlo")); + message.add(utonti); + error_box(message); } } #endif