public static Avaliacao_comentario ReadUtilizadorFilme(Avaliacao_comentario a)
        {
            Database db    = new Database();
            string   query = "SELECT comentario, avaliacao FROM Avaliacao_comentario WHERE utilizador_idutilizador=@idu AND filme_idfilme = @idf";
            Dictionary <string, object> d = new Dictionary <string, object>();

            d.Add("@idu", a.Idutilizador);
            d.Add("@idf", a.Idfilme);
            SqlDataReader row = db.Query(query, d);

            if (row == null)
            {
                return(null);
            }
            if (!row.HasRows)
            {
                return(null);
            }
            while (row.Read())
            {
                a.Avaliacao  = (int)row["avaliacao"];
                a.Comentario = (string)row["comentario"];
            }
            row.Close();
            db.Close();
            return(a);
        }
        public static List <Avaliacao_comentario> ReadAllComentariosFilme(Avaliacao_comentario ac)
        {
            Database db    = new Database();
            string   query = "SELECT comentario, Utilizador.nome as nome, utilizador_idutilizador as idutilizador FROM Avaliacao_comentario " +
                             "JOIN Utilizador ON Avaliacao_comentario.utilizador_idutilizador = Utilizador.idutilizador " +
                             "WHERE filme_idfilme = @idfilme AND comentario != '';";
            List <Avaliacao_comentario> aclist     = new List <Avaliacao_comentario>();
            Dictionary <string, object> dictionary = new Dictionary <string, object>();

            dictionary.Add("@idfilme", ac.Idfilme);
            SqlDataReader row = db.Query(query, dictionary);

            if (row == null)
            {
                return(null);
            }
            while (row.Read())
            {
                ac                = new Avaliacao_comentario();
                ac.Comentario     = (string)row["comentario"];
                ac.NomeUtilizador = (string)row["nome"];
                ac.Idutilizador   = (int)row["idutilizador"];
                aclist.Add(ac);
            }
            row.Close();
            db.Close();
            return(aclist);
        }
Example #3
0
 private void textbox_comentario_KeyDown(object sender, KeyRoutedEventArgs e)
 {
     if (e.Key == Windows.System.VirtualKey.Enter)
     {
         TextBox textBox = sender as TextBox;
         if (textBox.Text == "")
         {
             return;
         }
         if (Avaliacao_comentario == null)
         {
             Avaliacao_comentario = new Avaliacao_comentario();
             Avaliacao_comentario.Idutilizador = App.utilizador.Idutilizador;
             Avaliacao_comentario.Idfilme      = Filme.Idfilme;
         }
         Avaliacao_comentario.Comentario = textBox.Text;
         if (Avaliacao_comentario_existe)
         {
             Avaliacao_comentario.UpdateComentario();
         }
         else
         {
             if (Avaliacao_comentario.Create() != 1)
             {
                 Avaliacao_comentario.CreateTable();
                 Avaliacao_comentario.Create();
             }
         }
         textbox_comentario.Visibility       = Visibility.Collapsed;
         ListView_CommentUser.Visibility     = Visibility.Visible;
         Botao_EliminarComentario.Visibility = Visibility.Visible;
         textblock_jacomentou.Visibility     = Visibility.Visible;
         this.Bindings.Update();
     }
 }
Example #4
0
        private void Classificacao_ValueChanged(RatingControl sender, object args)
        {
            RatingControl ratingControl = sender as RatingControl;
            int           valorNovo     = (int)ratingControl.Value;

            if (valorNovo == -1)
            {
                valorNovo = 0;
            }
            if (Avaliacao_comentario != null)
            {
                Filme.Classificacao            = Filme.Classificacao - Avaliacao_comentario.Avaliacao + valorNovo;
                Avaliacao_comentario.Avaliacao = valorNovo;
                Avaliacao_comentario.UpdateAvaliacao();
                Filme.UpdateClassificacao();
            }
            else
            {
                Avaliacao_comentario              = new Avaliacao_comentario();
                Avaliacao_comentario.Idfilme      = Filme.Idfilme;
                Avaliacao_comentario.Idutilizador = App.utilizador.Idutilizador;
                Avaliacao_comentario.Avaliacao    = valorNovo;
                Filme.Classificacao += valorNovo;
                Avaliacao_comentario.Create();
                Filme.UpdateClassificacao();
            }
        }
Example #5
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            Filme = e.Parameter as Filme;
            Filme.ReadFoto();
            Filme.ReadAllAtores();
            Filme.ReadAllGeneros();
            Avaliacao_comentario ac = new Avaliacao_comentario();

            ac.Idfilme = Filme.Idfilme;
            if (App.user == true)
            {
                textbox_comentario.Visibility = Visibility.Visible;
                CheckButtonState();
                ac.Idutilizador      = App.utilizador.Idutilizador;
                Avaliacao_comentario = ac.ReadUtilizadorFilme();
                if (Avaliacao_comentario == null)
                {
                    Avaliacao_comentario.CreateTable();
                }
                else
                {
                    Classificacao.Value         = Avaliacao_comentario.Avaliacao;
                    Avaliacao_comentario_existe = true;
                }
            }
            List <Avaliacao_comentario> commentslist = ac.ReadAllComentariosFilme();

            if (commentslist != null)
            {
                comentarios = new ObservableCollection <Avaliacao_comentario>(commentslist);
                if (App.user == true)
                {
                    foreach (Avaliacao_comentario x in comentarios)
                    {
                        if (x.Idutilizador == App.utilizador.Idutilizador)
                        {
                            comentarios.Remove(x);
                            textbox_comentario.Visibility       = Visibility.Collapsed;
                            textblock_jacomentou.Visibility     = Visibility.Visible;
                            ListView_CommentUser.Visibility     = Visibility.Visible;
                            Botao_EliminarComentario.Visibility = Visibility.Visible;
                            break;
                        }
                    }
                }
                textblock_comentario.Visibility = Visibility.Visible;
            }
            else
            {
                comentarios = new ObservableCollection <Avaliacao_comentario>();
            }
            base.OnNavigatedTo(e);
        }
        public static int Delete(Avaliacao_comentario a)
        {
            Database db    = new Database();
            string   query = "DELETE FROM [dbo].[Avaliacao_comentario] WHERE utilizador_idutilizador = @idutilizador AND filme_idfilme = @idfilme";
            Dictionary <string, object> d = new Dictionary <string, object>();

            d.Add("@idutilizador", a.Idutilizador);
            d.Add("@idfilme", a.Idfilme);
            int result = db.NonQuery(query, d);

            db.Close();
            return(result);
        }
        public static int UpdateComentario(Avaliacao_comentario a)
        {
            Database db    = new Database();
            string   query = "UPDATE [Avaliacao_comentario] SET[comentario] = @comentario WHERE utilizador_idutilizador = @idutilizador AND filme_idfilme = @idfilme";
            Dictionary <string, object> d = new Dictionary <string, object>();

            d.Add("@comentario", a.Comentario);
            d.Add("@idutilizador", a.Idutilizador);
            d.Add("@idfilme", a.Idfilme);
            try
            {
                return(db.NonQuery(query, d));
            }
            catch (System.Data.SqlClient.SqlException)
            {
                return(0);
            }
        }
        public static int Create(Avaliacao_comentario a)
        {
            Database db    = new Database();
            string   query = "INSERT INTO[dbo].[Avaliacao_comentario]([avaliacao],[comentario],[utilizador_idutilizador],[filme_idfilme])VALUES(@avaliacao,@comentario,@idu,@idf);";
            Dictionary <string, object> d = new Dictionary <string, object>();

            d.Add("@avaliacao", a.Avaliacao);
            d.Add("@comentario", a.Comentario);
            d.Add("@idu", a.Idutilizador);
            d.Add("@idf", a.Idfilme);
            try
            {
                return(db.NonQuery(query, d));
            }
            catch (System.Data.SqlClient.SqlException e)
            {
                return(0);
            }
        }
        public static List <Avaliacao_comentario> ReadAll()
        {
            Database                    db = new Database();
            Avaliacao_comentario        a;
            List <Avaliacao_comentario> alist = new List <Avaliacao_comentario>();
            string        query = "SELECT * FROM Avaliacao_comentario";
            SqlDataReader row   = db.Query(query, null);

            if (!row.HasRows)
            {
                return(null);
            }
            while (row.Read())
            {
                a              = new Avaliacao_comentario();
                a.Avaliacao    = (int)row["avaliacao"];
                a.Comentario   = (string)row["comentario"];
                a.Idutilizador = (int)row["idutilizador"];
                a.Idfilme      = (int)row["idfilme"];
                alist.Add(a);
            }
            row.Close();
            return(alist);
        }
        public static List <Avaliacao_comentario> ReadClassificacoesFilme(Avaliacao_comentario a)
        {
            Database db    = new Database();
            string   query = "SELECT avaliacao FROM Avaliacao_comentario WHERE idfilme=@idf";
            Dictionary <string, object> d     = new Dictionary <string, object>();
            List <Avaliacao_comentario> alist = new List <Avaliacao_comentario>();

            d.Add("@idf", a.Idfilme);
            SqlDataReader row = db.Query(query, d);

            if (row.HasRows == false)
            {
                return(null);
            }
            while (row.Read())
            {
                a           = new Avaliacao_comentario();
                a.Avaliacao = (int)row["avaliacao"];
                alist.Add(a);
            }
            row.Close();
            db.Close();
            return(alist);
        }