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 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(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 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); }