/// <summary>
 /// Constructor of the material system
 /// </summary>
 /// <param name="ev"></param>
 public MaterialSystem(Event ev, User user)
 {
     InitializeComponent();
     _event = ev;
     _user = user;
     _rfidScanned = true;
 }
Пример #2
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(txtUsername.Text))
            {
                MessageBox.Show("Gebruikersnaam is niet ingevuld!");
                return;
            }

            if (string.IsNullOrWhiteSpace(txtPassword.Text))
            {
                MessageBox.Show("Wachtwoord is niet ingevuld!");
                return;
            }

            try
            {
                var userLogic = new UserLogic(new UserOracleContext());

                User = userLogic.AuthenticateUser(txtUsername.Text, userLogic.GetHashedPassword(txtPassword.Text));
                DialogResult = DialogResult.OK;
                Close();
            }
            catch (InvalidCredentialException ex)
            {
                MessageBox.Show(ex.Message);
                txtPassword.Text = string.Empty;
            }
        }
Пример #3
0
 public TimeLine(User user, Event ev)
 {
     InitializeComponent();
     _user = user;
     _event = ev;
     _logic = new PostLogic();
 }
Пример #4
0
        /// <summary>
        /// Sets a new password for a user
        /// </summary>
        /// <param name="user">User to change password of</param>
        /// <param name="oldPass">Current password of given user</param>
        /// <param name="newPass">New password</param>
        /// <param name="newPassAgain">New password again for security check</param>
        /// <returns>true if password was changed succesfully, false if something went wrong or given oldPass is incorrect</returns>
        public bool SetNewPassword(User user, string oldPass, string newPass, string newPassAgain)
        {
            if (user.Password != GetHashedPassword(oldPass)) return false;

            user.Password = CheckAndHashPassword(newPass, newPassAgain);
            return UpdateUser(user);
        }
Пример #5
0
 public SearchByTag(User user, Event ev)
 {
     InitializeComponent();
     _user = user;
     _event = ev;
     _logic = new PostLogic();
 }
        public SocialMediaSystemForm(User user, Event ev)
        {
            InitializeComponent();
            _user = user;
            _event = ev;

            Text = $"Tijdlijn {ev.Name}";
        }
Пример #7
0
 public Form1(User user)
 {
     InitializeComponent();
     _logicGuest = new GuestOracleContext();
     _ev = new Event(1, "ICT4Events", new DateTime(2015, 10, 09), new DateTime(2015, 10, 15), "IdontKnowYet", "IdontKnowYet", 100);
     _user = user;
     _guest = _logicGuest.GetById(user.ID);
 }
        public bool Delete(User entity)
        {
            var user = _users.FirstOrDefault(e => e.ID == entity.ID);
            if (user == null) return false;

            _users.Remove(user);
            return true;
        }
Пример #9
0
 public TimeLine(User user, Event ev)
 {
     InitializeComponent();
     _admin = user;
     _event = ev;
     _logic = new PostLogic();
     _reportContext = new ReportOracleContext();
 }
Пример #10
0
 public ReportSection(User admin, Event ev)
 {
     InitializeComponent();
     _admin = admin;
     _event = ev;
     _logicPost = new PostLogic();
     _getAllPostByEvent = _logicPost.GetAllByEvent(_event);
     lblWelkom.Text = $"Welkom bij de rapporten overzicht,  {_admin.Name} {_admin.Surname}";
 }
Пример #11
0
        public PostFeedExtended(Post post, Event ev, User admin)
        {
            InitializeComponent();
            _logicPost = new PostLogic();
            _reportContext = new ReportOracleContext();

            _post = post;
            _event = ev;
            _admin = admin;
        }
        public User Insert(User entity)
        {
            if (GetById(entity.ID) != null) return null;

            var id = _users.Max(e => e.ID);
            var user = new User(id, entity.Username, entity.Password, entity.Name, entity.Surname, entity.Country,
                entity.City, entity.Postal, entity.Address, entity.Telephone, entity.RegistrationDate, entity.Permission);
            _users.Add(user);

            return user;
        }
Пример #13
0
        /// <summary>
        /// Constructor used for the post form for users
        /// </summary>
        /// <param name="user">The user who is placing this post</param>
        /// <param name="ev">The event this post belongs to</param>
        public MakePost(User user, Event ev)
        {
            _user = user;
            InitializeComponent();
            _event = ev;
            _logicPost = new PostLogic(new PostOracleContext());

            _uploadedMedia = new UcUpload(_user, _event);
            tbpLoadUcUpload.Controls.Add(_uploadedMedia);
            LoadMediaList();
        }
Пример #14
0
        public Guest RegisterNewUserForEvent(string username, Event ev, Location location, DateTime start, DateTime end, int leaderID)
        {
            var password = Membership.GeneratePassword(10, 2);

            var user = new User(0, username, LogicCollection.UserLogic.GetHashedPassword(password), "new user");
            user = LogicCollection.UserLogic.RegisterUser(user, true, password);

            SendConfirmationEmail(user, ev, location, start, end);

            return RegisterUserForEvent(user, ev, location, start, end, leaderID);
        }
        public PostFeedExtended(Post post, Event ev, User user)
        {
            InitializeComponent();
            _logicPost = new PostLogic();
            _reportContext = new ReportOracleContext();

            _post = post;
            _event = ev;

            _activeUser = user;
        }
        public ReservationSystemForm(User user)
        {
            InitializeComponent();
            _user = user;
            _eventRepo = new EventLogic(new EventOracleContext());
            _guestRepo = new GuestLogic(new GuestOracleContext());
            _locationRepo = new LocationLogic(new LocationOracleContext());

            _events = _eventRepo.GetAllEvents();

            cmbEvents.DataSource = _events;
            cmbEvents.SelectedIndex = 0;
        }
        public GuestRegistrationForm(User user, Event ev)
        {
            InitializeComponent();
            _user = user;
            _event = ev;

            cmbLocations.DataSource = LogicCollection.LocationLogic.GetLocationsByEvent(ev);

            calEventDate.MinDate = _event.StartDate;
            calEventDate.MaxDate = _event.EndDate;

            calEventDate.SetSelectionRange(_event.StartDate, _event.EndDate);
            calEventDate.MaxSelectionCount = (int)(_event.EndDate.Subtract(_event.StartDate).TotalDays) + 1;
        }
Пример #18
0
        public Guest RegisterUserForEvent(User user, Event ev, Location location, DateTime start, DateTime end, int leaderID = 0)
        {
            var existingGuest = _context.GetGuestByEvent(ev, user.ID); // Checks if user is already registered for an event
            if (existingGuest != null) return existingGuest;

            var guest = new Guest(user.ID, user.Username, user.Password, user.Name, "", false, ev.ID, false, start, end,
                location.ID, user.RegistrationDate, user.Permission, user.Surname, user.Country, user.City, user.Postal,
                user.Address, user.Telephone, leaderID);

            SendConfirmationEmail(user, ev, location, start, end);

            FtpHelper.CreateDirectory($"{ev.ID}/{guest.ID}");

            return _context.Insert(guest);
        }
Пример #19
0
        public PostFeed(Post post, Event ev, User user, bool reply)
        {
            InitializeComponent();

            Post = post;
            _event = ev;

            lbReaction.Visible = !reply;

            // Currently signed in user
            _activeUser = user;

            // Guest of the post
            _postUser = LogicCollection.UserLogic.GetById(Post.GuestID);
        }
Пример #20
0
        /// <summary>
        /// Registers a new user and sends a confirmation email to the new users emailaddress
        /// </summary>
        /// <param name="user">User created in user interface</param>
        /// <returns>a new user object with correct user id</returns>
        public User RegisterUser(User user, bool generated = false, string password = "")
        {
            var registeredUser = _context.Insert(user);

            try
            {
                SendConfirmationEmail(registeredUser, generated, password);
            }
            catch
            {
                throw new MailWasNotSentException();
            }
            
            return registeredUser;
        }
Пример #21
0
        /// <summary>
        /// Registers a new user and sends a confirmation email to the new users emailaddress
        /// </summary>
        /// <param name="user">User created in user interface</param>
        /// <returns>a new user object with correct user id</returns>
        public bool RegisterUser(User user, bool generated = false, string password = "")
        {
            var unhash = user.Password ?? password;
            user.Password = LogicCollection.UserLogic.GetHashedPassword(user.Password ?? password);
            var registeredUser = _context.Insert(user);

            try
            {
                SendConfirmationEmail(user.Email, user.Username, generated, unhash);
            }
            catch (MailWasNotSentException e)
            {
                Logger.Write(e.Message);
                throw new MailWasNotSentException();
            }
            
            return registeredUser;
        }
Пример #22
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(txtUsername.Text))
            {
                MessageBox.Show("Gebruikersnaam is niet ingevuld!");
                return;
            }

            if (string.IsNullOrWhiteSpace(txtPassword.Text))
            {
                MessageBox.Show("Wachtwoord is niet ingevuld!");
                return;
            }

            if (!PingHost("192.168.20.221"))
            {
                MessageBox.Show("Kan geen verbinding maken met de database.\r\nBent u ingelogd op het juiste netwerk?");
                return;
            }

            try
            {
                var userLogic = new UserLogic(new UserOracleContext());

                User = userLogic.AuthenticateUser(txtUsername.Text, userLogic.GetHashedPassword(txtPassword.Text));

                Properties.Settings.Default.Username = User.Username;
                Properties.Settings.Default.Save();

                DialogResult = DialogResult.OK;
                Close();
            }
            catch (InvalidCredentialException ex)
            {
                MessageBox.Show(ex.Message);
                txtPassword.Text = string.Empty;
            }
        }
Пример #23
0
        private static bool SendConfirmationEmail(User user, Event ev, Place location, DateTime start, DateTime end)
        {
            var fromAddress = new MailAddress(Properties.Settings.Default.Email, "ICT4Events");
            var toAddress = new MailAddress(user.Email, user.Username);
            var fromPassword = Properties.Settings.Default.EmailPassword;

            var message = new MailMessage(fromAddress, toAddress)
            {
                Subject = "Confirmation of your new reservation for "+ ev.Name,
                Body =
                    "Hello " + user.Username + ",\r\n\r\n" +
                    $"Your have been registered to participate in event {ev.Name}!\r\n" +
                    $"The location you entered is {location.Name}.\r\n" +
                    $"We will be expecting to see you on {start.Date.ToShortDateString()} until {end.Date.ToShortDateString()}.\r\n" +
                    $"Your user ID is: {user.ID}. Make sure to remember this for your check-in!" +
                    "\r\n\r\nHave a nice day!"
            };

            var smtp = new SmtpClient
            {
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
            };

            try
            {
                smtp.Send(message);
                return true;
            }
            catch (SmtpException e)
            {
                throw new Exception(e.Message);
            }
        }
Пример #24
0
 public Catalogue(Event ev,User user)
 {
     InitializeComponent();
     _user = user;
     _event = ev;
 }
Пример #25
0
 /// <summary>
 /// Deletes a user account with given user
 /// </summary>
 /// <param name="user">user to be deleted</param>
 /// <returns>true if delete was succesfull</returns>
 public bool DeleteUser(User user) => _context.Delete(user);
Пример #26
0
 /// <summary>
 /// Update an existing user
 /// </summary>
 /// <param name="user">User to be updated</param>
 /// <returns>Updated user</returns>
 public bool UpdateUser(User user) => _context.Update(user);
Пример #27
0
 /// <summary>
 /// Changes the user accounts permission level
 /// </summary>
 /// <param name="user">user to change permission level of</param>
 /// <param name="newPermissionType">PermissionType to change permission level to</param>
 public void ChangePermissionType(User user, PermissionType newPermissionType) => user.Permission = newPermissionType;
Пример #28
0
        /// <summary>
        /// Sends a confirmation email to given user
        /// </summary>
        /// <param name="user">user to send confirmation email to</param>
        /// <returns>true if mail was successfully send, throws exception if sending mail fails</returns>
        private static bool SendConfirmationEmail(User user, bool generated = false, string password = "")
        {
            var fromAddress = new MailAddress(Properties.Settings.Default.Email, "ICT4Events");
            var toAddress = new MailAddress(user.Username, user.Name);
            var fromPassword = Properties.Settings.Default.EmailPassword;
            const string subject = "Confirmation of your new user account for ICT4Events";

            var body = 
                "Hello " + user.Name + ",\r\n\r\n" +
                "Your new account for ICT4Events was successfully created!" +
                ((generated && !string.IsNullOrWhiteSpace(password))
                    ? $"\r\nYour generated password is {password}.\r\nYou can change your password after logging in."
                    : "") +
                "\r\n\r\nHave a nice day!";

            var smtp = new SmtpClient
            {
                Host = "smtp.gmail.com",
                Port = 587,
                EnableSsl = true,
                DeliveryMethod = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
            };

            using (var message = new MailMessage(fromAddress, toAddress)
            {
                Subject = subject,
                Body = body
            })
            {
                try
                {
                    smtp.Send(message);
                    return true;
                }
                catch (SmtpException e)
                {
                    throw new Exception(e.Message);
                }
            }
        }
Пример #29
0
 public UcEditUser(User user)
 {
     InitializeComponent();
     _user = user;
     _logic = new UserLogic();
 }
Пример #30
0
 public List<Guest> GetGuestsByUser(User user)
 {
     return _context.GetGuestsByUser(user);
 }