Пример #1
0
        public void LoadPontos(ref CreateEditImagemViewModel model)
        {
            IEnumerable <PontoInteresse> pontos;

            if (User.IsInRole("registado externo"))
            {
                //pontos = db.PontosInteresse.ToList().Where(p => p.CriadorPonto.Equals(db.Users.Where(u => u.UserName.Equals(User.Identity.Name))));
                //model.PontosInteresse = pontos.Select(p => new SelectListItem { Value = p.Id.ToString(), Text = p.Nome.ToString() });

                pontos = from s in db.PontosInteresse
                         select s;

                //remover o que tem criador a null
                pontos = pontos.Where(s => s.CriadorPonto != null);
                pontos = pontos.Where(s => s.CriadorPonto.Equals(User.Identity.Name));
                pontos = pontos.Where(s => !s.Visivel);

                model.PontosInteresse = pontos.Select(p => new SelectListItem {
                    Value = p.Id.ToString(), Text = p.Nome.ToString()
                });
            }
            else
            {
                pontos = db.PontosInteresse.ToList().Where(p => p.Visivel.Equals(true));

                model.PontosInteresse = pontos.Select(p => new SelectListItem {
                    Value = p.Id.ToString(), Text = p.Nome.ToString()
                });
            }
        }
Пример #2
0
        // GET: Imagems/Create
        public ActionResult Create()
        {
            CreateEditImagemViewModel model = new CreateEditImagemViewModel();

            LoadPontos(ref model);
            if (model.PontosInteresse.Count() == 0)
            {
                return(View("ErroPonto"));
            }
            return(View(model));
        }
Пример #3
0
        public ActionResult Edit(CreateEditImagemViewModel model)
        {
            if (ModelState.IsValid)
            {
                var imagem = db.Imagens.Find(model.IdImagem);

                imagem.Autor          = model.Autor;
                imagem.Nome           = model.Nome;
                imagem.PontoInteresse = db.PontosInteresse.Find(model.PontoEscolhido);

                db.SaveChanges();

                return(RedirectToAction("Index"));
            }

            LoadPontos(ref model);
            return(View(model));
        }
Пример #4
0
        public ActionResult Create(CreateEditImagemViewModel model, HttpPostedFileBase foto)
        {
            if (ModelState.IsValid)
            {
                var pontodb = db.PontosInteresse.Find(model.PontoEscolhido);

                pontodb.Imagens = pontodb.Imagens ?? new List <Imagem>();

                var imagem = new Imagem
                {
                    Autor       = model.Autor,
                    Nome        = model.Nome,
                    InseridaPor = db.Users.Where(u => u.UserName.Equals(User.Identity.Name)).FirstOrDefault().UserName
                };

                pontodb.Imagens.Add(imagem);


                if (foto != null)
                {
                    System.IO.Stream       fs = foto.InputStream;
                    System.IO.BinaryReader br = new System.IO.BinaryReader(fs);
                    Byte[] bytes        = br.ReadBytes((Int32)fs.Length);
                    string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
                    imagem.ConteudoImagem = "data:image/png;base64," + base64String;
                }
                else
                {
                    ModelState.AddModelError("", "Ocorreu um erro no carregamento da foto");
                    LoadPontos(ref model);
                    return(View(model));
                }



                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            LoadPontos(ref model);
            return(View(model));
        }
Пример #5
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Imagem imagem = db.Imagens.Find(id);

            if (imagem == null)
            {
                return(HttpNotFound());
            }
            CreateEditImagemViewModel model = new CreateEditImagemViewModel();

            LoadPontos(ref model);
            model.IdImagem       = imagem.Id;
            model.Nome           = imagem.Nome;
            model.Autor          = imagem.Autor;
            model.Conteudo       = imagem.ConteudoImagem;
            model.PontoEscolhido = imagem.PontoInteresse.Id;
            return(View(model));
        }