Inheritance: ModelBase
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var status = StatusRepository.StatusFetch(id);

            model.Title = "Status Delete";
            model.Id = status.StatusId;
            model.Name = "Status";
            model.Description = status.Name;
            model.ControllerName = "Status";
            model.BackUrl = Url.Action("Details", "Project", new { id = status.ProjectId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var week = WeekRepository.WeekFetch(id);

            model.Title = "Week Delete";
            model.Id = week.WeekId;
            model.Name = "Week";
            model.Description = week.StartDate.ToShortDateString();
            model.ControllerName = "Week";
            model.BackUrl = Url.Action("Index", "Week", new { year = week.Year });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var organizationUser = OrganizationUserRepository.OrganizationUserFetch(id);

            model.Title = "Organization User Delete";
            model.Id = organizationUser.OrganizationUserMemberId;
            model.Name = "Organization User";
            model.Description = organizationUser.UserName;
            model.ControllerName = "OrganizationUser";
            model.BackUrl = Url.Action("Details", "Organization", new { id = organizationUser.OrganizationId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var organization = OrganizationRepository.OrganizationFetch(id);

            model.Title = "Organization Delete";
            model.Id = organization.OrganizationId;
            model.Name = "Organization";
            model.Description = organization.Name;
            model.ControllerName = "Organization";
            model.BackUrl = Url.Action("Index", "Home");

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var note = NoteRepository.NoteFetch(id);

            model.Title = "Note Delete";
            model.Id = note.NoteId;
            model.Name = "Note";
            model.Description = note.Body;
            model.ControllerName = "Note";
            model.BackUrl = Url.Action("Details", note.SourceTypeName, new { id = note.SourceId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var projectUser = ProjectUserRepository.ProjectUserFetch(id);

            model.Title = "Project User Delete";
            model.Id = projectUser.ProjectUserMemberId;
            model.Name = "Project User";
            model.Description = projectUser.UserName;
            model.ControllerName = "ProjectUser";
            model.BackUrl = Url.Action("Details", "Project", new { id = projectUser.ProjectId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var sprint = SprintRepository.SprintFetch(id);

            model.Title = "Sprint Delete";
            model.Id = sprint.SprintId;
            model.Name = "Sprint";
            model.Description = sprint.Name;
            model.ControllerName = "Sprint";
            model.BackUrl = Url.Action("Details", "Sprint", new { id = sprint.SprintId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var timeline = TimelineRepository.TimelineFetch(id);

            model.Title = "Timeline Delete";
            model.Id = timeline.TimelineId;
            model.Name = "Timeline";
            model.Description = timeline.Body;
            model.ControllerName = "Timeline";
            model.BackUrl = Url.Action("Details", timeline.SourceTypeName, new { id = timeline.SourceId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var hour = HourRepository.HourFetch(id);

            model.Title = "Hour Delete";
            model.Id = hour.HourId;
            model.Name = "Hour";
            model.Description = hour.Date.ToShortDateString();
            model.ControllerName = "Hour";
            model.BackUrl = Url.Action("Details", "Hour", new { id = hour.HourId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var story = StoryRepository.StoryFetch(id);

            model.Title = "Story Delete";
            model.Id = story.StoryId;
            model.Name = "Story";
            model.Description = story.Description;
            model.ControllerName = "Story";
            model.BackUrl = Url.Action("Details", "Story", new { id = story.StoryId });

            return this.View(model);
        }
        public ActionResult Delete(int id)
        {
            var model = new DeleteModel();
            var attachment = AttachmentRepository.AttachmentFetch(id);
            var note = NoteRepository.NoteFetch(attachment.SourceId);

            model.Title = "Attachment Delete";
            model.Id = attachment.AttachmentId;
            model.Name = "Attachment";
            model.Description = attachment.Name;
            model.ControllerName = "Attachment";
            model.BackUrl = Url.Action("Details", note.SourceTypeName, new { id = note.SourceId });

            return this.View(model);
        }