public async Task <IHttpActionResult> Get()
        {
            var userId = User.Identity.Name;

            BrugerData user = db.BrugerData.FirstOrDefault(s => s.BrugerId == userId);

            PersonligListe myList = db.PersonligLister.FirstOrDefault(s => s.BrugerDataId == user.Id);

            if (myList == null)
            {
                return(NotFound());
            }

            return(Ok(myList.FoedevareIndtagListe));
        }
        public async Task <IHttpActionResult> Post([FromBody] FoedevareIndtag t)
        {
            if (!ModelState.IsValid)
            {
                return(this.BadRequest(this.ModelState));
            }

            var userId = User.Identity.Name;

            BrugerData     user         = db.BrugerData.FirstOrDefault(s => s.BrugerId == userId);
            ProteinKilde   proteinKilde = db.ProteinKilder.Find(t.ProteinKildeId);
            PersonligListe myList       = db.PersonligLister.FirstOrDefault(s => s.BrugerDataId == user.Id);

            // Create a list for the user if the user not already has one
            if (myList == null)
            {
                myList = new PersonligListe
                {
                    BrugerDataId         = user.Id,
                    Navn                 = userId + " personlige proteinliste",
                    BrugerData           = user,
                    FoedevareIndtagListe = new List <FoedevareIndtag>()
                };

                t.ProteinKilde = proteinKilde;
                myList.FoedevareIndtagListe.Add(t);

                this.db.PersonligLister.Add(myList);
                await this.db.SaveChangesAsync();

                return(Ok(myList.FoedevareIndtagListe));
            }

            if (myList.FoedevareIndtagListe == null)
            {
                myList.FoedevareIndtagListe = new List <FoedevareIndtag>();
            }

            t.ProteinKilde = proteinKilde;

            myList.FoedevareIndtagListe.Add(t);

            db.PersonligLister.AddOrUpdate(myList);
            await db.SaveChangesAsync();

            return(Ok(myList.FoedevareIndtagListe));
        }
        public async Task <IHttpActionResult> Delete()
        {
            var userId = User.Identity.Name;

            BrugerData user = db.BrugerData.FirstOrDefault(s => s.BrugerId == userId);

            PersonligListe myList = db.PersonligLister.FirstOrDefault(s => s.BrugerDataId == user.Id);

            if (myList != null && user != null)
            {
                myList.FoedevareIndtagListe.Clear();

                db.PersonligLister.AddOrUpdate(myList);

                await db.SaveChangesAsync();
            }

            return(Ok(new List <FoedevareIndtag>()));
        }
Esempio n. 4
0
        public async Task <IHttpActionResult> Post([FromBody] BrugerData user)
        {
            if (!ModelState.IsValid)
            {
                return(this.BadRequest(this.ModelState));
            }

            BrugerData existingUser = db.BrugerData.FirstOrDefault(s => s.BrugerId == user.BrugerId);

            if (existingUser != null)
            {
                existingUser.Vaegt    = user.Vaegt;
                existingUser.Tilstand = user.Tilstand;

                this.db.BrugerData.AddOrUpdate(existingUser);
            }

            await this.db.SaveChangesAsync();

            return(Ok(user));
        }
Esempio n. 5
0
        public async Task <IHttpActionResult> Get()
        {
            var userId = User.Identity.Name;

            BrugerData user = db.BrugerData.FirstOrDefault(s => s.BrugerId == userId);

            // Create the user if not yet created
            if (user == null)
            {
                user = new BrugerData
                {
                    BrugerId   = userId,
                    HasProfile = false,
                    Tilstand   = "Voksen"
                };

                this.db.BrugerData.AddOrUpdate(user);

                await this.db.SaveChangesAsync();
            }

            return(Ok(user));
        }