Files
studenthousedashboard/StudentHouseDashboard/WinForms/EventForm.cs
Dimitar Byalkov cc0cc3d7f7 Events on desktop
2023-06-09 07:18:11 +02:00

70 lines
2.1 KiB
C#

using Data;
using Logic;
using Models;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WinForms
{
public partial class EventForm : Form
{
Event @event;
User currentUser;
public EventForm(Event? @event, bool readOnly, User currentUser)
{
InitializeComponent();
this.@event = @event;
this.currentUser = currentUser;
dtpPublishDate.Enabled = false;
if (readOnly)
{
btnSave.Enabled = false;
tbTitle.Enabled = false;
tbDescription.Enabled = false;
dtpStartDate.Enabled = false;
dtpEndDate.Enabled = false;
}
if (@event != null)
{
tbTitle.Text = @event.Title;
lblAuthor.Text = $"Created by: {@event.Author.Name}";
tbDescription.Text = @event.Description;
dtpPublishDate.Value = @event.PublishDate;
dtpStartDate.Value = @event.EndDate;
}
if (currentUser != null)
{
lblAuthor.Text = $"Created by: {currentUser.Name}";
}
}
private void btnSave_Click(object sender, EventArgs e)
{
EventManager eventManager = new EventManager(new EventRepository());
if (string.IsNullOrEmpty(tbTitle.Text))
{
MessageBox.Show("Please enter a title");
return;
}
if (this.@event == null)
{
eventManager.CreateEvent(tbTitle.Text, tbDescription.Text, currentUser, dtpPublishDate.Value, dtpStartDate.Value, dtpEndDate.Value);
}
else
{
eventManager.UpdateEvent(@event.ID, tbTitle.Text, tbDescription.Text, dtpStartDate.Value, dtpEndDate.Value);
}
this.DialogResult = DialogResult.OK;
}
}
}