public void TwojaFirmaZostalaZakomentowana(Uzytkownik uzytkownik, string komentarz)
 {
     if (uzytkownik.mail != null && uzytkownik.mail != string.Empty && uzytkownik.firma != null)
     {
         WyslijMail("komentarz w servisie Top10Firma", uzytkownik.mail, komentarz);
     }
 }
 public void TwojFirmaZostalaOceniona(Uzytkownik uzytkownik)
 {
     if (uzytkownik.mail != null && uzytkownik.mail != string.Empty && uzytkownik.firma != null)
     {
         WyslijMail("Nowa ocena twojej firmy w servisie Top10Firma", uzytkownik.mail, "Firma " + uzytkownik.firma.nazwa + " zyskała nową ocene.");
     }
 }
 public void WyslijWiadomoscDoUzytkownika(string wiadomosc, Uzytkownik uzytkownik)
 {
     if (uzytkownik.mail != null && uzytkownik.mail != string.Empty)
     {
         WyslijMail("Wiadomosc Top10Firma", uzytkownik.mail, wiadomosc);
     }
 }
        public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new Uzytkownik() { UserName = model.UserName };
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {
                    await SignInAsync(user, isPersistent: false);
                    return RedirectToAction("Index", "Home");
                }
                else
                {
                    AddErrors(result);
                }
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
 public void WyslijWiadomoscDoUzytkownika(string wiadomosc, Uzytkownik uzytkownik)
 {
     Clients.Group(uzytkownik.UserName).GetMessage(wiadomosc);
 }
 public void TwojaFirmaZostalaZakomentowana(Uzytkownik uzytkownik, string komentarz)
 {
     WyslijWiadomoscDoUzytkownika(komentarz, uzytkownik);
 }
 public void TwojFirmaZostalaOceniona(Uzytkownik uzytkownik)
 {
     WyslijWiadomoscDoUzytkownika("twoja firma zyskała nową ocene", uzytkownik);
 }
 private async Task SignInAsync(Uzytkownik user, bool isPersistent)
 {
     AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie);
     var identity = await UserManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);
     AuthenticationManager.SignIn(new AuthenticationProperties() { IsPersistent = isPersistent }, identity);
 }
        public async Task<ActionResult> ExternalLoginConfirmation(ExternalLoginConfirmationViewModel model, string returnUrl)
        {
            if (User.Identity.IsAuthenticated)
            {
                return RedirectToAction("Manage");
            }

            if (ModelState.IsValid)
            {
                // Get the information about the user from the external login provider
                var info = await AuthenticationManager.GetExternalLoginInfoAsync();
                if (info == null)
                {
                    return View("ExternalLoginFailure");
                }
                var user = new Uzytkownik() { UserName = model.UserName };
                var result = await UserManager.CreateAsync(user);
                if (result.Succeeded)
                {
                    result = await UserManager.AddLoginAsync(user.Id, info.Login);
                    if (result.Succeeded)
                    {
                        await SignInAsync(user, isPersistent: false);
                        return RedirectToLocal(returnUrl);
                    }
                }
                AddErrors(result);
            }

            ViewBag.ReturnUrl = returnUrl;
            return View(model);
        }
        public Firma ZarejestrujFirmeUzytkownika(Uzytkownik uzytkownik, Firma firma)
        {
            if (uzytkownik == null) throw new BrakUzytkownika();
            if (firma == null) throw new BrakFirmy();
            if (uzytkownik.firma != null) throw new UzytkownikDodajeDrugaFirme();
            uzytkownik.firma = firma;
            firma.wlasciciel = uzytkownik;

            dane.Firmy.Zapisz(firma);
            message.FirmaZostalaUtworzona(firma);

            return dane.Firmy.Wczytaj().Last();
        }
        public Ocena WystawOceneFirmie(Uzytkownik uzytkownik, Firma firma, Ocena ocena)
        {
            if (uzytkownik == null) throw new BrakUzytkownika();
            if (ocena == null) throw new BrakOceny();
            if (firma == null) throw new BrakFirmy();
            if (firma.komentarze.Count(n => n.wlasciciel.Id == uzytkownik.Id) > 0) throw new UzytkownikOceniaFirmePoRazDrugi();
            if (firma.wlasciciel.Id == uzytkownik.Id) throw new UzytkownikOceniaWlasnaFirme();
            if (firma.oceny == null) firma.oceny = new List<Ocena>();
            if (uzytkownik.oceny_firm == null) uzytkownik.oceny_firm = new List<Ocena>();

            firma.oceny.Add(ocena);
            uzytkownik.oceny_firm.Add(ocena);
            ocena.firma = firma;
            ocena.uzytkownik = uzytkownik;

            dane.Firmy.Popraw(firma);
            message.TwojFirmaZostalaOceniona(firma.wlasciciel);

            return dane.Oceny.Wczytaj().Last();
        }
        public Komentarz WystawKomentarzFirmie(Uzytkownik uzytkownik, Firma firma, Komentarz komentarz)
        {
            if (uzytkownik == null) throw new BrakUzytkownika();
            if (firma == null) throw new BrakFirmy();
            if (komentarz == null) throw new BrakKomentarza();
            //if (uzytkownik.wystawione_komentarze.Count(n => n.firma.id == firma.id) > 0) throw new UzytkownikDodajeDrugiKomentarz();
            if (firma.wlasciciel.Id == uzytkownik.Id) throw new UzytkownikKomentujeWlasnaFirme();

            if (uzytkownik.wystawione_komentarze == null) uzytkownik.wystawione_komentarze = new List<Komentarz>();
            if (firma.komentarze == null) firma.komentarze = new List<Komentarz>();

            uzytkownik.wystawione_komentarze.Add(komentarz);
            firma.komentarze.Add(komentarz);
            komentarz.wlasciciel = uzytkownik;
            komentarz.firma = firma;

            dane.Firmy.Popraw(firma);
            message.TwojaFirmaZostalaZakomentowana(firma.wlasciciel, komentarz.tresc);

            return dane.Komentarze.Wczytaj().Last();
        }
 public bool UzytkownikMozeStworzycFirme(Uzytkownik uzytkownik)
 {
     return uzytkownik.firma == null;
 }
        public void OcenienieKomentarzaPozytywnie(Komentarz komentarz, Uzytkownik uzytkownik)
        {
            if (komentarz == null) throw new BrakKomentarza();
            if (uzytkownik == null) throw new BrakUzytkownika();
            if (uzytkownik.wystawione_komentarze.Count(n => n.id == komentarz.id) > 0) throw new UzytkownikOceniaWlasnyKomentarz();
            if (komentarz.uzytkownicy_korzy_ocenili.Count(n => n.Id == uzytkownik.Id) > 0) throw new UzytkownikOceniaKomentarzKolejnyRaz();

            if (komentarz.uzytkownicy_korzy_ocenili == null) komentarz.uzytkownicy_korzy_ocenili = new List<Uzytkownik>();
            if (uzytkownik.ocenione_komentarze == null) uzytkownik.ocenione_komentarze = new List<Komentarz>();

            komentarz.ocena += 1;
            komentarz.uzytkownicy_korzy_ocenili.Add(uzytkownik);
            uzytkownik.ocenione_komentarze.Add(komentarz);

            dane.Komentarze.Popraw(komentarz);
            dane.Uzytkownicy.Popraw(uzytkownik);
        }