Пример #1
0
        public async Task <IActionResult> EditVisitor(int?ID)
        {
            if (ID == null)
            {
                return(RedirectToAction("Dashboard", "Admin", new { message = "Couldn't access the visitor." }));
            }

            EditVisitor model = new EditVisitor();
            await model.SetValues(_db, (int)ID);

            return(View(model));
        }
Пример #2
0
        public void FolderVisitor_SetEditVisitorAndExecuteTwice_IsModifiedInverted()
        {
            var file = new Folder("test");

            var visitor = new EditVisitor();

            file.Accept(visitor);

            Assert.True(visitor.IsModified);

            file.Accept(visitor);

            Assert.False(visitor.IsModified);
        }
Пример #3
0
        public void FileVisitor_SetEditVisitorAndExecuteTwice_IsModifiedAlwaysTrue()
        {
            var file = new File("test.txt", new byte[] { 35, 33, 36 });

            var visitor = new EditVisitor();

            file.Accept(visitor);

            Assert.True(visitor.IsModified);

            file.Accept(visitor);

            Assert.True(visitor.IsModified);
        }
        private void editVisitorbtn_Click(object sender, EventArgs e)
        {
            try
            {
                EditVisitor editVisitor = new EditVisitor();
                editVisitor.visitorID = Int32.Parse(visitorsDataGridView.Rows[visitorsDataGridView.SelectedRows[0].Index].Cells[0].Value.ToString());
                editVisitor.ShowDialog();

                if (isChanged)
                {
                    InformationForm information = new InformationForm("Selected visitor is edited.", "Info");
                    information.Show();
                }
            }
            catch (ArgumentOutOfRangeException)
            {
                MessageBox.Show("Please select a row first!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                this.Visitors_Load(sender, e);
            }
        }
Пример #5
0
        public async Task <IActionResult> EditVisitor(EditVisitor model)
        {
            if (ModelState.IsValid)
            {
                // get visitor by id
                Visitor visitor = await _db.Visitors.SingleOrDefaultAsync(x => x.ID == model.ID);

                ApplicationUser user = await _userManager.GetUserAsync(User);

                // logs for visitor
                string action;
                if (!visitor.Blocked && model.Blocked)
                {
                    action = "BLOCKED";
                }
                else if (visitor.Blocked && !model.Blocked)
                {
                    action = "UNBLOCKED";
                }
                else
                {
                    action = "CHANGED";
                }
                visitor.AddLog("ADMIN", $"{action} BY {user.Level}: {user.FirstName} {user.LastName}", true);

                // update and save visitor
                JackLib.CopyValues(model, visitor);
                _db.Visitors.Update(visitor);

                // log for admin
                await _db.Logs.AddAsync(await Log.New("Visitor", $"Visitor witg ID: {visitor.ID}, was EDITED", _id, _db));

                return(RedirectToAction("ViewVisitor", "Admin", new { ID = model.ID }));
            }
            return(RedirectToAction("Dashboard", "Admin", new { message = "Couldn't execute this request. Please try again." }));
        }