public void ReinitialiserRestrictions(CConfigModulesTimos config) { //CConfigurationRestrictions.ClearRestrictions(); CListeRestrictionsUtilisateurSurType restrictionsModules = CModuleRestrictionProvider.GetRestrictionsApp(config); CConfigurationRestrictions.AjouteRestrictions(CTimosServeur.c_keyRestrictionAllUsers, restrictionsModules); foreach (CSessionClientSurServeur session in CGestionnaireSessionsTimos.ListeSessionsServeur) { if (session is CSessionClientSurServeurTimos) { CSessionClientSurServeurTimos sessionTimos = (CSessionClientSurServeurTimos)session; sessionTimos.SetNewConfigModules(config); } } }
//------------------------------------------------------------------------------------------------- public void RecalculeAffectationLicencesEtProfils() { //Identifie les sessions déconnectées foreach (int nId in GetListeIdSessionsConnectees()) { CSessionClientSurServeurTimos sessionSurServeur = GetSessionClientSurServeur(nId) as CSessionClientSurServeurTimos; if (sessionSurServeur != null && sessionSurServeur.UserLicence != null) { try { bool bConnected = sessionSurServeur.SessionClient.IsConnected; } catch { try{ sessionSurServeur.CloseSession(); } catch { } } } } //Remet les compteurs à 0 foreach (CUserLicencePrtct licence in TimosServeur.LicenceLogiciel.UserLicences) { while (licence.GetNbUsed() > 0) { licence.FreeLicence(); } } foreach (CUserProfilPrtct profil in TimosServeur.LicenceLogiciel.ProfilsUtilisateurs) { while (profil.GetNbUsed() > 0) { profil.FreeProfil(); } } //Réaffecte les licences utilisées foreach (int nId in GetListeIdSessionsConnectees()) { CSessionClientSurServeurTimos sessionSurServeur = GetSessionClientSurServeur(nId) as CSessionClientSurServeurTimos; if (sessionSurServeur != null) { try { if (sessionSurServeur.SessionClient.IsConnected) { if (sessionSurServeur.UserLicence != null) { sessionSurServeur.UserLicence.GetLicence(); } if (sessionSurServeur.UserProfil != null) { sessionSurServeur.UserProfil.GetProfil(); } } } catch { } } } }