/// <summary> /// Shows the list. /// </summary> private void ShowList() { bool showAllPages = (int.Parse(lstLanguages.SelectedItem.Value) < 1); CultureInfo[] listaLang = LanguageSwitcher.GetLanguageList(true); EnhancedHtmlDB ehdb = new EnhancedHtmlDB(); SqlDataReader dr; lstPages.Items.Clear(); if (showAllPages) { dr = ehdb.GetAllPages(ModuleID, WorkFlowVersion.Staging); } else { dr = ehdb.GetLocalizedPages(ModuleID, int.Parse(lstLanguages.SelectedItem.Value), WorkFlowVersion.Staging); } try { while (dr.Read()) { if (showAllPages) { int ccode = int.Parse(dr["CultureCode"].ToString()); string texto = string.Empty; foreach (CultureInfo ci in listaLang) { if (ccode == ci.LCID) texto = ci.DisplayName; } if (texto.Length != 0) { lstPages.Items.Add( new ListItem((string) dr["Title"] + " (" + texto + ")", dr["ItemID"].ToString())); } } else { lstPages.Items.Add(new ListItem((string) dr["Title"], dr["ItemID"].ToString())); } } } finally { dr.Close(); } if (lstPages.Items.Count > 0) { lstPages.SelectedIndex = 0; cmdEditPage.Enabled = true; cmdDeletePage.Enabled = true; } else { cmdEditPage.Enabled = false; cmdDeletePage.Enabled = false; } }
/// <summary> /// Gives the me pages. /// </summary> /// <param name="addInvariantCulture"> /// if set to <c>true</c> [add invariant culture]. /// </param> /// <returns> /// </returns> /// <remarks> /// </remarks> private DataTable GiveMePages(bool addInvariantCulture) { var selected = false; var selectedPage = -1; if (this.ehPageId != null) { selectedPage = int.Parse(this.ehPageId); } var tabla = new DataTable("LocalizedPages"); tabla.Columns.Add(new DataColumn("ItemID", typeof(string))); tabla.Columns.Add(new DataColumn("Title", typeof(string))); tabla.Columns.Add(new DataColumn("DesktopHtml", typeof(string))); var ehdb = new EnhancedHtmlDB(); using ( var dr = ehdb.GetLocalizedPages(this.ModuleID, this.PortalSettings.PortalUILanguage.LCID, this.Version)) { while (dr.Read()) { this.AddPageRow(tabla, dr["ItemID"].ToString(), (string)dr["Title"], (string)dr["DesktopHtml"]); if (int.Parse(dr["ItemID"].ToString()) == selectedPage) { selected = true; } } if (tabla.Rows.Count == 0) { if (this.PortalSettings.PortalUILanguage.Parent.LCID != CultureInfo.InvariantCulture.LCID) { using ( var dr1 = ehdb.GetLocalizedPages( this.ModuleID, this.PortalSettings.PortalUILanguage.Parent.LCID, this.Version)) { while (dr1.Read()) { this.AddPageRow( tabla, dr1["ItemID"].ToString(), (string)dr1["Title"], (string)dr1["DesktopHtml"]); if (int.Parse(dr1["ItemID"].ToString()) == selectedPage) { selected = true; } } } } } if (addInvariantCulture || tabla.Rows.Count == 0) { using ( var dr2 = ehdb.GetLocalizedPages(this.ModuleID, CultureInfo.InvariantCulture.LCID, this.Version) ) { while (dr2.Read()) { this.AddPageRow( tabla, dr2["ItemID"].ToString(), (string)dr2["Title"], (string)dr2["DesktopHtml"]); if (int.Parse(dr2["ItemID"].ToString()) == selectedPage) { selected = true; } } } } } if (!selected) { this.ehPageId = null; } return tabla; }