public void TestGetNameSpacesForSite() { IInputContext context = DnaMockery.CreateDatabaseInputContext(); // Create the namespace object and call the add namespace method NameSpaces testNameSpace = new NameSpaces(context); // Create the list of anmespace to add List<NameSpaceItem> namespaces = new List<NameSpaceItem>(); namespaces.Add(AddNameSpaceToSite(1, "category")); namespaces.Add(AddNameSpaceToSite(1, "mood")); namespaces.Add(AddNameSpaceToSite(1, "people")); namespaces.Add(AddNameSpaceToSite(1, "places")); foreach (NameSpaceItem name in namespaces) { // check to make sure the name was added correctly Assert.IsTrue(name.ID > 0, "NameSpaceId is zero! Failed to create new name space. namespace being added = " + name.Name); } using (IDnaDataReader reader = context.CreateDnaDataReader("getnamespacesforsite")) { // Now get all the namespaces for the site and comparte the results with the known values. List<NameSpaceItem> foundNameSpaces = testNameSpace.GetNameSpacesForSite(1); for (int i = 0; i < foundNameSpaces.Count; i++) { Assert.AreEqual(namespaces[i].Name, foundNameSpaces[i].Name, "The namespaces found are not the same as the ones added for Names"); Assert.AreEqual(namespaces[i].ID, foundNameSpaces[i].ID, "The namespaces found are not the same as the ones added for IDs"); } } }
public override void OnPageLoad() { Context.Items["VirtualUrl"] = "EditDynamicListDefinition"; //UseDotNetRendering = true; if ( Page.IsPostBack ) return; CustomValidator.IsValid = true; if (!IsDnaUserAllowed()) { CustomValidator.IsValid = false; return; } //Sort options cmbSort.Items.Add(new ListItem("Date Created","DATECREATED")); cmbSort.Items.Add(new ListItem("Date Updated","DATEUPDATED")); cmbSort.Items.Add(new ListItem("Rating","RATING")); cmbSort.Items.Add(new ListItem("Vote Count","VOTECOUNT")); cmbSort.Items.Add(new ListItem("Significance","SIGNIFICANCE")); cmbSort.Items.Add(new ListItem("Bookmark Count","BOOKMARKCOUNT")); cmbSort.Items.Add(new ListItem("Event Date","EVENTDATE")); cmbSort.Items.Add(new ListItem("PostCount (CommentForums)", "COMMENTCOUNT")); //Type cmbType.Items.Add(new ListItem("Topics","TOPICFORUMS")); cmbType.Items.Add(new ListItem("Articles","ARTICLES")); cmbType.Items.Add(new ListItem("Forums","FORUMS")); cmbType.Items.Add(new ListItem("CommentForums","COMMENTFORUMS")); cmbType.Items.Add(new ListItem("Clubs","CLUBS")); cmbType.Items.Add(new ListItem("Threads","THREADS")); cmbType.Items.Add(new ListItem("Categories","CATEGORIES")); cmbType.Items.Add(new ListItem("Users","USERS")); cmbType.Items.Add(new ListItem("Campaign Diary Entries","CAMPAIGNDIARYENTRIES")); //Status options cmbStatus.Items.Add(new ListItem("All","ALL")); cmbStatus.Items.Add(new ListItem("Submittable - 1","1")); cmbStatus.Items.Add(new ListItem("Referred - 2","2")); cmbStatus.Items.Add(new ListItem("Pre-Moderation - 3","3")); cmbStatus.Items.Add(new ListItem("Considered/Submitted - 4","4")); cmbStatus.Items.Add(new ListItem("Locked by Editor - 5","5")); cmbStatus.Items.Add(new ListItem("Awaiting Approval - 6","6")); cmbStatus.Items.Add(new ListItem("Deleted - 7","7")); cmbStatus.Items.Add(new ListItem("User Entry Locked by Staff - 8","8")); cmbStatus.Items.Add(new ListItem("Key Article - 9","9")); cmbStatus.Items.Add(new ListItem("General Page - 10","10")); cmbStatus.Items.Add(new ListItem("Awaiting Rejection - 11","11")); cmbStatus.Items.Add(new ListItem("Awaiting Editors Decision - 12","12")); cmbStatus.Items.Add(new ListItem("Awaiting to go Official - 13","13")); int m = 1; foreach (string month in months) { cmbStartMonth.Items.Add(new ListItem(month, Convert.ToString(m))); cmbEndMonth.Items.Add(new ListItem(month, Convert.ToString(m))); ++m; } for (int i = 1900; i <= 2100; ++i) { cmbStartYear.Items.Add(new ListItem(Convert.ToString(i), Convert.ToString(i))); cmbEndYear.Items.Add(new ListItem(Convert.ToString(i), Convert.ToString(i))); } CalStartDate.VisibleDate = DateTime.Now; CalEndDate.VisibleDate = DateTime.Now; NameSpaces siteNameSpaces = new NameSpaces(_basePage); List<NameSpaceItem> namespaces = siteNameSpaces.GetNameSpacesForSite(_basePage.CurrentSite.SiteID); cmbNameSpaces.Items.Add(new ListItem("None",string.Empty)); foreach (NameSpaceItem n in namespaces) { cmbNameSpaces.Items.Add(new ListItem(n.Name,n.Name)); } //Record ID of List being edited. int id = Request.GetParamIntOrZero("id", "id"); ViewState.Add("ID", id); // Get details for List Definition from DB using (IDnaDataReader dataReader = _basePage.CreateDnaDataReader("dynamiclistgetlist")) { dataReader.AddParameter("@listid", id); dataReader.Execute(); if (dataReader.Read()) { string sXML = dataReader.GetString("XML"); //Parse XML XmlDocument xmldoc = new XmlDocument(); xmldoc.LoadXml(sXML); //Name XmlNode xmlNde; if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/NAME")) != null) txtName.Text = xmlNde.InnerText; //Rating if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/RATING")) != null) txtRating.Text = xmlNde.InnerText; //BookMarks if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/BOOKMARKCOUNT")) != null) txtBookmarkCount.Text = xmlNde.InnerText; //Status if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/STATUS")) != null) cmbStatus.SelectedValue = xmlNde.InnerText; //Type if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/TYPE")) != null) cmbType.SelectedValue = xmlNde.InnerText; if ( (xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/COMMENTFORUMUIDPREFIX")) != null ) txtCommentForumUIDPrefix.Text = xmlNde.InnerText; //ArticleType if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/ARTICLETYPE")) != null) txtArticleType.Text = xmlNde.InnerText; //Article Date Range Start if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/ARTICLESTARTDATE")) != null) { DateTime startdate = DateTime.Parse(xmlNde.InnerText); CalStartDate.VisibleDate = startdate; CalStartDate.SelectedDate = startdate; lblStartDate.Text = startdate.ToString("dd/MM/yy"); cmbStartYear.SelectedValue = Convert.ToString(startdate.Year); cmbStartMonth.SelectedValue = Convert.ToString(startdate.Month); } else { cmbStartYear.SelectedValue = Convert.ToString(DateTime.Now.Year); cmbStartMonth.SelectedValue = Convert.ToString(DateTime.Now.Month); } //Article Date Range End if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/ARTICLEENDDATE")) != null) { DateTime enddate = DateTime.Parse(xmlNde.InnerText); //The end date is midnight next day. //Date range is displayed inclusive so take off a day for display. enddate = enddate.AddDays(-1); CalEndDate.VisibleDate = enddate; CalEndDate.SelectedDate = enddate; lblEndDate.Text = enddate.ToString("dd/MM/yy"); cmbEndYear.SelectedValue = Convert.ToString(enddate.Year); cmbEndMonth.SelectedValue = Convert.ToString(enddate.Month); } else { cmbEndYear.SelectedValue = Convert.ToString(DateTime.Now.Year); cmbEndMonth.SelectedValue = Convert.ToString(DateTime.Now.Month); } //Significance if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/SIGNIFICANCE")) != null) txtSignificance.Text = xmlNde.InnerText; //Date Created if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/DATECREATED")) != null) txtDateCreated.Text = xmlNde.InnerText; //Last Updated if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/LASTUPDATED")) != null) txtLastUpdated.Text = xmlNde.InnerText; //Sort. if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/SORTBY")) != null) cmbSort.SelectedValue = xmlNde.InnerText; //ThreadType if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/THREADTYPE")) != null) txtThreadType.Text = xmlNde.InnerText; //Categories XmlNode xmlCategories = xmldoc.SelectSingleNode("LISTDEFINITION/CATEGORIES"); if (xmlCategories != null) { for (int i = 0; i < xmlCategories.ChildNodes.Count; i++) { XmlNode category = xmlCategories.ChildNodes[i]; XmlNode nodeid = category.SelectSingleNode("ID"); XmlNode name = category.SelectSingleNode("NAME"); ListItem item = new ListItem(name.InnerText, nodeid.InnerText); lstCategories.Items.Add(item); } } //Key Phrases XmlNodeList xmlKeyPhrases = xmldoc.SelectNodes("LISTDEFINITION/KEYPHRASES/PHRASE"); if (xmlKeyPhrases.Count > 0) { for (int i = 0; i < xmlKeyPhrases.Count; ++i) { XmlNode xmlName = xmlKeyPhrases[i].SelectSingleNode("NAME"); string name = string.Empty; if (xmlName != null) { name = xmlName.InnerText; } else { //Legacy XML support. name = xmlKeyPhrases[i].InnerText; } string nspace = string.Empty; XmlNode xmlNameSpace = xmlKeyPhrases[i].SelectSingleNode("NAMESPACE"); if (xmlNameSpace != null) { nspace = xmlNameSpace.InnerText; } ListItem item = new ListItem( nspace == string.Empty ? name : nspace + ":" + name,nspace + "|" + name ); lstKeyPhrases.Items.Add(item); } } // VoteCount if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/VOTECOUNT")) != null) txtVoteCount.Text = xmlNde.InnerText; // EventDate if ((xmlNde = xmldoc.SelectSingleNode("LISTDEFINITION/EVENTDATE")) != null) txtEventDate.Text = xmlNde.InnerText; } } }