Ejemplo n.º 1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                LinkButtonShowInactive.Visible = this.IsAdmin && (this.InstanceGuid != Guid.Empty);
                if (this.InstanceGuid != Guid.Empty || ArticleGuid != Guid.Empty)
                {
                    MainDataSet.ArticleDataTable articleTable;
                    MainDataSet.ArticleDataTable sortedTable = new MainDataSet.ArticleDataTable();
                    if (ArticleGuid != Guid.Empty)
                    {
                        articleTable = this.ArticleAdapter.GetRecursiveByArticleGuid(ArticleGuid);
                        this.SortRecursiveTable(ref sortedTable, ref articleTable, ArticleGuid);
                    }
                    else
                    {
                        articleTable = this.ArticleAdapter.GetRecursiveByDepartmentGuid(InstanceGuid);
                        this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
                    }
                    if (sortedTable != null && sortedTable.Rows.Count > 0)
                    {
                        this.Visible = true;

                        DataListArticles.DataSource = sortedTable;
                        DataListArticles.DataBind();
                    }
                    else
                    {
                        this.Visible = false;
                    }
                }
            }
        }
Ejemplo n.º 2
0
        private void SortRecursiveTable(ref string output, ref MainDataSet.ArticleDataTable input, Guid?parentArticleId)
        {
            OrderedEnumerableRowCollection <MainDataSet.ArticleRow> query = null;

            if (parentArticleId.HasValue)
            {
                query = input.Where(w => w.IsParentArticleGuidNull() ? false : w.ParentArticleGuid.Equals(parentArticleId.Value)).OrderBy(o => o.Subject);
            }
            else
            {
                query = input.Where(w => w.IsParentArticleGuidNull()).OrderBy(o => o.Subject);
            }
            int cnt = query.Count();

            if (cnt > 0)
            {
                output += "<ul>";
            }
            foreach (MainDataSet.ArticleRow row in query)
            {
                output += string.Format(CultureInfo.CurrentCulture, "<li><a style=\"vertical-align:top\" href=\"Default.aspx?i={0}&t={1}\">{2}</a>", this.InstanceGuid.ToString("N"), row.ArticleGuid.ToString("N"), row.Subject);
                SortRecursiveTable(ref output, ref input, row.ArticleGuid);
            }
            if (cnt > 0)
            {
                output += "</ul>";
            }
        }
Ejemplo n.º 3
0
 protected void LinkButtonShowInactive_Click(object sender, EventArgs e)
 {
     if (this.InstanceGuid != Guid.Empty)
     {
         MainDataSet.ArticleDataTable articleTable;
         MainDataSet.ArticleDataTable sortedTable = new MainDataSet.ArticleDataTable();
         if (LinkButtonShowInactive.Text.Equals((string)this.GetLocalResourceObject("ShowInactive")))
         {
             LinkButtonShowInactive.Text = (string)this.GetLocalResourceObject("ShowActive");
             articleTable = this.ArticleAdapter.GetRecursiveAllByDepartmentGuid(InstanceGuid);
             this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
         }
         else
         {
             LinkButtonShowInactive.Text = (string)this.GetLocalResourceObject("ShowInactive");
             articleTable = this.ArticleAdapter.GetRecursiveByDepartmentGuid(InstanceGuid);
             this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
         }
         if (sortedTable != null && sortedTable.Rows.Count > 0)
         {
             this.Visible = true;
             DataListArticles.DataSource = sortedTable;
             DataListArticles.DataBind();
         }
         else
         {
             this.Visible = false;
         }
     }
 }
Ejemplo n.º 4
0
        public override DirectoryItem ResolveRootDirectoryAsTree(string path)
        {
            MainDataSet.ArticleRow articleRow  = null;
            DirectoryItem          returnValue = null;
            Guid articleGuid = Guid.Empty;

            try { articleGuid = new Guid(path); }
            catch { }
            if (articleGuid != Guid.Empty)
            {
                MainDataSet.ArticleDataTable dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(articleGuid);
                if (dtArticle.Count > 0)
                {
                    articleRow = dtArticle[0];
                    string fullName = this.ArticleTableAdapter.GetAlternateId(articleGuid);
                    if (string.IsNullOrEmpty(fullName))
                    {
                        fullName = articleRow.ArticleGuid.ToString("N");
                    }
                    returnValue = new DirectoryItem(
                        articleRow.Subject, articleRow.Subject + "/", fullName, string.Empty, fullPermissions, GetChildFiles(articleRow),
                        GetChildDirectories(articleRow));
                }
            }
            if (returnValue == null)
            {
                returnValue = this.GetDefaultDirectoryItem();
            }
            return(returnValue);
        }
Ejemplo n.º 5
0
 private void SetCustomLink(ref Telerik.Web.UI.EditorLink link, MainDataSet.ArticleDataTable articles, Guid articleGuid)
 {
     foreach (MainDataSet.ArticleRow row in articles.Where(p => !p.IsParentArticleGuidNull() && p.ParentArticleGuid == articleGuid))
     {
         Telerik.Web.UI.EditorLink newlink = new Telerik.Web.UI.EditorLink(row.Subject, string.Format("{0}/Default.aspx?i={1}&t={2}", Request.ApplicationPath, row.DepartmentGuid.ToString("N"), row.ArticleGuid.ToString("N")));
         SetCustomLink(ref newlink, articles, row.ArticleGuid);
         link.ChildLinks.Add(newlink);
     }
 }
Ejemplo n.º 6
0
 private MainDataSet.ArticleRow GetCurrentArticle()
 {
     if (!this.ArticleGuid.Equals(Guid.Empty))
     {
         MainDataSet.ArticleDataTable dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(this.ArticleGuid);
         if (dtArticle.Count > 0)
         {
             return(dtArticle[0]);
         }
     }
     return(null);
 }
Ejemplo n.º 7
0
        private void CustomLinksDataBind(Guid instanceGuid)
        {
            HtmlEditorBody.Links.Clear();

            MainDataSet.ArticleDataTable dtLinks = this.ArticleTableAdapter.GetRecursiveByDepartmentGuid(instanceGuid);
            foreach (MainDataSet.ArticleRow row in dtLinks.Where(p => p.IsParentArticleGuidNull()))
            {
                Telerik.Web.UI.EditorLink link = new Telerik.Web.UI.EditorLink(row.Subject, string.Format("{0}/Default.aspx?i={1}&t={2}", Request.ApplicationPath, instanceGuid.ToString("N"), row.ArticleGuid.ToString("N")));
                SetCustomLink(ref link, dtLinks, row.ArticleGuid);
                HtmlEditorBody.Links.Add(link);
            }
        }
Ejemplo n.º 8
0
        private void SortRecursiveTable(ref MainDataSet.ArticleDataTable output, ref MainDataSet.ArticleDataTable input, Guid?parentArticleId)
        {
            OrderedEnumerableRowCollection <MainDataSet.ArticleRow> query = null;

            if (parentArticleId.HasValue)
            {
                query = input.Where(w => w.IsParentArticleGuidNull() ? false : w.ParentArticleGuid.Equals(parentArticleId.Value)).OrderBy(o => o.Subject);
            }
            else
            {
                query = input.Where(w => w.IsParentArticleGuidNull()).OrderBy(o => o.Subject);
            }
            foreach (MainDataSet.ArticleRow row in query)
            {
                output.ImportRow(row);
                SortRecursiveTable(ref output, ref input, row.ArticleGuid);
            }
        }
Ejemplo n.º 9
0
        public override DirectoryItem ResolveDirectory(string path)
        {
            DirectoryItem[] directories;
            DirectoryItem   returnValue = null;

            MainDataSet.ArticleRow       articleRow = null;
            MainDataSet.ArticleDataTable dtArticle  = null;

            Guid articleGuid = Guid.Empty;

            try { articleGuid = new Guid(path); }
            catch { }
            if (articleGuid != Guid.Empty)
            {
                dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(articleGuid);
            }
            else
            {
                dtArticle = this.ArticleTableAdapter.GetDataByAlternateId(path);
            }
            if (dtArticle.Count > 0)
            {
                articleRow = dtArticle[0];
            }

            //if (DisplayMode == FileBrowserDisplayMode.List)
            directories = new DirectoryItem[] { };
            //else
            //{
            //    if (articleRow != null)
            //        directories = GetChildDirectories(articleRow);
            //    else directories = new DirectoryItem[] { };
            //}
            if (articleRow != null)
            {
                returnValue = new DirectoryItem(articleRow.Subject, articleRow + "/", articleRow + "/", articleRow + "/", fullPermissions, GetChildFiles(articleRow),
                                                directories);
            }
            else
            {
                returnValue = this.GetDefaultDirectoryItem();
            }
            return(returnValue);
        }
Ejemplo n.º 10
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (UserContext.Current != null && UserContext.Current.SelectedInstance != null)
                {
                    Response.Redirect("InstanceHomeAdmin.aspx", false);
                }
                else if (this.InstanceGuid != Guid.Empty)
                {
                    string loginUrl    = Micajah.Common.Application.WebApplication.LoginProvider.GetLoginUrl();
                    string orgInstName = string.Format(CultureInfo.CurrentCulture, "{0} {1}", this.CurrentInstance.Organization.Name, this.CurrentInstance.Name);
                    #region Generate the Page
                    StringBuilder textHeader = new StringBuilder((string)this.GetLocalResourceObject("Header_Inst"));
                    StringBuilder textFooter = new StringBuilder((string)this.GetLocalResourceObject("Footer_Inst"));
                    textHeader = textHeader.Replace("{title}", orgInstName);
                    textHeader = textHeader.Replace("{metadescription}", orgInstName);
                    textHeader = textHeader.Replace("{searchaction}", "SearchResult.aspx?i=" + this.InstanceGuid.ToString("N"));
                    textHeader = textHeader.Replace("{orgInstName}", orgInstName);
                    textHeader = textHeader.Replace("{orgUrl}", this.CurrentInstance.Organization.WebsiteUrl);
                    Response.Write(textHeader.ToString());
                    Response.Write("<br>");
                    //Response.Write("<ul>");
                    string listTreeView = string.Empty;
                    MainDataSet.ArticleDataTable articleTable = this.ArticleTableAdapter.GetRecursiveByDepartmentGuid(this.InstanceGuid);
                    this.SortRecursiveTable(ref listTreeView, ref articleTable, null);
                    Response.Write(listTreeView);
                    //Response.Write("</ul>");
                    textFooter = textFooter.Replace("{micajahurl}", loginUrl);
                    textFooter = textFooter.Replace("{currentyear}", DateTime.Now.Year.ToString(CultureInfo.InvariantCulture));
                    textFooter = textFooter.Replace("{trackingcode}", string.Empty);
                    //Setting trackCode = this.CurrentInstance.Settings.FindByShortName("TrackingCode");
                    //if (trackCode != null && !string.IsNullOrEmpty(trackCode.Value))
                    //    textFooter = textFooter.Replace("{trackingcode}", trackCode.Value);
                    //else
                    //    textFooter = textFooter.Replace("{trackingcode}", (string)this.GetLocalResourceObject("GlobalTrackingCode"));

                    Response.Write(textFooter);

                    #endregion
                }
            }
        }
Ejemplo n.º 11
0
        protected DirectoryItem[] GetChildDirectories(MainDataSet.ArticleRow articleRow)
        {
            List <DirectoryItem> directories = new List <DirectoryItem>();

            MainDataSet.ArticleDataTable dtArticles = this.ArticleTableAdapter.GetDataByParent(articleRow.ArticleGuid);
            foreach (MainDataSet.ArticleRow row in dtArticles)
            {
                //string itemFullPath = string.Format("/{0}/{1}/", articleRow.Subject, row.Subject);
                string itemFullPath = string.Format("~/ArticleViewAdmin.aspx?id={0}", row.ArticleGuid.ToString("N"));
                directories.Add(new DirectoryItem(
                                    row.Subject,
                                    string.Empty,
                                    itemFullPath,
                                    string.Empty,
                                    fullPermissions,
                                    GetChildFiles(row),
                                    GetChildDirectories(row)));
            }
            return(directories.ToArray());
        }
Ejemplo n.º 12
0
        public override DirectoryItem[] ResolveRootDirectoryAsList(string path)
        {
            List <DirectoryItem> directories = new List <DirectoryItem>();

            MainDataSet.ArticleRow articleRow = null;
            Guid articleGuid = Guid.Empty;

            try { articleGuid = new Guid(path); }
            catch { }
            if (articleGuid != Guid.Empty)
            {
                MainDataSet.ArticleDataTable dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(articleGuid);
                if (dtArticle.Count > 0)
                {
                    articleRow = dtArticle[0];
                    directories.Add(new DirectoryItem(
                                        articleRow.Subject,
                                        articleRow.Subject + "/",
                                        string.Empty,
                                        string.Empty,
                                        fullPermissions,
                                        GetChildFiles(articleRow),
                                        new DirectoryItem[] { }));
                    MainDataSet.ArticleDataTable dtChildArticles = this.ArticleTableAdapter.GetDataRecursiveByArticleGuid(articleGuid);
                    foreach (MainDataSet.ArticleRow row in dtChildArticles)
                    {
                        directories.Add(new DirectoryItem(
                                            row.Subject,
                                            row.Subject + "/",
                                            string.Empty,
                                            string.Empty,
                                            fullPermissions,
                                            GetChildFiles(row),
                                            new DirectoryItem[] { }));
                    }
                }
            }
            return(directories.ToArray());
        }
Ejemplo n.º 13
0
        public static BreadcrumbCollection GenerateBreadCrumbs(Guid articleGuid, Guid instanceGuid, bool isAdmin)
        {
            BreadcrumbCollection breadCrumbs = new BreadcrumbCollection();

            using (MainDataSetTableAdapters.ArticleTableAdapter m_taArticle = new MainDataSetTableAdapters.ArticleTableAdapter())
            {
                if (articleGuid != Guid.Empty && instanceGuid != Guid.Empty)
                {
                    MainDataSet.ArticleDataTable dtArticle = m_taArticle.GetRecursiveAllByArticleGuid(articleGuid);
                    if (dtArticle.Count > 0)
                    {
                        for (int i = dtArticle.Count - 1; i >= 0; i--)
                        {
                            MainDataSet.ArticleRow row = dtArticle[i];
                            breadCrumbs.Add(
                                row.Subject,
                                isAdmin ? string.Format("~/ArticleViewAdmin.aspx?id={0}", row.ArticleGuid.ToString("N")) : string.Format("~/?i={0}&t={1}", instanceGuid.ToString("N"), row.ArticleGuid.ToString("N")),
                                row.Subject, false);
                        }
                    }
                }
            }
            return(breadCrumbs);
        }
Ejemplo n.º 14
0
 protected void LinkButtonShowInactive_Click(object sender, EventArgs e)
 {
     if (this.InstanceGuid != Guid.Empty)
     {
         MainDataSet.ArticleDataTable articleTable;
         MainDataSet.ArticleDataTable sortedTable = new MainDataSet.ArticleDataTable();
         if (LinkButtonShowInactive.Text.Equals((string)this.GetLocalResourceObject("ShowInactive")))
         {
             LinkButtonShowInactive.Text = (string)this.GetLocalResourceObject("ShowActive");
             articleTable = this.ArticleAdapter.GetRecursiveAllByDepartmentGuid(InstanceGuid);
             this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
         }
         else
         {
             LinkButtonShowInactive.Text = (string)this.GetLocalResourceObject("ShowInactive");
             articleTable = this.ArticleAdapter.GetRecursiveByDepartmentGuid(InstanceGuid);
             this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
         }
         if (sortedTable != null && sortedTable.Rows.Count > 0)
         {
             this.Visible = true;
             DataListArticles.DataSource = sortedTable;
             DataListArticles.DataBind();
         }
         else
             this.Visible = false;
     }
 }
Ejemplo n.º 15
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                LinkButtonShowInactive.Visible = this.IsAdmin && (this.InstanceGuid != Guid.Empty);
                if (this.InstanceGuid != Guid.Empty || ArticleGuid != Guid.Empty)
                {
                    MainDataSet.ArticleDataTable articleTable;
                    MainDataSet.ArticleDataTable sortedTable = new MainDataSet.ArticleDataTable();
                    if (ArticleGuid != Guid.Empty)
                    {
                        articleTable = this.ArticleAdapter.GetRecursiveByArticleGuid(ArticleGuid);
                        this.SortRecursiveTable(ref sortedTable, ref articleTable, ArticleGuid);
                    }
                    else
                    {
                        articleTable = this.ArticleAdapter.GetRecursiveByDepartmentGuid(InstanceGuid);
                        this.SortRecursiveTable(ref sortedTable, ref articleTable, null);
                    }
                    if (sortedTable != null && sortedTable.Rows.Count > 0)
                    {
                        this.Visible = true;

                        DataListArticles.DataSource = sortedTable;
                        DataListArticles.DataBind();
                    }
                    else
                        this.Visible = false;
                }
            }
        }
Ejemplo n.º 16
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!IsPostBack)
     {
         if (IsPopup)
         {
             Master.VisibleBreadcrumbs = false;
             Master.VisibleHeader      = false;
             Master.VisibleHelpLink    = false;
             Master.VisibleFooter      = false;
             //divBody.Visible = false;
             PostCommentCtrl.VisibleLine = false;
         }
         Master.AutoGenerateBreadcrumbs = false;
         //Master.VisiblePageTitle = false;
         UserContext.Breadcrumbs.Clear();
         MainDataSet.ArticleDataTable dtArticle = null;
         if (UserContext.Current != null && UserContext.Current.SelectedInstance != null && this.ArticleGuid != Guid.Empty && !IsPopup)
         {
             Response.Redirect("ArticleViewAdmin.aspx?id=" + this.ArticleGuid.ToString("N"), false);
             return;
         }
         if (this.Master.InstanceGuid != Guid.Empty)
         {
             string instName = (string)this.ArticleTableAdapter.GetInstanceName(this.Master.InstanceGuid);
             if (!string.IsNullOrEmpty(instName))
             {
                 //UploadControlSettings.DepartmentName = instName;
                 //UploadControlSettings.DepartmentId = this.Master.InstanceGuid;
                 //MainDataSetTableAdapters.Mc_InstanceTableAdapter instance = new MainDataSetTableAdapters.Mc_InstanceTableAdapter();
                 //UploadControlSettings.OrganizationId = instance.GetDataByInstanceId(this.Master.InstanceGuid)[0].OrganizationId;
                 if (!IsPopup)
                 {
                     UserContext.Breadcrumbs.Add((string)this.GetLocalResourceObject("Home"), "~/InstanceHome.aspx?i=" + this.Master.InstanceGuid.ToString("N"), string.Empty, false);
                 }
                 //SearchArticleCtrl.InstanceGuid = this.InstanceGuid;
                 if (this.ArticleGuid != Guid.Empty)
                 {
                     //if (UserContext.Current != null)
                     //{
                     //    Response.Redirect("ArticleViewAdmin.aspx?id=" + this.ArticleGuid.ToString("N"), true);
                     //    return;
                     //}
                     // view mode
                     dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(this.ArticleGuid);
                     if (dtArticle.Count > 0)
                     {
                         this.DoArticleView(dtArticle[0]);
                         AttachmentListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                         //ImageListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                         //FileListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                         //VideoListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                         return;
                     }
                 }
                 else if (this.AlternateId != string.Empty)
                 {
                     // view mode
                     string strAltId = this.AlternateId;
                     MainDataSetTableAdapters.AlternateIdTableAdapter taAlternateId = new MainDataSetTableAdapters.AlternateIdTableAdapter();
                     Guid?articleGuid = null;
                     articleGuid = taAlternateId.GetArticleGuid(strAltId, this.Master.InstanceGuid);
                     int idx = 0;
                     //if (!articleGuid.HasValue)
                     //{
                     //    idx = strAltId.LastIndexOf('?');
                     //    if (idx > 0)
                     //    {
                     //        strAltId = strAltId.Substring(0, idx);
                     //        articleGuid = taAlternateId.GetArticleGuid(strAltId, this.Master.InstanceGuid);
                     //    }
                     //}
                     if (!articleGuid.HasValue)
                     {
                         idx = strAltId.LastIndexOf('/');
                         if (idx > 0)
                         {
                             strAltId    = strAltId.Substring(0, idx + 1);
                             articleGuid = taAlternateId.GetArticleGuid(strAltId, this.Master.InstanceGuid);
                         }
                     }
                     if (articleGuid.HasValue)
                     {
                         dtArticle = this.ArticleTableAdapter.GetDataByArticleGuid(articleGuid.Value);
                         if (dtArticle.Count > 0)
                         {
                             AttachmentListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                             //ImageListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                             //FileListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                             //VideoListCtrl.ArticleGuid = dtArticle[0].ArticleGuid;
                             this.DoArticleView(dtArticle[0]);
                             return;
                         }
                     }
                     else
                     {
                         // add new article mode
                         if (!IsPopup)
                         {
                             UserContext.Breadcrumbs.Add(this.AlternateId, string.Empty, string.Empty, false);
                             divBody.InnerHtml = (string)this.GetLocalResourceObject("ArticleDoesNotExist");
                         }
                         PanelArticle.Visible     = true;
                         Master.CustomName        = (string)this.GetLocalResourceObject("NewArticle");
                         litSubject.Text          = (string)this.GetLocalResourceObject("ArticleIsNotFoundTitle");
                         ArticlesListCtrl.Visible = false;
                         CommentsListCtrl.Visible = false;
                         //PostCommentCtrl.ReceiverName = Utils.GetInstanceUserName(this.Master.InstanceGuid);
                         PostCommentCtrl.InstanceGuid = this.Master.InstanceGuid;
                         PostCommentCtrl.ArticleGuid  = Guid.Empty;
                         return;
                     }
                 }
                 else
                 {
                     Response.Redirect("InstanceHome.aspx?i=" + this.Master.InstanceGuid.ToString("N"), false);
                     return;
                 }
             }
         }
         PanelArticle.Visible = false;
         Response.Redirect(Micajah.Common.Application.WebApplication.LoginProvider.GetLoginUrl(), false);
         //Master.ErrorMessage = (string)this.GetLocalResourceObject("ArticleIsNotFound");
     }
 }