Example #1
0
        public static void SaveConfigurationToXMLFile(string fullFileName, string directory, bool changeMarker, string fromNet, string toNet, bool changeKeyFiles, string keyFilesFolder)
        {
            if (File.Exists(fullFileName))
            {
                File.Delete(fullFileName);
            }
            XDocument document = new XDocument(new XElement("NOBuildTools.VersionUpdater"));
            XElement  root     = document.FirstNode as XElement;

            root.Add(new XElement("TargetFolder", XmlConvert.EncodeName(directory)));
            root.Add(new XElement("ChangeMarker", XmlConvert.EncodeName(changeMarker.ToString())));
            root.Add(new XElement("From", XmlConvert.EncodeName(fromNet)));
            root.Add(new XElement("To", XmlConvert.EncodeName(fromNet)));
            root.Add(new XElement("ChangeKeyFiles", XmlConvert.EncodeName(changeKeyFiles.ToString())));
            root.Add(new XElement("KeyFilesFolder", XmlConvert.EncodeName(keyFilesFolder)));

            document.Save(fullFileName);
        }
Example #2
0
        /// <summary>
        /// Gets the array element.
        /// </summary>
        /// <param name="propertyName">The property name.</param>
        /// <param name="input">The input object.</param>
        /// <returns>Returns an XElement with the array collection as child elements.</returns>
        internal XElement GetArrayElement(string propertyName, Array input)
        {
            var name = XmlConvert.EncodeName(propertyName);

            XElement rootElement = new XElement(name);

            var arrayCount = input.GetLength(0);

            for (int i = 0; i < arrayCount; i++)
            {
                var      val          = input.GetValue(i);
                XElement childElement = val.GetType().IsSimpleType() ? new XElement(name + "Child", val) : new XElement(name, SerializeComplexType(val));

                rootElement.Add(childElement);
            }

            return(rootElement);
        }
 protected string GetName(string name, string defaultName, params string[] exclusive)
 {
     if (exclusive.Any(e => !String.IsNullOrEmpty(e)))
     {
         if (!String.IsNullOrEmpty(name))
         {
             throw new Exception("Multiple exclusive properties specified.");
         }
         return(null);
     }
     if (String.IsNullOrEmpty(name))
     {
         return(String.IsNullOrEmpty(defaultName)
             ? null : XmlConvert.EncodeName(defaultName));
     }
     XmlConvert.VerifyName(name);
     return(name);
 }
Example #4
0
 private void WriteHashTable(XmlWriter w, Hashtable value)
 {
     try
     {
         foreach (DictionaryEntry item in value)
         {
             string key = XmlConvert.EncodeName(item.Key.ToString());
             w.WriteStartElement(key);
             object o = item.Value;
             w.WriteString(this.ConvertToString(o));
             w.WriteEndElement();
         }
     }
     catch (Exception x)
     {
         Console.WriteLine(x.Message);
     }
 }
Example #5
0
        private static XElement GetArrayElement(PropertyInfo info, Array input, XNamespace xmlNamespace = null)
        {
            var      name        = XmlConvert.EncodeName(info.Name) ?? "Object";
            XElement rootElement = CreateElement(xmlNamespace, name);
            var      arrayCount  = input?.GetLength(0) ?? 0;

            for (int i = 0; i < arrayCount; i += 1)
            {
                var      val          = input?.GetValue(i);
                var      typeName     = GetTypeName(val.GetType());
                XElement childElement = val.GetType().IsSimpleType()
                    ? CreateElement(xmlNamespace, $"{typeName}", val)
                    : val.ToXml(typeName, xmlNamespace);
                rootElement.Add(childElement);
            }

            return(rootElement);
        }
Example #6
0
        internal static XmlNode ListAsXmlNode <T>(this List <T> items, XmlDocument _doc, string ElementName)
        {
            XmlNode nod = _doc.CreateElement(XmlConvert.EncodeName(ElementName));

            foreach (var item in items)
            {
                IXmlRenderable itemToRender = item as IXmlRenderable;
                if (itemToRender != null)
                {
                    nod.AppendChild(itemToRender.AsXmlNode(_doc, item.GetType().Name));
                }
                else
                {
                    nod.AppendChild(item.AsXmlNode(_doc, "item"));
                }
            }
            return(nod);
        }
Example #7
0
        SignDigitally(
            X509Certificate certificate,
            bool embedCertificate,
            XpsDigSigPartAlteringRestrictions restrictions,
            Guid id,
            bool testIsSignable
            )
        {
            CheckDisposed();

            return(SignDigitally(
                       certificate,
                       embedCertificate,
                       restrictions,
                       XmlConvert.EncodeName(id.ToString()),
                       testIsSignable
                       ));
        }
Example #8
0
        public FileInfo File(string path)
        {
            var result = new FileInfo();

            logger.LogDebug("loading file " + path);


            using (var image = new MagickImage(path))
            {
                result.Filename = path;
                result.Width    = image.Width;
                result.Height   = image.Height;
                result.Hashsum  = XmlConvert.EncodeName(Encoding.ASCII.GetString(MD5.Create().ComputeHash(image.ToByteArray())));
            }

            logger.LogDebug("loading file succeeded");
            return(result);
        }
Example #9
0
        /// <summary>
        /// Gets the array element.
        /// </summary>
        /// <param name="info">The property info.</param>
        /// <param name="input">The input object.</param>
        /// <returns>Returns an XElement with the array collection as child elements.</returns>
        private static XElement GetArrayElement(PropertyInfo info, Array input)
        {
            var name = XmlConvert.EncodeName(info.Name);

            XElement rootElement = new XElement(name);

            var arrayCount = input.GetLength(0);

            for (int i = 0; i < arrayCount; i++)
            {
                var      val          = input.GetValue(i);
                XElement childElement = val.GetType().IsSimpleType() ? new XElement(name + "Child", val) : val.ToXml();

                rootElement.Add(childElement);
            }

            return(rootElement);
        }
        static string GetValidVariableName(ISharepointFieldTo mapping)
        {
            var fixedName = mapping.Name.Replace(" ", "").Replace(".", "").Replace(":", "").Replace(",", "");

            fixedName = XmlConvert.EncodeName(fixedName);
            var startIndexOfEncoding = fixedName.IndexOf("_", StringComparison.OrdinalIgnoreCase);
            var endIndexOfEncoding   = fixedName.LastIndexOf("_", StringComparison.OrdinalIgnoreCase);

            if (startIndexOfEncoding > 0 && endIndexOfEncoding > 0)
            {
                fixedName = fixedName.Remove(startIndexOfEncoding - 1, endIndexOfEncoding - startIndexOfEncoding);
            }
            if (fixedName[0] == 'f' || fixedName[0] == '_' || Char.IsNumber(fixedName[0]))
            {
                fixedName = fixedName.Remove(0, 1);
            }
            return(fixedName);
        }
 private static string ValidateXml(string supposedlyXml)
 {
     try
     {
         XmlReaderSettings xmlReaderSettings = new XmlReaderSettings();
         xmlReaderSettings.ConformanceLevel = ConformanceLevel.Fragment;
         XmlReader xmlReader = XmlReader.Create(new StringReader(supposedlyXml), xmlReaderSettings);
         while (xmlReader.Read())
         {
         }
         xmlReader.Close();
         return(supposedlyXml);
     }
     catch (XmlException)
     {
         return(XmlConvert.EncodeName(supposedlyXml));
     }
 }
Example #12
0
        public void Add(XmlNode componentsNode)
        {
            foreach (XmlNode componentNode in componentsNode.ChildNodes)
            {
                string text     = componentNode.Attributes["Description"].InnerText;
                string fileName = componentNode.Attributes["ContainingFile"].InnerText;

                foreach (ToolStripItem item in _toolstrip.DropDownItems)
                {
                    if (item.Text == text)
                    {
                        return;
                    }
                }

                if (_toolstrip.DropDownItems.Count < 7)
                {
                    ToolStripItem item = _toolstrip.DropDownItems.Add(text);
                    _toolstrip.DropDownItems.Insert(2, item);
                    item.Tag    = fileName;
                    item.Click += _recentClickHandler;

                    XmlNode newNode = _document.CreateElement(System.Xml.XmlConvert.EncodeName(text));
                    newNode.InnerText = fileName;
                    _document.FirstChild.AppendChild(newNode);
                }
                else
                {
                    string  encodedNodeName = XmlConvert.EncodeName(_toolstrip.DropDownItems[5].Text);
                    XmlNode deleteNode      = _document.SelectSingleNode("/TypeLibraries/" + encodedNodeName);
                    _document.FirstChild.RemoveChild(deleteNode);

                    _toolstrip.DropDownItems.Remove(_toolstrip.DropDownItems[6]);
                    ToolStripItem item = _toolstrip.DropDownItems.Add(text);
                    _toolstrip.DropDownItems.Insert(2, item);
                    item.Text = text;
                    item.Tag  = fileName;

                    XmlNode newNode = _document.CreateElement(System.Xml.XmlConvert.EncodeName(text));
                    newNode.InnerText = fileName;
                    _document.FirstChild.AppendChild(newNode);
                }
            }
        }
        public static string TransformTokenTextToXslScript(DataSet udtDataset, string listView, string detailView,
                                                           string headerView, bool pagingEnabled, bool sortingEnabled,
                                                           bool searchEnabled, bool showDetailView,
                                                           string currentListType)
        {
            headerView = Regex.Replace(headerView, "\\[((?:\\w|\\s)+)\\]",
                                       sortingEnabled
                    ? "<xsl:apply-templates select =\"udt:Fields[udt:FieldTitle=\'$1\']\"/>"
                    : "$1");


            string template = LoadXslScriptTemplate(listView, detailView, headerView, pagingEnabled, sortingEnabled,
                                                    searchEnabled, showDetailView, currentListType);

            template =
                (template.Replace("[ ]", SpacePlaceholder).Replace(HardSpace, SpacePlaceholder).Replace("&nbsp;",
                                                                                                        SpacePlaceholder));
            const string attributeRegexPattern = "(?<==\\s*[\'\"][^\'\"<>]*)(\\[{0}\\])(?=[^\'\"<>]*[\"\'])";

            foreach (DataColumn col in udtDataset.Tables[DataSetTableName.Data].Columns)
            {
                template = Regex.Replace(template, string.Format(attributeRegexPattern, col.ColumnName),
                                         string.Format("{{udt:{0}}}", XmlConvert.EncodeName(col.ColumnName)));
                template = template.Replace(string.Format("[{0}]", col.ColumnName),
                                            string.Format(
                                                "<xsl:value-of select=\"udt:{0}\"  disable-output-escaping=\"yes\"/>",
                                                XmlConvert.EncodeName(col.ColumnName)));
            }
            foreach (var contextString in Enum.GetNames(typeof(ContextValues)))
            {
                template = Regex.Replace(template, string.Format(attributeRegexPattern, "Context:" + contextString),
                                         string.Format("{{/udt:UserDefinedTable/udt:Context/udt:{0}}}", contextString));
                template = template.Replace(string.Format("[Context:{0}]", contextString),
                                            string.Format(
                                                "<xsl:value-of select=\"/udt:UserDefinedTable/udt:Context/udt:{0}\"  disable-output-escaping=\"yes\"/>",
                                                contextString));
            }
            template = template.Replace("[UDT:EditLink]", "<xsl:call-template name =\"EditLink\"/>");
            template = template.Replace("[UDT:DetailView]", "<xsl:call-template name =\"DetailView\"/>");
            template = template.Replace("[UDT:ListView]", "<xsl:call-template name =\"ListView\"/>");


            return(PrettyPrint(template).Replace(SpacePlaceholder, HardSpace));
        }
Example #14
0
        public override void RenderValuesToHtmlInsideDataSet(DataSet ds, int moduleId, bool noScript)
        {
            var fields = new ArrayList();

            //List of columns that contains URLs
            foreach (DataRow row in ds.Tables[DataSetTableName.Fields].Rows)
            {
                if (row[FieldsTableColumn.Type].ToString() == Name)
                {
                    var fieldId = (int)row[FieldsTableColumn.Id];
                    var field   = new FieldSetting
                    {
                        Title        = row[FieldsTableColumn.Title].ToString(),
                        FormatString = row[FieldsTableColumn.OutputSettings].AsString("t")
                    };
                    fields.Add(field);
                    var renderedValueColumnName = field.Title + DataTableColumn.Appendix_LocalizedValue;
                    ds.Tables[DataSetTableName.Data].Columns.Add(renderedValueColumnName, typeof(string));
                    ds.Tables[DataSetTableName.Data].Columns.Add(field.Title + DataTableColumn.Appendix_Ticks,
                                                                 typeof(long));
                    row[FieldsTableColumn.ValueColumn] = XmlConvert.EncodeName(renderedValueColumnName);
                }
            }
            if (HttpContext.Current != null)
            {
                var serverTimeZone = PortalController.GetCurrentPortalSettings().TimeZone;
                var userTimeZone   = UserController.GetCurrentUserInfo().Profile.PreferredTimeZone;
                foreach (DataRow row in ds.Tables[DataSetTableName.Data].Rows)
                {
                    foreach (FieldSetting field in fields)
                    {
                        if (Information.IsDate(row[field.Title]))
                        {
                            var d = Convert.ToDateTime(row[field.Title]);

                            var format = "<!--{0:000000000000}-->{1:" + field.FormatString + "}";
                            row[field.Title + DataTableColumn.Appendix_LocalizedValue] = string.Format(format, d.Ticks / 10000000, d);
                            row[field.Title + DataTableColumn.Appendix_Ticks]          = d.Ticks;
                        }
                    }
                }
            }
        }
        protected override XElement MainElement(EmoticonPack emoticonPack)
        {
            if (FileOutputOptions.IsLocalizedText)
            {
                AddLocalizedGameString(emoticonPack);
            }

            return(new XElement(
                       XmlConvert.EncodeName(emoticonPack.Id),
                       string.IsNullOrEmpty(emoticonPack.Name) || FileOutputOptions.IsLocalizedText ? null ! : new XAttribute("name", emoticonPack.Name),
                       string.IsNullOrEmpty(emoticonPack.HyperlinkId) ? null ! : new XAttribute("hyperlinkId", emoticonPack.HyperlinkId),
                       new XAttribute("rarity", emoticonPack.Rarity),
                       string.IsNullOrEmpty(emoticonPack.CollectionCategory) ? null ! : new XAttribute("category", emoticonPack.CollectionCategory),
                       string.IsNullOrEmpty(emoticonPack.EventName) ? null ! : new XAttribute("event", emoticonPack.EventName),
                       emoticonPack.ReleaseDate.HasValue ? new XAttribute("releaseDate", emoticonPack.ReleaseDate.Value.ToString("yyyy-MM-dd")) : null !,
                       string.IsNullOrEmpty(emoticonPack.SortName) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("SortName", emoticonPack.SortName),
                       string.IsNullOrEmpty(emoticonPack.Description?.RawDescription) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("Description", GetTooltip(emoticonPack.Description, FileOutputOptions.DescriptionType)),
                       emoticonPack.EmoticonIds != null && emoticonPack.EmoticonIds.Any() ? new XElement("Emoticons", emoticonPack.EmoticonIds.Select(x => new XElement("Emoticon", x))) : null !));
        }
Example #16
0
        public XmlDocument ToXml()
        {
            XmlDocument doc = new XmlDocument();

            doc.AppendChild(doc.CreateElement(XmlConvert.EncodeName(info.Name)));

            //if lastFilledNode is null no one state has been validated by the workflow and then the "product" of the workflow is empty
            if (lastFilledNode != null)
            {
                Node nextNode = initialNode;
                while (nextNode != lastFilledNode)
                {
                    doc.FirstChild.AppendChild(doc.ImportNode(nextNode.ToXml(), true));
                    nextNode = nextNode.Next;
                }
                doc.FirstChild.AppendChild(doc.ImportNode(lastFilledNode.ToXml(), true));
            }
            return(doc);
        }
Example #17
0
        private static XElement ToXml(object input, string name)
        {
            var type       = input.GetType();
            var properties = type.GetProperties();

            var root = new XElement(XmlConvert.EncodeName(name));

            var elements = from p in properties
                           let n                                               = XmlConvert.EncodeName(p.Name)
                                                     let v                     = p.GetValue(input, null)
                                                                       let val = p.PropertyType.IsAllowedType()
                    ? new XElement(p.Name, p.GetValue(input))
                    : ToXml(p.GetValue(input), p.Name)
                                                                                 where val != null
                                                                                 select val;

            root.Add(elements);
            return(root);
        }
        protected override XElement MainElement(Banner banner)
        {
            if (FileOutputOptions.IsLocalizedText)
            {
                AddLocalizedGameString(banner);
            }

            return(new XElement(
                       XmlConvert.EncodeName(banner.Id),
                       string.IsNullOrEmpty(banner.Name) || FileOutputOptions.IsLocalizedText ? null ! : new XAttribute("name", banner.Name),
                       string.IsNullOrEmpty(banner.HyperlinkId) ? null ! : new XAttribute("hyperlinkId", banner.HyperlinkId),
                       string.IsNullOrEmpty(banner.AttributeId) ? null ! : new XAttribute("attributeId", banner.AttributeId),
                       new XAttribute("rarity", banner.Rarity),
                       new XAttribute("category", banner.CollectionCategory !),
                       string.IsNullOrEmpty(banner.EventName) ? null ! : new XAttribute("event", banner.EventName),
                       banner.ReleaseDate.HasValue ? new XAttribute("releaseDate", banner.ReleaseDate.Value.ToString("yyyy-MM-dd")) : null !,
                       string.IsNullOrEmpty(banner.SortName) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("SortName", banner.SortName),
                       string.IsNullOrEmpty(banner.Description?.RawDescription) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("Description", GetTooltip(banner.Description, FileOutputOptions.DescriptionType))));
        }
        private void CreateElement(
            JsonReader reader,
            IXmlDocument document,
            IXmlNode currentNode,
            string elementName,
            XmlNamespaceManager manager,
            string elementPrefix,
            Dictionary <string, string> attributeNameValues)
        {
            IXmlElement element = this.CreateElement(elementName, document, elementPrefix, manager);

            currentNode.AppendChild((IXmlNode)element);
            foreach (KeyValuePair <string, string> attributeNameValue in attributeNameValues)
            {
                string   str       = XmlConvert.EncodeName(attributeNameValue.Key);
                string   prefix    = MiscellaneousUtils.GetPrefix(attributeNameValue.Key);
                IXmlNode attribute = !string.IsNullOrEmpty(prefix) ? document.CreateAttribute(str, manager.LookupNamespace(prefix) ?? string.Empty, attributeNameValue.Value) : document.CreateAttribute(str, attributeNameValue.Value);
                element.SetAttributeNode(attribute);
            }
            if (reader.TokenType == JsonToken.String || reader.TokenType == JsonToken.Integer || (reader.TokenType == JsonToken.Float || reader.TokenType == JsonToken.Boolean) || reader.TokenType == JsonToken.Date)
            {
                string xmlValue = this.ConvertTokenToXmlValue(reader);
                if (xmlValue == null)
                {
                    return;
                }
                element.AppendChild(document.CreateTextNode(xmlValue));
            }
            else
            {
                if (reader.TokenType == JsonToken.Null)
                {
                    return;
                }
                if (reader.TokenType != JsonToken.EndObject)
                {
                    manager.PushScope();
                    this.DeserializeNode(reader, document, manager, (IXmlNode)element);
                    manager.PopScope();
                }
                manager.RemoveNamespace(string.Empty, manager.DefaultNamespace);
            }
        }
        protected override XElement MainElement(HeroSkin heroSkin)
        {
            if (FileOutputOptions.IsLocalizedText)
            {
                AddLocalizedGameString(heroSkin);
            }

            return(new XElement(
                       XmlConvert.EncodeName(heroSkin.Id),
                       string.IsNullOrEmpty(heroSkin.Name) || FileOutputOptions.IsLocalizedText ? null : new XAttribute("name", heroSkin.Name),
                       new XAttribute("hyperlinkId", heroSkin.HyperlinkId),
                       new XAttribute("attributeId", heroSkin.AttributeId),
                       new XAttribute("rarity", heroSkin.AttributeId),
                       heroSkin.ReleaseDate.HasValue ? new XAttribute("releaseDate", heroSkin.ReleaseDate.Value.ToString("yyyy-MM-dd")) : null,
                       string.IsNullOrEmpty(heroSkin.SortName) || FileOutputOptions.IsLocalizedText ? null : new XElement("SortName", heroSkin.SortName),
                       string.IsNullOrEmpty(heroSkin.SearchText) || FileOutputOptions.IsLocalizedText ? null : new XElement("SearchText", heroSkin.SearchText),
                       string.IsNullOrEmpty(heroSkin.Description?.RawDescription) || FileOutputOptions.IsLocalizedText ? null : new XElement("Description", GetTooltip(heroSkin.Description, FileOutputOptions.DescriptionType)),
                       heroSkin.Features.Any() ? new XElement("Features", heroSkin.Features.Select(f => new XElement("Feature", f))) : null));
        }
Example #21
0
        internal static XmlNode DictionaryAsXmlNode <T>(this Dictionary <string, T> items, XmlDocument _doc, string ElementName)
        {
            XmlNode nod = _doc.CreateElement(XmlConvert.EncodeName(ElementName));

            foreach (var itemKV in items)
            {
                IXmlRenderable valToRender = itemKV.Value as IXmlRenderable;
                if (valToRender != null)
                {
                    var newNode = nod.AppendChild(((IXmlRenderableInternal)valToRender).AsXml(_doc));
                    ((XmlElement)newNode).SetAttribute("key", itemKV.Key);
                }
                else
                {
                    nod.AppendChild(itemKV.Value.AsXmlNode(_doc, itemKV.Value.GetType().Name, itemKV.Key));
                }
            }
            return(nod);
        }
    public static void WriteNode(XmlWriter xmlWriter, ConfigurationNode node)
    {
        string xmlElementName;
        string xmlAttributeValue;

        if (node.HasName)
        {
            var nodeName    = node.Name;
            var encodedName = XmlConvert.EncodeName(nodeName);

            if (nodeName == encodedName)
            {
                xmlElementName    = nodeName;
                xmlAttributeValue = null;
            }
            else
            {
                xmlElementName    = ConfigurationElementName.Node;
                xmlAttributeValue = nodeName;
            }
        }
        else
        {
            xmlElementName    = ConfigurationElementName.Node;
            xmlAttributeValue = null;
        }

        using (xmlWriter.WriteElement(xmlElementName))
        {
            if (xmlAttributeValue != null)
            {
                xmlWriter.WriteAttributeString("name", xmlAttributeValue);
            }

            Write(xmlWriter, node.Attributes);

            foreach (var childNode in node.ChildNodes)
            {
                WriteNode(xmlWriter, childNode);
            }
        }
    }
        public List <ColumnSchema> GetDataSchema(SqlConnection connection)
        {
            List <ColumnSchema> schemas = new List <ColumnSchema>();

            string sqlQuery = string.Format("Select * From {0} where 1 = 0", this.tableName);

            DataTable dataTable = new DataTable(this.tableName);

            using (SqlDataAdapter adapter = new SqlDataAdapter(sqlQuery, connection))
            {
                adapter.FillSchema(dataTable, SchemaType.Source);
            }

            foreach (DataColumn column in dataTable.Columns)
            {
                schemas.Add(new ColumnSchema(column.ColumnName, XmlConvert.EncodeName(column.ColumnName), column.DataType, Type.GetTypeCode(column.DataType).ToString(), column.AllowDBNull, column.MaxLength));
            }

            return(schemas);
        }
        protected override XElement MainElement(RewardPortrait rewardPortrait)
        {
            if (FileOutputOptions.IsLocalizedText)
            {
                AddLocalizedGameString(rewardPortrait);
            }

            return(new XElement(
                       XmlConvert.EncodeName(rewardPortrait.Id),
                       string.IsNullOrEmpty(rewardPortrait.Name) || FileOutputOptions.IsLocalizedText ? null ! : new XAttribute("name", rewardPortrait.Name),
                       string.IsNullOrEmpty(rewardPortrait.HyperlinkId) ? null ! : new XAttribute("hyperlinkId", rewardPortrait.HyperlinkId),
                       new XAttribute("rarity", rewardPortrait.Rarity),
                       string.IsNullOrEmpty(rewardPortrait.HeroId) ? null ! : new XAttribute("heroId", rewardPortrait.HeroId),
                       new XAttribute("iconSlot", rewardPortrait.IconSlot),
                       string.IsNullOrEmpty(rewardPortrait.PortraitPackId) ? null ! : new XAttribute("PortraitPackId", rewardPortrait.PortraitPackId),
                       string.IsNullOrEmpty(rewardPortrait.CollectionCategory) ? null ! : new XAttribute("category", rewardPortrait.CollectionCategory),
                       string.IsNullOrEmpty(rewardPortrait.Description?.RawDescription) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("Description", GetTooltip(rewardPortrait.Description, FileOutputOptions.DescriptionType)),
                       string.IsNullOrEmpty(rewardPortrait.DescriptionUnearned?.RawDescription) || FileOutputOptions.IsLocalizedText ? null ! : new XElement("DescriptionUnearned", GetTooltip(rewardPortrait.DescriptionUnearned, FileOutputOptions.DescriptionType)),
                       GetImageObject(rewardPortrait)));
        }
Example #25
0
        internal static void SaveCredentials(SessionOptions credentials)
        {
            ValidateStorage(credentials.HostName);

            var xml = new XmlDocument();

            using (var writer = XmlWriter.Create(GetFilePath(credentials.HostName), new XmlWriterSettings()
            {
                Indent = true
            }))
            {
                writer.WriteStartDocument();
                writer.WriteStartElement(XmlConvert.EncodeName(credentials.HostName));
                writer.WriteElementString("fingerprint", XmlConvert.EncodeName(credentials.SshHostKeyFingerprint));
                writer.WriteEndElement();
                writer.WriteEndDocument();

                xml.Save(writer);
            }
        }
Example #26
0
        protected override void Exporting(OEmbedPart part, ContentManagement.Handlers.ExportContentContext context)
        {
            var partName = XmlConvert.EncodeName(typeof(OEmbedPart).Name);

            var infosetPart = part.As <InfosetPart>();

            if (infosetPart != null)
            {
                // OEmbedPart is not versionable thats why using Infoset.Element instead of VersionInfoset.Element
                var element = infosetPart.Infoset.Element;

                var partElement = element.Element(partName);
                if (partElement == null)
                {
                    return;
                }

                context.Element(partName).Add(partElement.Elements());
            }
        }
Example #27
0
        private async Task ExportPromoAsync(XmlWriter xml, Product product, String URL)
        {
            var promos = await _abcPromoService.GetActivePromosByProductIdAsync(product.Id);

            if (!promos.Any())
            {
                return;
            }

            xml.WriteStartElement(_promosTag);

            foreach (var promo in promos)
            {
                xml.WriteStartElement(_promoTag);
                xml.WriteAttributeString("name", XmlConvert.EncodeName(promo.Description));
                xml.WriteValue(XmlSanitize(URL + promo.GetPdfPath()));
                xml.WriteEndElement();
            }
            xml.WriteEndElement();
        }
        private static XElement _ToXml(object input, string element, int?arrayIndex = null, string arrayName = null)
        {
            if (input == null)
            {
                return(null);
            }

            if (String.IsNullOrEmpty(element))
            {
                var name = input.GetType().Name;
                element = name.Contains("AnonymousType")
                    ? "Object"
                    : arrayIndex != null
                        ? arrayName + "_" + arrayIndex
                        : name;
            }

            element = XmlConvert.EncodeName(element);
            var ret = new XElement(element);

            var type  = input.GetType();
            var props = type.GetProperties();

            var elements = props.Select(p =>
            {
                var pType = Nullable.GetUnderlyingType(p.PropertyType) ?? p.PropertyType;
                var name  = XmlConvert.EncodeName(p.Name);
                var val   = pType.IsArray ? "array" : p.GetValue(input, null);
                var value = pType.IsEnumerable()
                    ? GetEnumerableElements(p, (IEnumerable)p.GetValue(input, null))
                    : pType.IsSimpleType2() || pType.IsEnum
                        ? new XElement(name, val)
                        : val.ToXml2(name);
                return(value);
            })
                           .Where(v => v != null);

            ret.Add(elements);

            return(ret);
        }
Example #29
0
        /// <summary>
        /// Converts an anonymous type to an XElement.
        /// </summary>
        /// <param name="input">The input.</param>
        /// <param name="element">The element name.</param>
        /// <returns>Returns the object as it's XML representation in an XElement.</returns>
        public static XElement ToXml(this object input, string element)
        {
            try
            {
                if (input == null)
                {
                    return(null);
                }

                if (String.IsNullOrWhiteSpace(element))
                {
                    element = "object";
                }

                element = XmlConvert.EncodeName(element);
                var ret = new XElement(element);

                if (input != null)
                {
                    var type  = input.GetType();
                    var props = type.GetProperties();
                    //.Where(p => p.GetIndexParameters().Length == 0);


                    var elements = from prop in props
                                   let name                                                         = XmlConvert.EncodeName(prop.Name)
                                                                    let val                         = prop.PropertyType.IsArray ? "array" : prop.GetValue(input, null)
                                                                                          let value = prop.PropertyType.IsArray ? GetArrayElement(prop, (Array)prop.GetValue(input, null)) : (prop.PropertyType.IsSimpleType() ? new XElement(name, val) : val.ToXml(name))
                                                                                                      where value != null
                                                                                                      select value;

                    ret.Add(elements);
                }

                return(ret);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #30
0
        public string AddImage(string filePath, string imageId)
        {
            if (this.PartType != XmlParts.RibbonX12 && this.PartType != XmlParts.RibbonX14)
            {
                return(null);
            }

            if (filePath == null)
            {
                throw new ArgumentNullException(nameof(filePath));
            }

            if (filePath.Length == 0)
            {
                return(null);
            }

            var fileName = Path.GetFileNameWithoutExtension(filePath);

            if (imageId == null)
            {
                imageId = XmlConvert.EncodeName(fileName);
            }

            if (imageId == null)
            {
                throw new ArgumentNullException(nameof(imageId));
            }

            if (imageId.Length == 0)
            {
                throw new ArgumentException(StringsResource.idsNonEmptyId);
            }

            if (this.Part.RelationshipExists(imageId))
            {
                imageId = "rId";
            }

            return(this.AddImageHelper(filePath, imageId));
        }