void AddNewWebsite() { // todo : this is tightly coupled. var newWebsite = new WebsiteViewModel(new WeeklyWebsite(GenerateNewID(), "", "", PageStyle.Index, DateTime.MinValue)); Websites.Add(newWebsite); SelectedWebsite = newWebsite; }
private void AddWebsite(Website website) { if (website != null) { Websites.Add(website); if (!UnsavedChanges) { UnsavedChanges = true; } RaisePropertyChanged(nameof(PopulatedWebsiteList)); } }
public EntityOffice(EntityOffice iValue) { if (iValue.OfficialsList != null) { OfficialsList = (EntityLeaderList)iValue.OfficialsList.Clone(); } if (iValue.Location != null) { Location = (GeoPoint)iValue.Location.Clone(); } if (iValue.Address != null) { Address = (ThaiAddress)iValue.Address.Clone(); } foreach (Uri lUri in iValue.Websites) { Websites.Add(lUri); } Type = iValue.Type; }
internal override void Parse() { if (Websites == null) { Websites = new List <Website>(); } XNamespace serialisationNamespace = SerialisationNamespace; XElement rootElements = Document.Element(GetSchema() + RootElement); foreach (var element in rootElements.Elements(GetSchema() + "Site")) { var site = new Website() { Hostname = new List <string>() }; // get the compute modefrom the instance if (element.Element(GetSchema() + "ComputeMode") != null) { site.ComputeMode = (ComputeMode)Enum.Parse(typeof(ComputeMode), element.Element(GetSchema() + "ComputeMode").Value, true); } // get the name of the site as in xxxx.azurewebsites.net if (element.Element(GetSchema() + "Name") != null) { site.Name = element.Element(GetSchema() + "Name").Value; } // test to see whether the sitehas been enabled if (element.Element(GetSchema() + "Enabled") != null) { site.Enabled = bool.Parse(element.Element(GetSchema() + "Enabled").Value); } // get the underlying webspace that this site is in if (element.Element(GetSchema() + "WebSpace") != null) { site.Webspace = element.Element(GetSchema() + "WebSpace").Value; } // get the usage of this website if (element.Element(GetSchema() + "UsageState") != null) { site.Usage = (WebsiteUsage)Enum.Parse(typeof(WebsiteUsage), element.Element(GetSchema() + "UsageState").Value, true); } // get the state of the website if (element.Element(GetSchema() + "State") != null) { site.State = (WebsiteState)Enum.Parse(typeof(WebsiteState), element.Element(GetSchema() + "State").Value, true); } // get the hostnames using the serialisation namespace // EnabledHostNames [ xmlns:a= ] if (element.Element(GetSchema() + "EnabledHostNames") != null) { foreach (var hostNameElement in element.Element(GetSchema() + "EnabledHostNames"). Elements(serialisationNamespace + "string")) { site.Hostname.Add(hostNameElement.Value); } } // get the state of the website if (element.Element(GetSchema() + "SiteMode") != null) { site.Mode = (SiteMode)Enum.Parse(typeof(SiteMode), element.Element(GetSchema() + "SiteMode").Value, true); } // get the state of the website if (element.Element(GetSchema() + "ComputeMode") != null) { site.ComputeMode = (ComputeMode)Enum.Parse(typeof(ComputeMode), element.Element(GetSchema() + "ComputeMode").Value); } Websites.Add(site); } CommandResponse = Websites; }
public void Deserialize(XmlNode node) { int tempInt; decimal tempDecimal; foreach (XmlAttribute productAttribute in node.Attributes) { switch (productAttribute.Name) { #region Basic Properties case "Name": Name = productAttribute.Value; break; case "UniqueID": Guid tempGuid; if (Guid.TryParse(productAttribute.Value, out tempGuid)) { UniqueID = tempGuid; } break; case "Index": if (int.TryParse(productAttribute.Value, out tempInt)) { Index = tempInt; } break; case "Category": Category = productAttribute.Value; break; case "SubCategory": SubCategory = productAttribute.Value; break; case "RateType": RateType = productAttribute.Value; switch (RateType) { case "0": RateType = "CPM"; break; case "1": RateType = "Fixed"; break; } break; case "Location": Location = productAttribute.Value; break; case "Width": if (int.TryParse(productAttribute.Value, out tempInt)) { Width = tempInt; } else { Width = null; } break; case "Height": if (int.TryParse(productAttribute.Value, out tempInt)) { Height = tempInt; } else { Height = null; } break; case "EnableTarget": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { EnableTarget = temp; } } break; case "EnableLocation": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { EnableLocation = temp; } } break; case "EnableRichMedia": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { EnableRichMedia = temp; } } break; #endregion #region Additional Properties case "UserDefinedName": UserDefinedName = productAttribute.Value; break; case "DurationType": DurationType = productAttribute.Value; break; case "DurationValue": if (int.TryParse(productAttribute.Value, out tempInt)) { DurationValue = tempInt; } else { DurationValue = null; } break; case "Strength1": Strength1 = productAttribute.Value; break; case "Strength2": Strength2 = productAttribute.Value; break; case "MonthlyInvestment": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { MonthlyInvestment = tempDecimal; } else { MonthlyInvestment = null; } break; case "MonthlyImpressions": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { MonthlyImpressions = tempDecimal; } else { MonthlyImpressions = null; } break; case "MonthlyCPM": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { MonthlyCPM = tempDecimal; } else { MonthlyCPM = null; } break; case "TotalInvestment": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { TotalInvestment = tempDecimal; } else { TotalInvestment = null; } break; case "TotalImpressions": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { TotalImpressions = tempDecimal; } else { TotalImpressions = null; } break; case "TotalCPM": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { TotalCPM = tempDecimal; } else { TotalCPM = null; } break; case "DefaultRate": if (Decimal.TryParse(productAttribute.Value, out tempDecimal)) { DefaultRate = tempDecimal; } else { DefaultRate = null; } break; case "Formula": if (int.TryParse(productAttribute.Value, out tempInt)) { Formula = (FormulaType)tempInt; } break; case "InvestmentDetails": InvestmentDetails = productAttribute.Value; break; case "EnableComment": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { EnableComment = tempBool; } } break; case "CommentManualEdit": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { CommentManualEdit = tempBool; } } break; case "ShowCommentTargeting": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { ShowCommentTargeting = temp; } } break; case "ShowCommentRichMedia": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { ShowCommentRichMedia = temp; } } break; case "Comment": _userComment = productAttribute.Value; break; case "DescriptionManualEdit": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { DescriptionManualEdit = tempBool; } } break; case "ShowDimensions": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { ShowDimensions = temp; } } break; case "ShowDescriptionTargeting": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { ShowDescriptionTargeting = temp; } } break; case "ShowDescriptionRichMedia": { bool temp; if (Boolean.TryParse(productAttribute.Value, out temp)) { ShowDescriptionRichMedia = temp; } } break; case "Description": Description = productAttribute.Value; break; case "UserDescription": _userDescription = productAttribute.Value; break; #endregion #region Show Properties case "ShowFlightDates": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowFlightDates = tempBool; } } break; case "ShowDuration": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowDuration = tempBool; } } break; case "ShowAllPricingMonthly": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowAllPricingMonthly = tempBool; } } break; case "ShowAllPricingTotal": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowAllPricingTotal = tempBool; } } break; case "ShowMonthlyInvestments": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowMonthlyInvestments = tempBool; } } break; case "ShowMonthlyImpressions": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowMonthlyImpressions = tempBool; } } break; case "ShowTotalInvestments": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowTotalInvestments = tempBool; } } break; case "ShowTotalImpressions": { bool tempBool; if (bool.TryParse(productAttribute.Value, out tempBool)) { ShowTotalImpressions = tempBool; } } break; #endregion } } Websites.Clear(); foreach (XmlNode childNode in node.ChildNodes) { switch (childNode.Name) { case "Website": Websites.Add(childNode.InnerText); break; case "PackageRecord": PackageRecord.Deserialize(childNode); break; case "SummaryItem": SummaryItem.Deserialize(childNode); break; case "ProductInfo": var productInfo = new ProductInfo(); productInfo.Deserialize(childNode); AddtionalInfo.Add(productInfo); break; } } }
private void LoadOnlineStrategy(StorageFile listsSourceFile) { SlideHeaders.Clear(); Websites.Clear(); Strengths.Clear(); Categories.Clear(); ProductSources.Clear(); if (!listsSourceFile.ExistsLocal()) { return; } var document = new XmlDocument(); document.Load(listsSourceFile.LocalPath); var node = document.SelectSingleNode(@"/OnlineStrategy"); if (node == null) { return; } foreach (XmlNode childeNode in node.ChildNodes) { switch (childeNode.Name) { case "Header": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!string.IsNullOrEmpty(attribute.Value) && !SlideHeaders.Contains(attribute.Value)) { SlideHeaders.Add(attribute.Value); } break; } } break; case "Site": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!string.IsNullOrEmpty(attribute.Value) && !Websites.Contains(attribute.Value)) { Websites.Add(attribute.Value); } break; } } break; case "Strength": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!string.IsNullOrEmpty(attribute.Value) && !Strengths.Contains(attribute.Value)) { Strengths.Add(attribute.Value); } break; } } break; case "PricingStrategy": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!string.IsNullOrEmpty(attribute.Value) && !PricingStrategies.Contains(attribute.Value)) { PricingStrategies.Add(attribute.Value); } break; } } break; case "PositionColumn": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!string.IsNullOrEmpty(attribute.Value) && !ColumnPositions.Contains(attribute.Value)) { ColumnPositions.Add(attribute.Value); } break; } } break; case "DefaultFormula": switch (childeNode.InnerText.ToLower().Trim()) { case "cpm": DefaultFormula = FormulaType.CPM; break; case "investment": DefaultFormula = FormulaType.Investment; break; case "impressions": DefaultFormula = FormulaType.Impressions; break; } break; case "LockedMode": { bool temp; if (Boolean.TryParse(childeNode.InnerText, out temp)) { LockedMode = temp; } } break; case "SpecialLinksEnable": { bool temp; if (Boolean.TryParse(childeNode.InnerText, out temp)) { SpecialLinksEnable = temp; } } break; case "SpecialButtonsGroupName": SpecialLinksGroupName = childeNode.InnerText; break; case "SpecialButtonsGroupLogo": if (string.IsNullOrEmpty(childeNode.InnerText)) { SpecialLinksGroupLogo = null; } else { SpecialLinksGroupLogo = new Bitmap(new MemoryStream(Convert.FromBase64String(childeNode.InnerText))); } break; case "Browser": SpecialLinkBrowsers.Add(childeNode.InnerText); break; case "SpecialButton": var specialLinkButton = new SpecialLinkButton(); GetSpecialButton(childeNode, ref specialLinkButton); if (!String.IsNullOrEmpty(specialLinkButton.Name) && !String.IsNullOrEmpty(specialLinkButton.Type) && specialLinkButton.Paths.Any()) { SpecialLinkButtons.Add(specialLinkButton); } break; case "Targeting": { var productInfo = new ProductInfo { Type = ProductInfoType.Targeting }; productInfo.Deserialize(childeNode); TargetingRecods.Add(productInfo); } break; case "RichMedia": { var productInfo = new ProductInfo { Type = ProductInfoType.RichMedia }; productInfo.Deserialize(childeNode); RichMediaRecods.Add(productInfo); } break; case "Category": var category = new Category(); GetCategories(childeNode, ref category); if (!string.IsNullOrEmpty(category.Name)) { Categories.Add(category); } break; case "Product": var productSource = new ProductSource(); GetProductProperties(childeNode, ref productSource); if (!string.IsNullOrEmpty(productSource.Name)) { ProductSources.Add(productSource); } break; case "Status": foreach (XmlAttribute attribute in childeNode.Attributes) { switch (attribute.Name) { case "Value": if (!Statuses.Contains(attribute.Value)) { Statuses.Add(attribute.Value); } break; } } break; case "DefaultHomeViewSettings": DefaultHomeViewSettings.Deserialize(childeNode); break; case "DefaultDigitalProductSettings": DefaultDigitalProductSettings.Deserialize(childeNode); break; case "DefaultDigitalProductPackageSettings": DefaultDigitalProductPackageSettings.Deserialize(childeNode); break; case "DefaultDigitalStandalonePackageSettings": DefaultDigitalStandalonePackageSettings.Deserialize(childeNode); break; case "DigitalControlsConfiguration": DefaultControlsConfiguration = JsonConvert.DeserializeObject <DigitalControlsConfiguration>(Encoding.Unicode.GetString(Convert.FromBase64String(childeNode.InnerText)), new JsonImageConverter()); break; } } }