Ejemplo n.º 1
0
        /// <summary>
        /// Deserijalizacija json stringa u pripadajući objekt klase
        /// </summary>
        /// <param name="json"></param>
        /// <returns></returns>
        public static object Deserijalizacija(string json)
        {
            object izlaz    = 0;
            string noviJson = IzbaciTipPoruke(json);
            string tipKlase = Parsiranje(noviJson, "Tip");

            if (tipKlase == "Korisnik")
            {
                Korisnik osoba = JsonConvert.DeserializeObject <Korisnik>(noviJson);
                izlaz = osoba;
            }

            if (tipKlase == "UspjehRegistracije")
            {
                UspjehRegistracije uspjeh = JsonConvert.DeserializeObject <UspjehRegistracije>(noviJson);
                izlaz = uspjeh;
            }

            if (tipKlase == "ListaKorisnika")
            {
                ListaKorisnika lista = JsonConvert.DeserializeObject <ListaKorisnika>(noviJson);
                izlaz = lista;
            }

            if (tipKlase == "Poruka")
            {
                Poruka poruka = JsonConvert.DeserializeObject <Poruka>(noviJson);
                izlaz = poruka;
            }

            if (tipKlase == "UspjehSlanjaPoruke")
            {
                UspjehSlanjaPoruke uspjeh = JsonConvert.DeserializeObject <UspjehSlanjaPoruke>(noviJson);
                izlaz = uspjeh;
            }

            if (tipKlase == "ListaPoruka")
            {
                ListaPoruka poruke = JsonConvert.DeserializeObject <ListaPoruka>(noviJson);
                izlaz = poruke;
            }

            if (tipKlase == "AdminMail")
            {
                AdminMail mail = JsonConvert.DeserializeObject <AdminMail>(noviJson);
                izlaz = mail;
            }

            return(izlaz);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Event Handler koji se aktivira prilikom klika na određeni tab u formi. Ovisno na koji se tab klikne
        /// šalju se odgovarajući podaci prema serveru na temelju kojih se dohavaćaju poslane ili primljene poruke.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tabKontrola_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (tabKontrola.SelectedIndex == 1)
            {
                dataGridViewPoslano.Rows.Clear();
                dataGridViewPoslano.Refresh();
                klijent              = new TcpKlijent();
                listaPoruka          = new ListaPoruka();
                listaPoruka.Username = prijavljeniKorisnik.Username;
                klijent.PosaljiServeru(listaPoruka, "DohvatiPoslanePoruke");
                listaPoruka        = (ListaPoruka)klijent.PrimiOdServera();
                listaPoruka.Poruke = listaPoruka.Poruke.OrderByDescending(x => x.DatumSlanja).ToList();

                for (int i = 0; i < listaPoruka.Poruke.Count; i++)
                {
                    Poruka            poruka = listaPoruka.Poruke[i];
                    EnkripcijskiPaket paket  = listaPoruka.Poruke[i].Paket;
                    dataGridViewPoslano.Rows.Add(poruka, poruka.Posiljatelj, poruka.Primatelj, poruka.DatumSlanja, paket.EnkriptiraniKljuc, paket.EnkriptiraniPodaci, Convert.ToBase64String(paket.Iv));
                }
            }

            if (tabKontrola.SelectedIndex == 0)
            {
                dataGridViewPrimljeno.Rows.Clear();
                dataGridViewPrimljeno.Refresh();
                klijent              = new TcpKlijent();
                listaPoruka          = new ListaPoruka();
                listaPoruka.Username = prijavljeniKorisnik.Username;
                klijent.PosaljiServeru(listaPoruka, "DohvatiPrimljenePoruke");
                listaPoruka        = (ListaPoruka)klijent.PrimiOdServera();
                listaPoruka.Poruke = listaPoruka.Poruke.OrderByDescending(x => x.DatumSlanja).ToList();

                for (int i = 0; i < listaPoruka.Poruke.Count; i++)
                {
                    Poruka            poruka = listaPoruka.Poruke[i];
                    EnkripcijskiPaket paket  = listaPoruka.Poruke[i].Paket;
                    dataGridViewPrimljeno.Rows.Add("", poruka, poruka.Posiljatelj, poruka.Primatelj, poruka.DatumSlanja, paket.EnkriptiraniKljuc, paket.EnkriptiraniPodaci, Convert.ToBase64String(paket.Iv));
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Konstuktor FormePregled koji inicijalizira formu, oblikuje gridview te odmah dohvaća primljenje poruke korisnika s obzirom
        /// da je tab aktivan prilikom inicijalizacije forme
        /// </summary>
        /// <param name="forma"></param>
        /// <param name="korisnik"></param>
        public FormaPregled(Form1 forma, Korisnik korisnik)
        {
            InitializeComponent();
            Dizajner.FormaBezOkna(this);
            glavnaForma         = forma;
            prijavljeniKorisnik = korisnik;
            FormirajDataGridove();

            klijent              = new TcpKlijent();
            listaPoruka          = new ListaPoruka();
            listaPoruka.Username = prijavljeniKorisnik.Username;
            klijent.PosaljiServeru(listaPoruka, "DohvatiPrimljenePoruke");
            listaPoruka        = (ListaPoruka)klijent.PrimiOdServera();
            listaPoruka.Poruke = listaPoruka.Poruke.OrderByDescending(x => x.DatumSlanja).ToList();

            for (int i = 0; i < listaPoruka.Poruke.Count; i++)
            {
                Poruka            poruka = listaPoruka.Poruke[i];
                EnkripcijskiPaket paket  = listaPoruka.Poruke[i].Paket;
                dataGridViewPrimljeno.Rows.Add("", poruka, poruka.Posiljatelj, poruka.Primatelj, poruka.DatumSlanja, paket.EnkriptiraniKljuc, paket.EnkriptiraniPodaci, Convert.ToBase64String(paket.Iv));
            }
        }