Esempio n. 1
0
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter { BlockID = "AdvansedFilter" };
            contentPlaceHolder.Controls.Add(advansedFilter);

            var milestoneList = (Controls.Milestones.MilestoneList)LoadControl(PathProvider.GetControlVirtualPath("MilestoneList.ascx"));
            milestoneListPlaceHolder.Controls.Add(milestoneList);

            var milestoneAction = (Controls.Milestones.MilestoneAction)LoadControl(PathProvider.GetControlVirtualPath("MilestoneAction.ascx"));
            milestoneActionPlaceHolder.Controls.Add(milestoneAction);

            var taskAction = (Controls.Tasks.TaskAction)LoadControl(PathProvider.GetControlVirtualPath("TaskAction.ascx"));
            taskActionPlaceHolder.Controls.Add(taskAction);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                Header = MilestoneResource.FilterNoMilestones,
                Describe = MilestoneResource.DescrEmptyListMilFilter,
                ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>", ProjectsFilterResource.ClearFilter)
            };
            milestoneListPlaceHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty_screen_milestones.png", ProductEntryPoint.ID),
                Header = MilestoneResource.MilestoneNotFound_Header,
                Describe = String.Format(MilestoneResource.MilestonesMarkMajorTimestamps)
            };

            if (CanCreateMilestone())
                emptyScreenControl.ButtonHTML = String.Format("<a class='baseLinkAction'>{0}</a>", MilestoneResource.PlanFirstMilestone);

            milestoneListPlaceHolder.Controls.Add(emptyScreenControl);
        }
Esempio n. 2
0
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                BlockID = "AdvansedFilter"
            };

            contentPlaceHolder.Controls.Add(advansedFilter);

            var historyList = (HistoryList)LoadControl(PathProvider.GetControlVirtualPath("HistoryList.ascx"));

            activitiesListPlaceHolder.Controls.Add(historyList);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                Header     = ProjectResource.FilterNoActivities,
                Describe   = ProjectResource.DescrEmptyListActivitiesFilter,
                ButtonHTML = string.Format("<a href='javascript:void(0)' class='baseLinkAction clearFilterButton'>{0}</a>", ProjectsFilterResource.ClearFilter)
            };

            activitiesListPlaceHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc   = WebImageSupplier.GetAbsoluteWebPath("empty_screen_history.png", ProductEntryPoint.ID),
                Header   = ProjectResource.HistoryNotFound_Header,
                Describe = String.Format(ProjectResource.HistoryNotFound_Body)
            };

            activitiesListPlaceHolder.Controls.Add(emptyScreenControl);
        }
Esempio n. 3
0
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                BlockID = "AdvansedFilter"
            };

            contentPlaceHolder.Controls.Add(advansedFilter);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                Header     = MessageResource.FilterNoDiscussions,
                Describe   = MessageResource.DescrEmptyListMilFilter,
                ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>", ProjectsFilterResource.ClearFilter)
            };

            emptyScreenHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc   = WebImageSupplier.GetAbsoluteWebPath("empty_screen_discussions.png", ProductEntryPoint.ID),
                Header   = MessageResource.DiscussionNotFound_Header,
                Describe = MessageResource.DiscussionNotFound_Describe
            };

            if (CanCreateDiscussion())
            {
                emptyScreenControl.ButtonHTML = String.Format("<a class='baseLinkAction'>{0}</a>", MessageResource.StartFirstDiscussion);
            }

            emptyScreenHolder.Controls.Add(emptyScreenControl);
        }
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter { BlockID = "AdvansedFilter" };
            contentPlaceHolder.Controls.Add(advansedFilter);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                Header = MessageResource.FilterNoDiscussions,
                Describe = MessageResource.DescrEmptyListMilFilter,
                ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>", ProjectsFilterResource.ClearFilter)
            };
            emptyScreenHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty_screen_discussions.png", ProductEntryPoint.ID),
                Header = MessageResource.DiscussionNotFound_Header,
                Describe = MessageResource.DiscussionNotFound_Describe
            };

            if (CanCreateDiscussion())
                emptyScreenControl.ButtonHTML = String.Format("<a class='baseLinkAction'>{0}</a>", MessageResource.StartFirstDiscussion);

            emptyScreenHolder.Controls.Add(emptyScreenControl);
        }
Esempio n. 5
0
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter { BlockID = "AdvansedFilter" };
            contentPlaceHolder.Controls.Add(advansedFilter);

            var historyList = (HistoryList)LoadControl(PathProvider.GetControlVirtualPath("HistoryList.ascx"));
            activitiesListPlaceHolder.Controls.Add(historyList);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                                               {
                                                   ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                                                   Header = ProjectResource.FilterNoActivities,
                                                   Describe = ProjectResource.DescrEmptyListActivitiesFilter,
                                                   ButtonHTML = string.Format( "<a href='javascript:void(0)' class='baseLinkAction clearFilterButton'>{0}</a>", ProjectsFilterResource.ClearFilter)
                                               };
            activitiesListPlaceHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
                                         {
                                             ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty_screen_history.png", ProductEntryPoint.ID),
                                             Header = ProjectResource.HistoryNotFound_Header,
                                             Describe = String.Format(ProjectResource.HistoryNotFound_Body)
                                         };

            activitiesListPlaceHolder.Controls.Add(emptyScreenControl);
        }
Esempio n. 6
0
        private void LoadControls()
        {
            var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                BlockID = "AdvansedFilter"
            };

            contentPlaceHolder.Controls.Add(advansedFilter);

            var milestoneList = (Controls.Milestones.MilestoneList)LoadControl(PathProvider.GetControlVirtualPath("MilestoneList.ascx"));

            milestoneListPlaceHolder.Controls.Add(milestoneList);

            var milestoneAction = (Controls.Milestones.MilestoneAction)LoadControl(PathProvider.GetControlVirtualPath("MilestoneAction.ascx"));

            milestoneActionPlaceHolder.Controls.Add(milestoneAction);

            var taskAction = (Controls.Tasks.TaskAction)LoadControl(PathProvider.GetControlVirtualPath("TaskAction.ascx"));

            taskActionPlaceHolder.Controls.Add(taskAction);

            var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                Header     = MilestoneResource.FilterNoMilestones,
                Describe   = MilestoneResource.DescrEmptyListMilFilter,
                ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>", ProjectsFilterResource.ClearFilter)
            };

            milestoneListPlaceHolder.Controls.Add(emptyScreenControlFilter);

            var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
            {
                ImgSrc   = WebImageSupplier.GetAbsoluteWebPath("empty_screen_milestones.png", ProductEntryPoint.ID),
                Header   = MilestoneResource.MilestoneNotFound_Header,
                Describe = String.Format(MilestoneResource.MilestonesMarkMajorTimestamps)
            };

            if (CanCreateMilestone())
            {
                emptyScreenControl.ButtonHTML = String.Format("<a class='baseLinkAction'>{0}</a>", MilestoneResource.PlanFirstMilestone);
            }

            milestoneListPlaceHolder.Controls.Add(emptyScreenControl);
        }
Esempio n. 7
0
        protected override void PageLoad()
        {
            ((IStudioMaster)Master).DisabledSidePanel = true;

            if (!Global.ModuleManager.IsVisible(ModuleType.TimeTracking))
            {
                Response.Redirect(ProjectsCommonResource.StartURL);
            }

            var project = RequestContext.GetCurrentProject(false);

            if (RequestContext.IsInConcreteProject() && project == null)
            {
                Response.Redirect("default.aspx", true);
            }

            ProjectFat = new ProjectFat(project);

            if (!IsTimer)
            {
                if (TaskID <= 0)
                {
                    var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                        BlockID = "AdvansedFilter"
                    };
                    _filter.Controls.Add(advansedFilter);

                    var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                    {
                        ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                        Header     = TimeTrackingResource.NoTimersFilter,
                        Describe   = TimeTrackingResource.DescrEmptyListTimersFilter,
                        ButtonHTML = String.Format("<span class='baseLinkAction clearFilterButton'>{0}</span>", ProjectsFilterResource.ClearFilter)
                    };
                    emptyScreenFilter.Controls.Add(emptyScreenControlFilter);
                }

                InitPage(ProjectFat);

                var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc   = WebImageSupplier.GetAbsoluteWebPath("empty_screen_time_tracking.png", ProductEntryPoint.ID),
                    Header   = TimeTrackingResource.NoTtimers,
                    Describe = String.Format(TimeTrackingResource.NoTimersNote)
                };

                if (CanCreateTime())
                {
                    emptyScreenControl.ButtonHTML = String.Format("<span class='baseLinkAction addFirstElement'>{0}</span>", TimeTrackingResource.StartTimer);
                }

                emptyScreen.Controls.Add(emptyScreenControl);

                var apiServer = new Api.ApiServer();

                if (TaskID > 0)
                {
                    var timesForFirstRequest = apiServer.GetApiResponse(String.Format("api/1.0/project/task/{0}/time.json", TaskID), "GET");
                    JsonPublisher(timesForFirstRequest, "timesForFirstRequest");
                }


                if (RequestContext.IsInConcreteProject())
                {
                    var projectTeam = apiServer.GetApiResponse(string.Format("api/1.0/project/{0}/team.json?fields={1}", RequestContext.GetCurrentProjectId(), "id,displayName"), "GET");
                    JsonPublisher(projectTeam, "projectTeam");
                }

                TotalTime = TaskID > 0
                                ? Global.EngineFactory.GetTimeTrackingEngine().GetByTask(TaskID).Sum(r => r.Hours)
                                : Global.EngineFactory.GetTimeTrackingEngine().GetByProject(ProjectFat.Project.ID).Sum(r => r.Hours);
            }
            else
            {
                var taskId = TaskID;
                if (taskId > 0)
                {
                    var t = Global.EngineFactory.GetTaskEngine().GetByID(taskId);
                    if (t == null || t.Status == TaskStatus.Closed)
                    {
                        taskId = -1;
                    }
                }
                Master.DisabledSidePanel = true;
                var cntrlTimer = (TimeSpendActionTimer)LoadControl(PathProvider.GetControlVirtualPath("TimeSpendActionTimer.ascx"));

                if (ProjectFat != null)
                {
                    cntrlTimer.Project = ProjectFat.Project;
                }

                cntrlTimer.Target = taskId;
                _phTimeSpendTimer.Controls.Add(cntrlTimer);
                Title = HeaderStringHelper.GetPageTitle(ProjectsCommonResource.AutoTimer, Master.BreadCrumbs);
            }
        }
Esempio n. 8
0
        protected override void PageLoad()
        {
            AjaxPro.Utility.RegisterTypeForAjax(typeof(TaskDescriptionView), Page);
            ((IStudioMaster)Master).DisabledSidePanel = true;

            Project = RequestContext.GetCurrentProject(false);

            if (RequestContext.IsInConcreteProject() && Project == null)
            {
                Response.Redirect("tasks.aspx", true);
            }

            InitBreadCrumbs();

            int taskID;

            if (Int32.TryParse(UrlParameters.EntityID, out taskID))
            {
                if (Project == null)
                {
                    return;
                }

                var apiServer = new Api.ApiServer();
                var task      = apiServer.GetApiResponse(String.Format("api/1.0/project/task/{0}.json", taskID), "GET");
                JsonPublisher(task, "taskDescription");

                var jTask = JObject.Parse(Encoding.UTF8.GetString(Convert.FromBase64String(task)));

                if (jTask["count"].ToObject <int>() > 0)
                {
                    var taskDescriptionView = (TaskDescriptionView)LoadControl(PathProvider.GetControlVirtualPath("TaskDescriptionView.ascx"));

                    var taskDescription = new Task
                    {
                        ID      = jTask["response"]["id"].ToObject <int>(),
                        Title   = jTask["response"]["title"].ToString(),
                        Status  = jTask["response"]["status"].ToObject <TaskStatus>(),
                        Project = Project
                    };

                    taskDescriptionView.Task          = taskDescription;
                    taskDescriptionView.CanEditTask   = (bool)jTask["response"]["canEdit"];
                    taskDescriptionView.CanDeleteTask = (int)jTask["response"]["canWork"] == 3;

                    _content.Controls.Add(taskDescriptionView);
                    Master.BreadCrumbs.Add(new BreadCrumb());
                }
                else
                {
                    TaskNotFoundControlView(Project.ID);
                    Master.BreadCrumbs.Clear();
                }
            }
            else
            {
                var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                    BlockID = "AdvansedFilter"
                };
                _filter.Controls.Add(advansedFilter);

                var taskList = (TaskList)LoadControl(PathProvider.GetControlVirtualPath("TaskList.ascx"));
                _content.Controls.Add(taskList);

                var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                    Header     = TaskResource.NoTasks,
                    Describe   = TaskResource.DescrEmptyListTaskFilter,
                    ButtonHTML = String.Format("<span class='baseLinkAction clearFilterButton'>{0}</span>", ProjectsFilterResource.ClearFilter)
                };
                _content.Controls.Add(emptyScreenControlFilter);

                var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc   = WebImageSupplier.GetAbsoluteWebPath("empty_screen_tasks.png", ProductEntryPoint.ID),
                    Header   = TaskResource.NoTasksCreated,
                    Describe = String.Format(TaskResource.TasksHelpTheManage)
                };

                if (CanCreateTask())
                {
                    emptyScreenControl.ButtonHTML = String.Format("<span class='baseLinkAction addFirstElement'>{0}</span>", TaskResource.AddFirstTask);
                }

                _content.Controls.Add(emptyScreenControl);
            }

            GetApiData();

            Title = HeaderStringHelper.GetPageTitle(TaskResource.Tasks, Master.BreadCrumbs);
        }
Esempio n. 9
0
        protected override void PageLoad()
        {
            AjaxPro.Utility.RegisterTypeForAjax(typeof(TaskDescriptionView), Page);
            ((IStudioMaster)Master).DisabledSidePanel = true;

            Project = RequestContext.GetCurrentProject(false);

            if (RequestContext.IsInConcreteProject() && Project == null)
            {
                Response.Redirect("tasks.aspx", true);
            }
           
            InitBreadCrumbs();

            int taskID;

            if (Int32.TryParse(UrlParameters.EntityID, out taskID))
            {
                if (Project == null) return;

                var apiServer = new Api.ApiServer();
                var task = apiServer.GetApiResponse(String.Format("api/1.0/project/task/{0}.json", taskID), "GET");
                JsonPublisher(task, "taskDescription");

                var jTask = JObject.Parse(Encoding.UTF8.GetString(Convert.FromBase64String(task)));

                if (jTask["count"].ToObject<int>() > 0)
                {
                    var taskDescriptionView = (TaskDescriptionView)LoadControl(PathProvider.GetControlVirtualPath("TaskDescriptionView.ascx"));

                    var taskDescription = new Task
                                              {
                                                  ID = jTask["response"]["id"].ToObject<int>(),
                                                  Title = jTask["response"]["title"].ToString(),
                                                  Status = jTask["response"]["status"].ToObject<TaskStatus>(),
                                                  Project = Project
                                              };

                    taskDescriptionView.Task = taskDescription;
                    taskDescriptionView.CanEditTask = (bool)jTask["response"]["canEdit"];
                    taskDescriptionView.CanDeleteTask = (int)jTask["response"]["canWork"] == 3;

                    _content.Controls.Add(taskDescriptionView);
                    Master.BreadCrumbs.Add(new BreadCrumb());
                }
                else
                {
                    TaskNotFoundControlView(Project.ID);
                    Master.BreadCrumbs.Clear();
                }
            }
            else
            {
               var advansedFilter = new Studio.Controls.Common.AdvansedFilter { BlockID = "AdvansedFilter" };
                _filter.Controls.Add(advansedFilter);

                var taskList = (TaskList) LoadControl(PathProvider.GetControlVirtualPath("TaskList.ascx"));
                _content.Controls.Add(taskList);

                var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                    Header = TaskResource.NoTasks,
                    Describe = TaskResource.DescrEmptyListTaskFilter,
                    ButtonHTML = String.Format("<span class='baseLinkAction clearFilterButton'>{0}</span>", ProjectsFilterResource.ClearFilter)
                };
                _content.Controls.Add(emptyScreenControlFilter);

                var emptyScreenControl = new Studio.Controls.Common.EmptyScreenControl
                                             {
                                                 ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty_screen_tasks.png", ProductEntryPoint.ID),
                                                 Header = TaskResource.NoTasksCreated,
                                                 Describe = String.Format(TaskResource.TasksHelpTheManage)
                                             };

                if (CanCreateTask())
                    emptyScreenControl.ButtonHTML = String.Format("<span class='baseLinkAction addFirstElement'>{0}</span>", TaskResource.AddFirstTask);

                _content.Controls.Add(emptyScreenControl);
            }

            GetApiData();

            Title = HeaderStringHelper.GetPageTitle(TaskResource.Tasks, Master.BreadCrumbs);    
        }
Esempio n. 10
0
        protected override void PageLoad()
        {
            if (RequestContext.IsInConcreteProject())
            {
                Server.Transfer(String.Concat(PathProvider.BaseAbsolutePath, "ProjectOverview.aspx"));
            }
            else
            {
                if (String.Compare(UrlParameters.ActionType, "add", StringComparison.OrdinalIgnoreCase) == 0)
                {
                    if (ProjectSecurity.IsAdministrator(SecurityContext.CurrentAccount.ID))
                    {
                        Server.Transfer(String.Concat(PathProvider.BaseAbsolutePath, "ProjectAction.aspx"));
                    }
                    else
                    {
                        Response.Redirect("projects.aspx");
                    }
                }
            }

            ((IStudioMaster)Master).DisabledSidePanel = true;

            Master.BreadCrumbs.Add(new BreadCrumb
            {
                Caption       = ProjectResource.Projects,
                NavigationUrl = "projects.aspx"
            });

            Title = HeaderStringHelper.GetPageTitle(ProjectResource.Projects, Master.BreadCrumbs);

            IsEmptyListProjects = !RequestContext.HasAnyProjects();
            if (IsEmptyListProjects)
            {
                var button = "";
                if (ProjectSecurity.CanCreateProject())
                {
                    button = string.Format("<a href='projects.aspx?action=add' class='projectsEmpty baseLinkAction'>{0}<a>",
                                           ProjectResource.CreateFirstProject);
                }
                var escNoProj = new Studio.Controls.Common.EmptyScreenControl
                {
                    Header     = ProjectResource.EmptyListProjHeader,
                    ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("projects_logo.png", ProductEntryPoint.ID),
                    Describe   = ProjectResource.EmptyListProjDescribe,
                    ID         = "escNoProj",
                    ButtonHTML = button
                };
                _escNoProj.Controls.Add(escNoProj);
            }
            else
            {
                var list = (Controls.Projects.ProjectsList)LoadControl(PathProvider.GetControlVirtualPath("ProjectsList.ascx"));
                __listProjects.Controls.Add(list);

                var advansedFilter = new Studio.Controls.Common.AdvansedFilter {
                    BlockID = "AdvansedFilter"
                };
                _content.Controls.Add(advansedFilter);

                var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc     = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                    Header     = ProjectsCommonResource.Filter_NoProjects,
                    Describe   = ProjectResource.DescrEmptyListProjFilter,
                    ID         = "emptyFilter",
                    ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>",
                                               ProjectsFilterResource.ClearFilter)
                };
                projectListEmptyScreen.Controls.Add(emptyScreenControlFilter);
            }
        }
Esempio n. 11
0
        protected override void PageLoad()
        {
            if (RequestContext.IsInConcreteProject())
            {
                Server.Transfer(String.Concat(PathProvider.BaseAbsolutePath, "ProjectOverview.aspx"));
            }
            else
            {
                if (String.Compare(UrlParameters.ActionType, "add", StringComparison.OrdinalIgnoreCase) == 0)
                {
                    if (ProjectSecurity.IsAdministrator(SecurityContext.CurrentAccount.ID))
                    {
                        Server.Transfer(String.Concat(PathProvider.BaseAbsolutePath, "ProjectAction.aspx"));
                    }
                    else
                    {
                        Response.Redirect("projects.aspx");
                    }
                }
            }

            ((IStudioMaster)Master).DisabledSidePanel = true;

            Master.BreadCrumbs.Add(new BreadCrumb
            {
                Caption = ProjectResource.Projects,
                NavigationUrl = "projects.aspx"

            });

            Title = HeaderStringHelper.GetPageTitle(ProjectResource.Projects, Master.BreadCrumbs);

            IsEmptyListProjects = !RequestContext.HasAnyProjects();
            if(IsEmptyListProjects)
            {
                var button = "";
                if (ProjectSecurity.CanCreateProject())
                {
                    button = string.Format("<a href='projects.aspx?action=add' class='projectsEmpty baseLinkAction'>{0}<a>",
                                      ProjectResource.CreateFirstProject);
                }
                var escNoProj = new Studio.Controls.Common.EmptyScreenControl
                {
                    Header = ProjectResource.EmptyListProjHeader,
                    ImgSrc = WebImageSupplier.GetAbsoluteWebPath("projects_logo.png", ProductEntryPoint.ID),
                    Describe = ProjectResource.EmptyListProjDescribe,
                    ID = "escNoProj",
                    ButtonHTML = button
                };
                _escNoProj.Controls.Add(escNoProj);
            }
            else
            {
                var list = (Controls.Projects.ProjectsList)LoadControl(PathProvider.GetControlVirtualPath("ProjectsList.ascx"));
                __listProjects.Controls.Add(list);

                var advansedFilter = new Studio.Controls.Common.AdvansedFilter { BlockID = "AdvansedFilter" };
                _content.Controls.Add(advansedFilter);

                var emptyScreenControlFilter = new Studio.Controls.Common.EmptyScreenControl
                {
                    ImgSrc = WebImageSupplier.GetAbsoluteWebPath("empty-filter.png", ProductEntryPoint.ID),
                    Header = ProjectsCommonResource.Filter_NoProjects,
                    Describe = ProjectResource.DescrEmptyListProjFilter,
                    ID="emptyFilter",
                    ButtonHTML = String.Format("<a href='javascript:void(0)' class='baseLinkAction'>{0}</a>",
                           ProjectsFilterResource.ClearFilter)
                };
                projectListEmptyScreen.Controls.Add(emptyScreenControlFilter);
            }     
        }