public static SideNavigator GetEmployeeNavigation() { var navigator = new SideNavigator(); navigator.Controls.Add(new NavigationItem() { Name = CustomNamingPeople.Substitute <Resources.Resource>("ActiveEmployeesTitle"), URL = CommonLinkUtility.GetEmployees(CommonLinkUtility.GetProductID()) }); navigator.Controls.Add(new NavigationItem() { Name = CustomNamingPeople.Substitute <Resources.Resource>("DisableEmployeesTitle"), URL = CommonLinkUtility.GetEmployees(CommonLinkUtility.GetProductID(), EmployeeStatus.Terminated) }); navigator.Controls.Add(new NavigationItem() { Name = CustomNamingPeople.Substitute <Resources.Resource>("PendingEmployeesTitle"), URL = CommonLinkUtility.GetEmployees(CommonLinkUtility.GetProductID(), EmployeeActivationStatus.Pending) }); return(navigator); }
private string GetLinkByGuid(Guid id) { string pageRelUrl = CommonLinkUtility.GetEmployees(_productID) + "&"; string pageUrl = string.Empty; if (Request["deplist"] == null) { pageUrl = string.Format("{0}depID={1}&search=&page=1&sort={2}{3}", pageRelUrl, id == Guid.Empty ? string.Empty : id.ToString(), Request["sort"], Request["list"] == null ? string.Empty : "&list=" + Request["list"]); } else { if (id == Guid.Empty) { pageUrl = string.Format("{0}deplist={1}", pageRelUrl, Request["list"] == null ? string.Empty : "&list=" + Request["list"]); } else { pageUrl = string.Format("{0}deplist={1}&search=&page=1&sort={2}{3}", pageRelUrl, id.ToString(), Request["sort"], Request["list"] == null ? string.Empty : "&list=" + Request["list"]); } } return(ResolveUrl(UrlQueryManager.AddDefaultParameters(Request, pageUrl))); }
protected void Page_Load(object sender, EventArgs e) { var topNavPanel = (TopNavigationPanel)LoadControl(TopNavigationPanel.Location); var dashboardItem = new NavigationItem() { Name = Resources.CommunityResource.Dashboard, URL = VirtualPathUtility.ToAbsolute("~/products/community/"), Selected = (this.Page is _Default) }; topNavPanel.NavigationItems.Add(dashboardItem); var employeesItem = new NavigationItem() { Name = CustomNamingPeople.Substitute <Resources.CommunityResource>("Employees"), Selected = UserOnlineManager.Instance.IsEmployeesPage() || UserOnlineManager.Instance.IsUserProfilePage(), URL = CommonLinkUtility.GetEmployees(CommunityProduct.ID) }; topNavPanel.NavigationItems.Add(employeesItem); var product = ProductManager.Instance[CommunityProduct.ID]; var currentModule = UserOnlineManager.Instance.GetCurrentModule(); foreach (var item in WebItemManager.Instance.GetSubItems(product.ID)) { var moduleItem = new NavigationItem { URL = VirtualPathUtility.ToAbsolute(item.StartURL), Name = item.Name, Description = item.Description, }; if (currentModule != null && currentModule.ID.Equals(item.ID)) { moduleItem.Selected = true; } topNavPanel.NavigationItems.Add(moduleItem); } _topNavigatorPlaceHolder.Controls.Add(topNavPanel); var bottomNavigator = new BottomNavigator(); _bottomNavigatorPlaceHolder.Controls.Add(bottomNavigator); var onlineUsersControl = (OnlineUsers)LoadControl(OnlineUsers.Location); onlineUsersControl.ProductId = CommunityProduct.ID; phOnlineUsers.Controls.Add(onlineUsersControl); }
private String RenderContent() { var newUsers = new List <UserInfo>(); var widgetSettings = SettingsManager.Instance.LoadSettingsFor <NewEmployeeWidgetSettings>(SecurityContext.CurrentAccount.ID); var users = CoreContext.UserManager.GetUsers(); foreach (var user in users) { //search new users if (user.WorkFromDate.HasValue && (newUsers.Find(u => u.ID.Equals(user.ID)) == null)) { if (newUsers.Count < widgetSettings.NewWorkerCount) { newUsers.Add(user); } else { newUsers.Sort(new UserInfoDateComparer(true)); for (int i = newUsers.Count - 1; i >= 0; i--) { var newUser = newUsers[i]; if (newUser.WorkFromDate.Value.CompareTo(user.WorkFromDate) < 0) { newUsers.Remove(newUser); newUsers.Add(user); break; } } } } } newUsers.Sort(new UserInfoDateComparer(true)); StringBuilder sb = new StringBuilder(); if (newUsers.Count > 0) { foreach (var user in newUsers) { sb.Append("<div style='margin-bottom:15px;'>"); var imageURL = user.GetSmallPhotoURL(); sb.Append("<table cellpadding=\"0\" cellspacing=\"0\"><tr valign='top'>"); sb.Append("<td style='width:30px;'><a href=\"" + CommonLinkUtility.GetUserProfile(user.ID, ProductID) + "\"><img class=\"borderBase\" border=0 alt=\"\" src='" + imageURL + "'/></a></td>"); sb.Append("<td style='padding-left:10px;'>"); sb.Append("<div style='margin-top:-3px;'>"); sb.Append("<a class='linkHeaderLightSmall' href=\"" + CommonLinkUtility.GetUserProfile(user.ID, ProductID) + "\">" + user.DisplayUserName() + "</a>"); sb.Append("</div>"); var dep = user.GetUserDepartment(); if (dep != null) { sb.Append("<div style='margin-top:4px;'>"); sb.Append("<a class='linkText' href='" + CommonLinkUtility.GetDepartment(ProductID, dep.ID) + "'>" + dep.Name.HtmlEncode() + "</a>"); sb.Append("</div>"); } sb.Append("</td>"); sb.Append("</tr></table>"); sb.Append("</div>"); } sb.Append("<div style='margin-top: 10px;'>"); //all users sb.Append("<a href=\"" + CommonLinkUtility.GetEmployees(ProductID) + "&sort=InvAdmissionDate\">" + CustomNamingPeople.Substitute <Resources.Resource>("AllEmployees").HtmlEncode() + "</a>"); sb.Append("</div>"); } else { //check access rigths if (SecurityContext.CheckPermissions(ASC.Core.Users.Constants.Action_AddRemoveUser)) { sb.Append("<div class='empty-widget' style='padding:40px; text-align: center;'>"); var url = string.Format("<div style=\"padding-top:3px;\"><a class=\"promoAction\" href=\"javascript:ImportUsersManager.ShowImportControl();\">"); sb.Append(string.Format(CustomNamingPeople.Substitute <Resources.Resource>("InviteEmployeesWidgetTitle").HtmlEncode(), url, "</a></div>")); sb.Append("</div>"); } else { sb.Append("<div class=\"empty-widget\" style=\"padding:40px; text-align: center;\">" + CustomNamingPeople.Substitute <Resources.Resource>("NoNewEmployees").HtmlEncode() + "</div>"); } } return(sb.ToString()); }
protected override void OnInit(EventArgs e) { base.OnInit(e); if (this.Master is IStudioMaster) { var master = this.Master as IStudioMaster; //top navigator if (this.Master is StudioTemplate) { (this.Master as StudioTemplate).TopNavigationPanel.CustomTitle = CustomNamingPeople.Substitute <Resources.Resource>("Employees"); (this.Master as StudioTemplate).TopNavigationPanel.CustomTitleURL = CommonLinkUtility.GetEmployees(); (this.Master as StudioTemplate).TopNavigationPanel.CustomTitleIconURL = WebImageSupplier.GetAbsoluteWebPath("home.png"); } WriteEmployeeActions(this); if (SecurityContext.CheckPermissions(Constants.Action_AddRemoveUser)) { master.SideHolder.Controls.Add(GetEmployeeNavigation()); } var contentControl = (EmployeeViewer)LoadControl(EmployeeViewer.Location); master.ContentHolder.Controls.Add(contentControl); master.SideHolder.Controls.Add(LoadControl(CompanyNavigation.Location)); if (contentControl.WhatView == EmployeeViewer.ViewType.Departments) { var ceoSelector = (SimpleUserSelector)LoadControl(SimpleUserSelector.Location); ceoSelector.Title = CustomNamingPeople.Substitute <Resources.Resource>("CeoNameEditCaption"); ceoSelector.SelectTitle = CustomNamingPeople.Substitute <Resources.Resource>("CEO"); ceoSelector.AdditionalID = "ceo"; var ceo = CoreContext.UserManager.GetCompanyCEO(); ceoSelector.UserID = ceo != null ? ceo.ID : Guid.Empty; ceoSelector.SelectJSCallback = "function(id) { EmployeeService.ChangeCEO(id); window.location.reload(); }"; master.ContentHolder.Controls.Add(ceoSelector); } else if (contentControl.WhatView == EmployeeViewer.ViewType.Department) { var managerSelector = (SimpleUserSelector)LoadControl(SimpleUserSelector.Location); managerSelector.Title = CustomNamingPeople.Substitute <Resources.Resource>("DepEditMaster"); managerSelector.SelectTitle = CustomNamingPeople.Substitute <Resources.Resource>("DepartmentMaster"); managerSelector.AdditionalID = "dep_manager"; managerSelector.UserID = CoreContext.UserManager.GetDepartmentManager(contentControl.DepartmentId); managerSelector.SelectJSCallback = "function(id) { EmployeeService.ChangeDepartmentManager(id,'" + contentControl.DepartmentId + "'); window.location.reload(); }"; master.ContentHolder.Controls.Add(managerSelector); var depNameControl = (Confirm)LoadControl(Confirm.Location); depNameControl.Title = CustomNamingPeople.Substitute <Resources.Resource>("DepartmentTitle"); depNameControl.AdditionalID = "depname"; depNameControl.SelectTitle = Resources.Resource.NewTitle; depNameControl.Value = contentControl.Department != null?HttpUtility.HtmlEncode(contentControl.Department.Name) : ""; depNameControl.SelectJSCallback = @"function(name) { AjaxPro.onLoading = function(b){ if(b) jq('#studio_confirmDialogdepname').block(); else jq('#studio_confirmDialogdepname').unblock(); }; EmployeeService.ChangeDepartmentName('" + contentControl.DepartmentId + @"',name,function(result){ if(result.value.rs1 == '0') jq('#studio_confirmMessage').html('<div class=\'errorBox\'>'+result.value.rs2+'</div>'); else{ window.location.reload(true); jq.unblockUI(); } }); }"; master.ContentHolder.Controls.Add(depNameControl); } } }
protected void RenderHeader() { var topNavigationPanel = (TopNavigationPanel)LoadControl(TopNavigationPanel.Location); // topNavigationPanel.SingleSearchHandlerType = typeof(SearchHandler); // topNavigationPanel.CustomInfoHTML = String.Format("<img vspace='9' hspace='10' align='middle' src='{0}' valign='middle'>", WebImageSupplier.GetAbsoluteWebPath("beta_module.png")); _topNavigationPanelPlaceHolder.Controls.Add(topNavigationPanel); var absolutePathWithoutQuery = Request.Url.AbsolutePath.Substring(0, Request.Url.AbsolutePath.IndexOf(".aspx")); var sysName = absolutePathWithoutQuery.Substring(absolutePathWithoutQuery.LastIndexOf('/') + 1); //topNavigationPanel.NavigationItems.Add(new NavigationItem // { // URL = // String.Concat(PathProvider.BaseAbsolutePath, // "default.aspx"), // Name = CRMCommonResource.DashboardModuleName, // Description = "", // Selected = String.Compare(sysName, "Default", true) == 0 // }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "default.aspx"), Name = CRMContactResource.Contacts, Description = "", Selected = String.Compare(sysName, "default", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "tasks.aspx"), Name = CRMCommonResource.TaskModuleName, Description = "", Selected = String.Compare(sysName, "Tasks", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "deals.aspx"), Name = CRMCommonResource.DealModuleName, Description = "", Selected = String.Compare(sysName, "Deals", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "cases.aspx"), Name = CRMCommonResource.CasesModuleName, Description = "", Selected = String.Compare(sysName, "Cases", true) == 0 }); //if (CRMSecurity.IsAdmin) // topNavigationPanel.NavigationItems.Add(new NavigationItem // { // URL = // String.Concat(PathProvider.BaseAbsolutePath, // "reports.aspx"), // Name = CRMCommonResource.ReportModuleName, // Description = "", // Selected = String.Compare(sysName, "Reports", true) == 0 // }); if (CRMSecurity.IsAdmin) { topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "settings.aspx?type=common"), Name = CRMCommonResource.SettingModuleName, Description = "", Selected = String.Compare(sysName, "Settings", true) == 0, RightAlign = true }); } topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = CommonLinkUtility.GetEmployees(ProductEntryPoint.ID), Name = CustomNamingPeople.Substitute <CRMCommonResource>( "Employees"), Description = "", Selected = UserOnlineManager.Instance.IsEmployeesPage() || UserOnlineManager.Instance.IsUserProfilePage(), RightAlign = true }); }
protected void RenderHeader() { var topNavigationPanel = (TopNavigationPanel)LoadControl(TopNavigationPanel.Location); topNavigationPanel.SingleSearchHandlerType = typeof(SearchHandler); var absolutePathWithoutQuery = Request.Url.AbsolutePath.Substring(0, Request.Url.AbsolutePath.IndexOf(".aspx")); var sysName = absolutePathWithoutQuery.Substring(absolutePathWithoutQuery.LastIndexOf('/') + 1); var project = RequestContext.GetCurrentProject(false); var projectID = -1; if (RequestContext.IsInConcreteProject()) { projectID = project.ID; var rigthItems = new List <NavigationItem>(); foreach (var webitem in WebItemManager.Instance.GetSubItems(ProductEntryPoint.ID)) { var module = webitem as IModule; var navigationItem = new NavigationItem() { URL = String.Format(webitem.StartURL, projectID), Name = webitem.Name, Description = webitem.Description, Selected = String.Compare(sysName, module.ModuleSysName, true) == 0 }; var added = false; if (String.Compare(module.ModuleSysName, "History", true) == 0 || String.Compare(module.ModuleSysName, "ProjectAction", true) == 0 || String.Compare(module.ModuleSysName, "ProjectTeam", true) == 0) { navigationItem.RightAlign = true; rigthItems.Add(navigationItem); added = true; } //hide in private projects if (String.Compare(module.ModuleSysName, "Messages", true) == 0 && !ProjectSecurity.CanReadMessages(RequestContext.GetCurrentProject())) { continue; } if (String.Compare(module.ModuleSysName, "TMDocs", true) == 0 && !ProjectSecurity.CanReadFiles(RequestContext.GetCurrentProject())) { continue; } if (String.Compare(module.ModuleSysName, "TMDocs", true) == 0) { navigationItem.Selected = String.Compare(sysName, "tmdocs", true) == 0; navigationItem.Name = ProjectsFileResource.Documents; navigationItem.URL = PathProvider.BaseAbsolutePath + "tmdocs.aspx?prjID=" + projectID; } if (!added) { topNavigationPanel.NavigationItems.Add(navigationItem); } } rigthItems.Reverse(); topNavigationPanel.NavigationItems.AddRange(rigthItems); } else { topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "default.aspx"), Name = ProjectsCommonResource.Dashboard, Description = "", Selected = String.Compare(sysName, "Default", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "projects.aspx"), Name = ProjectResource.Projects, Description = "", Selected = String.Compare(sysName, "Projects", true) == 0 || String.Compare(sysName, "ProjectAction", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "milestones.aspx"), Name = MilestoneResource.Milestones, Description = "", Selected = String.Compare(sysName, "milestones", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "tasks.aspx"), Name = TaskResource.Tasks, Description = "", Selected = String.Compare(sysName, "tasks", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "messages.aspx"), Name = MessageResource.Messages, Description = "", Selected = String.Compare(sysName, "messages", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "reports.aspx"), Name = ReportResource.Reports, Description = "", Selected = String.Compare(sysName, "Reports", true) == 0 || String.Compare(sysName, "Templates", true) == 0 }); topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "history.aspx"), Name = ProjectsCommonResource.History, Description = "", Selected = String.Compare(sysName, "History", true) == 0 }); if (ProjectSecurity.IsAdministrator(SecurityContext.CurrentAccount.ID)) { topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = String.Concat(PathProvider.BaseAbsolutePath, "projectTemplates.aspx"), Name = ProjectResource.ProjectTemplates, Description = "", Selected = String.Compare(sysName, "ProjectTemplates", true) == 0, RightAlign = true }); } topNavigationPanel.NavigationItems.Add(new NavigationItem { URL = CommonLinkUtility.GetEmployees(ProductEntryPoint.ID), Name = CustomNamingPeople.Substitute <ProjectsCommonResource>("Employees"), Description = "", Selected = UserOnlineManager.Instance.IsEmployeesPage() || UserOnlineManager.Instance.IsUserProfilePage(), RightAlign = true }); } if (RequestContext.HasAnyProjects()) { var pageName = "default"; switch (sysName) { case "userprofile": case "default": case "reports": case "projectTemplates": case "createprojectfromtemplate": case "editprojecttemplate": pageName = "projects"; break; case "settings": pageName = "projectAction"; break; case "employee": pageName = "projectTeam"; break; default: pageName = sysName; break; } topNavigationPanel.CustomInfoHTML = RenderAllProjectsBlock(projectID, pageName); } _topNavigationPanelPlaceHolder.Controls.Add(topNavigationPanel); }
protected void Page_PreLoad(object sender, EventArgs e) { if (!(this.Master is IStudioMaster)) { return; } var master = this.Master as IStudioMaster; //top navigator if (this.Master is StudioTemplate) { (this.Master as StudioTemplate).TopNavigationPanel.CustomTitle = CustomNamingPeople.Substitute <Resources.Resource>("Employees"); (this.Master as StudioTemplate).TopNavigationPanel.CustomTitleURL = CommonLinkUtility.GetEmployees(); (this.Master as StudioTemplate).TopNavigationPanel.CustomTitleIconURL = WebImageSupplier.GetAbsoluteWebPath("home.png"); } #region define profile type if (!String.IsNullOrEmpty(Request["type"])) { try { } catch { } } #endregion _userID = SecurityContext.CurrentAccount.ID; _productID = GetProductID(); #region find request user _userInfo = CoreContext.UserManager.GetUserByUserName(Request[CommonLinkUtility.ParamName_UserUserName]); if (_userInfo == null || _userInfo == Constants.LostUser) { if (!String.IsNullOrEmpty(Request["uid"])) { try { _userID = new Guid(Request["uid"]); } catch { _userID = SecurityContext.CurrentAccount.ID; } } if (!CoreContext.UserManager.UserExists(_userID)) { //user not found Response.Redirect(CommonLinkUtility.GetEmployees(_productID)); return; } else { _userInfo = CoreContext.UserManager.GetUsers(_userID); } } else { _userID = _userInfo.ID; } #endregion var self = SecurityContext.CurrentAccount.ID.Equals(_userID); var container = new Container { Body = new PlaceHolder(), Header = new PlaceHolder() }; master.ContentHolder.Controls.Add(container); container.BreadCrumbs.Add(new BreadCrumb { Caption = CustomNamingPeople.Substitute <Resources.Resource>("Employees"), NavigationUrl = CommonLinkUtility.GetEmployees(_productID) }); container.BreadCrumbs.Add(new BreadCrumb { Caption = (self ? Resources.Resource.MyProfile : (_userInfo.DisplayUserName(false))), NavigationUrl = CommonLinkUtility.GetEmployees(_productID) }); Title = HeaderStringHelper.GetPageTitle(CustomNamingPeople.Substitute <Resources.Resource>("Employees"), container.BreadCrumbs); //user card var userCard = (UserProfileControl)LoadControl(UserProfileControl.Location); userCard.UserInfo = _userInfo; container.Body.Controls.Add(new Literal { Text = "<div class=\"headerBase borderBase\" style=\"padding: 0px 0px 5px 15px; border-top:none; border-right:none; border-left:none;\">" + Resources.Resource.PersonalInfo + "</div><div style=\"padding:15px 0px 0px 0px\">" }); container.Body.Controls.Add(userCard); container.Body.Controls.Add(new Literal { Text = "</div><div style=height:20px;> </div>" }); var product = ProductManager.Instance[_productID]; if (product != null && product.Context != null && product.Context.UserActivityControlLoader != null) { container.Body.Controls.Add(product.Context.UserActivityControlLoader.LoadControl(_userID)); container.Body.Controls.Add(new Literal { Text = "<div style=height:20px;> </div>" }); } else { var isFirst = true; foreach (var prod in WebItemManager.Instance.GetItems(Web.Core.WebZones.WebZoneType.All).OfType <IProduct>()) { if (prod.Context == null || prod.Context.UserActivityControlLoader == null) { continue; } var sb = new StringBuilder(); sb.Append("<div id='studio_product_activityBox_" + prod.ID + "' class='borderBase tintMedium clearFix' style='border-left:none; border-right:none; margin-top:-1px; padding:10px;'>"); sb.Append("<div class='headerBase' style='float:left; cursor:pointer;' onclick=\"StudioManager.ToggleProductActivity('" + prod.ID + "');\">"); var logoURL = prod.GetIconAbsoluteURL(); if (!String.IsNullOrEmpty(logoURL)) { sb.Append("<img alt='' style='margin-right:5px;' align='absmiddle' src='" + logoURL + "'/>"); } sb.Append(prod.Name.HtmlEncode()); sb.Append("<img alt='' align='absmiddle' id='studio_activityProductState_" + prod.ID + "' style='margin-left:15px;' src='" + WebImageSupplier.GetAbsoluteWebPath(isFirst ? "collapse_down_dark.png" : "collapse_right_dark.png") + "'/>"); sb.Append("</div>"); sb.Append("</div>"); sb.Append("<div id=\"studio_product_activity_" + prod.ID + "\" style=\"padding-left:40px; " + (isFirst ? "" : "display:none;") + " padding-top:20px;\">"); container.Body.Controls.Add(new Literal { Text = sb.ToString() }); var activityControl = prod.Context.UserActivityControlLoader.LoadControl(_userID); container.Body.Controls.Add(activityControl); sb = new StringBuilder(); sb.Append("</div>"); container.Body.Controls.Add(new Literal { Text = sb.ToString() }); isFirst = false; } } Employee.WriteEmployeeActions(this); if (SecurityContext.CheckPermissions(Constants.Action_AddRemoveUser)) { master.SideHolder.Controls.Add(Employee.GetEmployeeNavigation()); } var sideControl = (CompanyNavigation)LoadControl(CompanyNavigation.Location); master.SideHolder.Controls.Add(sideControl); }