public void contentpicker(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options ContentPickerOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<ContentPickerOptions>(element.prevalues); } else { options = new ContentPickerOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Content Picker"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Start Node ID", options.startNodeID.ToString(), "widgetStartNodeID"); addTextBoxOption(prevalueTable, "Allowed DocTypeIDs (CSV)", options.allowedDocTypeIDs, "widgetDocTypeIDs"); addCheckBoxOption(prevalueTable, "Allow Multiple?", options.allowMultiple, "widgetAllowMultiple"); addCheckBoxOption(prevalueTable, "Show All Doc Types?", options.showAllDocTypes, "widgetShowAllDocTypes"); addTextBoxOption(prevalueTable, "JS Path", options.jsPath, "widgetCpJsPath"); addTextBoxOption(prevalueTable, "CSS Path", options.cssPath, "widgetCpCssPath"); ///////////////////////// addButtons(tr); }
public void damp(WidgetElement element, HtmlTable gridTable) { if (!Widget_Builder.HasDamp) { return; } //deserialize the prevalues into options DampOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<DampOptions>(element.prevalues); } else { options = new DampOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "DAMP"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Extensions (CSV)", options.allowedExtensions, "widgetFileExtensions"); addTextBoxOption(prevalueTable, "Selectable Media Node ID's (CSV)", options.selectableMediaNodes, "widgetSelectableNodes"); addTextBoxOption(prevalueTable, "Createable Media Node ID's (CSV)", options.createableMediaNodes, "widgetCreateableNodes"); addTextBoxOption(prevalueTable, "Default Media Type Node ID", options.defaultMediaNodeID.ToString(), "widgetDefaultNodeID"); addTextBoxOption(prevalueTable, "Media Tree Start Node ID", options.startNodeID, "widgetStartNodeID"); addCheckBoxOption(prevalueTable, "Allow Multiple?", options.allowMultiple, "widgetAllowMultiple"); addCheckBoxOption(prevalueTable, "Hide Create?", options.hideCreate, "widgetHideCreate"); addCheckBoxOption(prevalueTable, "Hide Edit?", options.hideEdit, "widgetHideEdit"); addCheckBoxOption(prevalueTable, "Hide Open?", options.hideOpen, "widgetHideOpen"); addCheckBoxOption(prevalueTable, "Hide Pixlr?", options.hidePixlr, "widgetHidePixlr"); addTextBoxOption(prevalueTable, "Image Cropper Property Alias", options.imageCropperAlias, "widgetCropperAlias"); addCheckBoxOption(prevalueTable, "Enable Search?", options.enableSearch, "widgetEnableSearch"); addCheckBoxOption(prevalueTable, "Enable Search Auto Suggest?", options.enableSearchAutoSuggest, "widgetEnableSearchAutoSuggest"); addRadioButtonList(prevalueTable, "Search Under Selected Node?", "all,selected", options.searchMethod, "widgetSearchMethod"); ///////////////////////// addButtons(tr); }
public void contentpicker(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues ContentPickerOptions prevalues = jsonSerializer.Deserialize<ContentPickerOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); DataInterface dataExtractor = new DataInterface(); dataExtractor.Value = ""; //get the value from the XML XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); ContentPicker_DataEditor contentPicker = new ContentPicker_DataEditor(dataExtractor, new ContentPicker_Options() {startNodeID=prevalues.startNodeID, allowedDocTypeIDs=prevalues.allowedDocTypeIDs, allowMultiple=prevalues.allowMultiple, showAllDocTypes=prevalues.showAllDocTypes, jsPath=prevalues.jsPath, cssPath=prevalues.cssPath}); try { contentPicker.currentData = element.InnerXml; } catch (Exception e) { contentPicker.currentData = "<contentPicker/>"; } HtmlGenericControl mediaWrapper = new HtmlGenericControl(); mediaWrapper.Controls.Add(contentPicker); mediaWrapper.TagName = "div"; mediaWrapper.Attributes["class"] = "widgeContentPicker " + prevalues.className; controlWrapper.Controls.Add(contentPicker); }
protected HtmlGenericControl buildControlWrapper(HtmlGenericControl widgetElementsDiv, string elementName, string title, string description, WidgetElement schemaElement, XmlNode widgetNode) { //set widget element permissions WidgetElementPermissions widgetElementPermission = new WidgetElementPermissions(); try { widgetElementPermission = user.WidgetPermissions.widgets[dataTypeDefinition.UniqueId.ToString()].elements[elementName]; } catch (Exception e) { } //determine if hidden string hideWidgetElementClass = ""; if (widgetElementPermission.hide) { hideWidgetElementClass = "widgetHidden"; } //create outer wrapper HtmlGenericControl elementWrapper = new HtmlGenericControl(); elementWrapper.TagName = "div"; elementWrapper.Attributes["class"] = "widgetElementWrapper " + hideWidgetElementClass; widgetElementsDiv.Controls.Add(elementWrapper); elementWrapper.Attributes["elementName"] = elementName; elementWrapper.Attributes["type"] = schemaElement.type; //create label wrapper HtmlGenericControl labelWrapper = new HtmlGenericControl(); labelWrapper.TagName = "div"; labelWrapper.Attributes["class"] = "widgetLabelWrapper"; labelWrapper.InnerHtml = HttpUtility.UrlDecode(title)+"<div><small>"+NewLineToBreak(HttpUtility.UrlDecode(description))+"</small></div>"; elementWrapper.Controls.Add(labelWrapper); //create control wrapper HtmlGenericControl controlWrapper = new HtmlGenericControl(); controlWrapper.TagName = "div"; controlWrapper.Attributes["class"] = "widgetControlWrapper"; elementWrapper.Controls.Add(controlWrapper); return controlWrapper; }
public void spreadsheet(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options SpreadsheetOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<SpreadsheetOptions>(element.prevalues); } else { options = new SpreadsheetOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Spreadsheet"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Classes (CSV)", options.classes, "widgetClasses"); ///////////////////////// addButtons(tr); }
public void tinymce(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options TinyMceOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<TinyMceOptions>(element.prevalues); } else { options = new TinyMceOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "TinyMCE"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Path to TinyMCE Options", options.JSpath, "widgetJsPath"); ///////////////////////// addButtons(tr); }
public void mediapicker(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues MediaPickerOptions prevalues = jsonSerializer.Deserialize<MediaPickerOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); //include media picker JS string mediaPickerJS = string.Format("<script src=\"{0}\" ></script>", "/umbraco/controls/Images/ImageViewer.js"); ScriptManager.RegisterClientScriptBlock(Page, typeof(Widget_Builder_DataEditor), "WidgetBuilderMediaPicker", mediaPickerJS, false); DataInterface dataExtractor = new DataInterface(); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); dataExtractor.Value = element.InnerText; } catch (Exception e) { dataExtractor.Value = ""; } mediaChooser mediaChooser = new mediaChooser(dataExtractor, true, true); HtmlGenericControl mediaWrapper = new HtmlGenericControl(); mediaWrapper.Controls.Add(mediaChooser); mediaWrapper.TagName = "div"; mediaWrapper.Attributes["class"] = "widgetMediaPicker " + prevalues.className; controlWrapper.Controls.Add(mediaChooser); }
public void list(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options ListOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<ListOptions>(element.prevalues); } else { options = new ListOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "List"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Max Indents", options.maxIndents.ToString(), "widgetMaxIndents"); ///////////////////////// addButtons(tr); }
public void list(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues ListOptions prevalues = jsonSerializer.Deserialize<ListOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); DataInterface dataExtractor = new DataInterface(); TextBoxListOptions listOptions = new TextBoxListOptions(); listOptions.indentedLimit = prevalues.maxIndents.ToString(); TextBoxList_DataEditor list = new TextBoxList_DataEditor(dataExtractor, listOptions); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); dataExtractor.Value = element.InnerXml; list.currentData = element.InnerXml; } catch (Exception e) { dataExtractor.Value = "<list><item indent='0'/></list>"; } HtmlGenericControl listWrapper = new HtmlGenericControl(); listWrapper.Controls.Add(list); listWrapper.TagName = "div"; listWrapper.Attributes["class"] = "widgetList " + prevalues.className; controlWrapper.Controls.Add(listWrapper); }
public void map(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues MapOptions prevalues = jsonSerializer.Deserialize<MapOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); DataInterface dataExtractor = new DataInterface(); dataExtractor.Value = ""; XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); uNews.GoogleMap.DataEditor googleMap = new uNews.GoogleMap.DataEditor(dataExtractor, new uNews.GoogleMap.Options() { lat = prevalues.lat, lng=prevalues.lng, address=prevalues.address, zoom=prevalues.zoom}); try { googleMap.CurrentData = element.OuterXml; } catch (Exception e) { googleMap.CurrentData = uNews.GoogleMap.DefaultData.defaultXML; } controlWrapper.Controls.Add(googleMap); }
public void dropdown(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues DropdownOptions prevalues = jsonSerializer.Deserialize<DropdownOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); string selectedValue = ""; //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); selectedValue = HttpUtility.UrlDecode(element.InnerText); } catch (Exception e) { } DropDownList ddl = new DropDownList(); ddl.CssClass = "widgetDropdown " + prevalues.className; if (prevalues.useSelect) { System.Web.UI.WebControls.ListItem selectOption = new System.Web.UI.WebControls.ListItem("- Select -", ""); ddl.Items.Add(selectOption); } foreach(ListItem item in prevalues.items){ System.Web.UI.WebControls.ListItem listoption = new System.Web.UI.WebControls.ListItem(HttpUtility.UrlDecode(item.display), HttpUtility.UrlDecode(item.value)); ddl.Items.Add(listoption); if (HttpUtility.UrlDecode(item.value) == selectedValue) { listoption.Selected = true; } } controlWrapper.Controls.Add(ddl); }
public void datepicker(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues DatePickerOptions prevalues = jsonSerializer.Deserialize<DatePickerOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); TextBox textbox = new TextBox(); textbox.CssClass = "widgetDatePicker " + prevalues.className; controlWrapper.Controls.Add(textbox); string datePickerJS = string.Format("<script src=\"{0}\" ></script>", prevalues.JSpath); ScriptManager.RegisterClientScriptBlock(Page, typeof(Widget_Builder_DataEditor), "WidgetBuilderDatePickerJS" + prevalues.JSpath, datePickerJS, false); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); textbox.Text = HttpUtility.HtmlDecode(element.InnerText); } catch (Exception e) { } }
public void damp(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { if (!Widget_Builder.HasDamp) { return; } //deserialize element prevalues DampOptions prevalues = jsonSerializer.Deserialize<DampOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); //include media picker JS string dampJS = string.Format("<script src=\"{0}\" ></script>", "/umbraco/plugins/DigibizAdvancedMediaPicker/DAMPScript.js"); ScriptManager.RegisterClientScriptBlock(Page, typeof(Widget_Builder_DataEditor), "WidgetBuilderDamp", dampJS, false); Damp_Data_Editor_Extension damp = new Damp_Data_Editor_Extension(); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); //Log.Add(LogTypes.Debug, 0, "sab=>" + saveBox.Text); //Log.Add(LogTypes.Debug, 0, "outer=>"+element.OuterXml); damp._value = element.InnerText; } catch (Exception e){ //Log.Add(LogTypes.Error, 0, e.Message); } damp.SelectMultipleNodesValue = true; damp.HidePixlrValue = prevalues.hidePixlr; damp.HideOpenValue = prevalues.hideOpen; damp.HideCreateValue = prevalues.hideCreate; damp.HideEditValue = prevalues.hideEdit; damp.ThumbnailWidthValue = 50; damp.MaximumNodesValue = -1; damp.MinimumNodesValue = -1; damp.AllowedExtensionsValue = prevalues.allowedExtensions; damp.AllowedCreateableMediaTypesValue = prevalues.createableMediaNodes; damp.AllowedSelectableMediaTypesValue = prevalues.selectableMediaNodes; damp.DefaultMediaTypeValue = prevalues.defaultMediaNodeID; damp.SelectMultipleNodesValue = prevalues.allowMultiple; damp.EnableSearch = prevalues.enableSearch; damp.EnableSearchAutoSuggest = prevalues.enableSearchAutoSuggest; damp.SearchMethod = prevalues.searchMethod; if (prevalues.startNodeID != "") { damp.StartNodeIdValue = Convert.ToInt32(prevalues.startNodeID); } damp.CropPropertyAliasValue = prevalues.imageCropperAlias; HtmlGenericControl dampWrapper = new HtmlGenericControl(); dampWrapper.Controls.Add(damp); dampWrapper.TagName = "div"; dampWrapper.Attributes["class"] = "widgetDamp " + prevalues.className; controlWrapper.Controls.Add(dampWrapper); }
public void dropdown(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options DropdownOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<DropdownOptions>(element.prevalues); } else { options = new DropdownOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Dropdown"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addCheckBoxOption(prevalueTable, "Use 'Select'", options.useSelect, "widgetUseSelect"); addListOption(prevalueTable, "Options", options.items, "widgetListTable"); ///////////////////////// addButtons(tr); }
public void spreadsheet(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { if (!Widget_Builder.HasSpreadsheet) { return; } //deserialize element prevalues SpreadsheetOptions prevalues = jsonSerializer.Deserialize<SpreadsheetOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); DataInterface dataExtractor = new DataInterface(); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); dataExtractor.Value = element.OuterXml; } catch (Exception e) { Log.Add(LogTypes.Custom, 0, "WidgetBuilder=>"+e.Message); dataExtractor.Value = "<table class=''><thead></thead><tbody></tbody></table>"; } SpreadsheetDataEditor spreadSheet = new SpreadsheetDataEditor(dataExtractor, HttpUtility.UrlDecode(prevalues.classes) + "|"); HtmlGenericControl spreadsheetWrapper = new HtmlGenericControl(); spreadsheetWrapper.Controls.Add(spreadSheet); spreadsheetWrapper.TagName = "div"; spreadsheetWrapper.Attributes["class"] = "widgetSpreadsheet " + prevalues.className; controlWrapper.Controls.Add(spreadSheet); }
public void inlinepicker(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options InlineOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<InlineOptions>(element.prevalues); } else { options = new InlineOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Inline Image Picker"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Media IDs (CSV)", options.mediaIDs, "widgetMediaIDs"); ///////////////////////// addButtons(tr); }
public void textarea(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues TextareaOptions prevalues = jsonSerializer.Deserialize<TextareaOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); TextBox textbox = new TextBox(); textbox.TextMode = TextBoxMode.MultiLine; textbox.CssClass = "widgetTextarea " + prevalues.className; controlWrapper.Controls.Add(textbox); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); textbox.Text = HttpUtility.HtmlDecode(element.InnerXml.Replace("<br />", "\n")); } catch (Exception e) { Log.Add(LogTypes.Custom, 0, e.Message); } }
public void map(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options MapOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<MapOptions>(element.prevalues); } else { options = new MapOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Map"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addTextBoxOption(prevalueTable, "Lat", options.lat, "widgetLat"); addTextBoxOption(prevalueTable, "Lng", options.lng, "widgetLng"); addTextBoxOption(prevalueTable, "Zoom", options.zoom.ToString(), "widgetZoom"); addTextBoxOption(prevalueTable, "Address", options.address, "widgetAddress"); ///////////////////////// addButtons(tr); }
//implements each method named based on element type public void textbox(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues TextboxOptions prevalues = jsonSerializer.Deserialize<TextboxOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); TextBox textbox = new TextBox(); textbox.CssClass = "widgetTextBox " + prevalues.className; controlWrapper.Controls.Add(textbox); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); textbox.Text = HttpUtility.HtmlDecode(element.InnerText); } catch (Exception e) { } }
//implement a method that is named by the element type public void textbox(WidgetElement element, HtmlTable gridTable) { //Log.Add(LogTypes.Debug, 0, "here"); //deserialize the prevalues into options TextboxOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<TextboxOptions>(element.prevalues); } else { options = new TextboxOptions(); } HtmlTableRow tr=createGridTableRow(gridTable, element.type, "Textbox"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); ///////////////////////// addButtons(tr); }
public void tinymce(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //tinyMCE library load string tinyMCE = string.Format("<script src=\"{0}\" ></script>", "/umbraco/plugins/tinymce3/tinymce3tinymceCompress.aspx?rnd=913ab2c2-c264-4abb-b92d-f3b9702bc32f&module=gzipmodule&themes=umbraco&plugins=contextmenu,umbracomacro,umbracoembed,noneditable,inlinepopups,table,advlink,paste,spellchecker,umbracoimg,umbracocss,umbracopaste,umbracolink,umbracocontextmenu&languages=en"); ScriptManager.RegisterClientScriptBlock(Page, typeof(Widget_Builder_DataEditor), "WidgetBuilderTinyMceJS", tinyMCE, false); //deserialize element prevalues TinyMceOptions prevalues = jsonSerializer.Deserialize<TinyMceOptions>(schemaElement.prevalues); string tinyMceJS = string.Format("<script src=\"{0}\" ></script>", prevalues.JSpath); ScriptManager.RegisterClientScriptBlock(Page, typeof(Widget_Builder_DataEditor), "WidgetBuilderTinyMceJS2" + prevalues.JSpath, tinyMceJS, false); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); TextBox textbox = new TextBox(); textbox.TextMode = TextBoxMode.MultiLine; textbox.CssClass = "widgetTinyMCE " + prevalues.className; controlWrapper.Controls.Add(textbox); //get the value from the XML try { XmlNode element = widgetNode.SelectSingleNode(prevalues.elementName); textbox.Text = HttpUtility.HtmlDecode(element.InnerXml.Replace("<![CDATA[", "").Replace("]]>", "").Replace("<br />", "\n")); } catch (Exception e) { Log.Add(LogTypes.Custom, 0, e.Message); } }
public void checkradio(WidgetElement element, HtmlTable gridTable) { //deserialize the prevalues into options CheckRadioOptions options; if (element.prevalues != "") { options = jsonSerializer.Deserialize<CheckRadioOptions>(element.prevalues); } else { options = new CheckRadioOptions(); } HtmlTableRow tr = createGridTableRow(gridTable, element.type, "Check\\Radio"); ///////////////////////// //prevalues HtmlTable prevalueTable = createPrevalueTable(tr); addTextBoxOption(prevalueTable, "Title", options.title, "widgetTitle"); addTextBoxOption(prevalueTable, "Element Name", options.elementName, "widgetElementName"); addTextBoxOption(prevalueTable, "Class", options.className, "widgetClass"); addTextBoxOption(prevalueTable, "Description", options.description, "widgetDescription", true); addCheckBoxOption(prevalueTable, "Render as checkbox?", options.isCheckbox, "widgetIsCheckbox"); addCheckBoxOption(prevalueTable, "Check by default?", options.defaultChecked, "widgetDefaultChecked"); addListOption(prevalueTable, "Options", options.items, "widgetListTable"); ///////////////////////// addButtons(tr); }
public void checkradio(HtmlGenericControl widgetElementsDiv, WidgetElement schemaElement, XmlNode widgetNode) { //deserialize element prevalues CheckRadioOptions prevalues = jsonSerializer.Deserialize<CheckRadioOptions>(schemaElement.prevalues); HtmlGenericControl controlWrapper = buildControlWrapper(widgetElementsDiv, prevalues.elementName, prevalues.title, prevalues.description, schemaElement, widgetNode); List<string> selectedValues = new List<string> { }; //get the value from the XML bool anySelected = false; try { XmlNodeList values = widgetNode.SelectNodes (prevalues.elementName+"/value"); foreach (XmlNode thisValue in values) { selectedValues.Add(HttpUtility.HtmlDecode(thisValue.InnerText)); anySelected = true; } } catch (Exception e) { //Log.Add(LogTypes.Debug, 0, e.Message); } if (prevalues.isCheckbox) { CheckBoxList cbl = new CheckBoxList(); cbl.CssClass = "widgetCheckBox " + prevalues.className; foreach (ListItem item in prevalues.items) { System.Web.UI.WebControls.ListItem listItem = new System.Web.UI.WebControls.ListItem(HttpUtility.HtmlDecode(HttpUtility.UrlDecode(item.display)), HttpUtility.UrlDecode(item.value)); if (selectedValues.Any(x => x == HttpUtility.HtmlDecode(item.value))) { listItem.Selected = true; } cbl.Items.Add(listItem); } //default to the first selected if (!anySelected && prevalues.defaultChecked) { foreach(System.Web.UI.WebControls.ListItem item in cbl.Items){ item.Selected=true; } } controlWrapper.Controls.Add(cbl); } else { RadioButtonList rbl = new RadioButtonList(); rbl.CssClass = "widgetRadio " + prevalues.className; foreach (ListItem item in prevalues.items) { System.Web.UI.WebControls.ListItem listItem = new System.Web.UI.WebControls.ListItem(HttpUtility.HtmlDecode(HttpUtility.UrlDecode(item.display)), HttpUtility.UrlDecode(item.value)); if (selectedValues.Any(x => x == HttpUtility.HtmlDecode(item.value))) { listItem.Selected = true; anySelected = true; } rbl.Items.Add(listItem); } //default to the first selected if (!anySelected && prevalues.defaultChecked) { rbl.Items[0].Selected = true; } controlWrapper.Controls.Add(rbl); } }