public void ProcessRequest(HttpContext context) { var type = context.Request["logotype"]; if (string.IsNullOrEmpty(type)) { return; } var imgUrl = ""; var coBrandingType = (CoBrandingLogoTypeEnum)Convert.ToInt32(type); var general = Convert.ToBoolean(context.Request["general"] ?? "true"); var isDefIfNoCoBranding = Convert.ToBoolean(context.Request["defifnoco"] ?? "false"); if (TenantLogoManager.CoBrandingEnabled) { var _tenantCoBrandingSettings = SettingsManager.Instance.LoadSettings <TenantCoBrandingSettings>(TenantProvider.CurrentTenantID); imgUrl = _tenantCoBrandingSettings.GetAbsoluteLogoPath(coBrandingType, general); if (coBrandingType == CoBrandingLogoTypeEnum.Dark) { var defaultDarkLogoPath = TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.Dark, general); if (String.Equals(imgUrl, defaultDarkLogoPath, StringComparison.OrdinalIgnoreCase)) { /*** simple scheme ***/ var _tenantInfoSettings = SettingsManager.Instance.LoadSettings <TenantInfoSettings>(TenantProvider.CurrentTenantID); imgUrl = _tenantInfoSettings.GetAbsoluteCompanyLogoPath(); /***/ } } } else { if (isDefIfNoCoBranding) { imgUrl = TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(coBrandingType, general); } else { if (coBrandingType == CoBrandingLogoTypeEnum.Dark) { /*** simple scheme ***/ var _tenantInfoSettings = SettingsManager.Instance.LoadSettings <TenantInfoSettings>(TenantProvider.CurrentTenantID); imgUrl = _tenantInfoSettings.GetAbsoluteCompanyLogoPath(); /***/ } else { imgUrl = TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(coBrandingType, general); } } } context.Response.ContentType = "image"; context.Response.Redirect(imgUrl); }
public object RestoreCoBrandingOptions(bool isRetina) { try { SecurityContext.DemandPermissions(SecutiryConstants.EditPortalSettings); var _tenantCoBrandingSettings = SettingsManager.Instance.LoadSettings <TenantCoBrandingSettings>(TenantProvider.CurrentTenantID); _tenantCoBrandingSettings.RestoreDefault(); SettingsManager.Instance.SaveSettings(_tenantCoBrandingSettings, TenantProvider.CurrentTenantID); /*** simple scheme restore logo***/ var _tenantInfoSettings = SettingsManager.Instance.LoadSettings <TenantInfoSettings>(TenantProvider.CurrentTenantID); _tenantInfoSettings.RestoreDefaultLogo(); SettingsManager.Instance.SaveSettings(_tenantInfoSettings, TenantProvider.CurrentTenantID); /***/ return(new { Status = 1, Message = CoBrandingResource.SuccessfullySaveCoBrandingSettingsMessage, LogoPath = JsonConvert.SerializeObject( new Dictionary <int, string>() { { (int)CoBrandingLogoTypeEnum.Light, TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.Light, !isRetina) }, { (int)CoBrandingLogoTypeEnum.LightSmall, TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.LightSmall, !isRetina) }, { (int)CoBrandingLogoTypeEnum.Dark, TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.Dark, !isRetina) }, { (int)CoBrandingLogoTypeEnum.Favicon, TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.Favicon, !isRetina) }, { (int)CoBrandingLogoTypeEnum.DocsEditor, TenantCoBrandingSettings.GetAbsoluteDefaultLogoPath(CoBrandingLogoTypeEnum.DocsEditor, !isRetina) } }) }); } catch (Exception e) { return(new { Status = 0, Message = e.Message.HtmlEncode() }); } }
public FileUploadResult ProcessUpload(HttpContext context) { var result = new FileUploadResult(); try { var type = Convert.ToInt32(context.Request["logotype"]); var coBrandingType = (CoBrandingLogoTypeEnum)type; if (context.Request.Files.Count != 0) { var logo = context.Request.Files[0]; var data = new byte[logo.InputStream.Length]; var br = new BinaryReader(logo.InputStream); br.Read(data, 0, (int)logo.InputStream.Length); br.Close(); var size = TenantCoBrandingSettings.GetSize(coBrandingType, false); //get size using (var memory = new MemoryStream(data)) using (var image = Image.FromStream(memory)) { var actualSize = image.Size; if (actualSize.Height != size.Height || actualSize.Width != size.Width) { throw new ImageSizeLimitException(); } } var ap = UserPhotoManager.SaveTempPhoto(data, SetupInfo.MaxImageUploadSize, size.Width, size.Height); result.Success = true; result.Message = ap; } else { result.Success = false; result.Message = Resource.ErrorEmptyUploadFileSelected; } } catch (ImageWeightLimitException) { result.Success = false; result.Message = Resource.ErrorImageWeightLimit; } catch (ImageSizeLimitException) { result.Success = false; result.Message = CoBrandingResource.ErrorImageSize; } catch (Exception ex) { result.Success = false; result.Message = ex.Message.HtmlEncode(); } return(result); }