/// <summary> /// LogIndServices moedtager de tildelte parameter og exekver validatePaasWord og tejkker om den returner true. /// exekver og sætter Global Properties /// vis sandt vis MainWindow og lukker LogindWindow /// </summary> /// <param name="brugerNavn">Brugernavn tildelt af bruger i textboxen i loginWindow.</param> /// <param name="passWordStr">Brugernavn tildelt af bruger i PasswordBox i loginWindow.</param> /// <param name="logIndWindow"> en instans af windoet LogIndWindow</param> public static void LogIndServices(string brugerNavn, string passWordStr, LogIndWindow logIndWindow) { MySqlConnection con = GetConnection(); if (validatePaasWord(brugerNavn, passWordStr, logIndWindow, con)) { SetGrobalProperties(brugerNavn, con); MainWindow mainWindow = new MainWindow(); mainWindow.Show(); logIndWindow.Close(); } }
/// <summary> /// metoden tjekker om stringen passWord er null /// </summary> /// <param name="brugerNavn">Brugernavn tildelt af bruger i textboxen i loginWindow.</param> /// <param name="passWordStr">Brugernavn tildelt af bruger i PasswordBox i loginWindow.</param> /// <param name="logIndWindow"> en instans af windoet LogIndWindow. </param> /// <param name="con">con er obejct af Database Connection.</param> /// <returns> returner true eller false </returns> private static bool validatePaasWord(string brugerNavn, string passWordStr, LogIndWindow logIndWindow, MySqlConnection con) { con.Open(); LogInd passWord = GetPassWord(brugerNavn, con); if (!(passWord == null)) { return(TjekStatus(passWordStr, logIndWindow, con, passWord)); } else { SetErrorMessage(logIndWindow, "Forkert Brugernavn!"); return(false); } }
/// <summary> /// MenuButtonOnClick sætter sourcen på contenholder framen eller sætter de globale properties til null, vis logud knapper bliver trykket /// </summary> /// <param name="sender"></param> /// <param name="mainWindow">er en instans af mainwindow</param> public static void MenuButtonOnClick(object sender, MainWindow mainWindow) { Button btn = (Button)sender; string buttonName = btn.Name.ToString(); if (buttonName == "LogUd") { Application.Current.Properties["Global_userId"] = null; Application.Current.Properties["Global_userRole"] = null; LogIndWindow newLogindWindow = new LogIndWindow(); newLogindWindow.Show(); mainWindow.Close(); // MainWindow mainWindow = new MainWindow(); //list newlist = new list(); } else { mainWindow.contentHolder.Source = new Uri("/View/page/" + buttonName + ".xaml", UriKind.Relative); } }
/// <summary> /// TjekStatus metode tjekker i databasen om brugeren er aktiv eller blocked /// </summary> /// <param name="passWordStr">Brugernavn tildelt af bruger i PasswordBox i loginWindow.</param> /// <param name="logIndWindow"> logIndWindow er en instans af windoet LogIndWindow.</param> /// <param name="con">con er obejct af Database Connection.</param> /// <param name="passWord"> passWord er en obejct af modellen LogInd</param> /// <returns> returns true eller false</returns> private static bool TjekStatus(string passWordStr, LogIndWindow logIndWindow, MySqlConnection con, LogInd passWord) { if (passWord.passwordStatus.Equals("aktiv")) { string CurrentPassWord = GetCurrentPassWord(passWord.id, con); con.Close(); if (passWordStr.Equals(CurrentPassWord)) { ResetInValidAttemps(con, passWord); return(true); } else { SetErrorMessage(logIndWindow, "Forkert Password!"); invalidAttempsHandler(passWord, con); return(false); } } else { SetErrorMessage(logIndWindow, "Din konto er " + passWord.passwordStatus + ". Kontakt Admin!"); return(false); } }
/// <summary> /// denne funktion lukker programme /// </summary> /// <param name="window"> window er en instans af windoet LogIndWindow </param> public static void Anuller(LogIndWindow window) { window.Close(); }
/// <summary> /// set error message, vis en logger ind med forkert brugernavn eller password, sættes der en fejl besked i logind windoet /// </summary> /// <param name="logIndWindow">logIndWindow er en instans af windoet LogIndWindow.</param> /// <param name="message"> det er parameteren der bliver modtaget af metoden</param> private static void SetErrorMessage(LogIndWindow logIndWindow, string message) { logIndWindow.message.Text = message; logIndWindow.messageImage.Visibility = Visibility.Visible; }