public ActionResult Edit(int?id, TaskEditView input) { var task = input.Task; using (var session = DB.Instance.GetSession()) { //Create solarsystem ref if (task.SolarSystem != null && task.SolarSystem.Id != 0) { task.SolarSystem = SolarSystemRef.FromSolarSystem(session.Load <SolarSystem>(task.SolarSystem.Id)); } else { task.SolarSystem = null; } if (id.HasValue) { var org = session.Load <Task>(id); org.Description = task.Description; org.Heading = task.Heading; org.Priority = task.Priority; org.Status = task.Status; org.Type = task.Type; org.SolarSystem = task.SolarSystem; org.Owner = new CommanderRef { Id = CommanderId, Name = User.Identity.Name }; org.Date = DateTime.UtcNow; } else { task.Owner = new CommanderRef { Id = CommanderId, Name = User.Identity.Name }; task.Date = DateTime.UtcNow; session.Store(task); } session.SaveChanges(); } return(RedirectToAction("View", new { id = id ?? task.Id })); }
public ActionResult Edit(int?id) { var view = new TaskEditView(); using (var session = DB.Instance.GetSession()) { view.Systems = session.Query <SolarSystem>().OrderBy(x => x.Name).Take(512).ToList(); if (id.HasValue) { view.Task = session.Load <Task>(id); //Check if owner if (view.Task.Owner.Id != CommanderId && !User.IsInRole("administrator")) { return(new HttpUnauthorizedResult("Unauthorized access detected!")); } } } return(View(view)); }
public MainForm() { InitializeComponent(); this.taskEditView = new TaskEditView(); this.taskEditView.okEvent += okButton_Click; this.taskEditView.cancelEvent += cancelButton_Click; this.settingView = new SettingView(); this.settingView.okEvent += setting_okButton_Click; this.settingView.cancelEvent += setting_cancelButton_Click; System.Drawing.Size formSize = this.DisplayRectangle.Size; this.buttonToolTip.SetToolTip(this.addButton, "新規タスクの登録"); this.buttonToolTip.SetToolTip(this.settingButton, "アプリケーション設定"); this.settingButton.Location = new System.Drawing.Point(formSize.Width - this.settingButton.Width - 10, this.settingButton.Location.Y); this.mainPanel.SetRowSpan(this.taskListPanel, 2); this.mainPanel.Size = new System.Drawing.Size(formSize.Width - 4, formSize.Height - this.mainPanel.Location.Y - 2); //テーブルの更新 refreshTaskTable(); }
public string SaveEditTask(TaskEditView taskForEdit) { var task = new TaskBLL { Id = taskForEdit.Id, Name = taskForEdit.Name, ParentId = null, Comment = taskForEdit.Comment, ETA = taskForEdit.ETA, DueDate = taskForEdit.DueDate }; string author = User.Identity.Name; string assignee = taskForEdit.Assignee ?? author; try { taskService.SaveChangeTask(task, assignee); } catch { return("Error: cannot change task!"); } return("Task was changed."); }