public static void Manipulate(string aoderb, string StrafID, string Time) { int sid = Convert.ToInt32(StrafID); int sec = Convert.ToInt32(Time); if (aoderb == "A") { ClsZeitstrafe zs = (from x in ClsGlobal.Instance.Strafen1 where x.ID == sid select x).Single(); if (zs != null) { zs.Zeit = sec; zs.Minuten = ClsFunktionen.Sek2uhr(sec); } ClsTabellenfunktionen.StrafenToVariable(ClsGlobal.Instance.Strafen1, "A", "std"); } else { ClsZeitstrafe zs = (from x in ClsGlobal.Instance.Strafen2 where x.ID == sid select x).Single(); if (zs != null) { zs.Zeit = sec; zs.Minuten = ClsFunktionen.Sek2uhr(sec); } ClsTabellenfunktionen.StrafenToVariable(ClsGlobal.Instance.Strafen2, "B", "std"); } }
private void DlgError_Load(object sender, EventArgs e) { // this.Lbl1.Text = "Es ist ein Programmfehler aufgetreten.\n"; // Zentrale ausgabe der fehlermeldung this.txtError.Text = ClsFunktionen.MakeErrorMessage(this.myModul, this.myFunction, this.myex); //Clipboard.SetText(stb); }
//public static event EventHandler ErrorEvent; public static void CoreError(string modul, string function, Exception ex) { string msg = ClsFunktionen.MakeErrorMessage(modul, function, ex); ClsCommand cmd = new ClsCommand(); cmd.Domain = "Error"; cmd.Value1 = msg; GlobalServerEvents.SendMessage(null, new Classes.ClsStringEventArgs(new JavaScriptSerializer().Serialize(cmd))); }
private void SetVariable(int Value) { string strvalue = Value.ToString(); if (this.myTimer.MinutenDarstellung) { strvalue = ClsFunktionen.Sek2uhr(Value); } ClsDBVariablen.Instance.SetTextVariableWert(this.myTimer.Variable, strvalue); }
public static void AddEvent(ClsCommand rb) { Core.DB.TEreignisse e = new JavaScriptSerializer().Deserialize <Core.DB.TEreignisse>(rb.Value1); e.CPUZeit = DateTime.Now; e.Spielzeit = ClsFunktionen.Sek2uhr(Convert.ToInt32(e.Spielzeit)); ClsEreignisControler.AddEreignis(e); // update der Ereignistabelle ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID)); // update der Torschützentabelle ClsTabellenfunktionen.TorschuetzeToVariable(ClsGlobal.Instance.TurnierID); }
public static void Dotick(List <ClsZeitstrafe> zeitstrafen, string aoderb) { try { //// bool removed = false; if (zeitstrafen.Count > 0) { zeitstrafen.RemoveAll(x => x.Zeit == 0); //// removed = true; } string parStraf = ClsOptionsControler.Options3("Parallelstrafen").Value; int parStrafInt = Convert.ToInt32(parStraf); if (parStrafInt == 0 || parStrafInt > zeitstrafen.Count) { parStrafInt = zeitstrafen.Count; } for (int i = 0; i < parStrafInt; i++) { if (zeitstrafen[i].Zeit > 0) { zeitstrafen[i].Zeit -= 1; zeitstrafen[i].Minuten = ClsFunktionen.Sek2uhr(zeitstrafen[i].Zeit); if (zeitstrafen[i].Zeit == 0) { string endeton = ClsOptionsControler.Strafe(zeitstrafen[i].Bezeichnung).EndeTon; ClsSoundplayer.Instance.TPlay(endeton + "|" + "20"); } Strafen straf = ClsOptionsControler.Strafe(zeitstrafen[i].Bezeichnung); if (zeitstrafen[i].Zeit <= straf.Countdowndauer && zeitstrafen[i].Zeit != 0) { ClsSoundplayer.Instance.TPlay(straf.TonCountdown + "|" + "21"); } } } ClsTabellenfunktionen.StrafenToVariable(zeitstrafen, aoderb, "std"); } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
public static void SetTablefilter(ClsCommand rb) { if (rb.Value1 == "T03") { if (rb.Value2 == "Spiel") { ClsGlobal.Instance.FilterE.SpielNr = rb.Value3; } if (rb.Value2 == "Ereignisart") { ClsGlobal.Instance.FilterE.Ereignisart = rb.Value3; } ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsFunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID)); } }
private static void SetSpiel0() { // Spiel 0 initialisieren TSpiele spiel = new TSpiele { Spiel = 0, Runde = 0, Gruppe = "0", }; ClsGlobal.Instance.AktivesSpiel = spiel; ClsSpielfunktionen.SetManName("A", "Heim"); ClsSpielfunktionen.SetManName("B", "Gast"); ClsDBVariablen.Instance.SetTextVariableWert("S05", "0"); ClsDBVariablen.Instance.SetTextVariableWert("S06", "0"); ClsDBVariablen.Instance.SetTextVariableWert("S15", "Heim : Gast"); ClsDBVariablen.Instance.SetTextVariableWert("S12", ClsFunktionen.Setspielstand()); }
internal static void Error(string modul, string function, Exception ex, bool silent = false) { string msg = ClsFunktionen.MakeErrorMessage(modul, function, ex); string nurLog = ""; if (silent) { nurLog = "silent"; } ClsCommand cmd = new ClsCommand(); cmd.Domain = "Error"; cmd.Value1 = msg; cmd.Value2 = nurLog; GlobalServerEvents.SendMessage(null, new Classes.ClsStringEventArgs(new JavaScriptSerializer().Serialize(cmd))); }
private static void TabCalc(int turnierID, string gruppe) { try { // Tabellenupdate List <TTabellen> mannschaften = ClsTurnierControler.Tabellen(turnierID, gruppe); if (mannschaften.Any()) { List <TTabellen> unsorted1 = Settablevalues(turnierID, gruppe, mannschaften); for (int i = 0; i < unsorted1.Count; i++) { unsorted1[i].Direkterpunktvergleich = unsorted1.Count; unsorted1[i].Direktererweitertervergleich = unsorted1.Count; ClsTurnierControler.SaveTabellen(unsorted1[i]); } // Dierektervergleich // ermittel ob es gleiche punktanzahl gibt List <int> test = unsorted1.GroupBy(x => x.Punkte).Select(y => y.Key).ToList(); // alle pläzte duchgehen und prüfen ob es noch weitere Plaetze mit gleicher punktzahl gibt for (int i = 0; i < test.Count; i++) { List <TTabellen> newlist = ClsTurnierControler.Tabellen(turnierID, gruppe); List <TTabellen> dist = (from x in newlist where x.Punkte == test[i] select x).ToList(); if (dist.Count > 1) { // nur über Punkte ausrechnen List <TTabellen> unsorted = new List <TTabellen>(Settablevalues(turnierID, gruppe, dist).ToList()); List <TTabellen> sorted = unsorted.OrderByDescending(x => x.Punkte).ToList(); for (int p = 0; p < sorted.Count; p += 1) { TTabellen row = sorted[p]; ClsTurnierControler.SaveTabellenDVP(row, p); } // über Punkte und Tore ausrechnen sorted = unsorted.OrderByDescending(x => x.Punkte).ThenByDescending(y => y.Tore).ThenBy(z => z.Gegentore).ToList(); for (int p = 0; p < sorted.Count; p += 1) { TTabellen row = sorted[p]; ClsTurnierControler.SaveTabellenDVPV(row, p); } } } } // Gruppenplaetze eintragen List <TTabellen> tabelle = ClsTurnierControler.Tabellen(turnierID, gruppe); if (tabelle.Any()) { // Nach Vorgaben sortieren List <TTabellen> sortedtabelle = ClsFunktionen.STTabellem(tabelle); // Plaetze eintragen int platz = 1; for (int i = 0; i < sortedtabelle.Count; i++) { if (sortedtabelle[i] != null) { sortedtabelle[i].Platz = platz; ClsTurnierControler.SaveTabellen(sortedtabelle[i]); platz += 1; } } } } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
/// <summary> /// Nach Rundenplazierung die Mannschften in den Folgerunden eintragen. /// </summary> /// <param name="spiel">todo: describe spiel parameter on IstMannschaftenGegenueber</param> private static void IstMannschaftenGegenueber(TSpiele spiel) { try { // Gruppenübergereifende Plaetze ermitten und mannschaften in folgerunden eintragen (1ter 1ter, 2ter 1ter,...) int grpManAnz = ClsTurnierControler.Tabellen((int)ClsGlobal.Instance.TurnierID, spiel.Gruppe).Count; // So oft wie Mannschaften je Gruppe (Anzeahl der Mannschaften wird al Platzzaehler verwendet) for (int p = 1; p <= grpManAnz; p += 1) { // alle Tabelleneintraege der Runde List <TTabellen> erg1 = ClsTurnierControler.Tabellen((int)ClsGlobal.Instance.TurnierID, spiel.Runde); // Alle x-platzierten lesen List <TTabellen> erg = (from d in erg1 where d.Platz == p select d).ToList(); if (erg != null) { // nach vorgaben sortieren erg = ClsFunktionen.STTabellem(erg); // erg enthaelt nun alle x-platzierten nach sortiervorgabe int platz = 1; for (int i = 0; i < erg.Count; i++) { string suchstr = platz.ToString() + "ter " + p.ToString() + "ter-Runde " + spiel.Runde.ToString(); List <TSpiele> s0 = ClsTurnierControler.Spiele(ClsGlobal.Instance.TurnierID); List <TSpiele> s1 = (from s in s0 where s.Status < 2 select s).ToList(); List <TSpiele> p1 = (from s in s1 where s.IstMannA == suchstr select s).ToList(); if (p1.Any()) { for (int j = 0; j < p1.Count; j++) { p1[j].IstMannA = erg[i].Mannschaft; p1[j].Status = p1[j].Status + 1; ClsTurnierControler.SaveSpiel(p1[j]); } } List <TSpiele> p2 = (from s in s1 where s.IstMannB == suchstr select s).ToList(); if (p2.Any()) { for (int j = 0; j < p1.Count; j++) { p2[j].IstMannB = erg[i].Mannschaft; p2[j].Status = p2[j].Status + 1; ClsTurnierControler.SaveSpiel(p2[j]); } } platz += 1; // suche Tabelleneinträge der folgerunde und ersetzte Mannschftsnamen List <TTabellen> tab = ClsTurnierControler.Tabellen(ClsGlobal.Instance.TurnierID); TTabellen gefunden = (from x in tab where x.Mannschaft == suchstr select x).FirstOrDefault(); if (gefunden != null) { gefunden.Mannschaft = erg[i].Mannschaft; ClsTurnierControler.SaveTabellen(gefunden); } } ClsDBVariablen.Instance.SetTabellenVariableWert("T02", ClsTabellenfunktionen.SpielplanToVariable_Json(ClsGlobal.Instance.TurnierID)); } } } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
public static void SetManName(string aoderb, string nameneu) { try { DB.Mannschaften m = ClsMannschaftenControler.Mannschaft(nameneu); int turnierID = ClsGlobal.Instance.TurnierID; switch (aoderb) { case "A": { ClsDBVariablen.Instance.SetTextVariableWert("S01", nameneu); if (m != null) { ClsDBVariablen.Instance.SetBildVariableWert("B01", m.Bild1); ClsDBVariablen.Instance.SetBildVariableWert("B03", m.Bild2); ClsDBVariablen.Instance.SetTextVariableWert("S03", m.Kurzname); } else { ClsDBVariablen.Instance.SetBildVariableWert("B01", ""); ClsDBVariablen.Instance.SetBildVariableWert("B03", ""); ClsDBVariablen.Instance.SetTextVariableWert("S03", ""); } if (turnierID == 0 && ClsGlobal.Instance.AktivesSpiel != null) { ClsGlobal.Instance.AktivesSpiel.IstMannA = nameneu; } break; } case "B": { ClsDBVariablen.Instance.SetTextVariableWert("S02", nameneu); if (m != null) { ClsDBVariablen.Instance.SetBildVariableWert("B02", m.Bild1); ClsDBVariablen.Instance.SetBildVariableWert("B04", m.Bild2); ClsDBVariablen.Instance.SetTextVariableWert("S04", m.Kurzname); } else { ClsDBVariablen.Instance.SetBildVariableWert("B02", ""); ClsDBVariablen.Instance.SetBildVariableWert("B04", ""); ClsDBVariablen.Instance.SetTextVariableWert("S04", ""); } if (turnierID == 0 && ClsGlobal.Instance.AktivesSpiel != null) { ClsGlobal.Instance.AktivesSpiel.IstMannB = nameneu; } break; } default: { break; } } ClsDBVariablen.Instance.SetTextVariableWert("S12", ClsFunktionen.Setspielstand()); } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
public static void StrafeNeu(string aoderb, string SpielerID, string StrafenID) { try { int strafenID = Convert.ToInt32(StrafenID); DateTime cpu = DateTime.Now; string mannschaft = string.Empty; if (aoderb == "A") { mannschaft = ClsGlobal.Instance.AktivesSpiel.IstMannA; } else { mannschaft = ClsGlobal.Instance.AktivesSpiel.IstMannB; } string spielerName = ClsFunktionen.MakeSpielerNameOhneSID(SpielerID); // Strafdaten Strafen strafe = ClsOptionsControler.Strafe(strafenID); // 03 = Zeitstrafe if (strafe.Art == "03") { // Zeitstarfe ClsZeitstrafe z = new ClsZeitstrafe(); z.Mannschaft = mannschaft; z.SpielerID = SpielerID; z.Spieler = spielerName; z.Zeit = strafe.Sekunden; z.Minuten = ClsFunktionen.Sek2uhr(z.Zeit); z.Bezeichnung = strafe.Bezeichnung; if (aoderb == "A") { if (ClsGlobal.Instance.Strafen1.Any()) { z.ID = (from x in ClsGlobal.Instance.Strafen1 select x.ID).Max() + 1; } else { z.ID = 1; } ClsGlobal.Instance.Strafen1.Add(z); ClsTabellenfunktionen.StrafenToVariable(ClsGlobal.Instance.Strafen1, aoderb, "std"); } else if (aoderb == "B") { if (ClsGlobal.Instance.Strafen2.Any()) { z.ID = (from x in ClsGlobal.Instance.Strafen2 select x.ID).Max() + 1; } else { z.ID = 1; } ClsGlobal.Instance.Strafen2.Add(z); ClsTabellenfunktionen.StrafenToVariable(ClsGlobal.Instance.Strafen2, aoderb, "std"); } // Ereignis if ( (ClsGlobal.Instance.TurnierID == 0 && ClsOptionsControler.Options3("Spielfreieereignisse").Value == "True") || (ClsGlobal.Instance.TurnierID != 0 && ClsGlobal.Instance.AktivesSpiel != null) ) { string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08"); if (ClsZeitkontroler.Instance.GetClockStatus(2)) { SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35"); } string Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString(); TEreignisse e = new TEreignisse { TurnierID = ClsGlobal.Instance.TurnierID, TurnierNr = 0, Spiel = (int)ClsGlobal.Instance.AktivesSpiel.Spiel, Mannschaft = mannschaft, Spielzeit = SpielzeitStr, Spielzeitrichtung = Spielzeitrichtung, CPUZeit = DateTime.Now, Ereignistyp = "07", Spieler = spielerName, Details = strafe.Bezeichnung, Spielabschnitt = ClsDBVariablen.Instance.GetTextVariableWert("S09") }; ClsEreignisControler.AddEreignis(e); } ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID)); // Spieler wählen ClsDBVariablen.Instance.SetTextVariableWert("S38", SpielerID); } } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
private static void Tor_nebenereignisse(TSpiele spiel, string aoderb, int add, string mannschaft, int spielerID) { try { ClsDBVariablen.Instance.SetTextVariableWert("S12", ClsFunktionen.Setspielstand()); // spiel speichern if (spiel != null) { if (spiel.Spiel != 0) { ClsTurnierControler.SaveSpiel(ClsGlobal.Instance.AktivesSpiel); } } // prüfen ob Ereignis gespeichert werden muss string SpielzeitStr = ClsDBVariablen.Instance.GetTextVariableWert("S08"); if (ClsZeitkontroler.Instance.GetClockStatus(2)) // ClsSpielzeitControler.Instance.Nachspielzeitlaeuft) { SpielzeitStr = SpielzeitStr + "+" + ClsDBVariablen.Instance.GetTextVariableWert("S35"); } DateTime cpu = DateTime.Now; string freiSpielereignisse = ClsOptionsControler.Options3("Spielfreieereignisse").Value; string Spielername = ""; if (spielerID != 0) { Spieler spieler = ClsMannschaftenControler.Spieler(spielerID); Spielername = spieler.Nachname + ", " + spieler.Vorname; } if (spiel.Spiel != 0 || (spiel.Spiel == 0 && freiSpielereignisse == "True")) { TEreignisse e = new TEreignisse { TurnierID = spiel.TurnierID, TurnierNr = spiel.TurnierNr, Spiel = spiel.Spiel, Mannschaft = mannschaft, Spieler = Spielername, Spielzeit = SpielzeitStr, Spielzeitrichtung = ClsTimerControler.Timer(ClsTimerControler.TimerID(1)).Countdown.ToString(), //ClsOptionsControler.Options3("Spielzeitrichtung").Value, CPUZeit = DateTime.Now, Ereignistyp = "05" }; ClsEreignisControler.AddEreignis(e); } // update der Ereignistabelle ClsDBVariablen.Instance.SetTabellenVariableWert("T03", ClsTabellenfunktionen.EreignisseToVariable_Json(ClsGlobal.Instance.TurnierID)); // update der Torschützentabelle ClsTabellenfunktionen.TorschuetzeToVariable(ClsGlobal.Instance.TurnierID); // einstellen des Torschützen als aktive gewählten Spieler ClsDBVariablen.Instance.SetTextVariableWert("S38", spielerID.ToString()); // prüfen ob ein Torton abgespielt werden soll if (add > 0) { string torton = string.Empty; if (ClsOptionsControler.Options3("individualTorsound").Value != "True") { torton = ClsOptionsControler.Options3("Tor").Value; } else { DB.Mannschaften m = new DB.Mannschaften(); if (aoderb == "A") { m = ClsMannschaftenControler.Mannschaft(spiel.IstMannA); } else { m = ClsMannschaftenControler.Mannschaft(spiel.IstMannB); } if (m != null) { torton = m.Torton; } } if (torton != string.Empty) { ClsSoundplayer.Instance.TPlay(torton + "|" + "30"); } } } catch (Exception ex) { ClsError.Error(Name, MethodBase.GetCurrentMethod().ToString(), ex); } }
private void FrmFSBMain_Load(object sender, EventArgs e) { try { // DB Prüfen if (!File.Exists(Path.Combine(ClsMain.AppFolder, "freescoreboard.sqlite"))) { MessageBox.Show("Datenbank nicht gefunden.\r\nProgramm wird beendet."); Application.Exit(); } // Anzeigeseite Prüfen if (!File.Exists(Path.Combine(ClsMain.DisplayFolder, "index.html"))) { MessageBox.Show("Anzeigeseite nicht gefunden.\r\nProgramm wird beendet."); Application.Exit(); } // Kontrollseite Prüfen if (!File.Exists(Path.Combine(ClsMain.WebFolder, "control/index.html"))) { MessageBox.Show("Kontrollseite nicht gefunden.\r\nProgramm wird beendet."); Application.Exit(); } // Load Main window size and position this.Load_PosSiz(); // initialize server ClsServer.Instance.IniAddresses(); //ClsServer.Instance.IniServerWS(); //ClsServer.Instance.IniServerHTTP(); ClsServer.Instance.ServerOn = true; // initialize variable values ClsDBVariablen.Instance.Ini(); // initialize Timer and clocks ClsZeitkontroler.Instance.IniUhren(); // load Display window bool DevTools = false; this.DisplayWindow = new FrmDisplay(DevTools); this.IniDisplay(); string o = ClsOptionsControler.Options3("DisplayAtStartup").Value; if (o == "on") { this.ShowDisplay = true; } else { this.ShowDisplay = false; } // load inital display page ClsGlobal.Instance.ActivePage = ClsPages.GetFirstPageName(ClsPageSets.ActivePageSet()); ClsTabellenfunktionen.IniTableFilter(); // Debugmode string mode = System.Configuration.ConfigurationManager.AppSettings["Modus"]; // Fenstertitel setzten string programmtitel = ClsOptionsControler.Options3("Programmtitel").Value; if (programmtitel == "") { programmtitel = "http://www.FreeScoreBoard.org"; } this.Text = programmtitel + " " + Application.ProductVersion; // Versionscheck string vc = ClsOptionsControler.Options3("Versionscheck").Value; if (vc == "True") { ClsFunktionen.Versioncheck2(false); } // Turnier 0 laden ClsGlobal.Instance.TurnierID = 0; // registrierung prüfen Registrierung reg = ClsRegistrierungsControler.registrierung(); if (reg == null) { // DlgRegistrieren regdlg = new DlgRegistrieren(); // regdlg.ShowDialog(); reg = new Registrierung { extID = Guid.NewGuid().ToString() }; } ClsWebservice c = new ClsWebservice(); ClsWebservice.Senden(reg); // hotkeys laden //this.LoadHotKeys(); // set initial teams string teamAid = ClsOptionsControler.Options3("TeamA").Value; string teamBid = ClsOptionsControler.Options3("TeamB").Value; ClsGlobal.Instance.MansschaftAID = teamAid; ClsGlobal.Instance.MansschaftBID = teamBid; // set fist page //this.ctrlPageSelector1.SetAnzMod(ClsPages.GetFirstPageName(activeSet)); // Timer starten ClsZeitkontroler.Instance.HeartBeatStatus = true; //ClsZeitkontroler.Instance.HeartBeatStatus = false; } catch (Exception ex) { this.Cursor = Cursors.Default; this.mysplash.Close(); ClsError.Error(this.Name, MethodBase.GetCurrentMethod().ToString(), ex); } finally { this.Cursor = Cursors.Default; this.mysplash.Close(); //this.Check_Eventamount(); } }