public ActionResult <Applicatie> VerwijderApplicatie(string id)
        {
            Applicatie g = _applicatieRepository.GetBy(id);

            if (g == null)
            {
                return(NotFound("De applicatie met opgegeven id kon niet worden gevonden."));
            }
            var           folderPad = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), g.Email);
            DirectoryInfo d         = new DirectoryInfo(Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), g.Email));

            FileInfo[] Files = null;
            if (Directory.Exists(folderPad))
            {
                Files = d.GetFiles("");
                foreach (FileInfo file in Files)
                {
                    var deletePath = Path.Combine(folderPad, file.Name);
                    if (System.IO.File.Exists(deletePath))
                    {
                        System.IO.File.Delete(deletePath);
                    }
                }
            }
            _applicatieRepository.Delete(g);
            _applicatieRepository.SaveChanges();
            return(g);
        }
Esempio n. 2
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Applicatie applicatie = db.Applicaties.Find(id);

            if (applicatie == null)
            {
                return(HttpNotFound());
            }

            db.Entry(applicatie).Reference(a => a.Beheerder).Load();

            ApplicatieViewModel applicatieView = new ApplicatieViewModel
            {
                Id          = applicatie.Id,
                Naam        = applicatie.Naam,
                BeheerderId = applicatie.Beheerder.Id,
                Medewerkers = Medewerkers
            };

            return(View(applicatieView));
        }
Esempio n. 3
0
        // GET: Applicaties/Details/5
        /// <summary>
        /// Toont de gegevens van een Applicatie, inclusief de beheerder
        /// </summary>
        /// <param name="id">Het Id van de Applicatie</param>
        /// <returns></returns>
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Applicatie applicatie = db.Applicaties.Find(id);

            if (applicatie == null)
            {
                return(HttpNotFound());
            }

            db.Entry(applicatie).Reference(a => a.Beheerder).Load();

            if (User.IsInRole(RoleNames.Medewerker))
            {
                if (applicatie.Beheerder.Id != CurrentUser.Id)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.Unauthorized));
                }
            }

            return(View(applicatie));
        }
Esempio n. 4
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Naam,BeheerderId")] Applicatie applicatie)
        {
            if (id != applicatie.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(applicatie);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ApplicatieExists(applicatie.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BeheerderId"] = new SelectList(_context.Medewerkers, "Id", "Achternaam", applicatie.BeheerderId);
            return(View(applicatie));
        }
        public ActionResult <Applicatie> UpdateApp(ApplicatieDTO applicatieDTO, string id)
        {
            if (applicatieDTO.Id != id)
            {
                return(BadRequest("Er liep iets fout: de id's komen niet overeen."));
            }
            Applicatie a = _applicatieRepository.GetBy(id);

            if (a == null)
            {
                return(BadRequest("Er kon geen applicatie met opgegeven id worden gevonden!"));
            }
            a.UpdateDezeApplicatie(applicatieDTO);
            _applicatieRepository.Update(a);
            _applicatieRepository.SaveChanges();
            if (a.HuidigeStap == 6)
            {
                try
                {
                    this.smtpClient.Send("*****@*****.**", "*****@*****.**", "Nieuwe Applicatie",
                                         "Beste,\n" +
                                         "Er werd net een nieuwe applicatie ingevuld door " + a.Voornaam + " " + a.Achternaam + " \n" +
                                         "De applicatie kan bekeken worden op http://https://ananau-aanmeld-systeem.netlify.app/applicatie-bekijken/" + a.Id + "\n"
                                         + "Met vriendelijke groet, \n" +
                                         "Webmaster Lucas!");
                }catch (Exception e)
                {
                    return(BadRequest("De applicatie kon niet worden ingediend! Probeer het later opnieuw!"));
                }
            }
            return(a);
        }
Esempio n. 6
0
        public ActionResult DeleteConfirmed(int id)
        {
            Applicatie applicatie = db.Applicaties.Find(id);

            db.Applicaties.Remove(applicatie);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public bool AddApplicatie(Applicatie applicatie)
        {
            var count = _applicaties.Count;

            _applicaties.Add(applicatie);

            return(_applicaties.Count > count);
        }
        public ActionResult <Applicatie> VoegItemToe(ApplicatieDTO applicatieDTO)
        {
            if (_applicatieRepository.GetByEmail(applicatieDTO.Email) != null)
            {
                return(BadRequest("Er betaat al een applicatie met dit email adres!"));
            }
            Applicatie a = new Applicatie(applicatieDTO);

            _applicatieRepository.Add(a);
            _applicatieRepository.SaveChanges();
            return(a);
        }
Esempio n. 9
0
        public async Task <IActionResult> Create([Bind("Id,Naam,BeheerderId")] Applicatie applicatie)
        {
            if (ModelState.IsValid)
            {
                _context.Add(applicatie);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["BeheerderId"] = new SelectList(_context.Medewerkers, "Id", "Achternaam", applicatie.BeheerderId);
            return(View(applicatie));
        }
Esempio n. 10
0
        public IActionResult Get(string applicatieId, string bestandNaam)
        {
            bestandNaam = bestandNaam.ToLower();
            Applicatie applicatie = _applicatieRepository.GetBy(applicatieId);

            if (applicatie == null)
            {
                return(BadRequest("De applicatie bestaat niet!"));
            }
            var           folderPad = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), applicatie.Email);
            DirectoryInfo d         = new DirectoryInfo(Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), applicatie.Email));
            string        naam      = "";

            FileInfo[] Files = null;
            if (Directory.Exists(folderPad))
            {
                if (bestandNaam.Contains("reispaspoort"))
                {
                    Files = d.GetFiles("reispaspoort*"); //Getting Text files
                }
                else if (bestandNaam.Contains("attest"))
                {
                    Files = d.GetFiles("attest*");
                }
                else if (bestandNaam.Contains("diploma"))
                {
                    Files = d.GetFiles("diploma*");
                }

                foreach (FileInfo file in Files)
                {
                    naam = file.Name;
                }
            }

            Byte[] b;

            if (!Directory.Exists(folderPad))
            {
                return(NoContent());
            }
            var bestandPad = Path.Combine(folderPad, naam);

            if (!System.IO.File.Exists(bestandPad))
            {
                return(NoContent());
            }
            new FileExtensionContentTypeProvider().TryGetContentType(naam, out string contentType);
            b = System.IO.File.ReadAllBytes(bestandPad);
            return(File(b, contentType));
        }
Esempio n. 11
0
        public ActionResult <List <String> > GetNamen(string applicatieId, string folder)
        {
            Applicatie applicatie = _applicatieRepository.GetBy(applicatieId);

            if (applicatie == null)
            {
                return(BadRequest("De applicatie bestaat niet!"));
            }

            DirectoryInfo d     = new DirectoryInfo(Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), folder));
            List <String> namen = d.GetFiles().Select(t => t.Name.ToString()).OrderBy(t => t).ToList();

            return(namen);
        }
Esempio n. 12
0
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Applicatie applicatie = db.Applicaties.Find(id);

            if (applicatie == null)
            {
                return(HttpNotFound());
            }
            return(View(applicatie));
        }
Esempio n. 13
0
        public ActionResult Create(int?id)
        {
            int applicatieId = 0;

            if (id != null)
            {
                Applicatie applicatie = db.Applicaties.Find(id);
                applicatieId = applicatie.Id;
            }
            TicketViewModel ticketView = new TicketViewModel
            {
                ApplicatieId = applicatieId,
                Applicaties  = db.Applicaties.ToList()
            };

            return(View(ticketView));
        }
Esempio n. 14
0
        public ActionResult Edit([Bind(Include = "Id,Naam,BeheerderId")] ApplicatieViewModel applicatieView)
        {
            if (ModelState.IsValid)
            {
                Applicatie applicatie = db.Applicaties.Find(applicatieView.Id);
                db.Entry(applicatie).Reference(a => a.Beheerder).Load();

                ApplicationUser beheerder = db.Users.Find(applicatieView.BeheerderId);

                applicatie.Naam      = applicatieView.Naam;
                applicatie.Beheerder = beheerder;

                db.Entry(applicatie).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(applicatieView));
        }
        public ActionResult <Applicatie> GetByEmailEnAchternaam(string email, string achternaam)
        {
            Applicatie a = _applicatieRepository.GetByEmailAchternaam(email, achternaam);

            if (a == null)
            {
                return(NotFound("Het applicaite met opgegeven email en achternaam  kon niet worden gevonden."));
            }
            DirectoryInfo d = new DirectoryInfo(Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), a.Email));

            FileInfo[]    Files = null;
            List <String> namen = d.GetFiles().Select(t => t.Name.ToString()).OrderBy(t => t).ToList();

            a.attestNaam       = namen[0];
            a.diplomaNaam      = namen[1];
            a.ReispaspoortNaam = namen[2];
            return(a);
        }
Esempio n. 16
0
        // GET: Tickets/Details/5
        /// <summary>
        /// Geselecteerde Ticket
        /// <para>Administrator ziet alle Tickets</para>
        /// <para>Medewerker mag alleen tickets zien van de Applicaties die hij beheert</para>
        /// <para>Klant mag alleen tickets waar hij als klant aan is gekoppeld</para>
        /// </summary>
        /// <param name="id">Id van de Ticket</param>
        /// <returns></returns>
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ticket ticket = db.Tickets.Find(id);



            if (ticket == null)
            {
                return(HttpNotFound());
            }

            db.Entry(ticket).Reference(t => t.Applicatie).Load();
            db.Entry(ticket).Reference(t => t.Klant).Load();
            Applicatie applicatie = ticket.Applicatie;

            db.Entry(applicatie).Reference(t => t.Beheerder).Load();


            // Medewerker mag alleen tickets zien van de Applicaties die hij beheert
            if (User.IsInRole(RoleNames.Medewerker))
            {
                if (ticket.Applicatie.Beheerder.Id != CurrentUser.Id)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.Unauthorized));
                }
            }

            // Klant mag alleen tickets waar hij als klant aan is gekoppeld
            if (User.IsInRole(RoleNames.Klant))
            {
                if (ticket.Klant.Id != CurrentUser.Id)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.Unauthorized));
                }
            }

            return(View(ticket));
        }
        public ActionResult <Applicatie> GetItemById(string id)
        {
            Applicatie a = _applicatieRepository.GetBy(id);

            if (a == null)
            {
                return(NotFound("Het applicaite met opgegeven id kon niet worden gevonden."));
            }
            var folderPad = Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), a.Email);

            if (Directory.Exists(folderPad))
            {
                DirectoryInfo d     = new DirectoryInfo(Path.Combine(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot"), a.Email));
                List <String> namen = d.GetFiles().Select(t => t.Name.ToString()).OrderBy(t => t).ToList();
                a.attestNaam       = namen[0];
                a.diplomaNaam      = namen[1];
                a.ReispaspoortNaam = namen[2];
            }
            return(a);
        }
Esempio n. 18
0
        public ActionResult Create([Bind(Include = "Id,Naam,BeheerderId")] ApplicatieViewModel applicatieView)
        {
            if (ModelState.IsValid)
            {
                if (applicatieView.BeheerderId == null)
                {
                    applicatieView.BeheerderId = CurrentUser.Id;
                }

                Applicatie applicatie = new Applicatie
                {
                    Id        = applicatieView.Id,
                    Naam      = applicatieView.Naam,
                    Beheerder = db.Users.Find(applicatieView.BeheerderId)
                };
                db.Applicaties.Add(applicatie);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(applicatieView));
        }
 public Applicatie Add(Applicatie applicatie)
 {
     _applicaties.Add(applicatie);
     return(applicatie);
 }
 public Applicatie Update(Applicatie applicatie)
 {
     _applicaties.Update(applicatie);
     return(applicatie);
 }
 public bool AddApplicatie(Applicatie applicatie)
 {
     return(_profileManagerContext.Applicaties.Add(applicatie) != null);
 }
 public Applicatie Delete(Applicatie applicatie)
 {
     _applicaties.Remove(applicatie);
     return(applicatie);
 }