Ejemplo n.º 1
0
        public ActionResult Create([Bind(Include = "ID,Nome,DataNascimento,Biografia")] Atores atores, HttpPostedFileBase fileUploadImagem, string DataNasc)
        {
            //vars aux
            string nomeImagem        = "ator" + DateTime.Now.ToString("_yyyyMMdd_hhmmss") + ".jpg";
            string caminhoParaImagem = Path.Combine(Server.MapPath("~/imagens/atores"), nomeImagem); //indica onde a imagem será guardada

            //verificar se chega efetivamente um ficheiro ao servidor
            if ((fileUploadImagem != null) && (fileUploadImagem.ContentType.ToString() == "image/jpeg"))
            {
                //guardar o nome da imagem na BD
                atores.Imagem = nomeImagem;
            }
            else
            {
                // não há imagem...
                ModelState.AddModelError("", "Não foi fornecida uma imagem ou o ficheiro inserido não é JPG");
                return(View(atores));
            }

            DateTime dataNa = DateTime.Parse(DataNasc);

            atores.DataNascimento = dataNa;

            if (ModelState.IsValid)
            {
                db.Atores.Add(atores);
                db.SaveChanges();

                fileUploadImagem.SaveAs(caminhoParaImagem);

                return(RedirectToAction("Index"));
            }

            return(View(atores));
        }
Ejemplo n.º 2
0
        public IActionResult Post([FromBody] AtoresTemp aTemp)
        {
            Atores atores = new Atores();

            if (aTemp.Nome.Length <= 1)
            {
                Response.StatusCode = 400;
                return(new ObjectResult(new{ msg = "O ator tem que ter um nome válido!" }));
            }
            atores.Nome = aTemp.Nome;

            database.Atores.Add(atores);
            database.SaveChanges();


            var atorId = database.Atores.Where(a => a.Nome == atores.Nome).First(a => a.Id == atores.Id);

            foreach (var atorFilmeId in aTemp.AtoresFilmesId)
            {
                AtoresFilmes atoresFilmes1 = new AtoresFilmes();
                atoresFilmes1.FilmesId = atorFilmeId;
                atoresFilmes1.AtoresId = atorId.Id;

                database.AtoresFilmes.Add(atoresFilmes1);
                database.SaveChanges();
            }
            ;



            Response.StatusCode = 201;
            return(new ObjectResult(new{ msg = "Ator criado com sucesso!" }));
        }
Ejemplo n.º 3
0
        public IHttpActionResult PutAtores(int id, Atores atores)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != atores.IdAtor)
            {
                return(BadRequest());
            }

            db.Entry(atores).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!AtoresExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Ejemplo n.º 4
0
        public ActionResult DeleteConfirmed(int id)
        {
            Atores ator = db.Atores.Find(id);

            db.Atores.Remove(ator);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 5
0
        public ActionResult Create([Bind(Include = "Nome,Nascimento,Nacionalidade")] Atores ator, HttpPostedFileBase foto)
        {
            //variáveis auxiliares
            string caminho        = "";
            bool   ficheiroValido = false;

            //verifica se foi escolhida alguma imagem
            if (foto == null)
            {
                //atribui uma imagem em branco por defeito
                ator.Foto = "no_image.png";
            }
            else
            {
                string mimeType = foto.ContentType; //identificar o tipo de ficheiro

                //verifica se o ficheiro é jpg ou png
                if (mimeType == "image/jpeg" || mimeType == "image/png")
                {
                    Guid g;
                    g = Guid.NewGuid();                                                       // obtem os dados para o nome do ficheiro

                    string extensao = Path.GetExtension(foto.FileName).ToLower();             //extensão do ficheiro

                    string nomeFicheiro = g.ToString() + extensao;                            // criar o nome do ficheiro

                    caminho = Path.Combine(Server.MapPath("~/Images/Actors/"), nomeFicheiro); //guarda o caminho do ficheiro

                    ator.Foto = nomeFicheiro;                                                 //atribuir o nome do ficheiro à imagem do filme

                    ficheiroValido = true;                                                    //o ficheiro é válido
                }
                else
                {
                    ator.Foto = "no_image.png";
                }
            }
            if (ModelState.IsValid)
            {
                try
                {
                    db.Atores.Add(ator);
                    db.SaveChanges();

                    if (ficheiroValido)
                    {
                        foto.SaveAs(caminho);                 //se o ficheiro for válido guarda a imagem
                    }
                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    throw;
                }
            }

            return(View(ator));
        }
Ejemplo n.º 6
0
 public ActionResult Edit([Bind(Include = "ID,Nome,Biografia,Sexo,Nacionalidade,DataNascimento,FotoAtor")] Atores ator)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ator).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(ator));
 }
Ejemplo n.º 7
0
        public ActionResult Edit([Bind(Include = "ID,Nome,Nascimento,Nacionalidade")] Atores ator, HttpPostedFileBase foto)
        {
            string caminho        = "";
            bool   ficheiroValido = false;

            if (foto == null)
            {
                ator.Foto = "no_image.png";
            }
            else
            {
                string mimeType = foto.ContentType;

                if (mimeType == "image/jpeg" || mimeType == "image/png")
                {
                    Guid g;
                    g = Guid.NewGuid();

                    string extensao = Path.GetExtension(foto.FileName).ToLower();

                    string nomeFicheiro = g.ToString() + extensao;

                    caminho = Path.Combine(Server.MapPath("~/Images/Actors/"), nomeFicheiro);

                    ator.Foto = nomeFicheiro;

                    ficheiroValido = true;
                }
                else
                {
                    ator.Foto = "no_image.png";
                }
            }

            if (ModelState.IsValid)
            {
                try
                {
                    db.Entry(ator).State = EntityState.Modified;
                    db.SaveChanges();

                    if (ficheiroValido)
                    {
                        foto.SaveAs(caminho);
                    }

                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    throw;
                }
            }
            return(View(ator));
        }
Ejemplo n.º 8
0
        public ActionResult Create([Bind(Include = "ID,Nome,Biografia,Sexo,Nacionalidade,DataNascimento,FotoAtor")] Atores ator)
        {
            if (ModelState.IsValid)
            {
                db.Atores.Add(ator);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(ator));
        }
Ejemplo n.º 9
0
        public IHttpActionResult PostAtores(Atores atores)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Atores.Add(atores);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = atores.IdAtor }, atores));
        }
Ejemplo n.º 10
0
        // GET: Atores/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index"));
            }
            Atores ator = db.Atores.Find(id);

            if (ator == null)
            {
                return(RedirectToAction("Index"));
            }
            return(View(ator));
        }
Ejemplo n.º 11
0
        public ActionResult DeleteConfirmed(int id)
        {
            Atores atores = db.Atores.Find(id);

            try {
                System.IO.File.Delete(Path.Combine(Server.MapPath("~/imagens/atores"), atores.Imagem));
                db.Atores.Remove(atores);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            } catch (Exception) {
                ModelState.AddModelError("", string.Format("Não foi possível remover o ator porque existem filmes associados a ele"));
            }
            return(View(atores));
        }
 public ActionResult Create([Bind(Include = "IdAtor,Nome,DataNascimento,Imagem")] Atores atores)
 {
     if (ModelState.IsValid)
     {
         db.Atores.Add(atores);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     //se model state for invalido
     //gera mensagem de erro
     TempData["Error"] = "Unexpected error";
     //retorna para view create atores
     return(View(atores));
 }
 public ActionResult Edit([Bind(Include = "IdAtor,Nome,DataNascimento,Imagem")] Atores atores)
 {
     if (ModelState.IsValid)
     {
         db.Entry(atores).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     //se o model state nao for valido
     //cria mensagem de erro
     TempData["Error"] = "Unexpected error";
     //retorna para a view edit ator
     return(View(atores));
 }
Ejemplo n.º 14
0
        public IHttpActionResult DeleteAtores(int id)
        {
            Atores atores = db.Atores.Find(id);

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

            db.Atores.Remove(atores);
            db.SaveChanges();

            return(Ok(atores));
        }
Ejemplo n.º 15
0
        // GET: Atores/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Atores atores = db.Atores.Find(id);

            if (atores == null)
            {
                return(HttpNotFound());
            }
            return(View(atores));
        }
Ejemplo n.º 16
0
        // GET: /Atores/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Atores atores = await unitOfWork.AtoresRepository.GetByIDAsync(id);

            if (atores == null)
            {
                return(HttpNotFound());
            }
            return(View(atores));
        }
Ejemplo n.º 17
0
        // GET: Atores/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index"));
            }
            Atores ator = db.Atores.Find(id);

            if (ator == null)
            {
                TempData["Error"] = "Unexpected error";
                return(RedirectToAction("Index"));
            }
            return(View(ator));
        }
Ejemplo n.º 18
0
        // GET: Atores/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                //return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
                return(RedirectToAction("Index"));
            }
            Atores atores = db.Atores.Find(id);

            if (atores == null)
            {
                //return HttpNotFound();
                return(RedirectToAction("Index"));
            }
            return(View(atores));
        }
Ejemplo n.º 19
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                //cria mensagem de erro
                TempData["Error"] = "Unexpected error";
                return(RedirectToAction("Index"));
            }
            Atores ator = db.Atores.Find(id);

            if (ator == null)
            {
                TempData["Error"] = "Unexpected error";
                return(RedirectToAction("Index"));
            }
            return(View(ator));
        }
Ejemplo n.º 20
0
        private void CarregarAtores()
        {
            HtmlNodeCollection actors = _markup.DocumentNode.SelectNodes("//td[contains(@class, 'name')]/a");
            HtmlNodeCollection roles  = _markup.DocumentNode.SelectNodes("//td[contains(@class, 'character')]/div");
            int indice = 0;

            foreach (var ator in actors)
            {
                string URLImdb = "http://www.imdb.com" + ator.Attributes["href"].Value;
                string IDImdb  = ator.Attributes["href"].Value.Replace("/name/nm", "").Replace("/", "");

                if (indice < roles.Count)
                {
                    var personagem = roles[indice];
                    if (personagem == null)
                    {
                        personagem = roles[indice].SelectSingleNode("//a");
                    }

                    String URLPhoto = "";

                    if (PesquisaCompleta)
                    {
                        //------------------------------- Carrega a foto do ator
                        var webAtor     = new HtmlWeb();
                        var _markupAtor = webAtor.Load(URLImdb);
                        var foto        = _markupAtor.DocumentNode.SelectSingleNode("//td[contains(@id, 'img_primary')]/a/img");

                        if (foto != null)
                        {
                            URLPhoto = foto.Attributes["src"].Value;
                        }

                        //-------------------------------
                    }

                    Atores.Add(new Ator()
                    {
                        Nome = HttpUtility.HtmlDecode(ator.InnerText.Replace("\n", "")), Papel = HttpUtility.HtmlDecode(personagem.InnerText.Replace("\n", "").Trim()), URLImdb = URLImdb, IdImdb = IDImdb, URLFoto = URLPhoto
                    });
                }
                indice++;
            }
        }
Ejemplo n.º 21
0
        public ActionResult Edit([Bind(Include = "Id,Titulo,Sinopse,AnoLanc,LinkTrailer,ImagensFilme,RealizadorId")]
                                 Filme filme, HttpPostedFileBase ImagemFilme, List <int> Categorias, List <int> Atores)
        {
            if (Atores == null)
            {
                Atores = new List <int>();
            }
            else if (Categorias == null)
            {
                Categorias = new List <int>();
            }
            else
            if (ModelState.IsValid)
            {
                //lista das categorias dos filmes para Editar
                IQueryable <Categorias> temp2 = db.Categorias.Where(a => Categorias.Any(aa => a.Id == aa));
                filme.Categorias = temp2.ToList();

                //lista dos atores para editar
                IQueryable <Ator> temp3 = db.Ators.Where(a => Atores.Any(aa => a.Id == aa));
                filme.Atores          = temp3.ToList();
                db.Entry(filme).State = EntityState.Modified;

                //Editar Imagem
                if (ImagemFilme != null)
                {
                    if (System.IO.File.Exists(Server.MapPath("~/Imagens/" + filme.Id + filme.ImagensFilme)))
                    {
                        System.IO.File.Delete(Server.MapPath("~/Imagens/" + filme.Id + filme.ImagensFilme));
                    }
                    filme.ImagensFilme = Path.GetExtension(ImagemFilme.FileName);
                    ImagemFilme.SaveAs(Path.Combine(Server.MapPath("~/Imagens/" + filme.Id + filme.ImagensFilme)));
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.RealizadorId   = new SelectList(db.Realizador, "Id", "NomeRealizador", filme.RealizadorId);
            ViewBag.Categorias     = new SelectList(db.Categorias, "Id", "Nome");
            ViewBag.sel_Categorias = Categorias.ToList();
            ViewBag.Atores         = new SelectList(db.Ators, "Id", "Nome");
            ViewBag.sel_Atores     = Atores.ToList();
            return(View(filme));
        }
Ejemplo n.º 22
0
        // GET: /Atores/Delete/5
        public async Task <ActionResult> Delete(int?id, bool?saveChangesError = false)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            if (saveChangesError.GetValueOrDefault())
            {
                ViewBag.ErrorMessage = "Falha ao apagar ator. Tente novamente, e se o problema persistir contate o administrador do sistema.";
            }

            Atores atores = await unitOfWork.AtoresRepository.GetByIDAsync(id);

            if (atores == null)
            {
                return(HttpNotFound());
            }
            return(View(atores));
        }
Ejemplo n.º 23
0
        public IHttpActionResult GetAtores(int id)
        {
            Atores atores = db.Atores.Find(id);

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

            var resultado = new
            {
                atores.IdAtor,
                atores.Imagem,
                atores.Nome,
                atores.DataNascimento
            };

            return(Ok(atores));
        }
Ejemplo n.º 24
0
        public async Task <ActionResult> Create([Bind(Include = "Nome,DataNascimento")] Atores atores)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    unitOfWork.AtoresRepository.Insert(atores);
                    await unitOfWork.SaveAsync();

                    return(RedirectToAction("Index"));
                }
            }
            catch (DataException /* dex */)
            {
                //Log the error (uncomment dex variable name and add a line here to write a log.
                ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists see your system administrator.");
            }

            return(View(atores));
        }
Ejemplo n.º 25
0
        public ActionResult Create([Bind(Include = "Id,Titulo,Sinopse,AnoLanc,LinkTrailer,ImagensFilme,RealizadorId")]
                                   Filme filme, HttpPostedFileBase ImagensFilme, List <int> Categorias, List <int> Atores)
        {
            if (ImagensFilme != null)
            {
                filme.ImagensFilme = Path.GetExtension(ImagensFilme.FileName);
            }

            if (Atores == null)
            {
                Atores = new List <int>();
            }
            else if (Categorias == null)
            {
                Categorias = new List <int>();
            }
            else
            if (ModelState.IsValid)
            {
                db.Filme.Add(filme);
                //Para adicionar Lista de categorias aos filmes
                IQueryable <Categorias> temp2 = db.Categorias.Where(a => Categorias.Any(aa => a.Id == aa));
                filme.Categorias = temp2.ToList();

                //Para adicionar lista dos atores
                IQueryable <Ator> temp3 = db.Ators.Where(a => Atores.Any(aa => a.Id == aa));
                filme.Atores = temp3.ToList();
                db.SaveChanges();

                //Para adiciona uma imagem ao Filme
                ImagensFilme.SaveAs(Path.Combine(Server.MapPath("~/Imagens/" + filme.Id + filme.ImagensFilme)));
                return(RedirectToAction("Index"));
            }
            ViewBag.sel_Categorias = Categorias.ToList();
            ViewBag.sel_Atores     = Atores.ToList();
            ViewBag.Categorias     = new SelectList(db.Categorias, "Id", "Nome");
            ViewBag.Atores         = new SelectList(db.Ators, "Id", "Nome");
            ViewBag.RealizadorId   = new SelectList(db.Realizador, "Id", "NomeRealizador", filme.RealizadorId);
            return(View(filme));
        }
        public ActionResult Edit(int?id)
        {
            //se o id for null
            if (id == null)
            {
                //cria mensagem de erro
                TempData["Error"] = "Unexpected error";
                //redireciona para o index
                return(RedirectToAction("Index"));
            }
            Atores atores = db.Atores.Find(id);

            //se o ator nao existir
            if (atores == null)
            {
                //cria mensagem de erro
                TempData["Error"] = "Unexpected error";
                //redireciona para o index
                return(RedirectToAction("Index"));
            }
            return(View(atores));
        }
Ejemplo n.º 27
0
        public ActionResult Edit([Bind(Include = "ID,Nome,DataNascimento,Biografia,Imagem")] Atores atores, HttpPostedFileBase fileUploadImagem)
        {
            //var. auxiliar
            string nomeImagem        = "ator" + DateTime.Now.ToString("_yyyyMMdd_hhmmss") + ".jpg";
            string oldName           = atores.Imagem;
            string caminhoParaImagem = Path.Combine(Server.MapPath("~/imagens/atores"), nomeImagem); //indica onde a imagem será guardada

            //verificar se chega efetivamente um ficheiro ao servidor
            if ((fileUploadImagem != null) && (fileUploadImagem.ContentType.ToString() == "image/jpeg"))
            {
                //guardar o nome da imagem na BD
                atores.Imagem = nomeImagem;
            }


            if (ModelState.IsValid)
            {
                db.Entry(atores).State = EntityState.Modified;
                db.SaveChanges();


                if ((fileUploadImagem != null) && (fileUploadImagem.ContentType.ToString() == "image/jpeg"))
                {
                    //guardar o nome da imagem na BD
                    fileUploadImagem.SaveAs(caminhoParaImagem);
                    System.IO.File.Delete(Path.Combine(Server.MapPath("~/imagens/atores"), oldName));
                    return(RedirectToAction("Details", "Atores", new { id = atores.ID }));
                }
                if (fileUploadImagem == null)
                {
                    return(RedirectToAction("Details", "Atores", new { id = atores.ID }));
                }
            }
            ModelState.AddModelError("", "Não foi fornecida uma imagem ou o ficheiro inserido não é JPG");
            return(View(atores));
        }