Exemplo n.º 1
0
 public void TestInitialize()
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         expected = new List <Event>()
         {
             new Event()
             {
                 Name  = "Test Event 1",
                 Type  = db.Types.Where(t => t.Id == 2).First(),
                 Start = new DateTime(2017, 11, 9, 12, 0, 0),
                 End   = new DateTime(2017, 11, 9, 14, 0, 0)
             },
             new Event()
             {
                 Name  = "Test Event 2",
                 Type  = db.Types.Where(t => t.Id == 4).First(),
                 Start = new DateTime(2017, 11, 9, 9, 0, 0),
                 End   = new DateTime(2017, 11, 9, 10, 0, 0)
             }
         };
         db.Events.AddRange(expected);
         db.SaveChanges();
     }
 }
 //
 //Construction.
 //
 public CreateCalendarControl()
 {
     InitializeComponent();
     db = new CalendarDBContext();
     db.Calendars.Load();
     ListHoliDays = new List <string>();
 }
        // private bool isFirstTime = true;
        public HomeController(CalendarDBContext DBContext)
        {
            _dbContext = DBContext;

            //load seed data
            Seed.Initialize(_dbContext);
        }
Exemplo n.º 4
0
 public static void EditPlans(List <Plan> newPlans)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         foreach (Plan plan in Plans)
         {
             if (newPlans.FindAll(p => p.Id == plan.Id).Count == 0)
             {
                 if (db.Plans.Where(p => p.Id == plan.Id).First().Users.Count <= 1)
                 {
                     db.Plans.Remove(db.Plans.Where(p => p.Id == plan.Id).First());
                 }
                 db.Users.Where(u => u.Id == ActiveUser.Id).First().Plans.Remove(db.Plans.Where(p => p.Id == plan.Id).First());
             }
         }
         foreach (Plan plan in newPlans)
         {
             if (Plans.FindAll(p => p.Id == plan.Id).Count == 0)
             {
                 db.Plans.Add(plan);
                 db.Users.Where(u => u.Id == ActiveUser.Id).First().Plans.Add(plan);
             }
         }
         db.SaveChanges();
     }
 }
Exemplo n.º 5
0
 public static bool SignUp(string username, string email, string password)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         var users = db.Users.Where(u => u.UserName == username || u.Mail.Address == email);
         if (users.Count() > 0)
         {
             return(false);
         }
         db.Users.Add(new User()
         {
             UserName = username,
             Password = password,
             Mail     = new EMailAddress()
             {
                 Address = email
             }
         });
         db.SaveChanges();
     }
     using (CalendarDBContext db = new CalendarDBContext())
     {
         List <User> tmp = db.Users.ToList();
         ActiveUser = db.Users.Where(u => u.UserName == username && u.Mail.Address == email && u.Password == password).First();
     }
     return(true);
 }
Exemplo n.º 6
0
 public static void EditEvent(Event ev, string name, DataAccess.Type type, DateTime start, DateTime end, List <int> plansId, List <int> usersId, bool accepted)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         ev = db.Events.Where(e => e.Id == ev.Id).First();
         var plans = db.Plans;
         foreach (Plan plan in plans)
         {
             plan.Events.Remove(ev);
         }
         foreach (int id in plansId)
         {
             db.Plans.AsEnumerable().Where(p => p.Id == id).First().Events.Add(ev);
             ev.Plans.Add(db.Plans.AsEnumerable().Where(p => p.Id == id).First());
         }
         type = db.Types.Where(t => t.Id == type.Id).First();
         ev.Change(name, type, start, end);
         db.EventApprovals.Where(ea => ev.Id == ea.EventId && ActiveUser.Id == ea.UserId).First().Accepted = accepted;
         foreach (int id in usersId)
         {
             Event thisEvent = db.Events.Where(e => e.Id == ev.Id).First();
             User  user      = db.Users.Where(u => u.Id == id).First();
             db.EventApprovals.Add(new EventApproval()
             {
                 Event    = thisEvent,
                 User     = user,
                 Accepted = false
             });
             SendInvitationMail(thisEvent, user);
         }
         db.SaveChanges();
     }
 }
Exemplo n.º 7
0
 public static void AddEvent(string name, DataAccess.Type type, DateTime start, DateTime end, List <int> plansId, List <int> usersId, bool accepted)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         Event ev = new Event();
         ev.Owner = db.Users.Where(u => u.Id == ActiveUser.Id).First();
         foreach (int id in plansId)
         {
             db.Plans.AsEnumerable().Where(p => p.Id == id).First().Events.Add(ev);
             ev.Plans.Add(db.Plans.AsEnumerable().Where(p => p.Id == id).First());
         }
         type = db.Types.Where(t => t.Id == type.Id).First();
         ev.Change(name, type, start, end);
         db.Events.Add(ev);
         db.EventApprovals.Add(new EventApproval()
         {
             Event    = ev,
             User     = db.Users.Where(u => u.Id == ActiveUser.Id).First(),
             Accepted = accepted
         });
         foreach (int id in usersId)
         {
             User user = db.Users.Where(u => u.Id == id).First();
             db.EventApprovals.Add(new EventApproval()
             {
                 Event    = ev,
                 User     = user,
                 Accepted = false
             });
             SendInvitationMail(ev, user);
         }
         db.SaveChanges();
     }
 }
Exemplo n.º 8
0
 private void CalendarClosing(object sender, FormClosingEventArgs e)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         db.SaveChanges();
         db.Dispose();
     }
 }
Exemplo n.º 9
0
 public static void EditEmailAddress(string emailAddress)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         db.Users.Where(u => u.Id == ActiveUser.Id).First().Mail.Address = emailAddress;
         db.SaveChanges();
     }
 }
 //
 //Construction.
 //
 public OpenCalendarControl()
 {
     InitializeComponent();
     db   = new CalendarDBContext();
     page = db.Calendars.First().NMonth;
     db.Calendars.Load();
     label3.Text = page.ToString();
     dataGridView1.DataSource = db.Calendars.Local.ToBindingList();
 }
Exemplo n.º 11
0
        public static bool IsEventAccepted(int eventId)
        {
            bool answer = false;

            using (CalendarDBContext db = new CalendarDBContext())
            {
                answer = db.EventApprovals.Where(ea => ea.EventId == eventId && ea.UserId == ActiveUser.Id).First().Accepted;
            }
            return(answer);
        }
        //
        //Construction.
        //
        public OpenEventsControl()
        {
            InitializeComponent();
            NOW = DateTime.Today;
            CheckingTodayEvent = new CheckingEvents();

            db = new CalendarDBContext();
            db.DbEvents.Load();
            dataGridView1.DataSource = db.DbEvents.Local.ToBindingList();
        }
Exemplo n.º 13
0
 public void TestCleanUp()
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         foreach (Event ev in db.Events.AsEnumerable().Where(e => e.Name == expected[0].Name || e.Name == expected[1].Name))
         {
             db.Events.Remove(ev);
         }
     }
 }
Exemplo n.º 14
0
 public static void DeleteEvent(Event ev)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         db.EventApprovals.RemoveRange(db.EventApprovals.Where(ea => ea.EventId == ev.Id && ea.UserId == ActiveUser.Id));
         if (!db.EventApprovals.Any(ea => ea.EventId == ev.Id && ea.UserId != ActiveUser.Id))
         {
             db.Events.Remove(db.Events.Where(e => e.Id == ev.Id).First());
         }
         db.SaveChanges();
     }
 }
Exemplo n.º 15
0
 public static bool LogIn(string username, string password)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         var users = db.Users.Where(u => (u.UserName == username || u.Mail.Address == username) && u.Password == password);
         if (users.Count() <= 0)
         {
             return(false);
         }
         ActiveUser = users.First();
     }
     return(true);
 }
Exemplo n.º 16
0
 public static void InviteToEvent(Event myEvent, int userId)
 {
     using (CalendarDBContext db = new CalendarDBContext())
     {
         Event thisEvent = db.Events.Where(e => e.Id == myEvent.Id).First();
         User  user      = db.Users.Where(u => u.Id == userId).First();
         db.EventApprovals.Add(new EventApproval()
         {
             Event    = myEvent,
             User     = user,
             Accepted = false
         });
         db.SaveChanges();
         SendInvitationMail(thisEvent, user);
     }
 }
Exemplo n.º 17
0
        public MailService()
        {
            InitializeComponent();
            db     = new CalendarDBContext();
            client = new SmtpClient();
            timer  = new Timer();

            client.Port                  = 587;
            client.DeliveryMethod        = SmtpDeliveryMethod.Network;
            client.UseDefaultCredentials = false;
            client.Host                  = ConfigurationManager.AppSettings["Host"];
            client.EnableSsl             = true;
            client.Credentials           = new NetworkCredential(ConfigurationManager.AppSettings["MailFrom"], ConfigurationManager.AppSettings["Password"]);
            timer.Interval               = 60000;
            timer.Elapsed               += new ElapsedEventHandler(SendMail);
            timer.Start();
        }
Exemplo n.º 18
0
        public static void Initialize(CalendarDBContext dbContext)
        {
            if (dbContext.ScheduleData.Any())
            {
                return;   // DB has been seeded
            }

            dbContext.ScheduleData.AddRange(
                new ScheduleData
            {
                Subject   = "Ultimate1",
                StartTime = DateTime.Now,
                EndTime   = DateTime.Now.AddHours(1),
                RoomId    = "1"
            },

                new ScheduleData
            {
                Subject   = "Ultimate1",
                StartTime = DateTime.Now,
                EndTime   = DateTime.Now.AddHours(1),
                RoomId    = "2"
            },

                new ScheduleData
            {
                Subject   = "Ultimate1",
                StartTime = DateTime.Now,
                EndTime   = DateTime.Now.AddHours(1),
                RoomId    = "3"
            },

                new ScheduleData
            {
                Subject   = "Ultimate1",
                StartTime = DateTime.Now,
                EndTime   = DateTime.Now.AddHours(1),
                RoomId    = "4"
            }
                );
            dbContext.SaveChanges();
        }
Exemplo n.º 19
0
        private static void SendInvitationMail(Event myEvent, User guest)
        {
            SmtpClient mailClient = new SmtpClient();

            mailClient.Port                  = 587;
            mailClient.DeliveryMethod        = SmtpDeliveryMethod.Network;
            mailClient.UseDefaultCredentials = false;
            mailClient.Host                  = "smtp.gmail.com";
            mailClient.EnableSsl             = true;
            mailClient.Credentials           = new NetworkCredential("*****@*****.**", "ZMcal30!");
            using (CalendarDBContext db = new CalendarDBContext())
            {
                var         mailAddress = db.EMailAddresses.Where(em => em.Id == guest.MailId).First();
                MailMessage mail        = new MailMessage();
                string      body        = $"User: {ActiveUser.UserName} invites you to event: {myEvent.Name}.\n";
                mail.To.Add(mailAddress.Address);
                mail.From    = new MailAddress("*****@*****.**");
                mail.Subject = "Invitation";
                mail.Body    = body;
                mailClient.Send(mail);
            }
        }
Exemplo n.º 20
0
        private List <Event> GetEventsFromDatabaseWithPlan(int planId)
        {
            int          year  = dateTime.Year;
            int          month = dateTime.Month;
            int          day   = dateTime.Day;
            List <Event> result;

            using (CalendarDBContext db = new CalendarDBContext())
            {
                result = db.Events
                         .Include("Type.Color")
                         .Include("Plans")
                         .Where(e => e.EventApprovals.Where(ea => ea.User.Id == DataModel.ActiveUser.Id).Count() > 0)
                         .Where(e => SqlFunctions.DatePart("year", e.Start) == year)
                         .Where(e => SqlFunctions.DatePart("month", e.Start) == month)
                         .Where(e => SqlFunctions.DatePart("day", e.Start) == day)
                         .Where(e => planId != -1 ? e.Plans.Any(p => p.Id == planId) : true)
                         .OrderBy(e => e.Start)
                         .ToList();
            }
            return(result);
        }
Exemplo n.º 21
0
 public StartPageControl()
 {
     InitializeComponent();
     db = new CalendarDBContext();
 }
 public CheckingEvents()
 {
     db = new CalendarDBContext();
 }
 public CalendarRequestRepository(CalendarDBContext dbContext)
 {
     _dbContext = dbContext;
 }
 public ScheduleDataController(CalendarDBContext sampleODataDbContext)
 {
     _appDbContext = sampleODataDbContext;
 }
Exemplo n.º 25
0
 public AppointmentController(CalendarDBContext sampleODataDbContext)
 {
     _appDbContext = sampleODataDbContext;
 }
Exemplo n.º 26
0
 public EventsController(CalendarDBContext context)
 {
     _context = context;
 }
Exemplo n.º 27
0
 public CalendarController(CalendarDBContext dbContext)
 {
     throttler = new Throttle("maxrequest");
     _calendarRequestRepository = new CalendarRequestRepository(dbContext);
 }
Exemplo n.º 28
0
 public HomeController(CalendarDBContext DBContext)
 {
     _dbContext = DBContext;
 }