Example #1
0
        protected void UpdateProject_Click(object sender, EventArgs e)
        {
            var button = sender as Button;
            var nameTextbox = ProjectName;
            var reviewerDropdown = ProjectReviewer;
            var fileUpload = ProjectFile;
            var statusLabel = ProjectMessageLabel;

            try
            {
                var fileName = fileUpload.FileName;
                var path = Server.MapPath(".") + "\\ProjectFiles\\" + fileName;
                fileUpload.SaveAs(path);
                var url = GetBaseUrl() + "ProjectFiles/" + fileName;

                var project = default(Project);
                var isNew = true;
                if (!string.IsNullOrWhiteSpace(button.CommandArgument))
                {// existing project
                    var projectId = new Guid(button.CommandArgument);
                    project = DatabaseContext.Projects.First(p => p.Id == projectId);
                    isNew = false;
                }
                else
                {// new project
                    project = new Project();
                    project.Id = Guid.NewGuid();
                }
                project.Name = nameTextbox.Text;
                project.Reviewer = reviewerDropdown.SelectedValue;
                project.DateUploaded = DateTime.Now;
                project.Author = LoggedInUserId;
                project.Url = url;
                project.Status = ProjectStatus.Created;
                project.PhisicalPath = path;

                if (isNew)
                {
                    DatabaseContext.Projects.Add(project);
                }
                else
                {
                    DatabaseContext.Entry(project).State = System.Data.Entity.EntityState.Modified;
                }
                DatabaseContext.SaveChanges();

                LoadProjects();

                statusLabel.Text = "The project has been added with success.";
                ProjectUpdatePanel.Visible = false;
                CommentsPanel.Visible = false;
                ProjectActionTitle.Text = string.Empty;
            }
            catch (Exception ex)
            {
                statusLabel.Text = "The project could not be added. " + ex.ToString();
            }
        }
Example #2
0
        private void LoadStudentForm(Project project)
        {
            if (project == null)
            {
                return;
            }

            StudentCurrentStatus.Text = GetStatusDescription(project.Status);
            StudentComment.Text = string.Empty;
            StudentSubmit.CommandArgument = project.Id.ToString();
        }
Example #3
0
 private void LoadProjectForm(Project project)
 {
     var nameTexbox = ProjectName;
     var submitButton = ProjectSubmit;
     if (project == null)
     {
         nameTexbox.Text = string.Empty;
         submitButton.Text = "Add";
         submitButton.CommandArgument = string.Empty;
     }
     else
     {
         nameTexbox.Text = project.Name;
         submitButton.Text = "Update";
         submitButton.CommandArgument = project.Id.ToString();
     }
 }
Example #4
0
        private void LoadReviewerForm(Project project)
        {
            if (project == null)
            {
                return;
            }

            var currentStatusLabel = CurrentStatus;
            var newStatusDropDown = CommentNewStatus;
            var gradeTextbox = CommentGrade;
            var commentTextbox = Comment;
            var submitButton = CommentSubmit;

            currentStatusLabel.Text = GetStatusDescription(project.Status);
            gradeTextbox.Text = project.Grade;
            foreach (ListItem item in newStatusDropDown.Items)
            {
                if (item.Value == ((int)project.Status).ToString())
                {
                    item.Enabled = false;
                }
                else
                {
                    item.Enabled = true;
                }
            }
            commentTextbox.Text = string.Empty;

            submitButton.CommandArgument = project.Id.ToString();
        }
Example #5
0
        private void LoadProject(Project project)
        {
            // load comments
            CommentsRepeater.DataSource = project != null ? DatabaseContext.ProjectHistories.Where(p => p.ProjectId == project.Id).OrderByDescending(p=>p.ChangeDate).ToArray() : null;
            CommentsRepeater.DataBind();

            // load project update form
            LoadProjectForm(project);

            // load reviewer form
            if (IsProfessor)
            {
                LoadReviewerForm(project);
            }
            if (IsStudent)
            {
                LoadStudentForm(project);
            }
        }