private void button2_Click(object sender, EventArgs e) { if (!testData) { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("igraci"); var filter = new BsonDocument(); for (int i = 0; i < 11; i++) { var test = collection.Count(filter); var document = new BsonDocument { { "id", test.ToString() }, { "PunoIme", "Test" + test.ToString() }, { "Pozicija", "Sve" }, { "TrenutniKlub", "Real MadZid" }, { "DatumRodjenja", "1.1.1991" } }; collection.InsertOne(document); } //collection.UpdateOne(filter,document); testData = true; AuxLib.UpdateIgraciListView(this.LvIgraci); MessageBox.Show("Done" + "Count:" + collection.Count(filter).ToString()); } }
//druga himna void output_PlaybackStopped(object sender, NAudio.Wave.StoppedEventArgs e) { if (notClosed) { try { DisposeWave(); byte[] gostPesma = AuxLib.LoadSoundFromGridFS(gost.Ime + "himna"); MemoryStream gostStream = new MemoryStream(gostPesma); NAudio.Wave.WaveStream pcm = NAudio.Wave.WaveFormatConversionStream.CreatePcmStream(new NAudio.Wave.Mp3FileReader(gostStream)); stream = new NAudio.Wave.BlockAlignReductionStream(pcm); output = new NAudio.Wave.DirectSoundOut(); output.Init(stream); output.Play(); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } } }
private void button2_Click(object sender, EventArgs e) { if (LVTreneri.SelectedItems.Count != 0) { try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); ObjectId dbID = new ObjectId(LVTreneri.SelectedItems[0].Text); var collection = _database.GetCollection <BsonDocument>("treneri"); var filter = new BsonDocument() { { "_id", dbID } }; collection.DeleteOne(filter); // Brisanje slike string imeSlike = LVTreneri.SelectedItems[0].SubItems[1].Text; AuxLib.deleteFromGridFS(imeSlike + "trener"); } catch (Exception ex) { MessageBox.Show(ex.Message); } // ---- Izbaci igraca iz listView ---- LVTreneri.SelectedItems[0].Remove(); } else { MessageBox.Show("Selektuj trenera kog hoces da izbrises!"); } }
private void button1_Click(object sender, EventArgs e) { if (LVStadioni.SelectedItems.Count != 0) { try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("stadioni"); var filter = new BsonDocument() { { "Ime", LVStadioni.SelectedItems[0].Text } }; collection.DeleteOne(filter); // Brisanje slike string imeStadiona = LVStadioni.SelectedItems[0].Text; AuxLib.deleteFromGridFS(imeStadiona + "stadion"); } catch (Exception ex) { MessageBox.Show(ex.Message); } // ---- Izbaci igraca iz listView ---- LVStadioni.SelectedItems[0].Remove(); } else { MessageBox.Show("Selektuj stadion koji hoces da izbrises!"); } }
private void FIzborReprezentacijaZaUtakmicu_Load(object sender, EventArgs e) { //var _client = new MongoClient(); //var _database = _client.GetDatabase("test"); // ListView podaci = new ListView(); // AuxLib.UpdateReprezentacijeListView(podaci); AuxLib.UpdateReprezentacijeListView(LvDomacin); AuxLib.UpdateReprezentacijeListView(LvGost); }
private void FReprezentacija_Load(object sender, EventArgs e) { var filterForListView = new BsonDocument() { { "PripadaReprezentaciji", false } }; AuxLib.UpdateIgraciListView(this.LvIgraci, filterForListView); }
private void BtnIzbrisiReprezentaciju_Click(object sender, EventArgs e) { if (LvReprezentacije.SelectedItems.Count != 0) { try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Reprezentacija>("reprezentacije"); var treneriCollection = _database.GetCollection <Trener>("treneri"); //---filter za reperzentaciju ---- var filter = new BsonDocument() { { "Ime", LvReprezentacije.SelectedItems[0].Text } }; //---Reprezentacija za brisanje --- var zaBrisanje = collection.Find(filter).FirstOrDefault(); //update trenera (pointer na reprezentaciju treba da se anulira) var filterZaTrenera = new BsonDocument() { { "TrenutniKlub", zaBrisanje.Ime } }; var filterz = Builders <Trener> .Filter.Eq("TrenutniKlub", zaBrisanje.Ime); var update = Builders <Trener> .Update .Set("TrenutniKlub", ""); treneriCollection.UpdateOne(filterz, update); //------------------------------------------- //update statusa igraca ( igraci vise ne pripadaju reprezentaciji //posto se brise AuxLib.UpdateIgracStatus(zaBrisanje.SastavIDs.Split(','), false); collection.DeleteOne(filter); //--------------------------------------------- string imeFajla = LvReprezentacije.SelectedItems[0].Text; // Brisanje zastave AuxLib.deleteFromGridFS(imeFajla + "zastava"); // Brisanje himne AuxLib.deleteFromGridFS(imeFajla + "himna"); } catch (Exception ex) { MessageBox.Show(ex.Message); } // ---- Izbaci igraca iz listView ---- LvReprezentacije.SelectedItems[0].Remove(); } else { MessageBox.Show("Selektuj reprezentaciju koju hoces da izbrises!"); } }
private void FBrisanjeIzmenaPodataka_Shown(object sender, EventArgs e) { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); AuxLib.UpdateIgraciListView(this.LvIgraci, new BsonDocument()); AuxLib.UpdateReprezentacijeListView(this.LvReprezentacije); AuxLib.UpdateStadionListView(this.LVStadioni); AuxLib.UpdateTakmicenjeListView(this.LvTakmicanja); AuxLib.UpdateTrenerListView(this.LVTreneri); }
public FDodavanjeIgraca(Igrac najboljiIgrac) { InitializeComponent(); BtnDodajIgraca.Visible = false; BtnDodajPoziciju.Visible = false; BtnIzbrisiPoziciju.Visible = false; BtnUcitajSliku.Visible = false; CbPosition.Visible = false; try { TbPunoIme.Text = najboljiIgrac.PunoIme; TbPunoIme.ReadOnly = true; TbVisina.Text = najboljiIgrac.Visina; TbVisina.ReadOnly = true; TbTrenutniKlub.Text = najboljiIgrac.TrenutniKlub; TbTrenutniKlub.ReadOnly = true; TbMestoRodjenja.Text = najboljiIgrac.MestoRodjenja; TbMestoRodjenja.ReadOnly = true; RtbSportksaBiografija.Text = najboljiIgrac.SportskaBiografija; RtbSportksaBiografija.ReadOnly = true; RtbReprezentativnaKarijera.Text = najboljiIgrac.ReprezentativnaKarijera; RtbReprezentativnaKarijera.ReadOnly = true; RtbStatistika.Text = najboljiIgrac.Statistika; RtbStatistika.ReadOnly = true; RtbTrofeji.Text = najboljiIgrac.Trofeji; RtbTrofeji.ReadOnly = true; DpDatumRodjenja.Text = najboljiIgrac.DatumRodjenja; string[] pozicijeIgraca = najboljiIgrac.Pozicija.Split(','); foreach (string pozicija in pozicijeIgraca) { ListViewItem lv1 = new ListViewItem(pozicija); LvPozicijeIgraca.Items.Add(lv1); } PbSlikaIgraca.Image = AuxLib.LoadImageFromGridFS(najboljiIgrac._id + "igrac"); // PbSlikaIgraca.Image = AuxLib.LoadImageFromGridFS("Srbijazastava"); PbSlikaIgraca.Left = 100; PbSlikaIgraca.Top = 240; PbSlikaIgraca.Width = 200; PbSlikaIgraca.Height = 150; } catch (Exception ec) { MessageBox.Show(ec.ToString()); } }
private void button6_Click(object sender, EventArgs e) { //if(testData) // { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); //var collection = _database.GetCollection<BsonDocument>("igraci"); _database.DropCollection("igraci"); var filterForListView = new BsonDocument() { { "PripadaReprezentaciji", false } }; AuxLib.UpdateIgraciListView(this.LvIgraci, filterForListView); MessageBox.Show("Obrisano."); // } }
private void button5_Click(object sender, EventArgs e) { //MemoryStream mem = new MemoryStream(); Image image = Image.FromFile("E:\\a za fax\\VII semestar\\Grafika\\Sky.jpg"); AuxLib.AddImageToGridFS(image, "nebo", "jpg"); // byte[] data; // MemoryStream m = new MemoryStream(); // image.Save(m, image.RawFormat); // data = m.ToArray(); // string host = "localhost"; // int port = 27017; // string databaseName = "docs"; // var _client = new MongoClient(); //// var _database = (MongoDatabase)_client.GetDatabase("docs"); // var grid = new MongoGridFS(new MongoServer(new MongoServerSettings { Server = new MongoServerAddress(host, port) }), databaseName, new MongoGridFSSettings()); // grid.Upload(m, "Test", new MongoGridFSCreateOptions // { // Id = 1, // ContentType = "image/bmp" // }); //Stream memoryStream = new MemoryStream(book.Data); //MongoGridFSFileInfo gfsi = database.GridFS.Upload(memoryStream, book.Name); //BsonDocument photoMetadata = new BsonDocument // { { "FileName", "PAT39.BMT" }, // { "Type", "image/bmp"}, // { "Width", 128 }, // { "Height", 128 }}; //database.GridFS.SetMetadata(gfsi, photoMetadata); //book.ImageId = gfsi.Id.AsObjectId; //collection.Insert(book); MessageBox.Show("Added drvo in GridFS."); }
private void button6_Click(object sender, EventArgs e) { if (testData) { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("igraci"); var filter = new BsonDocument() { { "Pozicija", "Sve" } }; collection.DeleteMany(filter); testData = false; this.LvIgraci.Items.Clear(); AuxLib.UpdateIgraciListView(this.LvIgraci); MessageBox.Show("Obrisano."); } }
private void button8_Click(object sender, EventArgs e) { if (this.tbIme.Text == "") { MessageBox.Show("Unesite ime reprezentacije za koju ucitavate himnu."); return; } try { FileStream fs; OpenFileDialog ofd = new OpenFileDialog(); if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { var forSpliting = ofd.SafeFileName.Split('.'); string imePesme = forSpliting[0]; string format = forSpliting[1]; if (format != "mp3") { MessageBox.Show("Fajl mora biti u mp3 formatu."); return; } fs = new System.IO.FileStream(ofd.FileName, FileMode.Open, FileAccess.Read); if (AuxLib.AddSoundToGridFS(fs, this.tbIme.Text + "himna", format)) { MessageBox.Show("Uspesno ste dodali mp3 sadrzaja kao himnu reprezentacije."); } /*int duzina = Convert.ToInt32(fs.Length); * byte[] bajtovi = new byte[duzina]; * fs.Seek(0, SeekOrigin.Begin); * int bytesRead = fs.Read(bajtovi, 0, duzina);*/ } } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }
private void FInfoZaMec_Load(object sender, EventArgs e) { try { //TO DO : UCITATI I FORMATIRATI INFORMACIJE O OBA TIMA I O STADIONU I UPISATI U RTB.. //prvo za domacina AuxLib.PrikaziDomacinaRTB(RTBDomacinInfo, domacin.Ime); AuxLib.PrikaziGostaRTB(RTBGostInfo, gost.Ime); AuxLib.PrikaziStadionRTB(RTBStadionInfo, stadion.Ime); //------------------------- //ucitavanje slika iz gridFS-a this.PBDomacinZastava.Image = AuxLib.LoadImageFromGridFS(domacin.Ime + "zastava"); this.PBGostZastava.Image = AuxLib.LoadImageFromGridFS(gost.Ime + "zastava"); this.PBStadionZastava.Image = AuxLib.LoadImageFromGridFS(stadion.Ime + "stadion"); //-------------------------- //ucitamo himnu iz baze kao byte array byte[] domacinPesma = AuxLib.LoadSoundFromGridFS(domacin.Ime + "himna"); //napravis stream MemoryStream domacinStream = new MemoryStream(domacinPesma); //prekines ako ima neka pesma prethodno ( za svaki slucaj ); DisposeWave(); //pcm pd strima NAudio.Wave.WaveStream pcm = NAudio.Wave.WaveFormatConversionStream.CreatePcmStream(new NAudio.Wave.Mp3FileReader(domacinStream)); stream = new NAudio.Wave.BlockAlignReductionStream(pcm); //init,hendler za drugu himnu i play output = new NAudio.Wave.DirectSoundOut(); output.Init(stream); output.PlaybackStopped += output_PlaybackStopped; output.Play(); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }
private void FInfoZaMec_Load(object sender, EventArgs e) { try { //vraca vraca objekte i upisuje podatke u richtextboxove domacin = AuxLib.PrikaziDomacinaRTB(this.RTBDomacinInfo, domacinIme); gost = AuxLib.PrikaziDomacinaRTB(this.RTBGostInfo, gostIme); stadion = AuxLib.PrikaziStadionRTB(this.RTBStadionInfo, domacin); //------------------------- //ucitavanje slika iz gridFS-a this.PBDomacinZastava.Image = AuxLib.LoadImageFromGridFS(this.domacinIme + "zastava"); this.PBGostZastava.Image = AuxLib.LoadImageFromGridFS(this.gostIme + "zastava"); this.PBStadionZastava.Image = AuxLib.LoadImageFromGridFS(stadion.Ime + "stadion"); //-------------------------- //ucitamo himnu iz baze kao byte array byte[] domacinPesma = AuxLib.LoadSoundFromGridFS(domacinIme + "himna"); //napravis stream MemoryStream domacinStream = new MemoryStream(domacinPesma); //prekines ako ima neka pesma prethodno ( za svaki slucaj ); DisposeWave(); //pcm pd strima NAudio.Wave.WaveStream pcm = NAudio.Wave.WaveFormatConversionStream.CreatePcmStream(new NAudio.Wave.Mp3FileReader(domacinStream)); stream = new NAudio.Wave.BlockAlignReductionStream(pcm); //init,hendler za drugu himnu i play output = new NAudio.Wave.DirectSoundOut(); output.Init(stream); output.PlaybackStopped += output_PlaybackStopped; output.Play(); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }
private void BtnIzbrisiIgraca_Click(object sender, EventArgs e) { if (LvIgraci.SelectedItems.Count != 0) { //db removal try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("igraci"); ObjectId dbID = new ObjectId(LvIgraci.SelectedItems[0].Text); var filter = new BsonDocument() { { "_id", dbID } }; collection.DeleteOne(filter); // ---- Brisanje slike igraca iz baze ---- string imeSlike = LvIgraci.SelectedItems[0].SubItems[0].Text + "igrac"; AuxLib.deleteFromGridFS(imeSlike); } catch (Exception ex) { MessageBox.Show(ex.Message); } //string LvIgraci.SelectedItems[0].Text; // ---- Izbaci igraca iz listView ---- LvIgraci.SelectedItems[0].Remove(); } else { MessageBox.Show("Selektuj igraca kog hoces da izbrises!"); } }
// ----- ucitavanje podataka za reprezentacije iz baze i popunjavanje listview-a ----- private void BtnAddRep_Click(object sender, EventArgs e) { //samo sam pozvao funkciju iz AuxLib AuxLib.UpdateReprezentacijeListView(this.LvCntryList); }
private void BtnDodajIgraca_Click(object sender, EventArgs e) { // ---- Provera ispravnosti licnih podataka ---- if (String.IsNullOrWhiteSpace(TbPunoIme.Text)) { MessageBox.Show("Unesite puno ime igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbMestoRodjenja.Text)) { MessageBox.Show("Unesite mesto rodjenja igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbTrenutniKlub.Text)) { MessageBox.Show("Unesite trenutni (ili poslednji) klub igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbVisina.Text) || TbVisina.Text.Length != 4) { MessageBox.Show("Unesite ispravno vrednost visine igraca! Na primer '1.92' "); return; /*AKO JE OBAVEZNO POLJE*/ } else if (LvPozicijeIgraca.Items.Count == 0) { MessageBox.Show("Ubacite poziciju/je na kojoj igrac igra!"); return; } // ---- Izvlacimo pozicije igraca ---- string pozicije = ""; foreach (ListViewItem lvi in LvPozicijeIgraca.Items) { pozicije += lvi.Text + ", "; } pozicije = pozicije.TrimEnd(' '); pozicije = pozicije.TrimEnd(','); // ---- Ubacujemo podatke u objekat ---- Igrac noviIgrac = new Igrac(); // ---- Licni podaci ---- noviIgrac.PunoIme = StringCleaner.checkString(TbPunoIme.Text); noviIgrac.MestoRodjenja = StringCleaner.checkString(TbMestoRodjenja.Text); noviIgrac.DatumRodjenja = DpDatumRodjenja.Text; /*Treba se ispravi*/ noviIgrac.Visina = StringCleaner.checkString(TbVisina.Text); noviIgrac.TrenutniKlub = StringCleaner.checkString(TbTrenutniKlub.Text); noviIgrac.Pozicija = StringCleaner.checkString(pozicije); // ---- Ostali podaci ---- noviIgrac.PripadaReprezentaciji = false; noviIgrac.SportskaBiografija = StringCleaner.checkString(RtbSportksaBiografija.Text); noviIgrac.ReprezentativnaKarijera = StringCleaner.checkString(RtbReprezentativnaKarijera.Text); noviIgrac.Statistika = StringCleaner.checkString(RtbStatistika.Text); noviIgrac.Trofeji = StringCleaner.checkString(RtbTrofeji.Text); // ------------------ID------------------------ //noviIgrac.Id = new BsonObjectId(""); //---------------------------------------------- // ---- Rad sa bazom ---- try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Igrac>("igraci"); var filter = new BsonDocument(); // var document = noviIgrac.ToBsonDocument(); collection.InsertOne(noviIgrac); collection.ReplaceOne(filter, noviIgrac); if (slika != null) { AuxLib.deleteFromGridFS(noviIgrac._id + "igrac"); AuxLib.AddImageToGridFS(slika, noviIgrac._id + "igrac", format); } //update status igraca MessageBox.Show("Uspesno dodat novi igrac!"); // ---- Zatvaranje forme ---- this.Dispose(); } catch (Exception ec) { MessageBox.Show(ec.ToString()); } }
private void BtnSubmitData_Click(object sender, EventArgs e) { try { if (this.TbDrzava.BackColor == Color.Red) { MessageBox.Show("Uneta reprezentacija ne postoji u bazi.Unesite reprezentaciju prvo."); return; } if (String.IsNullOrWhiteSpace(TbIme.Text)) { MessageBox.Show("Ubacite ime stadiona!"); return; } else if (String.IsNullOrWhiteSpace(TbDrzava.Text) || String.IsNullOrWhiteSpace(TbGrad.Text)) { MessageBox.Show("Unesite lokaciju stadiona (Drzavu i grad)!"); return; } else if (String.IsNullOrWhiteSpace(TbKapacitet.Text)) { MessageBox.Show("Unesite kapacitet stadiona!"); return; } else if (String.IsNullOrWhiteSpace(TbVlasnik.Text)) { MessageBox.Show("Unesite vlasnika stadiona!"); return; } Stadion forSave = new Stadion(); forSave.Ime = StringCleaner.checkString(TbIme.Text); forSave.Istorija = StringCleaner.checkString(RtbIstorija.Text); forSave.Kapacitet = StringCleaner.checkString(TbKapacitet.Text); forSave.Lokacija = StringCleaner.checkString(TbDrzava.Text) + "," + StringCleaner.checkString(TbGrad.Text); forSave.Vlasnik = StringCleaner.checkString(TbVlasnik.Text); var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Stadion>("stadioni"); var collection2 = _database.GetCollection <Reprezentacija>("reprezentacije"); var filter2 = new BsonDocument() { { "Ime", this.TbDrzava.Text } }; var filter = new BsonDocument() { { "Ime", TbIme.Text } }; Reprezentacija reprezentacija = collection2.Find <Reprezentacija>(filter2).First(); forSave.ReprezentacijaID = StringCleaner.checkString(reprezentacija._id.ToString()); var document = forSave.ToBsonDocument(); var filterForUniqueCheck = Builders <BsonDocument> .Filter.Eq("Ime", TbIme.Text); //test if exists var test = collection.Find(filter).Count(); if (test == 0) { if (slikaStadiona != null) { AuxLib.AddImageToGridFS(slikaStadiona, this.TbIme.Text + "stadion", format); } else { MessageBox.Show("Slika nije ubacena."); } collection.InsertOne(forSave); MessageBox.Show("Uspesno dodat novi stadion!"); } else { //TO DO : Napraviti u AuxLib remove image i remove song za brisanje i ovde implementirati brisanje te slike i dodavanje nove. ( kao update ) AuxLib.deleteFromGridFS(this.TbIme.Text + "stadion"); if (slikaStadiona != null) { AuxLib.AddImageToGridFS(slikaStadiona, this.TbIme.Text + "stadion", format); } else { MessageBox.Show("Slika nije ubacena."); } collection.ReplaceOne(filter, forSave); MessageBox.Show("Uspesno azuriran stadion!"); } } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }
private void TbDrzava_Leave(object sender, EventArgs e) { AuxLib.Check(this.TbDrzava.Text, this.TbDrzava); }
private void button3_Click(object sender, EventArgs e) { if (String.IsNullOrWhiteSpace(this.tbIme.Text)) { MessageBox.Show("Ime reprezentacije je obavezno!"); return; } if (String.IsNullOrWhiteSpace(this.tbSkracenica.Text)) { MessageBox.Show("Skracenica je obavezna!(3 slova)"); return; } if (String.IsNullOrWhiteSpace(this.tbSelektor.Text)) { MessageBox.Show("Selektor je obavezan!"); return; } if (this.LVSastav.Items.Count < 11) { MessageBox.Show("Sastav je nepotpun!"); return; } if (elKapetano == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } if (elKapetano != null) { ListViewItem kapitenNijeUlistu = LVSastav.FindItemWithText(elKapetano._id.ToString()); if (kapitenNijeUlistu == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } } string temp = this.CheckTeam(); //provera pozicija tima if (temp != "Ok") { MessageBox.Show(temp); return; } ; try { //database access var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Reprezentacija>("reprezentacije"); //filters var filterAllCount = new BsonDocument(); //var filterForUniqueCheck = Builders<BsonDocument>.Filter.Eq("Ime", this.tbIme.Text); var filter = new BsonDocument() { { "Ime", tbIme.Text } }; //test if reprezentacija exists var test = collection.Find(filter).FirstOrDefault(); var countForID = collection.Count(filterAllCount); // model creating Reprezentacija forSave = new Reprezentacija(); forSave.FifaRang = Convert.ToInt32(numFifaRang.Value); forSave.id = 777; forSave.IgracSaNajviseNastupa = StringCleaner.checkString(this.tbIgracSaNajviseNastupa.Text); forSave.Ime = StringCleaner.checkString(this.tbIme.Text); forSave.Kapiten = StringCleaner.checkString(elKapetano.PunoIme); forSave.Nadimak = StringCleaner.checkString(tbNadimak.Text); forSave.NajboljiStrelac = StringCleaner.checkString(this.tbNajboljiStrelac.Text); forSave.NajvecaPobedaPoraz = StringCleaner.checkString(this.tbNajvecaPobedaPoraz.Text); forSave.OsvojeneMedalje = StringCleaner.checkString(this.rtbOsvojeneMedalje.Text); foreach (ListViewItem item in this.LVSastav.Items) { forSave.Sastav += item.SubItems[1].Text; forSave.Sastav += ","; forSave.SastavIDs += item.SubItems[0].Text; forSave.SastavIDs += ","; } forSave.Sastav = forSave.Sastav.TrimEnd(','); forSave.SastavIDs = forSave.SastavIDs.TrimEnd(','); forSave.Selektor = StringCleaner.checkString(tbSelektor.Text); forSave.Skracenica = StringCleaner.checkString(tbSkracenica.Text); forSave.SportskaBiografija = StringCleaner.checkString(rtbSportskaBiografija.Text); //Serialization and BsonDocument creation //var document = forSave.ToBsonDocument(); // insert or update check. if (test == null) { collection.InsertOne(forSave); AuxLib.UpdateIgracStatus(forSave.SastavIDs.Split(','), true); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno dodata."); } else { forSave._id = test._id; //update za stare ugrace (stavljamo da ne pripadaju vise timu koji se azurira) AuxLib.UpdateIgracStatus(test.SastavIDs.Split(','), false); collection.ReplaceOne(filter, forSave); //update nove igrace AuxLib.UpdateIgracStatus(forSave.SastavIDs.Split(','), true); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno azurirana."); } //ucitavanje slike iz strima u GridFS if (this.PBslikaReprezentacije.Image != null) { AuxLib.deleteFromGridFS(forSave.Ime + "zastava"); if (!AuxLib.AddImageToGridFS(this.PBslikaReprezentacije.Image, forSave.Ime + "zastava", formatSlika)) { MessageBox.Show("Slika nije ucitana uspesno."); } ; } else { MessageBox.Show("Slika nije selektovana zato nije ubacena."); } //ucitavanje himne iz strima u GridFS if (himnaStream != null) { AuxLib.deleteFromGridFS(forSave.Ime + "himna"); if (AuxLib.AddSoundToGridFS(himnaStream, this.tbIme.Text + "himna", formatHimna)) { MessageBox.Show("Uspesno ste dodali mp3 sadrzaja kao himnu reprezentacije."); } } else { MessageBox.Show("Himna nije ubacena."); } //reset kapetana na null elKapetano = null; var filterForListView = new BsonDocument() { { "PripadaReprezentaciji", false } }; AuxLib.UpdateIgraciListView(this.LvIgraci, filterForListView); this.LVSastav.Items.Clear(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void button3_Click(object sender, EventArgs e) { if (this.tbIme.Text == "") { MessageBox.Show("Ime reprezentacije je obavezno!"); return; } if (this.tbSkracenica.Text == "") { MessageBox.Show("Skracenica je obavezna!(3 slova)"); return; } if (this.tbSelektor.Text == "") { MessageBox.Show("Selektor je obavezan!"); return; } if (this.LVSastav.Items.Count < 11) { MessageBox.Show("Sastav je nepotpun!"); return; } if (elKapetano == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } try { //database access var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("reprezentacije"); //filters var filterAllCount = new BsonDocument(); var filterForUniqueCheck = Builders <BsonDocument> .Filter.Eq("Ime", this.tbIme.Text); //test if reprezentacija exists var test = collection.Find(filterForUniqueCheck).Count(); //if(test != 0) //{ // var reprez = collection.Find(filterForUniqueCheck).First(); // var jsonWriterSettings = new JsonWriterSettings { OutputMode = JsonOutputMode.Strict }; // Reprezentacija rep = Newtonsoft.Json.JsonConvert.DeserializeObject<Reprezentacija>(reprez.ToJson(jsonWriterSettings)); //} var countForID = collection.Count(filterAllCount); // model creating Reprezentacija forSave = new Reprezentacija(); forSave.FifaRang = Convert.ToInt32(numFifaRang.Value); if (test == 0) { forSave.id = countForID; } forSave.IgracSaNajviseNastupa = StringCleaner.checkString(this.tbIgracSaNajviseNastupa.Text); forSave.Ime = StringCleaner.checkString(this.tbIme.Text); forSave.Kapiten = StringCleaner.checkString(elKapetano.PunoIme); forSave.Nadimak = StringCleaner.checkString(tbNadimak.Text); forSave.NajboljiStrelac = StringCleaner.checkString(this.tbNadimak.Text); forSave.NajvecaPobedaPoraz = StringCleaner.checkString(this.tbNajvecaPobedaPoraz.Text); forSave.OsvojeneMedalje = StringCleaner.checkString(this.rtbOsvojeneMedalje.Text); foreach (ListViewItem item in this.LVSastav.Items) { forSave.Sastav += item.SubItems[1].Text; forSave.Sastav += ","; } forSave.Sastav = forSave.Sastav.TrimEnd(','); forSave.Selektor = StringCleaner.checkString(tbSelektor.Text); forSave.Skracenica = StringCleaner.checkString(tbSkracenica.Text); forSave.SportskaBiografija = StringCleaner.checkString(rtbSportskaBiografija.Text); //Serialization and BsonDocument creation var document = BsonDocument.Parse(Newtonsoft.Json.JsonConvert.SerializeObject(forSave)); // insert or update check. if (test == 0) { collection.InsertOne(document); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno dodata."); } else { //var filter = Builders<BsonDocument>.Filter.Eq("name", "Juni"); //var update = Builders<BsonDocument>.Update // .Set("Ime", "American (New)") // .CurrentDate("lastModified") // .Set("",""); //var result = await collection.UpdateOneAsync(filter, update); //collection.UpdateOne(filterForUniqueCheck, document); collection.ReplaceOne(filterForUniqueCheck, document); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno azurirana."); } if (slikaReprezentacije != null) { AuxLib.AddImageToGridFS(slikaReprezentacije, imeSlike, format); } else { MessageBox.Show("Slika nije selektovana zato nije ubacena."); } //reset kapetana na null elKapetano = null; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//update liste igraca prototip //private async void UpdateListView() //{ // var _client = new MongoClient(); // var _database = _client.GetDatabase("test"); // // mora Nemca da mi kaze gde ih smesta koja kolekcija // var collection = _database.GetCollection<Igrac>("igraci"); // var filter = new BsonDocument(); // var result = await collection.Find(filter).ToListAsync<Igrac>(); // foreach (Igrac doc in result) // { // //var jsonWriterSettings = new JsonWriterSettings { OutputMode = JsonOutputMode.Strict }; // //var json = doc.ToJson(jsonWriterSettings); // //Igrac r = Newtonsoft.Json.JsonConvert.DeserializeObject<Igrac>(json); // ListViewItem lv1 = new ListViewItem(doc._id.ToString()); // lv1.SubItems.Add(doc.PunoIme); // lv1.SubItems.Add(doc.DatumRodjenja.ToString()); // lv1.SubItems.Add(doc.Pozicija); // lv1.SubItems.Add(doc.TrenutniKlub); // LvIgraci.Items.Add(lv1); // } //} private void FReprezentacija_Load(object sender, EventArgs e) { AuxLib.UpdateIgraciListView(this.LvIgraci); }