public StartupConditionResult Check() { RenewActivation(); if (_activationHelper.IsLicenseValid) { return(StartupConditionResult.BuildSuccess()); } _logger.Error("Invalid or expired license."); var editionWithVersionNumber = _applicationNameProvider.ApplicationName + " " + _versionHelper.FormatWithThreeDigits(); _settingsManager.LoadAllSettings(); var settingsProvider = _settingsManager.GetSettingsProvider(); if (settingsProvider.GpoSettings.HideLicenseTab) { var errorMessage = _translator.GetFormattedTranslation("Program", "LicenseInvalidGpoHideLicenseTab", editionWithVersionNumber); return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAndHiddenWithGpo, errorMessage)); } var caption = _applicationNameProvider.ApplicationName; var message = _translator.GetFormattedTranslation("Program", "LicenseInvalid", editionWithVersionNumber); var result = ShowMessage(message, caption, MessageOptions.YesNo, MessageIcon.Exclamation); if (result != MessageResponse.Yes) { return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAndNotReactivated, "The license is invalid!", showMessage: false)); } var interaction = new LicenseInteraction(); _interactionInvoker.Invoke(interaction); //Check latest edition for validity _activationHelper.LoadActivation(); if (_activationHelper.IsLicenseValid) { return(StartupConditionResult.BuildSuccess()); } return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAfterReactivation, _translator.GetFormattedTranslation("Program", "LicenseInvalidAfterReactivation", _applicationNameProvider.ApplicationName))); }
public StartupConditionResult Check() { var activation = RenewActivation(); if (activation.Exists(a => a.IsActivationStillValid())) { return(StartupConditionResult.BuildSuccess()); } _logger.Error("Invalid or expired license."); var editionWithVersionNumber = _applicationNameProvider.ApplicationNameWithEdition + " " + _versionHelper.FormatWithThreeDigits(); if (_gpoSettings.HideLicenseTab) { var errorMessage = _translation.GetFormattedLicenseInvalidGpoHideLicenseTab(editionWithVersionNumber); return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAndHiddenWithGpo, errorMessage)); } var caption = _applicationNameProvider.ApplicationName; var message = _translation.GetFormattedLicenseInvalidTranslation(editionWithVersionNumber); var result = ShowMessage(message, caption, MessageOptions.YesNo, MessageIcon.Exclamation); if (result != MessageResponse.Yes) { return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAndNotReactivated, "The license is invalid!", showMessage: false)); } var interaction = new LicenseInteraction(); _interactionInvoker.Invoke(interaction); //Check latest edition for validity activation = _licenseChecker.GetSavedActivation(); if (activation.Exists(a => a.IsActivationStillValid())) { return(StartupConditionResult.BuildSuccess()); } return(StartupConditionResult.BuildErrorWithMessage((int)ExitCode.LicenseInvalidAfterReactivation, _translation.GetFormattedLicenseInvalidAfterReactivationTranslation(_applicationNameProvider.ApplicationNameWithEdition))); }