Ejemplo n.º 1
0
        public bool CreateFAQ(FAQ faq)
        {
            var newFAQ = new FAQs
            {
                Question = faq.question,
                Answer = faq.answer,
                CategoryId = faq.categoryId
            };

            Categories foundCategory = db.Categories.Find(faq.categoryId);

            if (foundCategory != null)
                newFAQ.Category = foundCategory;
            else
                return false;

            try
            {
                // save FAQ
                db.FAQs.Add(newFAQ);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                writeToLog(e);
                return false;
            }

            return true;
        }
Ejemplo n.º 2
0
        public bool UpdateFAQ(int id, FAQ faq)
        {
            FAQs foundFAQ = db.FAQs.FirstOrDefault(f => f.ID == id);

            if (foundFAQ == null)
                return false;

            foundFAQ.Question = faq.question;
            foundFAQ.Answer = faq.answer;
            foundFAQ.CategoryId = faq.categoryId;
            foundFAQ.Category = db.Categories.Find(faq.categoryId);

            try
            {
                db.SaveChanges();
            }
            catch (Exception e)
            {
                writeToLog(e);
                return false;
            }

            return true;
        }
Ejemplo n.º 3
0
        public List<FAQ> GetFAQsFromCategory(int categoryId)
        {
            try
            {
                var dbFAQs = db.FAQs.ToList();
                List<FAQ> FAQs = new List<FAQ>();

                foreach (var faq in dbFAQs)
                {
                    if (faq.CategoryId == categoryId)
                    {
                        var oneFAQ = new FAQ();
                        oneFAQ.id = faq.ID;
                        oneFAQ.question = faq.Question;
                        oneFAQ.answer = faq.Answer;
                        oneFAQ.categoryId = faq.CategoryId;

                        FAQs.Add(oneFAQ);
                    }
                }

                return FAQs;
            }
            catch (Exception e)
            {
                writeToLog(e);
                List<FAQ> FAQs = new List<FAQ>();
                return FAQs;
            }
        }
Ejemplo n.º 4
0
        public FAQ GetFAQ(int id)
        {
            try
            {
                FAQs oneDbFAQ = db.FAQs.Find(id);

                if (oneDbFAQ == null)
                    return null;

                var oneFAQ = new FAQ()
                {
                    id = oneDbFAQ.ID,
                    question = oneDbFAQ.Question,
                    answer = oneDbFAQ.Answer,
                    categoryId = oneDbFAQ.CategoryId
                };

                return oneFAQ;
            }
            catch (Exception e)
            {
                writeToLog(e);
                return null;
            }
        }
Ejemplo n.º 5
0
        public List<FAQ> GetAllFAQsFromCategory(int id)
        {
            try
            {
                Categories oneDbCategory = db.Categories.Find(id);

                if (oneDbCategory == null)
                    return new List<FAQ>();

                List<FAQs> allDbFAQs = db.FAQs.ToList();
                List<FAQ> relevantFAQs = new List<FAQ>();

                foreach(var oneDbFAQ in allDbFAQs)
                {
                    if(oneDbFAQ.CategoryId == id)
                    {
                        var oneFAQ = new FAQ()
                        {
                            id = oneDbFAQ.ID,
                            question = oneDbFAQ.Question,
                            answer = oneDbFAQ.Answer,
                            categoryId = oneDbFAQ.CategoryId
                        };

                        relevantFAQs.Add(oneFAQ);
                    }
                }

                return relevantFAQs;
            }
            catch (Exception e)
            {
                writeToLog(e);
                List<FAQ> relevantFAQs = new List<FAQ>();
                return relevantFAQs;
            }
        }
        // POST api/FAQ
        public HttpResponseMessage Post(FAQ faq)
        {
            if (ModelState.IsValid)
            {
                bool ok = faqDb.CreateFAQ(faq);

                if (ok)
                {
                    return new HttpResponseMessage()
                    {
                        StatusCode = HttpStatusCode.OK
                    };
                }
            }

            return new HttpResponseMessage()
            {
                StatusCode = HttpStatusCode.NotFound,
                Content = new StringContent("Kunne ikke sette inn dette spørsmålet i databasen.")
            };
        }