コード例 #1
0
        public HomePage_Client()
        {
            InitializeComponent();
            instituto1Descricao.Document.Blocks.Clear();
            instituto1Descricao.Document.Blocks.Add(new Paragraph(new Run("Alcance a beleza desejada com o Martina"))
            {
                FontSize = 14
            });


            instituto2Descricao.Document.Blocks.Clear();
            instituto2Descricao.Document.Blocks.Add(new Paragraph(new Run("Instituto de Beleza preparado para dar o melhor dos cuidados às pessoas de Aveiro"))
            {
                FontSize = 14
            });

            barbeariaDescricao.Document.Blocks.Clear();
            barbeariaDescricao.Document.Blocks.Add(new Paragraph(new Run("Barba aparada, conte connosco"))
            {
                FontSize = 12
            });

            limpezaDescricao.Document.Blocks.Clear();
            limpezaDescricao.Document.Blocks.Add(new Paragraph(new Run("Para obter a pele que sempre desejou"))
            {
                FontSize = 12
            });

            LoginPage logPage = new LoginPage();

            currentUser = logPage.getCurrentUser();
            RegisterPage          registerPage = new RegisterPage();
            List <UtilizadorInfo> utilizadores = registerPage.readRegisto();

            foreach (UtilizadorInfo u in utilizadores)
            {
                if (u.id == currentUser.id)
                {
                    currentUser.tipoConta  = u.tipoConta;
                    currentUser.email      = u.email;
                    currentUser.password   = u.password;
                    currentUser.localidade = u.localidade;
                    currentUser.foto       = u.foto;
                }
            }
            nomePessoa1.Text = currentUser.username;

            if (currentUser.tipoConta == 2)
            {
                mudarConta.Opacity   = 1;
                mudarConta.IsEnabled = true;
            }
            else
            {
                mudarConta.Opacity   = 0;
                mudarConta.IsEnabled = false;
            }
        }
コード例 #2
0
 private void FavIcon_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
 {
     int id = Convert.ToInt32(sender.ToString().Replace("seta", ""));
     LoginPage logPage = new LoginPage();
     currentUser = logPage.getCurrentUser();
     List<String> novoConteudoFicheiro = new List<String>();
     RegisterPage registerpageobject = new RegisterPage();
     List<UtilizadorInfo> utilizadores = registerpageobject.readRegisto();
     bool adicionar = true;
     foreach (UtilizadorInfo u in utilizadores)
     {
         if (u.id == currentUser.id)
         {
             foreach (int i in u.favoritos)
             {
                 if (i==id)
                 {
                     adicionar = false;
                 }
             }
             if (adicionar == true)
             {
                 u.favoritos.Add(id);
             } else
             {
                 u.favoritos.Remove(id);
             }
         }
         string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
         foreach (int i in u.favoritos)
         {
             conteudo = conteudo + i + ",";
         }
         conteudo = conteudo + "}-{";
         foreach (string s in u.reservas)
         {
             conteudo = conteudo + s + ",";
         }
         conteudo = conteudo + "}-{";
         foreach (int i in u.user_institutos_id)
         {
             conteudo = conteudo + i + ",";
         }
         conteudo = conteudo + "}";
         novoConteudoFicheiro.Add(conteudo);
     }
     registarAlteracoes(novoConteudoFicheiro);
     institutoPage nova = new institutoPage(currentInstituto.id, paginaAnterior);
     this.NavigationService.Navigate(nova);
 }
コード例 #3
0
        public PersonalInformation(int tipo, int id)
        {
            Console.WriteLine(id);
            this.tipo = tipo;
            InitializeComponent();
            LoginPage             logPage      = new LoginPage();
            RegisterPage          registerPage = new RegisterPage();
            List <UtilizadorInfo> utilizadores = registerPage.readRegisto();

            if (id == -1)
            {
                currentUser = logPage.getCurrentUser();
            }
            else
            {
                foreach (UtilizadorInfo u in utilizadores)
                {
                    if (u.id == id)
                    {
                        Console.WriteLine("entrei");
                        Console.WriteLine(u.id);
                        Console.WriteLine(u);
                        currentUser = u;
                    }
                }
            }
            nomeUtilizador.Content = currentUser.username;
            EmailBox.Document.Blocks.Clear();
            EmailBox.Document.Blocks.Add(new Paragraph(new Run(currentUser.email)));
            Localidade.Document.Blocks.Clear();
            if (currentUser.localidade != "null")
            {
                Localidade.Document.Blocks.Add(new Paragraph(new Run(currentUser.localidade)));
            }
            if (currentUser.foto != "null")
            {
                ImageBrush myBrush = new ImageBrush();
                Image      image   = new Image();
                image.Source = new BitmapImage(
                    new Uri(
                        BaseUriHelper.GetBaseUri(this), currentUser.foto));
                myBrush.ImageSource = image.Source;
                userfotoelipse.Fill = myBrush;
            }
        }
コード例 #4
0
        private void BinIcon_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            string[]  partes   = sender.ToString().Replace("bin", "").Split("separador");
            string    aremover = partes[0] + "|" + partes[1] + ":" + partes[2] + "|" + partes[3];
            LoginPage logPage  = new LoginPage();

            currentUser = logPage.getCurrentUser();
            List <String>         novoConteudoFicheiro = new List <String>();
            RegisterPage          registerpageobject   = new RegisterPage();
            List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();

            foreach (UtilizadorInfo u in utilizadores)
            {
                if (u.id == currentUser.id)
                {
                    u.reservas.Remove(aremover);
                }
                string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                foreach (int i in u.favoritos)
                {
                    conteudo = conteudo + i + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (string s in u.reservas)
                {
                    conteudo = conteudo + s + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (int i in u.user_institutos_id)
                {
                    conteudo = conteudo + i + ",";
                }
                conteudo = conteudo + "}";
                novoConteudoFicheiro.Add(conteudo);
            }
            registarAlteracoes(novoConteudoFicheiro);
            MinhasReservas nova = new  MinhasReservas();

            this.NavigationService.Navigate(nova);
        }
コード例 #5
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            LoginPage logPage = new LoginPage();

            currentUser = logPage.getCurrentUser();
            if (data.SelectedIndex != 0 && hora.SelectedIndex != 0)
            {
                List <String>         novoConteudoFicheiro = new List <String>();
                RegisterPage          registerpageobject   = new RegisterPage();
                List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();
                foreach (UtilizadorInfo u in utilizadores)
                {
                    if (u.id == currentUser.id)
                    {
                        Console.WriteLine(currentService.id);
                        u.reservas.Add(currentService.id + "|" + hora.SelectedItem + "|" + data.SelectedItem);
                    }
                    string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                    foreach (int i in u.favoritos)
                    {
                        conteudo = conteudo + i + ",";
                    }
                    conteudo = conteudo + "}-{";
                    foreach (string s in u.reservas)
                    {
                        conteudo = conteudo + s + ",";
                    }
                    conteudo = conteudo + "}-{";
                    foreach (int i in u.user_institutos_id)
                    {
                        conteudo = conteudo + i + ",";
                    }
                    conteudo = conteudo + "}";
                    novoConteudoFicheiro.Add(conteudo);
                }
                registarAlteracoes(novoConteudoFicheiro);
                HomePage_Client homePage = new HomePage_Client();
                this.NavigationService.Navigate(homePage);
            }
        }
コード例 #6
0
        public void loadInformation()
        {
            LoginPage logPage = new LoginPage();

            currentUser = logPage.getCurrentUser();
            RegisterPage          registerPage = new RegisterPage();
            List <UtilizadorInfo> utilizadores = registerPage.readRegisto();

            foreach (UtilizadorInfo u in utilizadores)
            {
                if (u.id == currentUser.id)
                {
                    currentUser.tipoConta  = u.tipoConta;
                    currentUser.email      = u.email;
                    currentUser.password   = u.password;
                    currentUser.localidade = u.localidade;
                    currentUser.foto       = u.foto;
                }
            }
            nomeUtilizador.Content = currentUser.username;
            EmailBox.Document.Blocks.Clear();
            EmailBox.Document.Blocks.Add(new Paragraph(new Run(currentUser.email)));
            Localidade.Document.Blocks.Clear();
            if (currentUser.localidade != "null")
            {
                Localidade.Document.Blocks.Add(new Paragraph(new Run(currentUser.localidade)));
            }
            if (currentUser.foto != "null")
            {
                ImageBrush myBrush = new ImageBrush();
                Image      image   = new Image();
                image.Source = new BitmapImage(
                    new Uri(
                        BaseUriHelper.GetBaseUri(this), currentUser.foto));
                myBrush.ImageSource = image.Source;
                userfotoelipse.Fill = myBrush;
            }
        }
コード例 #7
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            RegisterPage registerPage = new RegisterPage();

            this.NavigationService.Navigate(registerPage);
        }
コード例 #8
0
        private void BinIcon_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            loadInfo();
            int        inst_id         = Convert.ToInt32(sender.ToString().Split("Delete")[1]);
            List <int> service_removed = new List <int>();

            foreach (InstitutoInfo i in listaInstiutos.ToArray())
            {
                if (i.id == inst_id)
                {
                    listaInstiutos.Remove(i);
                }
            }

            foreach (ServiceInfo s in listaServicos.ToArray())
            {
                if (s.instituto_id == inst_id)
                {
                    service_removed.Add(s.id);
                    listaServicos.Remove(s);
                }
            }

            List <String> novoConteudoFicheiro = new List <String>();

            foreach (InstitutoInfo i3 in listaInstiutos)
            {
                string conteudo = i3.id + "-" + i3.rating + "-" + i3.foto + "-" + i3.nome + "-" + i3.descricao + "-" + i3.localizacao + "-" + i3.telefone + "-{";
                foreach (int i2 in i3.servicos_id)
                {
                    conteudo = conteudo + i2 + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (int i2 in i3.dias)
                {
                    conteudo = conteudo + i2 + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (String s in i3.horas)
                {
                    conteudo = conteudo + s + ",";
                }
                conteudo = conteudo + "}";
                novoConteudoFicheiro.Add(conteudo);
            }
            registarInstitutos(novoConteudoFicheiro);

            List <String> novoConteudoFicheiro2 = new List <String>();

            foreach (ServiceInfo s in listaServicos)
            {
                string conteudo = s.id + "-" + s.tipo + "-" + s.foto + "-" + s.instituto_id + "-" + s.instituto_nome + "-" + s.descricao + "-" + s.preco;
                novoConteudoFicheiro2.Add(conteudo);
            }
            registarServicos(novoConteudoFicheiro2);



            novoConteudoFicheiro2.Clear();
            List <UtilizadorInfo> listaUtilizadores = new List <UtilizadorInfo>();
            RegisterPage          paginaa           = new RegisterPage();

            listaUtilizadores = paginaa.readRegisto();
            using (StreamReader reader = new StreamReader("Registos.txt"))
            {
                string[] info;
                string   currentline;
                while ((currentline = reader.ReadLine()) != null)
                {
                    info = currentline.Split("-");
                    UtilizadorInfo utilizador = new UtilizadorInfo();
                    utilizador.id = Convert.ToInt32(info[0]);
                    if (utilizador.id == currentUser.id)
                    {
                        info[9] = info[9].Replace("{", "").Replace("}", "").Replace(Environment.NewLine, "");
                        foreach (string s in info[9].Split(","))
                        {
                            if (int.TryParse(s, out _))
                            {
                                if (Convert.ToInt32(s) != inst_id)
                                {
                                    utilizador.user_institutos_id.Add(Convert.ToInt32(s));
                                }
                            }
                        }
                    }
                    else
                    {
                        info[9] = info[9].Replace("{", "").Replace("}", "").Replace(Environment.NewLine, "");
                        foreach (string s in info[9].Split(","))
                        {
                            if (int.TryParse(s, out _))
                            {
                                utilizador.user_institutos_id.Add(Convert.ToInt32(s));
                            }
                        }
                    }
                    utilizador.tipoConta  = Convert.ToInt32(info[1]);
                    utilizador.email      = info[2];
                    utilizador.username   = info[3];
                    utilizador.password   = info[4];
                    utilizador.localidade = info[5];
                    utilizador.foto       = info[6];
                    info[7] = info[7].Replace("{", "").Replace("}", "").Replace(Environment.NewLine, "");
                    foreach (string s in info[7].Split(","))
                    {
                        if (int.TryParse(s, out _))
                        {
                            if (!service_removed.Contains(Convert.ToInt32(s)))
                            {
                                utilizador.favoritos.Add(Convert.ToInt32(s));
                            }
                        }
                    }
                    info[8] = info[8].Replace("{", "").Replace("}", "").Replace(Environment.NewLine, "");
                    foreach (string s in info[8].Split(","))
                    {
                        if (s != "")
                        {
                            if (!service_removed.Contains(Convert.ToInt32(s.Split("|")[0])))
                            {
                                utilizador.reservas.Add(s);
                            }
                        }
                    }
                    info[9] = info[9].Replace("{", "").Replace("}", "").Replace(Environment.NewLine, "");
                    string registo = utilizador.id + "-" + utilizador.tipoConta + "-" + utilizador.email + "-" + utilizador.username + "-" + utilizador.password + "-" + utilizador.localidade + "-" + utilizador.foto + "-{";
                    foreach (int iii in utilizador.favoritos)
                    {
                        registo = registo + iii + ",";
                    }
                    registo = registo + "}-{";
                    foreach (string sss in utilizador.reservas)
                    {
                        registo = registo + sss + ",";
                    }
                    registo = registo + "}-{";
                    foreach (int iii in utilizador.user_institutos_id)
                    {
                        registo = registo + iii + ",";
                    }
                    registo = registo + "}";
                    novoConteudoFicheiro2.Add(registo);
                }
            }
            registarUtilizadores(novoConteudoFicheiro2);
            meusInstitutos pagina = new meusInstitutos();

            this.NavigationService.Navigate(pagina);
        }
コード例 #9
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Filter = "Image files (*.png;*.jpeg;*.jpg)|*.png;*.jpeg;*.jpg";
            if (openFileDialog.ShowDialog() == true)
            {
                string sFileName = openFileDialog.FileName;
                string fileName  = sFileName.Split("\\")[sFileName.Split("\\").Length - 1];
                string destPath  = System.AppDomain.CurrentDomain.BaseDirectory;
                destPath = destPath.Replace("\\bin\\Debug\\netcoreapp3.1\\", "\\Images\\userphotos");
                System.IO.File.Copy(sFileName, System.IO.Path.Combine(destPath, fileName), true);
                ImageBrush myBrush = new ImageBrush();
                Image      image   = new Image();
                image.Source        = new BitmapImage(new Uri(sFileName));
                myBrush.ImageSource = image.Source;
                userfotoelipse.Fill = myBrush;

                List <String>         novoConteudoFicheiro = new List <String>();
                RegisterPage          registerpageobject   = new RegisterPage();
                List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();
                foreach (UtilizadorInfo u in utilizadores)
                {
                    if (u.id == currentUser.id)
                    {
                        string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + "Images/userphotos/" + fileName + "-{";
                        foreach (int i in u.favoritos)
                        {
                            conteudo = conteudo + i + ",";
                        }
                        conteudo = conteudo + "}-{";
                        foreach (string s in u.reservas)
                        {
                            conteudo = conteudo + s + ",";
                        }
                        conteudo = conteudo + "}-{";
                        foreach (int i in u.user_institutos_id)
                        {
                            conteudo = conteudo + i + ",";
                        }
                        conteudo = conteudo + "}";
                        novoConteudoFicheiro.Add(conteudo);
                    }
                    else
                    {
                        string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                        foreach (int i in u.favoritos)
                        {
                            conteudo = conteudo + i + ",";
                        }
                        conteudo = conteudo + "}-{";
                        foreach (string s in u.reservas)
                        {
                            conteudo = conteudo + s + ",";
                        }
                        conteudo = conteudo + "}-{";
                        foreach (int i in u.user_institutos_id)
                        {
                            conteudo = conteudo + i + ",";
                        }
                        conteudo = conteudo + "}";
                        novoConteudoFicheiro.Add(conteudo);
                    }
                }
                registarAlteracoes(novoConteudoFicheiro);
            }
        }
コード例 #10
0
        private void ConfirmarButton_Click(object sender, RoutedEventArgs e)
        {
            EditarButton.Visibility    = Visibility.Visible;
            ConfirmarButton.Visibility = Visibility.Collapsed;
            CancelarButton.Visibility  = Visibility.Collapsed;

            bool valido = true;

            EmailBox.IsReadOnly   = true;
            Localidade.IsReadOnly = true;
            string novoEmail = new TextRange(EmailBox.Document.ContentStart, EmailBox.Document.ContentEnd).Text;

            novoEmail = novoEmail.Replace(Environment.NewLine, "");
            string novaLocalidade = new TextRange(Localidade.Document.ContentStart, Localidade.Document.ContentEnd).Text;

            novaLocalidade = novaLocalidade.Replace(Environment.NewLine, "");
            List <String> novoConteudoFicheiro = new List <String>();

            if (novoEmail.Equals(currentUser.email))
            {
                valido = false;
                if (novaLocalidade.Equals(currentUser.localidade) == false)
                {
                    RegisterPage          registerpageobject = new RegisterPage();
                    List <UtilizadorInfo> utilizadores       = registerpageobject.readRegisto();
                    foreach (UtilizadorInfo u in utilizadores)
                    {
                        if (u.id == currentUser.id)
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + novaLocalidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                        else
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                    }
                    registarAlteracoes(novoConteudoFicheiro);
                }
            }
            else
            {
                if (novoEmail.Length < 3 || novoEmail.Contains('@') == false || novoEmail.Contains('.') == false)
                {
                    valido = false;
                    MessageBox.Show("Email is invalid");
                }
                else
                {
                    RegisterPage          registerpageobject = new RegisterPage();
                    List <UtilizadorInfo> utilizadores       = registerpageobject.readRegisto();
                    foreach (UtilizadorInfo u in utilizadores)
                    {
                        if (u.email.Equals(novoEmail))
                        {
                            valido = false;
                            MessageBox.Show("Email já em uso!");
                        }
                    }
                }
            }

            if (valido)
            {
                if (novaLocalidade.Equals(currentUser.localidade))
                {
                    RegisterPage          registerpageobject = new RegisterPage();
                    List <UtilizadorInfo> utilizadores       = registerpageobject.readRegisto();
                    foreach (UtilizadorInfo u in utilizadores)
                    {
                        if (u.id == currentUser.id)
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + novoEmail + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                        else
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                    }
                    registarAlteracoes(novoConteudoFicheiro);
                }
                else
                {
                    RegisterPage          registerpageobject = new RegisterPage();
                    List <UtilizadorInfo> utilizadores       = registerpageobject.readRegisto();
                    foreach (UtilizadorInfo u in utilizadores)
                    {
                        if (u.id == currentUser.id)
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + novoEmail + "-" + u.username + "-" + u.password + "-" + novaLocalidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                        else
                        {
                            string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                            foreach (int i in u.favoritos)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (string s in u.reservas)
                            {
                                conteudo = conteudo + s + ",";
                            }
                            conteudo = conteudo + "}-{";
                            foreach (int i in u.user_institutos_id)
                            {
                                conteudo = conteudo + i + ",";
                            }
                            conteudo = conteudo + "}";
                            novoConteudoFicheiro.Add(conteudo);
                        }
                    }
                    registarAlteracoes(novoConteudoFicheiro);
                }
            }
            EmailBox.IsReadOnly   = true;
            Localidade.IsReadOnly = true;
        }
コード例 #11
0
        private void FavIcon_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            Console.WriteLine(sender);
            int       id      = Convert.ToInt32(sender.ToString().Replace("seta", ""));
            LoginPage logPage = new LoginPage();

            currentUser = logPage.getCurrentUser();
            List <String>         novoConteudoFicheiro = new List <String>();
            RegisterPage          registerpageobject   = new RegisterPage();
            List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();
            bool adicionar = true;

            foreach (UtilizadorInfo u in utilizadores)
            {
                if (u.id == currentUser.id)
                {
                    foreach (int i in u.favoritos)
                    {
                        if (i == id)
                        {
                            adicionar = false;
                        }
                    }
                    if (adicionar == true)
                    {
                        u.favoritos.Add(id);
                    }
                    else
                    {
                        u.favoritos.Remove(id);
                    }
                }
                string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
                foreach (int i in u.favoritos)
                {
                    conteudo = conteudo + i + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (string s in u.reservas)
                {
                    conteudo = conteudo + s + ",";
                }
                conteudo = conteudo + "}-{";
                foreach (int i in u.user_institutos_id)
                {
                    conteudo = conteudo + i + ",";
                }
                conteudo = conteudo + "}";
                novoConteudoFicheiro.Add(conteudo);
            }
            registarAlteracoes(novoConteudoFicheiro);
            currentUser = logPage.getCurrentUser();
            painel.Children.Clear();
            bool   valido = true;
            string nomeservico;

            try
            {
                nomeservico = tiposervico.SelectedItem.ToString();
            }
            catch
            {
                nomeservico = "";
            }
            string localizacao = localizacaoBox.Text;
            double precomin    = 0;

            if (!(minpreco.Text == ""))
            {
                try
                {
                    precomin = Convert.ToDouble(minpreco.Text);
                }
                catch
                {
                    valido = false;
                }
            }
            double precomax = 999999;

            if (!(maxpreco.Text == ""))
            {
                try
                {
                    precomax = Convert.ToDouble(maxpreco.Text);
                }
                catch
                {
                    valido = false;
                }
            }
            double precoservico = -1;

            loadInfo();
            foreach (ServiceInfo s in listaServicos)
            {
                try
                {
                    precoservico = Convert.ToDouble(s.preco);
                }
                catch
                {
                    valido = false;
                }
                if (valido == true)
                {
                    if ((s.tipo.Equals(nomeservico) || nomeservico.Equals("")) && precomin <= precoservico && precoservico <= precomax)
                    {
                        foreach (InstitutoInfo i in listaInstitutos)
                        {
                            if (i.id == s.instituto_id && i.localizacao.StartsWith(localizacao))
                            {
                                Grid novaGrid = new Grid();
                                novaGrid.Height = 40;
                                ColumnDefinition colDef0 = new ColumnDefinition();
                                colDef0.Width = new GridLength(15, GridUnitType.Star);
                                ColumnDefinition colDef1 = new ColumnDefinition();
                                colDef1.Width = new GridLength(30, GridUnitType.Star);
                                ColumnDefinition colDef2 = new ColumnDefinition();
                                colDef2.Width = new GridLength(160, GridUnitType.Star);
                                ColumnDefinition colDef3 = new ColumnDefinition();
                                colDef3.Width = new GridLength(85, GridUnitType.Star);
                                ColumnDefinition colDef4 = new ColumnDefinition();
                                colDef4.Width = new GridLength(50, GridUnitType.Star);
                                novaGrid.ColumnDefinitions.Add(colDef0);
                                novaGrid.ColumnDefinitions.Add(colDef1);
                                novaGrid.ColumnDefinitions.Add(colDef2);
                                novaGrid.ColumnDefinitions.Add(colDef3);
                                novaGrid.ColumnDefinitions.Add(colDef4);
                                var icon = new nova {
                                    Kind = PackIconKind.StarBorder
                                };
                                foreach (int l in currentUser.favoritos)
                                {
                                    if (l == s.id)
                                    {
                                        icon = new nova {
                                            Kind = PackIconKind.Star
                                        };
                                    }
                                }
                                icon.Width  = 30;
                                icon.Height = 45;
                                icon.HorizontalAlignment = HorizontalAlignment.Center;
                                icon.SetValue(Grid.ColumnProperty, 1);
                                icon.Name = "seta" + s.id;
                                icon.PreviewMouseLeftButtonDown += FavIcon_PreviewMouseLeftButtonDown;
                                nova2 novo = new nova2();
                                novo.SetValue(Grid.ColumnProperty, 1);
                                novo.Width   = 30;
                                novo.Height  = 45;
                                novo.Opacity = 0;
                                novaGrid.Children.Add(novo);
                                novo.Name = "seta" + s.id;
                                novo.PreviewMouseLeftButtonDown += FavIcon_PreviewMouseLeftButtonDown;
                                TextBlock newTextBox = new TextBlock();
                                newTextBox.Text = s.tipo;
                                newTextBox.VerticalAlignment = VerticalAlignment.Center;
                                newTextBox.Margin            = new Thickness(10, 10, 0, 0);
                                newTextBox.FontSize          = 18;
                                newTextBox.SetValue(Grid.ColumnProperty, 2);
                                TextBlock newTextBox2 = new TextBlock();
                                newTextBox2.Text              = s.preco + "  €";
                                newTextBox2.FontSize          = 18;
                                newTextBox2.Margin            = new Thickness(10, 10, 0, 0);
                                newTextBox2.VerticalAlignment = VerticalAlignment.Center;
                                newTextBox2.SetValue(Grid.ColumnProperty, 3);
                                var icon2 = new nova {
                                    Kind = PackIconKind.ArrowRight
                                };
                                icon2.Width               = 25;
                                icon2.Height              = 25;
                                icon2.VerticalAlignment   = VerticalAlignment.Center;
                                icon2.HorizontalAlignment = HorizontalAlignment.Left;
                                icon2.SetValue(Grid.ColumnProperty, 4);
                                icon2.Name = "seta" + s.id;
                                icon2.PreviewMouseLeftButtonDown += PackIcon_PreviewMouseLeftButtonDown;
                                painel.Children.Add(novaGrid);
                                novaGrid.Children.Add(newTextBox);
                                novaGrid.Children.Add(newTextBox2);
                                novaGrid.Children.Add(icon);
                                novaGrid.Children.Add(icon2);
                            }
                        }
                    }
                }
            }
        }
コード例 #12
0
 private void ButtonAddFav_Click(object sender, RoutedEventArgs e)
 {
     if (flag % 2 == 0)
     {
         favoritos.Kind = MaterialDesignThemes.Wpf.PackIconKind.Star;
         flag++;
         List <String>         novoConteudoFicheiro = new List <String>();
         RegisterPage          registerpageobject   = new RegisterPage();
         List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();
         foreach (UtilizadorInfo u in utilizadores)
         {
             if (u.id == currentUser.id)
             {
                 u.favoritos.Add(currentService.id);
             }
             string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
             foreach (int i in u.favoritos)
             {
                 conteudo = conteudo + i + ",";
             }
             conteudo = conteudo + "}-{";
             foreach (string s in u.reservas)
             {
                 conteudo = conteudo + s + ",";
             }
             conteudo = conteudo + "}-{";
             foreach (int i in u.user_institutos_id)
             {
                 conteudo = conteudo + i + ",";
             }
             conteudo = conteudo + "}";
             novoConteudoFicheiro.Add(conteudo);
         }
         registarAlteracoes(novoConteudoFicheiro);
     }
     else
     {
         favoritos.Kind = MaterialDesignThemes.Wpf.PackIconKind.StarBorder;
         flag++;
         List <String>         novoConteudoFicheiro = new List <String>();
         RegisterPage          registerpageobject   = new RegisterPage();
         List <UtilizadorInfo> utilizadores         = registerpageobject.readRegisto();
         foreach (UtilizadorInfo u in utilizadores)
         {
             if (u.id == currentUser.id)
             {
                 u.favoritos.Remove(currentService.id);
             }
             string conteudo = u.id + "-" + u.tipoConta + "-" + u.email + "-" + u.username + "-" + u.password + "-" + u.localidade + "-" + u.foto + "-{";
             foreach (int i in u.favoritos)
             {
                 conteudo = conteudo + i + ",";
             }
             conteudo = conteudo + "}-{";
             foreach (string s in u.reservas)
             {
                 conteudo = conteudo + s + ",";
             }
             conteudo = conteudo + "}-{";
             foreach (int i in u.user_institutos_id)
             {
                 conteudo = conteudo + i + ",";
             }
             conteudo = conteudo + "}";
             novoConteudoFicheiro.Add(conteudo);
         }
         registarAlteracoes(novoConteudoFicheiro);
     }
 }