/// <summary> /// Gets the name of the tab. /// </summary> /// <param name="tabName"></param> /// <param name="tabValue"></param> /// <returns></returns> private string GetTabName(string tabName, string tabValue) { switch (tabValue.ToLower()) { case "tabcomments": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueCommentManager.GetByIssueId(IssueId).Count)); case "tabhistory": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueHistoryManager.GetByIssueId(IssueId).Count)); case "tabattachments": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueAttachmentManager.GetByIssueId(IssueId).Count)); case "tabnotifications": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueNotificationManager.GetByIssueId(IssueId).Count)); case "tabrelatedissues": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : RelatedIssueManager.GetRelatedIssues(IssueId).Count)); case "tabparentissues": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : RelatedIssueManager.GetParentIssues(IssueId).Count)); case "tabsubissues": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : RelatedIssueManager.GetChildIssues(IssueId).Count)); case "tabrevisions": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueRevisionManager.GetByIssueId(IssueId).Count)); case "tabtimetracking": return(string.Format("{0} ({1})", tabName, IssueId == 0 ? 0 : IssueWorkReportManager.GetByIssueId(IssueId).Count)); default: return(tabName); } }
/// <summary> /// Handles the ItemCommand event of the TimeEntriesDataGrid control. /// </summary> /// <param name="source">The source of the event.</param> /// <param name="e">The <see cref="T:System.Web.UI.WebControls.DataGridCommandEventArgs"/> instance containing the event data.</param> protected void TimeEntriesDataGrid_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { var id = Convert.ToInt32(e.CommandArgument); if (!IssueWorkReportManager.Delete(id)) { return; } var history = new IssueHistory { IssueId = IssueId, CreatedUserName = Security.GetUserName(), DateChanged = DateTime.Now, FieldChanged = ResourceStrings.GetGlobalResource(GlobalResources.SharedResources, "TimeLogged", "Time Logged"), OldValue = string.Empty, NewValue = ResourceStrings.GetGlobalResource(GlobalResources.SharedResources, "Deleted", "Deleted"), TriggerLastUpdateChange = true }; IssueHistoryManager.SaveOrUpdate(history); var changes = new List <IssueHistory> { history }; IssueNotificationManager.SendIssueNotifications(IssueId, changes); BindTimeEntries(); }
/// <summary> /// Binds the work reports. /// </summary> private void BindTimeEntries() { //System.Globalization.NumberFormatInfo nfi = System.Globalization.CultureInfo.CurrentCulture.NumberFormat; const double minimum = 0; RangeValidator1.MinimumValue = minimum.ToString(); RangeValidator1.CultureInvariantValues = true; TimeEntryDate.SelectedValue = DateTime.Today; cpTimeEntry.ValueToCompare = DateTime.Today.ToShortDateString(); var workReports = IssueWorkReportManager.GetByIssueId(IssueId); if (workReports == null || workReports.Count == 0) { TimeEntryLabel.Text = GetLocalResourceObject("NoTimeEntries").ToString(); TimeEntryLabel.Visible = true; TimeEntriesDataGrid.Visible = false; } else { _total = 0; TimeEntriesDataGrid.Visible = true; TimeEntryLabel.Visible = false; TimeEntriesDataGrid.DataSource = workReports; TimeEntriesDataGrid.DataBind(); } }
/// <summary> /// Handles the Click event of the cmdAddBugTimeEntry control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void AddTimeEntry_Click(object sender, EventArgs e) { if (DurationTextBox.Text.Trim().Length == 0) { return; } var selectedWorkDate = TimeEntryDate.SelectedValue == null ? DateTime.MinValue : (DateTime)TimeEntryDate.SelectedValue; var workDuration = Convert.ToDecimal(DurationTextBox.Text); var workReport = new IssueWorkReport { CommentText = CommentHtmlEditor.Text.Trim(), CreatorUserName = Context.User.Identity.Name, Duration = workDuration, IssueId = IssueId, WorkDate = selectedWorkDate }; IssueWorkReportManager.SaveOrUpdate(workReport); var history = new IssueHistory { IssueId = IssueId, CreatedUserName = Security.GetUserName(), DateChanged = DateTime.Now, FieldChanged = ResourceStrings.GetGlobalResource(GlobalResources.SharedResources, "TimeLogged", "Time Logged"), OldValue = string.Empty, NewValue = DurationTextBox.Text.Trim(), TriggerLastUpdateChange = true }; IssueHistoryManager.SaveOrUpdate(history); var changes = new List <IssueHistory> { history }; IssueNotificationManager.SendIssueNotifications(IssueId, changes); CommentHtmlEditor.Text = string.Empty; DurationTextBox.Text = string.Empty; BindTimeEntries(); }
/// <summary> /// Gets the name of the tab. /// </summary> /// <param name="tabName"></param> /// <param name="tabValue"></param> /// <returns></returns> private string GetTabName(string tabName, string tabValue) { int cnt; switch (tabValue.ToLower()) { case "tabcomments": cnt = IssueId == 0 ? 0 : IssueCommentManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "bold")); case "tabhistory": cnt = IssueId == 0 ? 0 : IssueHistoryManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "normal")); case "tabattachments": cnt = IssueId == 0 ? 0 : IssueAttachmentManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "bold")); case "tabnotifications": cnt = IssueId == 0 ? 0 : IssueNotificationManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "normal")); case "tabrelatedissues": cnt = IssueId == 0 ? 0 : RelatedIssueManager.GetRelatedIssues(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "bold")); case "tabparentissues": cnt = IssueId == 0 ? 0 : RelatedIssueManager.GetParentIssues(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "bold")); case "tabsubissues": cnt = IssueId == 0 ? 0 : RelatedIssueManager.GetChildIssues(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "bold")); case "tabrevisions": cnt = IssueId == 0 ? 0 : IssueRevisionManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "normal")); case "tabtimetracking": cnt = IssueId == 0 ? 0 : IssueWorkReportManager.GetByIssueId(IssueId).Count; return(string.Format("<span class='{2}'>{0} ({1})</span>", tabName, cnt, cnt == 0 ? "normal" : "normal")); default: return(tabName); } }