private void UpdateWindow() { eid = (int)App.Current.Properties["UserId"]; //User logging out if ((string)App.Current.Properties["CloseWindow"] == "Close") { this.Close(); } lblName.Content = App.Current.Properties["User"]; DataRowView drv = (DataRowView)App.Current.Properties["thisProject"]; txtblTitle.Text = (string)drv["projectname"]; pid = (int)drv["pid"]; ProjectMaster2016.projectmasterDataSet projectmasterDataSet = ((ProjectMaster2016.projectmasterDataSet)(this.FindResource("projectmasterDataSet"))); projectmasterDataSetTableAdapters.projectTableAdapter pta = new projectmasterDataSetTableAdapters.projectTableAdapter(); try { // fill view with selectd project pta.FillByProjectId(projectmasterDataSet.project, pid); System.Windows.Data.CollectionViewSource projectViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("projectViewSource"))); projectViewSource.View.MoveCurrentToFirst(); } catch { } //disable edit, remove and add projectemployee -> if user is not owner/creator of project int isOwner = (int)pta.GetProjectOwner(pid); if (isOwner != eid) { btnRemoveProject.Visibility = Visibility.Collapsed; btnEditProject.Visibility = Visibility.Collapsed; btnAddProjectEmployee.Visibility = Visibility.Collapsed; btnRemoveProjectEmployee.Visibility = Visibility.Collapsed; } lblEmp.Content = pta.GetEmployeeName((int)drv["pid"]); //display project status finished/unfinished bool status = (bool)drv["projectisfinished"]; if (status == false) { lblStatus.Content = "Í vinnslu"; } else { lblStatus.Content = "Lokið"; } //display creationdate try { DateTime created = (DateTime)drv["pdate"]; if (created != null) { lblCreated.Content = created.ToLongDateString(); } } catch { } //display deadline try { DateTime due = (DateTime)drv["pdeadline"]; lblDue.Content = due.ToLongDateString(); } catch { lblDue.Content = "Ekki tilgreint"; } ProjectMaster2016.projectmasterDataSetTableAdapters.project_employeesTableAdapter peta = new ProjectMaster2016.projectmasterDataSetTableAdapters.project_employeesTableAdapter(); try { //fill relatedentries -> messages, costs and hours peta.FillByAllRelatedEntries(projectmasterDataSet.project_employees, pid); System.Windows.Data.CollectionViewSource project_employeesViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("project_employeesViewSource"))); project_employeesViewSource.View.MoveCurrentToFirst(); } catch (Exception) { } // display statistics try { lblentriesCount.Content = (int)pta.CountOfRelatedProjectEntries(pid); } catch { } try { lbltotalHours.Content = (decimal)pta.CountOfProjectHours(pid); } catch { } try { lbltotalCost.Content = (int)pta.SumOfProjectCosts(pid); } catch { } //fill for add projectemployeelistbox try { ProjectMaster2016.projectmasterDataSetTableAdapters.employeeTableAdapter projectmasterDataSetemployeeTableAdapter = new ProjectMaster2016.projectmasterDataSetTableAdapters.employeeTableAdapter(); projectmasterDataSetemployeeTableAdapter.FillByProjectEmployeeName(projectmasterDataSet.employee, pid); System.Windows.Data.CollectionViewSource employeeViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("employeeViewSource"))); employeeViewSource.View.MoveCurrentToFirst(); } catch { } }
private void UpdateWindow() { //display user's name in upper right corner lblName.Content = App.Current.Properties["User"]; //disable add, edit and remove for 'poweruser' in admin menu string role = (string)App.Current.Properties["Role"]; if (role == "poweruser" && App.Current.Properties["thisProject"] == null ) { btnAddProjectHours.Visibility = Visibility.Collapsed; ctx.Visibility = Visibility.Collapsed; } ProjectMaster2016.projectmasterDataSet projectmasterDataSet = ((ProjectMaster2016.projectmasterDataSet)(this.FindResource("projectmasterDataSet"))); // Load data into the table project_hours. You can modify this code as needed. ProjectMaster2016.projectmasterDataSetTableAdapters.project_hoursTableAdapter projectmasterDataSetproject_hoursTableAdapter = new ProjectMaster2016.projectmasterDataSetTableAdapters.project_hoursTableAdapter(); if (App.Current.Properties["thisProjectHours"] == null) { // //This loads Hours for all Projects. For access through admin menu: add, edit and remove enabled (admin role) -> add,edit and remove disabled (poweruser role) // projectmasterDataSetproject_hoursTableAdapter.FillByProjectName(projectmasterDataSet.project_hours); System.Windows.Data.CollectionViewSource project_hoursViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("project_hoursViewSource"))); project_hoursViewSource.View.MoveCurrentToFirst(); } else { // //This loads Hours for a selected project // DataRowView drv = (DataRowView)App.Current.Properties["thisProjectHours"]; pid = (int)drv["pid"]; projectmasterDataSetproject_hoursTableAdapter.FillProjectHoursByPId(projectmasterDataSet.project_hours, pid); } // //disable edit and delete if user is not owner/creator of project // eid = (int)App.Current.Properties["UserId"]; projectmasterDataSetTableAdapters.projectTableAdapter pta = new projectmasterDataSetTableAdapters.projectTableAdapter(); try { int isOwner = (int)pta.GetProjectOwner(pid); if (isOwner != eid) { ctx.Visibility = Visibility.Collapsed; } //disable poweruser to edit "other projects" if (role == "poweruser" && isOwner != eid) { btnAddProjectHours.Visibility = Visibility.Collapsed; ctx.Visibility = Visibility.Collapsed; } } catch { } //ensure add, edit and remove are enabled for admin if (role == "admin") { btnAddProjectHours.Visibility = Visibility.Visible; ctx.Visibility = Visibility.Visible; } //ensure add is enabled for poweruser if (role == "poweruser" && App.Current.Properties["thisProject"] != null) { btnAddProjectHours.Visibility = Visibility.Visible; } }