Esempio n. 1
0
    protected void FillComponentList()
    {
        try
        {
            int assignment_id = int.Parse(Request.QueryString["Assignment"]);
            int project_id    = int.Parse(Request.QueryString["Project"]);

            UserContentManager contentmanager = new UserContentManager(ticket.Name);

            var rightassignment = ctx.assignment.Where(amt => amt.amt_id == assignment_id).SingleOrDefault();

            foreach (var assignmentcomponent in rightassignment.assignment_component.ToList())
            {
                List <person> assignmentpersons          = contentmanager.GetAssignmentUsers(rightassignment.amt_id);
                List <person> assignmentcomponentpersons = new List <person>();

                List <assignment_component_person> amtcompers = assignmentcomponent.assignment_component_person.ToList();

                foreach (var amtcomper in amtcompers)
                {
                    foreach (var assignmentperson in assignmentpersons)
                    {
                        if (assignmentperson.person_id == amtcomper.person_id && !assignmentcomponentpersons.Contains(assignmentperson))
                        {
                            assignmentcomponentpersons.Add(assignmentperson);
                        }
                    }
                }

                HtmlGenericControl componentdiv         = new HtmlGenericControl("div");
                HtmlGenericControl componentborderdiv   = new HtmlGenericControl("div");
                HtmlGenericControl componentlabeldiv    = new HtmlGenericControl("div");
                HtmlGenericControl componentul          = new HtmlGenericControl("ul");
                LinkButton         componentlabelbutton = new LinkButton();

                componentdiv.Attributes.Add("class", "divComponent");
                componentborderdiv.Attributes.Add("class", "divComponentBorder");

                if (assignmentcomponent.finished == false)
                {
                    componentborderdiv.Attributes.Add("style", "background-color:#6fa9d6;");
                }
                else if (assignmentcomponent.finished == true)
                {
                    componentborderdiv.Attributes.Add("style", "background-color:#28fc60;");
                }

                componentlabeldiv.Attributes.Add("class", "divComponentLabel");

                componentlabelbutton.ID              = String.Format("lbtnComponentName{0}", assignmentcomponent.amtc_id);
                componentlabelbutton.Text            = assignmentcomponent.name;
                componentlabelbutton.CommandArgument = "Hello";
                componentlabelbutton.Command        += new CommandEventHandler(LinkButtonClick);
                componentlabelbutton.CssClass        = "ComponentLabels";

                componentul.Attributes.Add("id", "assignmentcomponentul");

                componentlabeldiv.Controls.Add(componentlabelbutton);

                foreach (var componentperson in assignmentcomponentpersons)
                {
                    HtmlGenericControl componentli         = new HtmlGenericControl("li");
                    HtmlGenericControl componentpersonlink = new HtmlGenericControl("a");

                    componentpersonlink.Attributes.Add("href", String.Format("ViewUser.aspx?Person={0}", componentperson.person_id));
                    componentpersonlink.InnerText = componentperson.username;

                    componentli.Controls.Add(componentpersonlink);
                    componentul.Controls.Add(componentli);
                }

                componentborderdiv.Controls.Add(componentlabeldiv);
                componentborderdiv.Controls.Add(componentul);
                componentdiv.Controls.Add(componentborderdiv);

                divAssignmentComponents.Controls.Add(componentdiv);
            }
        }
        catch (Exception ex)
        {
            lbMessages.Text = ex.Message;
        }
    }