示例#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);
        }
示例#2
0
        /// <summary>
        /// Metoda koja šalje svim korisnicima aplikacije adminski mail - mail vezan uz aplikaciju. Prvo se dohvaćaju
        /// svi mailovi iz baze podataka te se zatim salje mail svim korisnicima
        /// </summary>
        /// <param name="connection"></param>
        /// <param name="adminMail"></param>
        /// <returns></returns>
        public static string PosaljiAdminMail(SqlConnection connection, AdminMail adminMail)
        {
            List <string> emailovi = new List <string>();
            string        rezultat = "";

            var command = new SqlCommand();

            command.Connection  = connection;
            command.CommandType = CommandType.Text;
            command.CommandText = "SELECT Email from Korisnik";
            using (SqlDataReader reader = command.ExecuteReader())
            {
                while (reader.Read())
                {
                    emailovi.Add(reader["Email"].ToString());
                }
            }

            var client = new SmtpClient("smtp.gmail.com", 587)
            {
                Credentials = new NetworkCredential("*****@*****.**", "crypto2101pi#"),
                EnableSsl   = true
            };

            MailMessage msg = new MailMessage();

            msg.Subject = "Admin Poruka - Crypto Aplikacija";
            msg.Body    = adminMail.Sadrzaj;
            msg.From    = new MailAddress("*****@*****.**");
            foreach (var item in emailovi)
            {
                msg.To.Add(item);
            }
            try
            {
                client.Send(msg);
                adminMail.Status = 1;
            }
            catch
            {
                adminMail.Status = 0;
            }
            rezultat = JsonPretvarac.Serijalizacija(adminMail);
            return(rezultat);
        }
示例#3
0
        /// <summary>
        /// Event Handler koji se aktivira kada se klikne na gumb Pošalji, tj. kada se posalje adminska poruka na server
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void gumbPosalji_Click(object sender, EventArgs e)
        {
            mail         = new AdminMail();
            mail.Sadrzaj = unosPoruka.Text;
            try
            {
                klijent = new TcpKlijent();
                klijent.PosaljiServeru(mail, "AdminMail");
                mail = (AdminMail)klijent.PrimiOdServera();

                if (mail.Status == 1)
                {
                    prikazLog.Text += "Vrijeme: " + DateTime.Now + " -> Poruka poslana!" + Environment.NewLine;
                }
                else
                {
                    prikazLog.Text += "Vrijeme: " + DateTime.Now + " -> Poruka nije poslana. Pokušajte kasnije!" + Environment.NewLine;
                }
            }
            catch
            {
                return;
            }
        }