public static bool LoginUser(string username, string password) { ClientLoginDto clog = new ClientLoginDto { KIme_Mail = username, Sifra = password }; try { SesijaDto sesija = Api.LoginUser(clog); MSettings.CurrentSession = new Session() { SessionID = sesija.IdSesije }; KorisnikFullDto korisnik = Api.GetUserFullInfo(sesija.IdKorisnika); if (korisnik.IdTipaNaloga == (int)User.UserAccountType.Student) { MUtility.ShowError("Prijavljivanje sa studentskog naloga je onemoguceno na ovoj aplikaciji!"); Api.LogoutUser(MSettings.CurrentSession.SessionID); return(false); } MSettings.CurrentSession.LoggedUser = MUtility.GenerateUserFromDTO(korisnik); return(true); } catch (Exception ex) { MSettings.CurrentSession = null; MUtility.ShowException(ex); return(false); } }
private void PozoviApiFunkciju() { ClientLoginDto clog = new ClientLoginDto { KIme_Mail = FindViewById <TextView>(Resource.Id.usernameText).Text, Sifra = FindViewById <TextView>(Resource.Id.passwordText).Text }; try { SesijaDto sesija = Api.Api.LoginUser(clog); MSettings.CurrentSession = new Session() { SessionID = sesija.IdSesije }; KorisnikFullDto korisnik = Api.Api.GetUserFullInfo(sesija.IdKorisnika); if (korisnik.IdTipaNaloga == (int)User.UserAccountType.Student) { //if (!Api.LogoutUser(MSettings.CurrentSession.SessionID)) // throw new Exception("Neuspesno ciscenje logovanja"); var intent = new Intent(this, typeof(MainSwipePage)); intent.AddFlags(ActivityFlags.ClearTop | ActivityFlags.NewTask); StartActivity(intent); alert.Dismiss(); MSettings.CurrentSession.LoggedUser = MUtility.User_From_KorisnikFullDto(korisnik); if (check.Checked) { ZapamtiKorisnika(clog.KIme_Mail, clog.Sifra); } this.Finish(); } else { alert.Dismiss(); MSettings.CurrentSession = null; //Toast.MakeText(this, "Ovo nije korisnicki nalog!", ToastLength.Short).Show(); RunOnUiThread(() => Toast.MakeText(this, "Ovo nije korisnicki nalog!", ToastLength.Short).Show()); } } catch (Exception ex) { alert.Dismiss(); MSettings.CurrentSession = null; //Toast.MakeText(this, ex.Message, ToastLength.Short).Show(); RunOnUiThread(() => Toast.MakeText(this, "Nepravilno korisnicko ime ili lozinka!", ToastLength.Short).Show()); } }
public static SesijaDto PrijavaKorisnika(ClientLoginDto cdto) { ISession s = SesijeProvajder.Sesija; List <Korisnik> korisnici = s.Query <Korisnik>().Select(k => k).ToList(); /* * List<Korisnik> ko = (from k in korisnici * where k.KorisnickoIme == cdto.KIme_Mail || k.Email == cdto.KIme_Mail || select k).ToList(); || ||if (ko.Count != 1) || return null; || ||if (ko[0].Sifra != cdto.Sifra) || return null; || ||if (ko[0].Obrisan) || return null; || ||if (!ko[0].AktivanNalog) || return null; */ Korisnik ko = korisnici.Find(x => x.KorisnickoIme == cdto.KIme_Mail || x.Email == cdto.KIme_Mail); if (ko == null) { return(null); } if (ko.Obrisan) { return(null); } if (!ko.AktivanNalog) { return(null); } if (ko.Sifra != cdto.Sifra) { return(null); } LoginSesija sesija = new LoginSesija() { KorisnikSesije = ko, IdSesije = Guid.NewGuid().ToString(), DatumPrijavljivanja = DateTime.Now, ValidnaDo = DateTime.Now.AddYears(1) }; s.Save(sesija); s.Flush(); SesijaDto sdto = new SesijaDto() { IdSesije = sesija.IdSesije, IdKorisnika = sesija.KorisnikSesije.IdKorisnika, DatumPrijavljivanja = sesija.DatumPrijavljivanja, ValidnaDo = sesija.ValidnaDo }; return(sdto); }