public ActionResult Vytvorit(Uzivatel uzivatel, int skupinaId) { UzivatelDao uzivatelDao = new UzivatelDao(); Uzivatel novyUzivatel = uzivatelDao.GetByLogin(uzivatel.Login); if (novyUzivatel != null) { TempData["error-message"] = "Uživatel s tímto uživ. jménem již existuje"; return(RedirectToAction("PridatUzivatele")); } SkupinaDao skupinaDao = new SkupinaDao(); Skupina skupina = skupinaDao.GetById(skupinaId); skupinaDao.CloseSession(); UzivatelskaRoleDao uzivatelskaRoleDao = new UzivatelskaRoleDao(); UzivatelskaRole role = uzivatelskaRoleDao.GetRoleWithName("uzivatel"); uzivatelskaRoleDao.CloseSession(); Uzivatel admin = uzivatelDao.GetByLogin(User.Identity.Name); uzivatel.Skupina = skupina; uzivatel.Vytvoril = admin; uzivatel.Role = role; if (ModelState.IsValid) { uzivatelDao.CreateWithHashedPassword(uzivatel); TempData["message-success"] = "Uživatel úspěšne přidán"; } return(RedirectToAction("Index", "Uzivatel")); }
/// <summary> /// Vytvaranie novych skupin /// </summary> private void MenuItem_Click_NovaSkupina(object paSender, RoutedEventArgs paE) { AddGroup pridavanie = new AddGroup { WindowStartupLocation = WindowStartupLocation.CenterOwner }; pridavanie.ShowDialog(); if (PrihlasenyStav && pridavanie.PodariloSa && !Logika.ContainsSkupina(pridavanie.GetMeno())) { Skupina nova = new Skupina(pridavanie.GetMeno(), pridavanie.GetTyp(), pridavanie.GetPoznamka(), PrihlasenyMeno); Logika.VytvorNovuSkupinu(nova); // Email notifikacia Pouzivatel konkretny = Logika.GetPouzivatel(PrihlasenyMeno); EmailClient notifikacia = new EmailClient(konkretny.Email, "NOTIFIKACIA KANGO", "<b> Práve ste vytvorili skupinu. <br></b>" + "Údaje skupiny sú:<br>" + "Meno: <b>" + nova.Meno + "</b><br>" + "Typ: <b>" + nova.Typ.ToString() + "</b><br>" + "Poznámka: <b>" + nova.Poznamka + "</b><br>", Nastavenia); notifikacia.PoslatEmail(); MessageBox.Show("Vytvorená nová skupina!", "Oznámenie", MessageBoxButton.OK, MessageBoxImage.Information); PotrebaUlozit = true; VypisSkupiny(); } pridavanie.Close(); }
/// <summary> /// Inicializacia okna pre zobrazenie detailov skupiny /// </summary> /// <param name="paPravaUpravy">Prava pre upravu</param> /// <param name="paMenoOrig">Aktualne meno skupiny</param> /// <param name="paSkupina">Objekt aktualnej skupiny</param> /// <param name="paClenovia">List clenov skupiny</param> /// <param name="paPodskupiny">HashSet podskupin skupiny</param> public DetailGroup(bool paPravaUpravy, string paMenoOrig, Skupina paSkupina, List <Pouzivatel> paClenovia, HashSet <Skupina> paPodskupiny, object paSender) { InitializeComponent(); PravoZmeny = paPravaUpravy; BolaZmena = false; BoloPridanie = false; _nMeno = paMenoOrig; _nTyp = paSkupina.Typ; cbDG_Typ.ItemsSource = System.Enum.GetValues(typeof(FTyp)); txtDG_Veduci.Text = paSkupina.VeduciSkupiny; txtDG_Meno.Text = paMenoOrig; _aktSkupina = paSkupina; cbDG_Typ.SelectedItem = _nTyp; _delStlpec = false; new TextRange(txtDG_Poznamka.Document.ContentStart, txtDG_Poznamka.Document.ContentEnd) { Text = paSkupina.Poznamka }; _clenovia = paClenovia; _podskupiny = paPodskupiny; if (!paPravaUpravy) { btn_EditujSkupinu.IsEnabled = false; btn_PridajPod.IsEnabled = false; } Owner = paSender; Button_Click_Podskupiny(this, null); DelPravo(); DgSwitch = true; // T skupiny F uzivatelia }
public Auto(string jmeno, Skupina skupina, DateTime datumVydani, int vykon, float delka) { Jmeno = jmeno; this.skupina = skupina; this.datumVydani = datumVydani; Vykon = vykon; Delka = delka; }
public ActionResult Editace(int id) { SkupinaDao skupinaDao = new SkupinaDao(); Skupina skupina = skupinaDao.GetById(id); IList <Uzivatel> uzivatele = skupina.Uzivatele; ViewBag.Uzivatele = uzivatele; return(View(skupina)); }
public IList <Uzivatel> GetUsersForGroupPaged(Skupina skupina, int count, int page, out int totalItems) { totalItems = session.CreateCriteria <Uzivatel>() .Add(Restrictions.Eq("Skupina", skupina)) .SetProjection(Projections.RowCount()).UniqueResult <int>(); return(session.CreateCriteria <Uzivatel>() .Add(Restrictions.Eq("Skupina", skupina)) .SetFirstResult((page - 1) * count).SetMaxResults(count) .List <Uzivatel>()); }
/// <summary> /// Pridanie noveho clena alebo novej podskupiny /// </summary> private void BtnPridajPodClick(object sender, RoutedEventArgs e) { if (PravoZmeny && cbDG_NovPod.SelectedValue != null) { string obsah = cbDG_NovPod.SelectedValue.ToString(); if (DgSwitch) { Skupina novaPod = ((MainWindow)Owner).Logika.GetSkupina(obsah); if (novaPod != null) { _podskupiny.Add(novaPod); _aktSkupina.Podskupiny.Add(novaPod.Meno); //DataGridPod.Items.Add(novaPod); NaplnPodskupin(); VypisPodskupin(); // Email notifikacia Pouzivatel adresat = ((MainWindow)Owner).Logika.GetPouzivatel(_aktSkupina.VeduciSkupiny); EmailClient notifikacia = new EmailClient(adresat.Email, "NOTIFIKACIA KANGO", "<b> Práve ste pridali novú podskupinu. </b><br>" + "Meno podskupiny: <b>" + novaPod.Meno + "</b><br>" + "Typ: <b>" + novaPod.Typ.ToString() + "</b><br>", ((MainWindow)Owner).Nastavenia); notifikacia.PoslatEmail(); } } if (!DgSwitch) { Pouzivatel novyClen = ((MainWindow)Owner).Logika.GetPouzivatel(obsah); if (novyClen != null) { novyClen.Skupiny.Add(_nMeno); _clenovia.Add(novyClen); _aktSkupina.Clenovia.Add(novyClen.Meno); //DataGridPod.Items.Add(novyClen); NaplnClenov(); VypisClenov(); // Email notifikacia Pouzivatel adresat = ((MainWindow)Owner).Logika.GetPouzivatel(_aktSkupina.VeduciSkupiny); EmailClient notifikacia = new EmailClient(novyClen.Email, "NOTIFIKACIA KANGO", "<b> Práve ste boli zaradený do novej skupiny.</b><br>" + "Meno skupiny: <b>" + _aktSkupina.Meno + "</b><br>" + "Typ: <b>" + _aktSkupina.Typ.ToString() + "</b><br>", ((MainWindow)Owner).Nastavenia, adresat); notifikacia.PoslatEmail(); } } BoloPridanie = true; } }
private Collection <T> Read(SqlDataReader reader, bool withItemsCount = false) { Collection <T> skupinas = new Collection <T>(); while (reader.Read()) { Skupina skupina = new Skupina(); int i = -1; skupina.RecordId = reader.GetInt32(++i); skupina.Name = reader.GetString(++i); skupinas.Add((T)skupina); } return(skupinas); }
public ActionResult Odstranit(int id) { try { SkupinaDao skupinaDao = new SkupinaDao(); Skupina skupina = skupinaDao.GetById(id); skupinaDao.Delete(skupina); TempData["message-success"] = "Skupina " + skupina.Nazev + " byla odstraněna"; } catch (Exception e) { Console.WriteLine(e); throw; } return(RedirectToAction("Index", "Skupina")); }
public ActionResult PridaniSkupiny(Skupina skupina) { UzivatelDao uzivatelDao = new UzivatelDao(); Uzivatel uzivatel = uzivatelDao.GetByLogin(User.Identity.Name); skupina.Zakladatel = uzivatel; if (ModelState.IsValid) { SkupinaDao skupinaDao = new SkupinaDao(); skupinaDao.Create(skupina); TempData["message-success"] = "Skupina byla uspesne pridana"; return(RedirectToAction("Index", "Skupina")); } else { return(View("VytvoreniSkupiny", skupina)); } }
/// <summary> /// Nacitanie XML dokumentu so vstupnymi datami skupin /// </summary> /// <param name="paNazov">Cesta k suboru</param> /// <param name="paSkupiny">Hashset skupin</param> public void LoadSkupiny(string paNazov, HashSet <Skupina> paSkupiny) { XmlDocument dokument = new XmlDocument(); dokument.Load(paNazov); foreach (XmlNode node in dokument.DocumentElement) { string meno = node.Attributes[0].InnerText; XmlNode decko = node.FirstChild; string veduciSkupiny = decko.InnerText; decko = decko.NextSibling; string typ = decko.InnerText; Enum.TryParse <FTyp>(typ, out var typOzaj); decko = decko.NextSibling; string poznamka = decko.InnerText; decko = decko.NextSibling; string tDboPodskupiny = decko.InnerText; string[] podskupiny = tDboPodskupiny.Split(';'); decko = decko.NextSibling; string tDboClenovia = decko.InnerText; string[] clenovia = tDboClenovia.Split(';'); HashSet <string> podskupiny_polo = new HashSet <string>(); HashSet <string> clenovia_polo = new HashSet <string>(); foreach (string polozka in podskupiny) { podskupiny_polo.Add(polozka); } foreach (string polozka in clenovia) { clenovia_polo.Add(polozka); } Skupina nova = new Skupina(meno, typOzaj, poznamka, veduciSkupiny) { PodskupinyDbo = tDboPodskupiny, ClenoviaDbo = tDboClenovia, Podskupiny = podskupiny_polo, Clenovia = clenovia_polo }; paSkupiny.Add(nova); } }
public ActionResult ZmenitUzivatele(Uzivatel uzivatel, int skupinaId) { UzivatelDao uzivatelDao = new UzivatelDao(); Uzivatel staryUzivatel = uzivatelDao.GetById(uzivatel.Id); SkupinaDao skupinaDao = new SkupinaDao(); Skupina skupina = skupinaDao.GetById(skupinaId); skupinaDao.CloseSession(); staryUzivatel.Skupina = skupina; staryUzivatel.Jmeno = uzivatel.Jmeno; staryUzivatel.Prijmeni = uzivatel.Prijmeni; if (ModelState.IsValid) { uzivatelDao.Update(staryUzivatel); TempData["message-success"] = "Uživatel byl úspěšne upraven"; } return(RedirectToAction("Index", "Uzivatel")); }
public ActionResult UpraveniSkupiny(Skupina skupina) { try { SkupinaDao skupinaDao = new SkupinaDao(); Skupina staraSkupina = skupinaDao.GetById(skupina.Id); staraSkupina.Nazev = skupina.Nazev; skupinaDao.Update(staraSkupina); TempData["message-success"] = "Skupina " + skupina.Nazev + " byla úspěšně upravena"; } catch (Exception e) { Console.WriteLine(e); throw; } return(RedirectToAction("Index", "Skupina")); }
public ActionResult Detail(int id, int?strana) { SkupinaDao skupinaDao = new SkupinaDao(); Skupina skupina = skupinaDao.GetById(id); skupinaDao.CloseSession(); int page = strana.HasValue ? strana.Value : 1; int totalItems; UzivatelDao uzivatelDao = new UzivatelDao(); IList <Uzivatel> uzivatele = uzivatelDao.GetUsersForGroupPaged(skupina, ItemsOnPage, page, out totalItems); uzivatelDao.CloseSession(); ViewBag.Pages = (int)Math.Ceiling((double)totalItems / (double)ItemsOnPage); ViewBag.CurrentPage = page; ViewBag.SkupinaId = skupina.Id; return(View(uzivatele)); }
/// <summary> /// Odstranenie clena alebo podskupiny zo skupiny /// </summary> private void BtnDelete_Click(object paSender, RoutedEventArgs paE) { try { if (DgSwitch) { if (PravoZmeny) { Skupina dataRowView = (Skupina)((Button)paE.Source).DataContext; string tMenoOdchod = dataRowView.Meno; foreach (Skupina polozka in _podskupiny) { if (polozka.Meno == tMenoOdchod) { _podskupiny.Remove(polozka); _aktSkupina.Podskupiny.Remove(polozka.Meno); // Email notifikacia Pouzivatel odosielatel = ((MainWindow)Owner).Logika.GetPouzivatel(_aktSkupina.VeduciSkupiny); Pouzivatel adresat = ((MainWindow)Owner).Logika.GetPouzivatel(polozka.VeduciSkupiny); EmailClient notifikacia = new EmailClient(adresat.Email, "NOTIFIKACIA KANGO", "<b> Vaša skupina bola práve odstránená zo skupiny.</b><br>" + "Meno skupiny: <b>" + _aktSkupina.Meno + "</b><br>" + "Typ: <b>" + _aktSkupina.Typ.ToString() + "</b><br>", ((MainWindow)Owner).Nastavenia, odosielatel); notifikacia.PoslatEmail(); break; } } VypisPodskupin(); NaplnPodskupin(); DelPravo(); MessageBox.Show("Zo skupiny odišla podskupina: " + tMenoOdchod); BoloPridanie = true; } else { MessageBox.Show("Nemáte právo editácie."); } } else { if (PravoZmeny) { Pouzivatel dataRowView = (Pouzivatel)((Button)paE.Source).DataContext; string tMenoOdchod = dataRowView.Meno; foreach (Pouzivatel polozka in _clenovia) { if (polozka.Meno == tMenoOdchod) { _clenovia.Remove(polozka); _aktSkupina.Clenovia.Remove(polozka.Meno); Pouzivatel uzivatelOdchod = ((MainWindow)Owner).Logika.GetPouzivatel(polozka.Meno); uzivatelOdchod.Skupiny.Remove(_nMeno); // Email notifikacia Pouzivatel adresat = ((MainWindow)Owner).Logika.GetPouzivatel(_aktSkupina.VeduciSkupiny); EmailClient notifikacia = new EmailClient(polozka.Email, "NOTIFIKACIA KANGO", "<b> Práve ste boli odstránený zo skupiny.</b><br>" + "Meno skupiny: <b>" + _aktSkupina.Meno + "</b><br>" + "Typ: <b>" + _aktSkupina.Typ.ToString() + "</b><br>", ((MainWindow)Owner).Nastavenia, adresat); notifikacia.PoslatEmail(); break; } } VypisClenov(); NaplnClenov(); DelPravo(); MessageBox.Show("Zo skupiny odišiel člen: " + tMenoOdchod); BoloPridanie = true; } else { MessageBox.Show("Nemáte právo editácie."); } } } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } }
/// <summary> /// Vytvorenie novej skupiny /// </summary> /// <param name="paSkupina">Objekt skupiny</param> public void VytvorNovuSkupinu(Skupina paSkupina) { Skupiny.Add(paSkupina); }
/// <summary> /// Zobrazenie detailov o skupine /// </summary> private void BtnDetailGroup_OnClick(object paSender, RoutedEventArgs paE) { try { Skupina dataRowView = (Skupina)((Button)paE.Source).DataContext; string tMeno = dataRowView.Meno; FTyp tTyp = dataRowView.Typ; string tVeduci = dataRowView.VeduciSkupiny; // EDIT Skupina tSkupina = Logika.GetSkupina(tMeno); HashSet <Skupina> tPodskupiny = Logika.GetPodskupiny(tMeno); List <Pouzivatel> tPodUzivatelia = Logika.GetPodPouzivatelov(tMeno); bool povolenie = false; if (PrihlasenyStav) { povolenie = (PrihlasenyMeno == tVeduci || Logika.GetPouzivatel(PrihlasenyMeno).Typ == FTyp.Administrátor) ? true : false; } DetailGroup editovanie = new DetailGroup(povolenie, tSkupina.Meno, tSkupina, tPodUzivatelia, tPodskupiny, this) { WindowStartupLocation = WindowStartupLocation.CenterOwner }; editovanie.ShowDialog(); if (editovanie.BoloPridanie) { PotrebaUlozit = true; } if (PrihlasenyStav && editovanie.BolaZmena) { dataRowView.Meno = tSkupina.Meno; dataRowView.Typ = tSkupina.Typ; dataRowView.VeduciSkupiny = tSkupina.VeduciSkupiny; dataRowView.Poznamka = tSkupina.Poznamka; // Email notifikacia Pouzivatel konkretny = Logika.GetPouzivatel(tSkupina.VeduciSkupiny); EmailClient notifikacia = new EmailClient(konkretny.Email, "NOTIFIKACIA KANGO", "<b> Práve ste editovali údaje skupiny. <br></b>" + "Údaje skupiny sú:<br>" + "Meno: <b>" + tSkupina.Meno + "</b><br>" + "Typ: <b>" + tSkupina.Typ.ToString() + "</b><br>" + "Poznámka: <b>" + tSkupina.Poznamka + "</b><br>" + "Podskupiny: <b>" + tSkupina.GetPodskupiny() + "</b><br>" + "Členovia: <b>" + tSkupina.GetClenov() + "</b><br>", Nastavenia); notifikacia.PoslatEmail(); if (tSkupina.Meno != tMeno) { foreach (Pouzivatel polozka in Logika.GetPouzivatalia()) { if (polozka.Skupiny.Contains(tMeno)) { polozka.Skupiny.Remove(tMeno); polozka.Skupiny.Add(tSkupina.Meno); } } } MessageBox.Show("Editovali ste skupinu : " + tMeno, "Oznámenie", MessageBoxButton.OK, MessageBoxImage.Information); PotrebaUlozit = true; VypisSkupiny(); } editovanie.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } }
private void PrepareCommand(SqlCommand command, Skupina skupina) { command.Parameters.AddWithValue("@id_skupiny", skupina.RecordId); command.Parameters.AddWithValue("@nazov", skupina.Name); }