Esempio n. 1
0
        //[Authorize()]
        public HttpResponseMessage Post(BatturImage batturImage)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    this._unit.BatturImages.Add(batturImage);
                    this._unit.SaveChanges();

                    HttpResponseMessage result =
                        Request.CreateResponse(HttpStatusCode.Created, batturImage);

                    result.Headers.Location =
                        new Uri(Url.Link("DefaultApi", new { id = batturImage.ImageId }));

                    return(result);
                }
                else
                {
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Esempio n. 2
0
        //[Authorize]
        public HttpResponseMessage Delete(int id)
        {
            BatturImage batturImage = this._unit.BatturImages.GetById(id);

            if (batturImage == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            this._unit.BatturImages.Delete(batturImage);

            try
            {
                this._unit.SaveChanges();

                return(Request.CreateResponse(HttpStatusCode.OK, batturImage));
            }
            catch (DbUpdateConcurrencyException ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Esempio n. 3
0
        public ActionResult Get(int id = -1)
        {
            if (Session["IsAuthenticated"] == null)
            {
                return(Redirect("/Admin/Index"));
            }
            var vm = new BatturViewModel();

            if (id > -1)
            {
                vm.ErNy       = false;
                vm.Battur     = this._unit.Batturer.GetById(id);
                vm.Kategorier = new List <Kategori>();


                if (vm.Battur != null)
                {
                    int batturid = vm.Battur.BatturId;

                    if (vm.Battur.Kategorier != null)
                    {
                        foreach (var bk in vm.Battur.Kategorier)
                        {
                            var kategori = this._unit.Kategorier.GetById(bk.KategoriId);
                            if (kategori != null)
                            {
                                vm.Kategorier.Add((Kategori)kategori);
                            }
                        }
                    }

                    vm.Bilder = new List <BatturImage>();
                    var tempImages = this._unit.BatturImages.GetByBatturId(batturid);

                    foreach (var temp in tempImages)
                    {
                        var image = new BatturImage
                        {
                            ImageFile    = Config.BatturerImagesUrlPrefix + temp.ImageFile,
                            ImageId      = temp.ImageId,
                            BatturId     = temp.BatturId,
                            ErHovedbilde = temp.ErHovedbilde
                        };
                        vm.Bilder.Add(image);

                        if (temp.ErHovedbilde)
                        {
                            vm.Hovedbilde = image.ImageId.ToString();
                        }
                    }
                    ;
                    vm.Battur.Beskrivelse = vm.Battur.Beskrivelse.Replace("\n", "");
                }
                return(View("EndreBattur", vm));
            }
            return(View("Error"));
        }
Esempio n. 4
0
        public void Update(BatturImage entity)
        {
            DbEntityEntry entry = this.Context.Entry(entity);

            if (entry.State == EntityState.Detached)
            {
                this.DbSet.Attach(entity);
            }
            entry.State = EntityState.Modified;
        }
Esempio n. 5
0
        //[Authorize(Roles= "admin, manager, user")]
        public BatturImage Get(int id)
        {
            BatturImage batturImage = this._unit.BatturImages.GetById(id);

            if (batturImage == null)
            {
                throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound));
            }
            return(batturImage);
        }
Esempio n. 6
0
        public void Add(BatturImage entity)
        {
            DbEntityEntry entry = this.Context.Entry(entity);

            if (entry.State != EntityState.Detached)
            {
                entry.State = EntityState.Added;
            }
            else
            {
                this.DbSet.Add(entity);
            }
        }
Esempio n. 7
0
        public void Delete(BatturImage entity)
        {
            DbEntityEntry entry = this.Context.Entry(entity);

            if (entry.State != EntityState.Deleted)
            {
                entry.State = EntityState.Deleted;
            }
            else
            {
                this.DbSet.Attach(entity);
                this.DbSet.Remove(entity);
            }
        }
Esempio n. 8
0
        //[Authorize]
        public ActionResult SlettBilde(BatturImage image)
        {
            if (Session["IsAuthenticated"] == null)
            {
                return(Redirect("/Admin/Index"));
            }
            JsonResult result;

            var path = Path.Combine(Server.MapPath(image.ImageFile));
            var file = new FileInfo(path);

            if (file.Exists)//check file exsit or not
            {
                try
                {
                    using (StreamWriter sw = file.CreateText()) { }
                    file.Delete();
                    result = this.Json(new
                    {
                        status = "success"
                    });
                    // Console.WriteLine("fant fil: {0} .", file);
                }
                catch (Exception e)
                {
                    result = this.Json(new
                    {
                        status     = "error",
                        statusText = "Klarer ikke å slette fil fra folder " + e.Message
                    });
                }
            }
            else
            {
                result = this.Json(new
                {
                    status     = "error",
                    statusText = "Finner ikke fil"
                });
            }
            return(result);
        }
Esempio n. 9
0
        //[Authorize()]
        public HttpResponseMessage Put(int id, [FromBody] BatturImage batturImage)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            if (id != batturImage.ImageId)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            BatturImage existingBatturImage = this._unit.BatturImages.GetById(id);

            _unit.BatturImages.Detach(existingBatturImage);

            //beholder original Opprettet verdi
            if (batturImage.Opprettet == null)
            {
                batturImage.Opprettet = existingBatturImage.Opprettet;
            }

            this._unit.BatturImages.Update(batturImage);

            try
            {
                this._unit.SaveChanges();

                //returner en verdi for å unngå å trigge feil-callbacken
                return(Request.CreateResponse(HttpStatusCode.OK,
                                              "{success: 'true', verb: 'PUT'}"));
            }
            catch (DbUpdateConcurrencyException ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Esempio n. 10
0
        public ActionResult BatturEngelsk(int id, string seoName)
        {
            var vm = new BatturViewModel();

            vm.ErNy = false;
            var batturer = this._unit.Batturer.GetAll().ToList();

            vm.Batturer = batturer;

            vm.Battur = this._unit.Batturer.GetById(id);

            if (vm.Battur != null)
            {
                int batturid = vm.Battur.BatturId;

                vm.Bilder = new List <BatturImage>();

                var tempImages = this._unit.BatturImages.GetByBatturId(batturid);

                foreach (var temp in tempImages)
                {
                    var image = new BatturImage
                    {
                        ImageFile    = Config.BatturerImagesUrlPrefix + temp.ImageFile,
                        ImageId      = temp.ImageId,
                        BatturId     = temp.BatturId,
                        ErHovedbilde = temp.ErHovedbilde
                    };
                    vm.Bilder.Add(image);

                    if (temp.ErHovedbilde)
                    {
                        vm.Hovedbilde = Config.BatturerImagesFolderPath + temp.ImageFile;
                    }
                }
                ;

                vm.Pris = (Config.Timepris * vm.Battur.MinimumTid).ToString();


                var neste   = 0;
                var forrige = 0;

                if (batturer.Count > 1)
                {
                    var index = batturer.IndexOf(vm.Battur);

                    if (index == (batturer.Count - 1))
                    {
                        neste = 0;
                    }
                    else
                    {
                        neste = index + 1;
                    }

                    if (index == 0)
                    {
                        forrige = batturer.Count - 1;
                    }
                    else
                    {
                        forrige = index - 1;
                    }
                }
                else
                {
                    neste   = batturid;
                    forrige = batturid;
                }
                vm.NesteBattur   = batturer.ElementAt(neste).BatturId;
                vm.ForrigeBattur = batturer.ElementAt(forrige).BatturId;

                //Lager seo-vennlige linker
                var seo = "sightseeing-in-oslofjorden-Oslo-to-" + vm.Battur.TilSted;
                if (seoName != Config.SeoName(seo))
                {
                    return(RedirectToActionPermanent("BatturEngelsk", new { id = id, seoName = Config.SeoName(seo) }));
                }

                return(View("BatturEngelsk", vm));
            }

            return(View("Error"));
        }
Esempio n. 11
0
        public ActionResult Battur(int id, string seoName)
        {
            var vm = new BatturViewModel();

            vm.ErNy = false;
            var batturer = this._unit.Batturer.GetAll().ToList();

            vm.Batturer   = batturer;
            vm.Kategorier = this._unit.Kategorier.GetAll().ToList();

            vm.Battur = this._unit.Batturer.GetById(id);

            if (vm.Battur != null)
            {
                int batturid = vm.Battur.BatturId;

                var batturKategorier = this._unit.BatturKategorier.GetByBatturId(batturid);

                foreach (var batKat in batturKategorier)
                {
                    var kategori = this._unit.Kategorier.GetById(batKat.KategoriId);
                    vm.Kategorier.Add(kategori);
                }

                vm.Bilder = new List <BatturImage>();

                var tempImages = this._unit.BatturImages.GetByBatturId(batturid);

                foreach (var temp in tempImages)
                {
                    var image = new BatturImage
                    {
                        ImageFile    = Config.BatturerImagesUrlPrefix + temp.ImageFile,
                        ImageId      = temp.ImageId,
                        BatturId     = temp.BatturId,
                        ErHovedbilde = temp.ErHovedbilde
                    };
                    vm.Bilder.Add(image);

                    if (temp.ErHovedbilde)
                    {
                        vm.Hovedbilde = Config.BatturerImagesFolderPath + temp.ImageFile;
                    }
                }
                ;

                var neste   = 0;
                var forrige = 0;

                if (batturer.Count > 1)
                {
                    var index = batturer.IndexOf(vm.Battur);

                    if (index == (batturer.Count - 1))
                    {
                        neste = 0;
                    }
                    else
                    {
                        neste = index + 1;
                    }

                    if (index == 0)
                    {
                        forrige = batturer.Count - 1;
                    }
                    else
                    {
                        forrige = index - 1;
                    }
                }
                else
                {
                    neste   = batturid;
                    forrige = batturid;
                }

                vm.NesteBattur   = batturer.ElementAt(neste).BatturId;
                vm.ForrigeBattur = batturer.ElementAt(forrige).BatturId;


                //Lager seo-vennlige linker
                //var seo = vm.Kategorier[0].KategoriNavn + "-båttur-i-oslofjorden-" + vm.Battur.TilSted;
                var seo = "båttur-oslo-" + vm.Battur.TilSted;
                if (seoName != Config.SeoName(seo))
                {
                    return(RedirectToActionPermanent("Battur", new { id = id, seoName = Config.SeoName(seo) }));
                }


                return(View("Battur", vm));
            }

            return(View("Error"));


            //foreach (var m in valgtBattur.BatturKategorier)
            //{
            //    var q = this._unit.Kategorier.GetById(m.KategoriID);
            //    kat.Add(q);
            //};
        }
Esempio n. 12
0
        public void Detach(BatturImage entity)
        {
            DbEntityEntry entry = this.Context.Entry(entity);

            entry.State = EntityState.Detached;
        }