private void buttonLogga_Click(object sender, EventArgs e) { List<string> errorMsg = new List<string>(); input inmatning = new input(); if (textBoxEmailLogin.Text == "" | textBoxLosenLogin.Text == "") errorMsg.Add("Du måste skriva in både email och lösenord för att logga in."); else { if (inmatning.loggaIn(textBoxEmailLogin.Text, textBoxLosenLogin.Text)) { kund anvandare = new kund(textBoxEmailLogin.Text, textBoxLosenLogin.Text); FormBoka minBokning = new FormBoka(anvandare); FormHyra minHyrning = new FormHyra(anvandare); this.Hide(); if (radioButtonLaga.Checked) minBokning.ShowDialog(); else minHyrning.ShowDialog(); this.Show(); } else { string[] felmeddelande = inmatning.GetTmpMsgs(); foreach (string msg in felmeddelande) richTextBoxMeddelanden1.Text += msg; } } }
public void Initiate() { FlowLayoutPanel panel = new FlowLayoutPanel(); input inmatning = new input(); panel.Size = this.Size; string[] tider = { "8:00 - 10:00", "10:00 - 12:00", "14:00 - 16:00", "16:00 - 18:00" }; foreach (string tid in tider) { Label tidLabel = new Label(); tidLabel.Text = tid; tidLabel.AutoSize = true; panel.Controls.Add(tidLabel); Label färgLabel = new Label(); färgLabel.Text = ""; if (inmatning.kollaTidLedig(date,tid)) färgLabel.BackColor = Color.Green; else färgLabel.BackColor = Color.Red; panel.Controls.Add(färgLabel); } }
/// <summary> /// KeyPressEventHandler som tar hand om keyPressEvents. /// Denna är gjord för att spara informationen som matas in i textboxarnas fält av en administratör /// </summary> /// <param name="sender">TextBoxen (eller annan control som har keyPressEvent) som startade eventet</param> /// <param name="e">Intressant info som genereras av eventet</param> private void textBoxKnapptryck(object sender, KeyEventArgs e) { if (e.KeyCode != Keys.Return) return; // Se till att inga nya rader skapas e.SuppressKeyPress = true; input inmatning = new input(); TextBox textbox = sender as TextBox; if (textbox == null) throw new Exception("Objektet som startade eventet textBoxKnappTryck var inte en TextBox."); string namn = textbox.Name.Substring(7); string nyttVarde = null; string gammaltVarde = null; textbox.Text = textbox.Lines[0]; switch (namn) { case "Namn": nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetNamn(); break; case "Email": if (inmatning.kollaEmail(textbox.Lines[0])) { nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetEmail(); } break; case "Oppetider": nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetOppetider(); break; case "Telefon": if (inmatning.kollaTfnNummer(textbox.Lines[0])) { nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetTfn(); } break; case "Adress": nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetAdress(); break; case "Postadress": nyttVarde = textbox.Lines[0]; gammaltVarde = företag.GetPostAdr(); break; default: if (DEBUG) MessageBox.Show(string.Format("Denna textbox är ännu inte implementerad i funktionen textBoxKnapptryck, kontakta programansvarig." + " \nInformation: Textboxen {0} är inte implementerad i textBoxKnapptryck, eller så har den fel KeyEvent", textbox.Name)); return; } if (nyttVarde == gammaltVarde) { initFormOmOss(); return; } // Uppdatera företaget med de nya värdena på fältet if (företag.SetFalt(namn,nyttVarde) == 0) richTextBoxOmOssMsgs.Text = string.Format("Du har nu uppdaterat företagets {0} från {1} till {2}",namn.ToLower(),gammaltVarde,nyttVarde); else { // Gör om string-arrayen till en enda lång string string[] tmpMsgs = företag.GetTmpMsgs(); string allaMsgs = string.Empty; foreach (string msg in tmpMsgs) allaMsgs += msg + "\n"; // Visa felmeddelandena / t i en MessageBox richTextBoxOmOssMsgs.Text = string.Format("Uppdateringen av fält {0} lyckades inte, nedan finns mer information. "+ "Detaljer: {1}",namn.ToLower(), allaMsgs); } // Ta bort fula nyrader initFormOmOss(); }
/// <summary> /// Bokafunktionen, bokar in bilen på den valda tiden och datumet. /// Funktionen kollar om man bokar en registrerad bil eller om man registrerar en ny och kommer i så fall registrera den nya bilen hos kunden. /// </summary> /// <param name="sender">Den knappen som startade eventet</param> /// <param name="e"></param> public void buttonBoka_Click(object sender, EventArgs e) { boknings_objekt bokning = new boknings_objekt(new SqlCeDatabase(), this.anvandare); input inmatning = new input(); Meddelande(); if (dag != "" & tid != "") { // Formatterar datumet och hämtar regnumret string datum = dag + " " + tid; string regnr = comboBoxReg.Text; string spec = richTextBoxMeddelandenBoka.Text; // Om det är en reggad bil som är markerad, boka bara bilen på datumet och tiden if (this.kundHarReggadBil) { if (bokning.boka(this.anvandare, regnr, datum, spec)) { richTextBoxMeddelandenBoka.Text = "Bokningen genomfördes utan problem."; richTextBoxMeddelandenBoka.Text += "\nDatumet är " + this.dag + " och tiden " + this.tid; } else { richTextBoxMeddelandenBoka.Text = "Det blev något fel med bokningen"; string[] felmeddelande = bokning.GetTmpMsgs(); if (felmeddelande.Contains("A duplicate value")) richTextBoxMeddelandenBoka.Text = "Datumet du valt är upptaget, välj ett annat"; if (DEBUG) { richTextBoxMeddelandenBoka.ScrollBars = RichTextBoxScrollBars.ForcedBoth; richTextBoxMeddelandenBoka.Text += "\n**** FELMEDDELANDE ****"; foreach (string fel in felmeddelande) richTextBoxMeddelandenBoka.Text += "\n" + fel + "\n"; } } } // Om bilen inte är registrerad så registrera bilen först och sen boka in bilen på datument och tiden else { string modell = textBoxModell.Text; string marke = textBoxMarke.Text; string arsmodell = textBoxArsModell.Text; if (bokning.boka(this.anvandare, regnr, datum, marke, modell, arsmodell, spec)) { richTextBoxMeddelandenBoka.Text = "Bokningen genomfördes utan problem."; richTextBoxMeddelandenBoka.Text += "\nDatumet är " + this.dag + " och tiden " + this.tid; } else { richTextBoxMeddelandenBoka.Text = "Det blev något fel med bokningen"; string[] felmeddelande = bokning.GetTmpMsgs(); if (felmeddelande.Contains("A duplicate value")) richTextBoxMeddelandenBoka.Text = "Datumet du valt är upptaget, välj ett annat"; if (DEBUG) { richTextBoxMeddelandenBoka.ScrollBars = RichTextBoxScrollBars.ForcedBoth; richTextBoxMeddelandenBoka.Text += "**** FELMEDDELANDE ****"; foreach (string fel in felmeddelande) richTextBoxMeddelandenBoka.Text += "\n" + fel + "\n"; } } } DoljBokningar(); } // Om tiden eller datument är tomt visa felmeddelandet else { richTextBoxMeddelandenBoka.Text = "Du har inte valt vilket datum och vilken tid du vill utföra din bokning"; if (DEBUG) richTextBoxMeddelandenBoka.Text += "\nDatumet är " + dag + " och tiden är " + tid; } }
/// <summary> /// Funktion som kontrollerar vilka tider som redan är upptagna i en speciell dag /// </summary> /// <param name="dag">Datumet som en sträng</param> private void init_panelTider(string dag) { input inmatning = new input(); bool någonLedigTid = false; // Kolla om tiderna är bokade redan och gör alternativen ovalbara // Om ingen tid finns ledig, skriv det i meddelande-rutan if (!inmatning.kollaTidLedig(dag, "08:00 - 10:00")) timeButton_08.Enabled = false; else { någonLedigTid = true; timeButton_08.Enabled = true; } if (!inmatning.kollaTidLedig(dag, "10:00 - 12:00")) timeButton_10.Enabled = false; else { någonLedigTid = true; timeButton_10.Enabled = true; } if (!inmatning.kollaTidLedig(dag, "14:00 - 16:00")) timeButton_14.Enabled = false; else { någonLedigTid = true; timeButton_14.Enabled = true; } if (!inmatning.kollaTidLedig(dag, "16:00 - 18:00")) timeButton_16.Enabled = false; else { timeButton_16.Enabled = true; någonLedigTid = true; } if (!någonLedigTid) { if (DEBUG) richTextBoxMeddelandenBoka.Text += "Tyvärr, det finns inga lediga tider på din valda dag. Var god välj en ny dag"; else richTextBoxMeddelandenBoka.Text = "Tyvärr, det finns inga lediga tider på din valda dag. Var god välj en ny dag"; } panelTider.Show(); }
/// <summary> /// Bokar fordonet för kunden som är inskrivna i panelNyBok /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonBoka_Click(object sender, EventArgs e) { boknings_objekt bokningar = new boknings_objekt(new SqlCeDatabase(), this.admin); input nyKund = new input(); string namn, tfn, persnnr, adress, email, reg, marke, modell, arsmodell, beskr, datum; namn = maskedTextBoxNamn.Text; tfn = maskedTextBoxTfn.Text; persnnr = maskedTextBoxPersnnr1.Text; adress = maskedTextBoxAdress1.Text; email = maskedTextBoxEmail1.Text; reg = maskedTextBoxReg.Text; marke = maskedTextBoxMarke.Text; modell = maskedTextBoxModell.Text; arsmodell = maskedTextBoxArsmodell.Text; beskr = richTextBoxBokMeddelande.Text; datum = labelNyBokDag.Text + " " + labelNyBokTid.Text; // Om något av de obligatoriska fälten är tomma avbryt if (namn == string.Empty | tfn == string.Empty | persnnr == string.Empty | adress == string.Empty | email == string.Empty | reg == string.Empty | marke == string.Empty | modell == string.Empty | arsmodell == string.Empty) { MessageBox.Show("Du måste fylla i alla fälten"); return; } //Kollar om kundvärderna kan stämma MaskedTextBox[] inmatningsBoxar = { maskedTextBoxNamn, maskedTextBoxPersnnr1, maskedTextBoxEmail1, maskedTextBoxAdress1, maskedTextBoxTfn }; string[] inmatVärden = nyKund.kollaInmatning(inmatningsBoxar); if (DEBUG && nyKund.GetTmpMsgs().Length > 0) { string[] errorMsgs = nyKund.GetTmpMsgs(); foreach (string meddelande in errorMsgs) richTextBoxMeddelanden.Text += meddelande + "\n"; } int regResultat = nyKund.ReggaAdminKund(inmatVärden); if (regResultat == 0) { richTextBoxMeddelanden.Text = "Kunden registrerades utan problem!"; } else { string[] felmeddelande = nyKund.GetTmpMsgs(); if (felmeddelande.Contains("a duplicate value")) richTextBoxMeddelanden.Text = "Det finns redan ett konto med denna emailadress eller med detta personnummer. " + "\nKontrollera att du inte redan skapat ett konto.\n"; else { if (DEBUG) richTextBoxMeddelanden.Text += felmeddelande[1]; // Index utanför matrixen... else richTextBoxMeddelanden.Text += "Det blev ett fel när du skulle registreras.\nFörsök gärna lite senare."; } } string fnamn, enamn; if (namn.Contains(' ')) { fnamn = namn.Substring(0,namn.IndexOf(' ')); enamn = namn.Substring(namn.IndexOf(' ')); } else { fnamn = namn; enamn = ""; } if (bokningar.boka(fnamn, enamn, tfn, reg, datum, marke, modell, arsmodell, namn, beskr)) richTextBoxFormAdminMsgs.Text = "Bokningen utfördes utan problem!"; else { if (DEBUG) richTextBoxFormAdminMsgs.Lines = bokningar.GetTmpMsgs(); else richTextBoxFormAdminMsgs.Text = "Det blev något fel med bokningen"; } richTextBoxFormAdminMsgs.Show(); }
private void buttonRegistrera_Click(object sender, EventArgs e) { input inmatning = new input(); richTextBoxMeddelanden.Text = ""; if (textBoxLosen.Text == textBoxLosenBek.Text) { TextBox[] inmatningsBoxar = { textBoxNamn, textBoxEmail, textBoxTelefon, textBoxAdress, textBoxPersnr, textBoxLosen }; string[] inmatVärden = inmatning.kollaInmatning(inmatningsBoxar); if (DEBUG && inmatning.GetTmpMsgs().Length > 0) { string[] errorMsgs = inmatning.GetTmpMsgs(); foreach (string meddelande in errorMsgs) richTextBoxMeddelanden.Text += meddelande + "\n"; } int regResultat = inmatning.ReggaKund(inmatVärden); if (regResultat == 0) { if (DEBUG) richTextBoxMeddelanden.Text += "Ditt konto registrerades utan problem!\nDu kan nu logga in."; else richTextBoxMeddelanden1.Text = "Ditt konto registrerades utan problem!\nDu kan nu logga in."; splitContainer1.Panel2Collapsed = true; } else { string[] felmeddelande = inmatning.GetTmpMsgs(); if (felmeddelande.Contains("a duplicate value")) richTextBoxMeddelanden.Text = "Det finns redan ett konto med denna emailadress eller med detta personnummer. " + "\nKontrollera att du inte redan skapat ett konto.\n"; else { if (DEBUG) richTextBoxMeddelanden.Text += felmeddelande[1]; else richTextBoxMeddelanden.Text += "Det blev ett fel när du skulle registreras.\nFörsök gärna lite senare."; } } } else richTextBoxMeddelanden.Text += "Dina lösenord stämmer inte överens\n"; }