Example #1
0
        /// <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();
        }
Example #5
0
        /// <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);
            }
        }