public object ActivateLicenseKey() { if (!CoreContext.Configuration.Standalone) { throw new NotSupportedException(); } TariffSettings.LicenseAccept = true; MessageService.Send(HttpContext.Current.Request, MessageAction.LicenseKeyUploaded); try { LicenseReader.RefreshLicense(); return(new { Status = 1 }); } catch (BillingNotFoundException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseKeyNotFound }); } catch (BillingNotConfiguredException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseKeyNotCorrect }); } catch (BillingException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseException }); } catch (Exception ex) { return(new { Status = 0, Message = ex.Message }); } }
public bool RefreshLicense() { if (!CoreContext.Configuration.Standalone) { return(false); } LicenseReader.RefreshLicense(); return(true); }
public HttpResponseMessage RefreshLicense() { try { log.Debug("ChangeLicenseStatus"); LicenseReader.RefreshLicense(); if (!ServiceRepository.GetServicesSnapshot().Any()) { HealthCheckRunner.Run(); } return(ResultHelper.Success()); } catch (Exception ex) { log.ErrorFormat("Unexpected error on RefreshLicense: {0} {1}", ex.ToString(), ex.InnerException != null ? ex.InnerException.Message : string.Empty); return(ResultHelper.ServerError()); } }
public FileUploadResult ActivateLicense() { if (!CoreContext.Configuration.Standalone) { throw new NotSupportedException(); } var result = new FileUploadResult(); try { LicenseReader.RefreshLicense(); Web.Studio.UserControls.Management.TariffSettings.LicenseAccept = true; MessageService.Send(HttpContext.Current.Request, MessageAction.LicenseKeyUploaded); result.Success = true; } catch (BillingNotFoundException ex) { LogManager.GetLogger("ASC").Error("License activate", ex); result.Message = UserControlsCommonResource.LicenseKeyNotFound; } catch (BillingNotConfiguredException ex) { LogManager.GetLogger("ASC").Error("License activate", ex); result.Message = UserControlsCommonResource.LicenseKeyNotCorrect; } catch (BillingException ex) { LogManager.GetLogger("ASC").Error("License activate", ex); result.Message = UserControlsCommonResource.LicenseException; } catch (Exception ex) { LogManager.GetLogger("ASC").Error("License activate", ex); result.Message = ex.Message; } return(result); }
public object SaveData(string email, string pwd, string lng, string promocode, string amiid, bool analytics) { try { var tenant = CoreContext.TenantManager.GetCurrentTenant(); var settings = WizardSettings.Load(); if (settings.Completed) { throw new Exception("Wizard passed."); } if (IsAmi && IncorrectAmiId(amiid)) { throw new Exception(Resource.EmailAndPasswordIncorrectAmiId); } if (tenant.OwnerId == Guid.Empty) { Thread.Sleep(TimeSpan.FromSeconds(6)); // wait cache interval tenant = CoreContext.TenantManager.GetTenant(tenant.TenantId); if (tenant.OwnerId == Guid.Empty) { LogManager.GetLogger("ASC.Web.FirstTime").Error(tenant.TenantId + ": owner id is empty."); } } var currentUser = CoreContext.UserManager.GetUsers(CoreContext.TenantManager.GetCurrentTenant().OwnerId); var cookie = SecurityContext.AuthenticateMe(currentUser.ID); CookiesManager.SetCookies(CookiesType.AuthKey, cookie); if (!UserManagerWrapper.ValidateEmail(email)) { throw new Exception(Resource.EmailAndPasswordIncorrectEmail); } UserManagerWrapper.CheckPasswordPolicy(pwd); SecurityContext.SetUserPassword(currentUser.ID, pwd); email = email.Trim(); if (currentUser.Email != email) { currentUser.Email = email; currentUser.ActivationStatus = EmployeeActivationStatus.NotActivated; } CoreContext.UserManager.SaveUserInfo(currentUser); if (!string.IsNullOrWhiteSpace(promocode)) { try { CoreContext.PaymentManager.ActivateKey(promocode); } catch (Exception err) { LogManager.GetLogger("ASC.Web.FirstTime").Error("Incorrect Promo: " + promocode, err); throw new Exception(Resource.EmailAndPasswordIncorrectPromocode); } } if (RequestLicense) { TariffSettings.LicenseAccept = true; MessageService.Send(HttpContext.Current.Request, MessageAction.LicenseKeyUploaded); LicenseReader.RefreshLicense(); } if (TenantExtra.Opensource) { settings.Analytics = analytics; } settings.Completed = true; settings.Save(); TrySetLanguage(tenant, lng); StudioNotifyService.Instance.SendCongratulations(currentUser); FirstTimeTenantSettings.SendInstallInfo(currentUser); return(new { Status = 1, Message = Resource.EmailAndPasswordSaved }); } catch (BillingNotFoundException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseKeyNotFound }); } catch (BillingNotConfiguredException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseKeyNotCorrect }); } catch (BillingException) { return(new { Status = 0, Message = UserControlsCommonResource.LicenseException }); } catch (Exception ex) { LogManager.GetLogger("ASC.Web.FirstTime").Error(ex); return(new { Status = 0, Message = ex.Message }); } }
public WizardSettings SaveData(WizardModel wizardModel) { try { var(email, passwordHash, lng, timeZone, promocode, amiid, analytics, subscribeFromSite) = wizardModel; var tenant = TenantManager.GetCurrentTenant(); var settings = SettingsManager.Load <WizardSettings>(); if (settings.Completed) { throw new Exception("Wizard passed."); } if (!string.IsNullOrEmpty(SetupInfo.AmiMetaUrl) && IncorrectAmiId(amiid)) { //throw new Exception(Resource.EmailAndPasswordIncorrectAmiId); TODO } if (tenant.OwnerId == Guid.Empty) { Thread.Sleep(TimeSpan.FromSeconds(6)); // wait cache interval tenant = TenantManager.GetTenant(tenant.TenantId); if (tenant.OwnerId == Guid.Empty) { Log.Error(tenant.TenantId + ": owner id is empty."); } } var currentUser = UserManager.GetUsers(TenantManager.GetCurrentTenant().OwnerId); if (!UserManagerWrapper.ValidateEmail(email)) { throw new Exception(Resource.EmailAndPasswordIncorrectEmail); } if (string.IsNullOrEmpty(passwordHash)) { throw new Exception(Resource.ErrorPasswordEmpty); } SecurityContext.SetUserPasswordHash(currentUser.ID, passwordHash); email = email.Trim(); if (currentUser.Email != email) { currentUser.Email = email; currentUser.ActivationStatus = EmployeeActivationStatus.NotActivated; } UserManager.SaveUserInfo(currentUser); if (!string.IsNullOrWhiteSpace(promocode)) { try { PaymentManager.ActivateKey(promocode); } catch (Exception err) { Log.Error("Incorrect Promo: " + promocode, err); throw new Exception(Resource.EmailAndPasswordIncorrectPromocode); } } if (RequestLicense) { TariffSettings.SetLicenseAccept(SettingsManager); MessageService.Send(MessageAction.LicenseKeyUploaded); LicenseReader.RefreshLicense(); } if (TenantExtra.Opensource) { settings.Analytics = analytics; } settings.Completed = true; SettingsManager.Save(settings); TrySetLanguage(tenant, lng); tenant.TimeZone = TimeZoneConverter.GetTimeZone(timeZone).Id; TenantManager.SaveTenant(tenant); StudioNotifyService.SendCongratulations(currentUser); StudioNotifyService.SendRegData(currentUser); SendInstallInfo(currentUser); if (subscribeFromSite && TenantExtra.Opensource && !CoreBaseSettings.CustomMode) { SubscribeFromSite(currentUser); } return(settings); } catch (BillingNotFoundException) { throw new Exception(UserControlsCommonResource.LicenseKeyNotFound); } catch (BillingNotConfiguredException) { throw new Exception(UserControlsCommonResource.LicenseKeyNotCorrect); } catch (BillingException) { throw new Exception(UserControlsCommonResource.LicenseException); } catch (Exception ex) { Log.Error(ex); throw; } }