/// <summary> /// Creates project task. Called when the "Create task" button is pressed. /// </summary> private bool CreateProjectTask() { ProjectInfo project = ProjectInfoProvider.GetProjectInfo("MyNewProject", SiteContext.CurrentSiteID, 0); ProjectTaskStatusInfo status = ProjectTaskStatusInfoProvider.GetProjectTaskStatusInfo("NotStarted"); ProjectTaskPriorityInfo priority = ProjectTaskPriorityInfoProvider.GetProjectTaskPriorityInfo("Normal"); if ((project != null) && (status != null) && (priority != null)) { // Create new project task object ProjectTaskInfo newTask = new ProjectTaskInfo(); int currentUserID = MembershipContext.AuthenticatedUser.UserID; // Set the properties newTask.ProjectTaskDisplayName = "My new task"; newTask.ProjectTaskCreatedByID = currentUserID; newTask.ProjectTaskOwnerID = currentUserID; newTask.ProjectTaskAssignedToUserID = currentUserID; newTask.ProjectTaskStatusID = status.TaskStatusID; newTask.ProjectTaskPriorityID = priority.TaskPriorityID; newTask.ProjectTaskProjectID = project.ProjectID; // Save the project task ProjectTaskInfoProvider.SetProjectTaskInfo(newTask); return(true); } return(false); }
/// <summary> /// Validates the form. If validation succeeds returns true, otherwise returns false. /// </summary> private bool Validate() { string codename = this.txtTaskPriorityName.Text.Trim(); // Validate required fields string errorMessage = new Validator() .NotEmpty(this.txtTaskPriorityDisplayName.Text.Trim(), this.rfvTaskPriorityDisplayName.ErrorMessage) .NotEmpty(codename, this.rfvTaskPriorityName.ErrorMessage) .IsCodeName(codename, GetString("general.invalidcodename")).Result; // Check the uniqueness of the codename ProjectTaskPriorityInfo ptpi = ProjectTaskPriorityInfoProvider.GetProjectTaskPriorityInfo(codename); if ((ptpi != null) && (ptpi.TaskPriorityID != this.TaskPriorityID)) { errorMessage = GetString("general.codenameexists"); } // Set the error message if (!String.IsNullOrEmpty(errorMessage)) { this.lblError.Text = errorMessage; return(false); } return(true); }
/// <summary> // Processes the form - saves the data. /// </summary> private void Process() { // Validate the form if (Validate()) { // Ensure the info object if (this.ProjecttaskpriorityObj == null) { this.ProjecttaskpriorityObj = new ProjectTaskPriorityInfo(); this.ProjecttaskpriorityObj.TaskPriorityOrder = ProjectTaskPriorityInfoProvider.GetPriorityCount(false) + 1; } // Initialize object this.ProjecttaskpriorityObj.TaskPriorityName = this.txtTaskPriorityName.Text.Trim(); this.ProjecttaskpriorityObj.TaskPriorityDisplayName = this.txtTaskPriorityDisplayName.Text.Trim(); this.ProjecttaskpriorityObj.TaskPriorityEnabled = this.chkTaskPriorityEnabled.Checked; this.ProjecttaskpriorityObj.TaskPriorityDefault = this.chkTaskPriorityDefault.Checked; // Save object data to database ProjectTaskPriorityInfoProvider.SetProjectTaskPriorityInfo(this.ProjecttaskpriorityObj); this.ItemID = this.ProjecttaskpriorityObj.TaskPriorityID; this.RaiseOnSaved(); // Set the info message this.lblInfo.Text = GetString("general.changessaved"); } }
/// <summary> // Processes the form - saves the data. /// </summary> private void Process() { // Validate the form if (Validate()) { // Ensure the info object if (ProjecttaskpriorityObj == null) { ProjecttaskpriorityObj = new ProjectTaskPriorityInfo(); ProjecttaskpriorityObj.TaskPriorityOrder = ProjectTaskPriorityInfoProvider.GetPriorityCount(false) + 1; } // Initialize object ProjecttaskpriorityObj.TaskPriorityName = txtTaskPriorityName.Text.Trim(); ProjecttaskpriorityObj.TaskPriorityDisplayName = txtTaskPriorityDisplayName.Text.Trim(); ProjecttaskpriorityObj.TaskPriorityEnabled = chkTaskPriorityEnabled.Checked; ProjecttaskpriorityObj.TaskPriorityDefault = chkTaskPriorityDefault.Checked; // Save object data to database ProjectTaskPriorityInfoProvider.SetProjectTaskPriorityInfo(ProjecttaskpriorityObj); ItemID = ProjecttaskpriorityObj.TaskPriorityID; RaiseOnSaved(); // Set the info message ShowChangesSaved(); } }
/// <summary> /// Loads the data into the form. /// </summary> private void LoadData() { // If dealayed reload or not postback with not delayed reload if (!URLHelper.IsPostback() || (drpTaskStatus.Items.Count == 0)) { drpTaskStatus.DataSource = ProjectTaskStatusInfoProvider.GetProjectTaskStatuses(true); drpTaskStatus.DataValueField = "TaskStatusID"; drpTaskStatus.DataTextField = "TaskStatusDisplayName"; drpTaskStatus.DataBind(); drpTaskPriority.DataSource = ProjectTaskPriorityInfoProvider.GetProjectTaskPriorities(true); drpTaskPriority.DataValueField = "TaskPriorityID"; drpTaskPriority.DataTextField = "TaskPriorityDisplayName"; drpTaskPriority.DataBind(); } // Clear selector selection selectorOwner.UniSelector.Value = String.Empty; selectorAssignee.UniSelector.Value = String.Empty; // Load the form from the info object if (ProjectTaskObj != null) { txtProjectTaskDisplayName.Text = ProjectTaskObj.ProjectTaskDisplayName; if (ProjectTaskObj.ProjectTaskAssignedToUserID > 0) { selectorAssignee.UniSelector.Value = ProjectTaskObj.ProjectTaskAssignedToUserID; selectorAssignee.ReloadData(); } txtProjectTaskProgress.Text = ProjectTaskObj.ProjectTaskProgress.ToString(); txtProjectTaskHours.Text = ProjectTaskObj.ProjectTaskHours.ToString(); if (ProjectTaskObj.ProjectTaskOwnerID > 0) { selectorOwner.UniSelector.Value = ProjectTaskObj.ProjectTaskOwnerID; selectorOwner.ReloadData(); } dtpProjectTaskDeadline.SelectedDateTime = ProjectTaskObj.ProjectTaskDeadline; chkProjectTaskIsPrivate.Checked = ProjectTaskObj.ProjectTaskIsPrivate; htmlTaskDescription.ResolvedValue = ProjectTaskObj.ProjectTaskDescription; SetStatusDrp(ProjectTaskObj.ProjectTaskStatusID); SetPriorityDrp(ProjectTaskObj.ProjectTaskPriorityID); } else { // Set only available user var cui = MembershipContext.AuthenticatedUser; if (!IsLiveSite || !cui.UserIsDisabledManually) { // Load default data selectorOwner.UniSelector.Value = (mProjectTaskOwnerID > 0) ? mProjectTaskOwnerID : MembershipContext.AuthenticatedUser.UserID; selectorAssignee.UniSelector.Value = (mProjectTaskAssigneeID > 0) ? mProjectTaskAssigneeID : MembershipContext.AuthenticatedUser.UserID; selectorAssignee.ReloadData(); selectorOwner.ReloadData(); } LoadDefaultPriority(); } }
/// <summary> /// Selects priority in the drop down list. /// </summary> /// <param name="value">The selected value</param> private void SetPriorityDrp(int value) { if (drpTaskPriority.Items.FindByValue(value.ToString()) == null) { // Priority not found (is disabled) - add manually ProjectTaskPriorityInfo priority = ProjectTaskPriorityInfoProvider.GetProjectTaskPriorityInfo(value); drpTaskPriority.Items.Add(new ListItem(priority.TaskPriorityDisplayName, priority.TaskPriorityID.ToString())); } drpTaskPriority.SelectedValue = value.ToString(); }
/// <summary> /// Loads and set default priority. /// </summary> private void LoadDefaultPriority() { ProjectTaskPriorityInfo defaultPriority = ProjectTaskPriorityInfoProvider.GetDefaultPriority(); if (defaultPriority != null) { try { drpTaskPriority.SelectedValue = defaultPriority.TaskPriorityID.ToString(); } catch { } } }
/// <summary> /// Handles UniGrid's OnAction event. /// </summary> /// <param name="actionName">Name of the action which should be performed</param> /// <param name="actionArgument">ID of the item the action should be performed with</param> protected void gridElem_OnAction(string actionName, object actionArgument) { int projecttaskpriorityId = ValidationHelper.GetInteger(actionArgument, 0); if (projecttaskpriorityId > 0) { switch (actionName.ToLowerCSafe()) { case "edit": SelectedItemID = projecttaskpriorityId; RaiseOnEdit(); break; case "delete": if (!ProjectTaskPriorityInfoProvider.CheckDependencies(projecttaskpriorityId)) { ShowError(GetString("pm.projecttaskpriority.removedenied")); return; } if (ProjectTaskPriorityInfoProvider.GetPriorityCount() <= 1) { ltlInfo.Text = ScriptHelper.GetScript("alert('" + GetString("pm.projectstatus.deletealert") + "');"); return; } // Delete the object ProjectTaskPriorityInfoProvider.DeleteProjectTaskPriorityInfo(projecttaskpriorityId); RaiseOnDelete(); // Reload data gridElem.ReloadData(); break; case "up": ProjectTaskPriorityInfoProvider.MovePriorityUp(projecttaskpriorityId); break; case "down": ProjectTaskPriorityInfoProvider.MovePriorityDown(projecttaskpriorityId); break; } } }