From 0f930a16000ee2f70f6886c044079b1a0402461f Mon Sep 17 00:00:00 2001 From: guy Date: Thu, 23 Dec 2010 11:42:43 +0000 Subject: [PATCH] =?UTF-8?q?Patch=20level=20=20=20=20=20=20=20=20=20:=2010.?= =?UTF-8?q?0=20Files=20correlati=20=20=20=20=20:=20Ricompilazione=20Demo?= =?UTF-8?q?=20:=20[=20]=20Commento=20=20=20=20=20=20=20=20=20=20=20=20:=20?= =?UTF-8?q?Attivata=20la=20possibilit=C3=A0=20di=20aggiornare=20l'anno=20d?= =?UTF-8?q?i=20assistenza=20su=20di=20un=20server=20remoto?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.65.10.50/branches/R_10_00@21359 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ba/ba1500.cpp | 23 +++++++++++++++-------- ba/ba1501.cpp | 34 +++++++++++++++++++++------------- 2 files changed, 36 insertions(+), 21 deletions(-) diff --git a/ba/ba1500.cpp b/ba/ba1500.cpp index 641a46f0b..4de469f92 100755 --- a/ba/ba1500.cpp +++ b/ba/ba1500.cpp @@ -144,6 +144,7 @@ void TRequest_form::update_serno(const TString& num) const char* hw = ""; switch (::dongle().hardware()) { + case _dongle_aladdin : hw = "ALADDIN"; break; case _dongle_hardlock: hw = "HARDLOCK"; break; default: hw = "EUTRON"; break; } @@ -931,14 +932,6 @@ bool TAttivazione_moduli::create() if (!ok) return false; - if (d.hardware() == _dongle_network) - { - if (is_power_station()) - warning_box(TR("Non è consigliabile usare questo programma mentre e' in funzione il server di autorizzazioni")); - else - return error_box(TR("Questo programma non puo' funzionare mentre e' in funzione il server di autorizzazioni")); - } - ok = !dongle_update_needed(); if (!ok) { @@ -947,6 +940,20 @@ bool TAttivazione_moduli::create() return false; // Aggiornamento automatico riuscito! } + if (d.hardware() == _dongle_network) + { + if (yesno_box(TR("Questo programma non puo' essere utilizzato in quanto e' in funzione il server di autorizzazioni.\n" + "Si desidera connettersi al server per effettuare le operazioni di attivazione?"))) + { + TString server = ini_get_string(CONFIG_INSTALL, "Server", "Dongle"); + if (server.find(':') < 0) + server << ":1883"; + server.insert("http://"); + xvt_sys_goto_url(server, "open"); + } + return false; + } + _im = new TInformazione_moduli; disable_menu_item(M_FILE_NEW); diff --git a/ba/ba1501.cpp b/ba/ba1501.cpp index da3c56db5..0bbd34b7c 100755 --- a/ba/ba1501.cpp +++ b/ba/ba1501.cpp @@ -1,6 +1,7 @@ #include #include #include +#include #include #include #include @@ -67,9 +68,8 @@ bool update_dninst(bool force) bool update_assistance_year() { TDongle& donkey = dongle(); - if (donkey.hardware() == _dongle_network) - return show_error(TR("Il server di autorizzazioni deve essere disattivato")); - + const bool remote = donkey.hardware() == _dongle_network; + update_dninst(true); Tdninst dninst; @@ -81,24 +81,32 @@ bool update_assistance_year() //...validi dentro il dninst.zip if (dninst_year > donkey.year_assist()) { - const int serno = get_serial_number(); + // Cerca il numero di serie e gli "eventuali" moduli da disattivare TToken_string to_be_killed; - if (dninst.find_killed(to_be_killed)) + if (dninst.find_killed(to_be_killed)) { donkey.set_year_assist(dninst_year); - FOR_EACH_TOKEN(to_be_killed, mod) + FOR_EACH_TOKEN(to_be_killed, mod) if (strlen(mod) == 2) { - if (strlen(mod) == 2) + const word aut = donkey.module_name2code(mod); + if (aut > BAAUT && aut < ENDAUT) { - const word aut = donkey.module_name2code(mod); - if (aut > BAAUT && aut < ENDAUT) - donkey.deactivate(aut); + donkey.deactivate(aut); + if (remote) + rpc_DongleModuleActivate(aut, false); } } - if (donkey.burn()) - return true; // Complimenti,la chiavetta e' presente nella lista e sara' aggiornato l'anno di assistenza + + bool done = false; + if (remote) + done = rpc_DongleYearActivate(dninst_year); else - return show_error(FR("Errore di scrittura sulla chiave di protezione")); + done = donkey.burn(); + + if (done) + return true; // Complimenti, la chiavetta e' presente nella lista ed e' stato aggiornata l'assistenza + else + return show_error(TR("Errore di aggiornamento della chiave di protezione")); } //if(sn==serno... else {