Beispiel #1
0
        public IHttpActionResult PutEquipas(int id, Equipas equipas)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != equipas.ID)
            {
                return(BadRequest());
            }

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

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

            return(StatusCode(HttpStatusCode.NoContent));
        }
Beispiel #2
0
        public IHttpActionResult GetEquipas(int id)
        {
            Equipas equipas = db.Equipas.Find(id);

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

            var dataFund  = equipas.DataFundacao.ToString("dd/MM/yyyy");
            var resultado = db.Equipas.Select(equipa => new
            {
                equipa.ID,
                equipa.Nome,
                equipa.NomeTodo,
                dataFund,
                equipa.Pais,
                equipa.Cidade,
                equipa.Presidente,
                equipa.Logotipo,
                equipa.Plantel,
                equipa.EpocaCampeonatoPortugues,
                equipa.EpocaCampeonatoMetropolitano,
                equipa.EpocaTacaPortugal,
                equipa.EpocaSupertacaAntonioLivramento
            }).Where(equipa => equipa.ID == id).ToList();

            return(Ok(resultado));
        }
        public async Task <ActionResult> Create([Bind(Include = "IdEquipa,Nome,DataFundacao,Logo,Fundador,Nacionalidade")] Equipas equipas, HttpPostedFileBase fileUploadFotografia)
        {
            // determinar o ID do novo Agente
            int novoID = 0;

            // *****************************************
            // proteger a geração de um novo ID
            // *****************************************
            // determinar o nº de tipo de pratos na tabela
            if (db.Equipas.Count() == 0)
            {
                novoID = 1;
            }
            else
            {
                novoID = db.Equipas.Max(a => a.IdEquipa) + 1;
            }
            // atribuir o ID ao novo agente
            equipas.IdEquipa = novoID;
            // ***************************************************
            // outra hipótese possível seria utilizar o
            // try { }
            // catch(Exception) { }
            // ***************************************************

            // var. auxiliar
            string nomeFotografia        = "equipas" + novoID + ".jpg";
            string caminhoParaFotografia = Path.Combine(Server.MapPath("~/Imagens/"), nomeFotografia); // indica onde a imagem será guardada

            // verificar se chega efetivamente um ficheiro ao servidor
            if (fileUploadFotografia != null)
            {
                // guardar o nome da imagem na BD
                equipas.Logo = nomeFotografia;
            }
            else
            {
                // não há imagem...
                ModelState.AddModelError("", "Não foi fornecida uma imagem..."); // gera MSG de erro
                return(View(equipas));                                           // reenvia os dados do 'Agente' para a View
            }

            if (ModelState.IsValid)
            {
                // guardar a imagem no disco rígido
                fileUploadFotografia.SaveAs(caminhoParaFotografia);
                db.Equipas.Add(equipas);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(equipas));
        }
Beispiel #4
0
        public IHttpActionResult PostEquipas(Equipas equipas)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Equipas.Add(equipas);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = equipas.ID }, equipas));
        }
        public async Task <ActionResult> Edit([Bind(Include = "IdEquipa,Nome,DataFundacao,Logo,Fundador,Nacionalidade")] Equipas equipas, HttpPostedFileBase uploadFoto)

        {
            // vars. auxiliares
            string novoNome   = "";
            string nomeAntigo = "";

            if (ModelState.IsValid)
            {
                try
                {              /// se foi fornecida uma nova imagem,
                               /// preparam-se os dados para efetuar a alteração
                    if (uploadFoto != null)
                    {
                        /// antes de se fazer alguma coisa, preserva-se o nome antigo da imagem,
                        /// para depois a remover do disco rígido do servidor
                        nomeAntigo = equipas.Logo;
                        /// para o novo nome do ficheiro, vamos adicionar o termo gerado pelo timestamp
                        /// devidamente formatado, mais
                        /// A extensão do ficheiro é obtida automaticamente em vez de ser escrita de forma explícita
                        novoNome = "equipa" + equipas.IdEquipa + DateTime.Now.ToString("_yyyyMMdd_hhmmss") + Path.GetExtension(uploadFoto.FileName).ToLower();;
                        /// atualizar os dados do Agente com o novo nome
                        equipas.Logo = novoNome;
                        /// guardar a nova imagem no disco rígido
                        uploadFoto.SaveAs(Path.Combine(Server.MapPath("~/Imagens/"), novoNome));
                    }

                    // guardar os dados do Agente
                    db.Entry(equipas).State = EntityState.Modified;
                    // Commit
                    db.SaveChanges();

                    /// caso tenha sido fornecida uma nova imagem há necessidade de remover
                    /// a antiga
                    if (uploadFoto != null)
                    {
                        System.IO.File.Delete(Path.Combine(Server.MapPath("~/images/"), nomeAntigo));
                    }


                    // enviar os dados para a página inicial
                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    // caso haja um erro deve ser enviada uma mensagem para o utilizador
                    //ModelState.AddModelError("", string.Format("Ocorreu um erro com a edição dos dados do tipo de Prato {0}", equipas.Nome));
                    return(RedirectToAction("Index"));
                }
            }
            return(View(equipas));
        }
Beispiel #6
0
        public IHttpActionResult DeleteEquipas(int id)
        {
            Equipas equipas = db.Equipas.Find(id);

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

            db.Equipas.Remove(equipas);
            db.SaveChanges();

            return(Ok(equipas));
        }
        // GET: Equipas/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Equipas equipas = db.Equipas.Find(id);

            if (equipas == null)
            {
                return(HttpNotFound());
            }
            return(View(equipas));
        }
        // GET: Equipas/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Equipas equipas = await db.Equipas.FindAsync(id);

            if (equipas == null)
            {
                return(HttpNotFound());
            }
            return(View(equipas));
        }
        // POST: Equipas/Delete/5


        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                //return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
                return(RedirectToAction("Index"));
            }
            Equipas equipa = db.Equipas.Find(id);

            if (equipa == null)
            {
                return(HttpNotFound());
            }
            return(View(equipa));
        }
Beispiel #10
0
        public IHttpActionResult GetHistoria(int id)
        {
            Equipas equipas = db.Equipas.Find(id);

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

            var resultado = new
            {
                equipas.Historia
            };


            return(Ok(resultado));
        }
        public ActionResult Edit([Bind(Include = "ID,Nome,Logotipo,Cidade")] Equipas equipa,
                                 HttpPostedFileBase novoLogotipo)
        {
            //variaveis auxiliares
            string novoNome   = "";
            string nomeAntigo = "";

            if (ModelState.IsValid)
            {
                try
                {
                    if (novoLogotipo != null)
                    {
                        if (novoLogotipo.ContentType.Contains("image/"))
                        {
                            nomeAntigo      = equipa.Logotipo;
                            novoNome        = "Equipa" + equipa.ID + DateTime.Now.ToString("_yyyyMMdd_hhmmss") + Path.GetExtension(novoLogotipo.FileName).ToLower();;
                            equipa.Logotipo = novoNome;
                            novoLogotipo.SaveAs(Path.Combine(Server.MapPath("~/EquipasFotos/"), novoNome));
                        }
                        else
                        {
                            ModelState.AddModelError("", "Erro ao inserir imagem, ficheiro não é uma imagem!");
                            return(View(equipa));
                        }
                    }

                    db.Entry(equipa).State = EntityState.Modified;
                    db.SaveChanges();

                    if (novoLogotipo != null && novoLogotipo.ContentType.Contains("/image"))
                    {
                        System.IO.File.Delete(Path.Combine(Server.MapPath("~/EquipasFotos/"), nomeAntigo));
                    }

                    return(RedirectToAction("Details", "Equipas", new { id = equipa.ID }));
                }
                catch (Exception)
                {
                    // caso haja um erro deve ser enviada uma mensagem para o utilizador
                    ModelState.AddModelError("", string.Format("Ocorreu um erro com a edição dos dados da noticia {0}", equipa.Nome));
                }
            }
            return(View(equipa));
        }
Beispiel #12
0
        public IHttpActionResult GetJogadoresEquipa(int id)
        {
            Equipas equipas = db.Equipas.Find(id);

            if (equipas == null)
            {
                return(NotFound());
            }
            var jogadores = db.Jogadores.Where(j => j.EquipaPK == equipas.ID).Select(r => new
            {
                r.ID,
                r.Nome,
                r.Número,
                r.Posicao,
                r.Fotografia
            }).ToList();

            return(Ok(jogadores));
        }
        //*************************************DETAILS****************************************************************
        // GET: Equipas/Details/5
        /// <summary>
        ///  Método que apresenta detalhes das equipas
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult Details(int?id)
        {
            //caso o valor do id seja nulo
            if (id == null)
            {
                //redirecciona para a pagina inicial
                return(RedirectToAction("Index"));
            }
            //vai procurar o ID da Equipa fornecido
            Equipas equipas = db.Equipas.Find(id);

            //se a Equipa nao for encontrada
            if (equipas == null)
            {
                //redirecciona para o Index
                return(RedirectToAction("Index"));
            }

            //envia para  a view os dados da Equipa
            return(View(equipas));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            //procurar a Equipa
            Equipas equipas = db.Equipas.Find(id);

            try
            {
                //remover da memória
                db.Equipas.Remove(equipas);
                //commit na BD
                db.SaveChanges();
                System.IO.File.Delete(Path.Combine(Server.MapPath("~/Imagens/"), equipas.Logo));
                return(RedirectToAction("Index"));
            }
            catch (Exception)
            {
                //gerar uma mensagem de erro, a ser aprentada ao utilizador
                ModelState.AddModelError("", string.Format("Não foi possível remover a Equipa, porque existem notícias associadas a ela.", id));
                //reenviar os dados para a View
            }
            return(View(equipas));
        }