Ejemplo n.º 1
0
        public bool RedigerKunde(EndreKunde innKunde)
        {
            var  db       = new DBContext();
            bool resultat = true;

            try
            {
                KundeDB endreKunde = db.Kunder.Find(innKunde.id);
                if (endreKunde != null)
                {
                    LoggSkriver logg = new LoggSkriver();
                    logg.EndreBruker(innKunde, endreKunde);

                    endreKunde.Fornavn    = innKunde.Fornavn;
                    endreKunde.Etternavn  = innKunde.Etternavn;
                    endreKunde.Brukernavn = innKunde.Brukernavn;
                    endreKunde.Kort       = innKunde.Kort;
                    db.SaveChanges();
                }
                else
                {
                    resultat = false;
                }
            }
            catch (Exception e)
            {
                LoggSkriver logg = new LoggSkriver();
                logg.FeilmeldingLogg("RedigerKunde", e);
                resultat = false;
            }
            return(resultat);
        }
Ejemplo n.º 2
0
        public bool RegistrerBruker(Kunde innKunde)
        {
            bool resultat = true;

            using (var db = new DBContext())
            {
                try
                {
                    string  salt    = LagSalt();
                    KundeDB nyKunde = new KundeDB()
                    {
                        Brukernavn = innKunde.Brukernavn,
                        Fornavn    = innKunde.Fornavn,
                        Etternavn  = innKunde.Etternavn,
                        Kort       = innKunde.Kort,
                        Salt       = salt,
                        Passord    = LagHash(innKunde.Passord + salt),
                        Filmer     = new List <Film>(),
                        Stemmer    = new List <Stemme>()
                    };
                    db.Kunder.Add(nyKunde);
                    db.SaveChanges();
                }
                catch (Exception e)
                {
                    resultat = false;
                }
            }
            return(resultat);
        }
Ejemplo n.º 3
0
        // Metode som lar en bruker skrive en kommentar under en angitt film
        public bool SkrivKommentar(int id, string Melding, string Brukernavn)
        {
            bool resultat = true;

            using (var db = new DBContext())
            {
                try
                {
                    KundeDB   bruker    = db.Kunder.FirstOrDefault(k => k.Brukernavn == Brukernavn);
                    Kommentar kommentar = new Kommentar()
                    {
                        Kunde   = bruker,
                        Melding = Melding,
                        Dato    = DateTime.Now.ToString()
                    };
                    var film = db.Filmer.Find(id);
                    film.Kommentarer.Add(kommentar);
                    db.SaveChanges();
                }
                catch (Exception e)
                {
                    resultat = false;
                }
            }

            return(resultat);
        }
Ejemplo n.º 4
0
        // Metode som lagrer kundeendring i databasen
        public bool EndreBruker(EndreKunde innKunde, string brukernavn)
        {
            var  db       = new DBContext();
            bool resultat = true;

            try
            {
                KundeDB KundeSomSkalEndres = db.Kunder.FirstOrDefault(k => k.Brukernavn == brukernavn);
                if (KundeSomSkalEndres != null)
                {
                    KundeSomSkalEndres.Fornavn   = innKunde.Fornavn;
                    KundeSomSkalEndres.Etternavn = innKunde.Etternavn;
                    KundeSomSkalEndres.Kort      = innKunde.Kort;
                    if (innKunde.Passord != null && innKunde.Passord != "")
                    {
                        KundeSomSkalEndres.Passord = LagHash(innKunde.Passord + KundeSomSkalEndres.Salt);
                    }
                    db.SaveChanges();
                }
                else
                {
                    resultat = false;
                }
            }
            catch (Exception e)
            {
                resultat = false;
            }
            return(resultat);
        }
Ejemplo n.º 5
0
        public void SlettBrukerLogg(KundeDB innKunde)
        {
            using (StreamWriter w = File.AppendText(filBane))
            {
                string melding = "Bruker Slettet: ";
                melding += innKunde.Brukernavn;

                SkrivLogg(melding, w);
            }
        }
Ejemplo n.º 6
0
        public void EndreBruker(EndreKunde innKunde, KundeDB gammelKunde)
        {
            using (StreamWriter w = File.AppendText(filBane))
            {
                string melding = "Endring av Bruker: \r\n";
                melding += gammelKunde.Fornavn + " -> " + innKunde.Fornavn + "\r\n";
                melding += gammelKunde.Etternavn + " -> " + innKunde.Etternavn + "\r\n";
                melding += gammelKunde.Brukernavn + " -> " + innKunde.Brukernavn + "\r\n";
                melding += gammelKunde.Kort + " -> " + innKunde.Kort + "\r\n";

                SkrivLogg(melding, w);
            }
        }
Ejemplo n.º 7
0
 // Sjekker om den angitte kunden har stemt på den angitte filmen
 public Stemme HarStemt(Film film, KundeDB bruker)
 {
     foreach (var stemme in film.Stemmer)
     {
         if (stemme.Kunde != null)
         {
             if (stemme.Kunde.id == bruker.id)
             {
                 return(stemme);
             }
         }
     }
     return(null);
 }
Ejemplo n.º 8
0
 /*
  * Metode for å sjekke innloggingsinfo
  * Skrevet av Faglærer i webapplikasjoner ved Oslomet, og refaktorert for å passe modellene i dette prosjektet
  */
 public bool SjekkInnLogging(Kunde innKunde)
 {
     using (var db = new DBContext())
     {
         KundeDB funnetBruker = db.Kunder.FirstOrDefault(b => b.Brukernavn == innKunde.Brukernavn);
         if (funnetBruker != null)
         {
             byte[] passordForTest = LagHash(innKunde.Passord + funnetBruker.Salt);
             bool   riktigBruker   = funnetBruker.Passord.SequenceEqual(passordForTest);
             return(riktigBruker);
         }
         else
         {
             return(false);
         }
     }
 }
Ejemplo n.º 9
0
        public ActionResult Contact(Bruker bruker)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //Mail funksjon
                    MailMessage msg = new MailMessage();

                    msg.To.Add("*****@*****.**");

                    MailAddress address = new MailAddress(bruker.Email);
                    msg.From = address;

                    msg.Subject = "Spørsmål , Drink.no";
                    msg.Body    = bruker.Fornavn + " " + bruker.Etternavn + " " + bruker.Telefon + " " + bruker.Email + " " + bruker.Spørsmål;



                    SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
                    client.EnableSsl = true;

                    NetworkCredential credentials = new NetworkCredential("*****@*****.**", "webapplikasjoner");
                    client.Credentials = credentials;


                    client.Send(msg);

                    // Lagre Spørsmål i databasen.

                    var  kundeDb = new KundeDB();
                    bool ok      = kundeDb.lagreSpm(bruker.Spørsmål);


                    return(View("Success"));
                }
                catch (Exception)
                {
                    return(View("Error"));
                }
            }
            return(View());
        }
Ejemplo n.º 10
0
        // Metode for å stemme på film.
        // Hvis brukeren allerede har stemt på den aktuelle filmen blir den gamle stemmen slettet
        public bool StemPåFilm(int filmID, string brukernavn, int stemme)
        {
            var     db        = new DBContext();
            bool    resultat  = true;
            KundeDB Kunde     = db.Kunder.FirstOrDefault(k => k.Brukernavn == brukernavn);
            Film    film      = db.Filmer.Find(filmID);
            Stemme  vurdering = new Stemme()
            {
                AntallStjerner = stemme,
                Kunde          = Kunde
            };

            try
            {
                if (film.Stemmer == null)
                {
                    film.Stemmer = new List <Stemme>();
                }
                var sjekkStemme = HarStemt(film, Kunde);
                if (sjekkStemme != null)
                {
                    db.Stemmer.Remove(sjekkStemme);
                }
                film.Stemmer.Add(vurdering);

                db.SaveChanges();
            }
            catch (Exception e)
            {
                resultat = false;
            }

            if (!OppdaterGjennomsnitt(filmID))
            {
                resultat = false;
            }

            return(resultat);
        }
Ejemplo n.º 11
0
        public bool LeggIØnskeliste(int FilmID, string Brukernavn)
        {
            bool resultat = true;

            using (var db = new DBContext())
            {
                KundeDB Kunde = db.Kunder.FirstOrDefault(k => k.Brukernavn == Brukernavn);
                if (Kunde != null)
                {
                    if (Kunde.Ønskeliste == null)
                    {
                        Kunde.Ønskeliste = new Ønskeliste();
                    }
                    if (Kunde.Ønskeliste.Filmer == null)
                    {
                        Kunde.Ønskeliste.Filmer = new List <Film>();
                    }
                    try
                    {
                        var film = db.Filmer.Find(FilmID);
                        Kunde.Ønskeliste.Filmer.Add(film);
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        resultat = false;
                    }
                }
                else
                {
                    resultat = false;
                }
            }

            return(resultat);
        }
Ejemplo n.º 12
0
        // Henter kunde for "Bruker" viewet - hvor en innlogget bruker kan endre sin egen informasjon
        public EndreKunde HentBruker(string brukernavn)
        {
            var     db          = new DBContext();
            KundeDB funnetKunde = db.Kunder.FirstOrDefault(k => k.Brukernavn == brukernavn);

            if (funnetKunde != null)
            {
                EndreKunde utKunde = new EndreKunde()
                {
                    Fornavn    = funnetKunde.Fornavn,
                    Etternavn  = funnetKunde.Etternavn,
                    id         = funnetKunde.id,
                    Kort       = funnetKunde.Kort,
                    Filmer     = funnetKunde.Filmer,
                    Stemmer    = funnetKunde.Stemmer,
                    Ønskeliste = funnetKunde.Ønskeliste
                };
                return(utKunde);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 13
0
 public KundeController(KundeDB kundeDb)
 {
     _kundeDB = kundeDb;
 }
Ejemplo n.º 14
0
        public Stemme HarStemt(Film film, KundeDB bruker)
        {
            Stemme stemme = _repository.HarStemt(film, bruker);

            return(stemme);
        }