} // en dof ImageFormat /// <summary> /// Determine the Url of the named string /// </summary> /// <param name="name">The name.</param> /// <param name="width">The width.</param> /// <param name="height">The height.</param> /// <returns></returns> internal static string Url(string name, out int width, out int height) { string url = string.Empty; // Obtain PortalSettings from Current Context PortalSettings PortalSettings = (PortalSettings)HttpContext.Current.Items["PortalSettings"]; try { // current theme Theme CurrentTheme = PortalSettings.GetCurrentTheme(); //TODO: verify default works in all cases Image image = CurrentTheme.GetImage(name, "~/Design/Themes/Default/" + name.Substring(8)); // dimensions width = (int)image.Width.Value; height = (int)image.Height.Value; // url url = image.ImageUrl; } catch { width = 0; height = 0; } return(url); } // end of Url
/// <summary> /// Gets the current image from theme. /// </summary> /// <param name="name">The name.</param> /// <param name="bydefault">The bydefault.</param> /// <returns>A string value...</returns> public string GetCurrentImageFromTheme(string name, string bydefault) { // Obtain PortalSettings from Current Context if (HttpContext.Current != null && HttpContext.Current.Items["PortalSettings"] != null) { PortalSettings pS = (PortalSettings)HttpContext.Current.Items["PortalSettings"]; return(pS.GetCurrentTheme().GetImage(name, bydefault).ImageUrl); } return(bydefault); }
/// <summary> /// Gets the editor. /// </summary> /// <param name="PlaceHolderHTMLEditor">The place holder HTML editor.</param> /// <param name="moduleID">The module ID.</param> /// <param name="showUpload">if set to <c>true</c> [show upload].</param> /// <param name="portalSettings">The portal settings.</param> /// <returns></returns> public IHtmlEditor GetEditor(Control PlaceHolderHTMLEditor, int moduleID, bool showUpload, PortalSettings portalSettings) { IHtmlEditor DesktopText; string moduleImageFolder = ModuleSettings.GetModuleSettings(moduleID)["MODULE_IMAGE_FOLDER"].ToString(); // Grabs ID from the place holder so that a unique editor is on the page if more than one // But keeps same ID so that the information can be submitted to be saved. [CDT] string uniqueID = PlaceHolderHTMLEditor.ID; switch (Value) { case "FCKEditor V2": // [email protected] 2004/11/09. FCKTextBoxV2 fckv2 = new FCKTextBoxV2(); fckv2.ImageFolder = moduleImageFolder; fckv2.BasePath = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/"); fckv2.AutoDetectLanguage = false; fckv2.DefaultLanguage = portalSettings.PortalUILanguage.Name.Substring(0, 2); // fckv2.EditorAreaCSS = portalSettings.GetCurrentTheme().CssFile; fckv2.ID = string.Concat("FCKTextBox", uniqueID); string conector = Path.ApplicationRootPath("/app_support/FCKconnectorV2.aspx"); fckv2.ImageBrowserURL = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/editor/filemanager/browser.html?Type=Image&Connector=" + conector); fckv2.LinkBrowserURL = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/FCKEditorV2/editor/filemanager/browser.html?Connector=" + conector); DesktopText = ((IHtmlEditor)fckv2); break; case "FreeTextBox": FreeTextBox freeText = new FreeTextBox(); freeText.ToolbarLayout = "ParagraphMenu,FontFacesMenu,FontSizesMenu,FontForeColorPicker,FontBackColorPicker,FontForeColorsMenu|Bold,Italic,Underline,Strikethrough;Superscript,Subscript,RemoveFormat;CreateLink,Unlink|JustifyLeft,JustifyRight,JustifyCenter,JustifyFull;BulletedList,NumberedList,Indent,Outdent;InsertRule|Delete,Cut,Copy,Paste;Undo,Redo,Print;InsertTable,InsertTableColumnAfter,InsertTableColumnBefore,InsertTableRowAfter,InsertTableRowBefore,DeleteTableColumn,DeleteTableRow,InsertImageFromGallery"; freeText.ImageGalleryUrl = Path.WebPathCombine(Path.ApplicationFullPath, "app_support/ftb.imagegallery.aspx?rif={0}&cif={0}&mID=" + moduleID.ToString()); freeText.ImageFolder = moduleImageFolder; freeText.ImageGalleryPath = Path.WebPathCombine(portalSettings.PortalFullPath, freeText.ImageFolder); freeText.ID = string.Concat("FreeText", uniqueID); freeText.Language = getFtbLanguage(portalSettings.PortalUILanguage.Name); DesktopText = ((IHtmlEditor)freeText); break; case "ActiveUp HtmlTextBox": HtmlTextBox h = new HtmlTextBox(); h.ImageFolder = moduleImageFolder; DesktopText = (IHtmlEditor)h; // Allow content editors to see the content with the same style that it is displayed in h.ContentCssFile = portalSettings.GetCurrentTheme().CssFile; // Custom Properties must come after control is added to placeholder h.EnsureToolsCreated(); // Set the icons folder h.IconsDir = Path.WebPathCombine(Path.ApplicationRoot, "aspnet_client/ActiveUp/icons/"); // Add the Help icon StringBuilder sbHelp = new StringBuilder(); sbHelp.Append("var Help=window.open('"); sbHelp.Append(Path.ApplicationRoot); sbHelp.Append("/aspnet_client/ActiveUp/"); sbHelp.Append( "htmltextbox_help.html', 'HTML_TextBox_Help', 'height=520, width=520, resizable=yes, scrollbars=yes, menubar=no, toolbar=no, directories=no, location=no, status=no');Help.moveTo('20', '20');"); Custom openPage = new Custom(); openPage.IconOff = "help_off.gif"; openPage.IconOver = "help_off.gif"; openPage.ClientSideOnClick = sbHelp.ToString(); h.Toolbars[0].Tools.Add(openPage); // Add the image library Image imageLibrary = (Image)h.Toolbars[0].Tools["Image"]; imageLibrary.AutoLoad = true; // Clear the directories collection because it is stored in ViewState and must be cleared or upload will result in display of multiple directories of the same name imageLibrary.Directories.Clear(); imageLibrary.Directories.Add("images", HttpContext.Current.Server.MapPath(portalSettings.PortalFullPath + h.ImageFolder), portalSettings.PortalFullPath + h.ImageFolder + "/"); if (!showUpload) { imageLibrary.UploadDisabled = true; } break; case "Plain Text": default: DesktopText = (new TextEditor()); break; } PlaceHolderHTMLEditor.Controls.Add(((Control)DesktopText)); return(DesktopText); }