public async Task <Config.Cfg.Permissions> PermissionsCheck(string user, MySql.Data.MySqlClient.MySqlConnection msq) { Config.Cfg.Permissions permission = new Config.Cfg.Permissions(); CloudNoty.Core.Query.QPermissions qPermissions = new CloudNoty.Core.Query.QPermissions(); string x = await qPermissions.GetPermissions(user, msq); if (x == null) { MessageBox.Show("Error while getting Permissions!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); permission = Config.Cfg.Permissions.Null; } if (x.Contains(":")) { int uid = Convert.ToInt16(x.Substring(0, Convert.ToInt16(x.IndexOf(':')))); string y = x.Substring(x.IndexOf(":") + 1); Config.Cfg.UID = uid; switch (y) { case "Administrator": permission = Config.Cfg.Permissions.Administrator; break; case "Pro": permission = Config.Cfg.Permissions.Pro; break; case "Medium": permission = Config.Cfg.Permissions.Medium; break; case "Basic": permission = Config.Cfg.Permissions.Basic; break; } } return(permission); }
private async void btn_Login_Click(object sender, EventArgs e) { try { Core.Helper.CampsController controller = new Core.Helper.CampsController(); bool response = controller.Login(txtUsr, txtPsw); if (response) { return; } DoLogin login = new DoLogin(); DoPermissions DoPermissions = new DoPermissions(); try { loginStatus = await login.PasswordCheck(txtUsr.Text, txtPsw.Text, StdConfig.MYSQLCONNECTION); } catch (Exception ex) { System.Windows.Forms.MessageBox.Show("Error: " + ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { if (loginStatus == Config.Cfg.LoginStatus.LoggedIn) { btn_Login.Enabled = false; txtUsr.Enabled = false; txtPsw.Enabled = false; btn_Login.Text = "Logged"; System.Windows.Forms.MessageBox.Show("Account " + txtUsr.Text + " successfully logged in!", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information); //Check User Permissions try { permissions = await DoPermissions.PermissionsCheck(txtUsr.Text, StdConfig.MYSQLCONNECTION); this.Text = "CloudNoty - ID: " + Config.Cfg.UID.ToString() + " - Permissions: " + permissions.ToString(); Cfg.LoggedIn = true; Core.Forms.landingForm lForm = new Core.Forms.landingForm(); this.Hide(); saveLocalConfig(); lForm.Show(); } catch (Exception ex) { System.Windows.Forms.MessageBox.Show("Error: " + ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else if (loginStatus == Config.Cfg.LoginStatus.WrongPassword) { System.Windows.Forms.MessageBox.Show("The password does not match for the account " + txtUsr.Text + "." + Environment.NewLine + "Contact an administrator for more informations!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else if (loginStatus == Config.Cfg.LoginStatus.InvalidAccount) { System.Windows.Forms.MessageBox.Show("Account " + txtUsr.Text + " does not exist!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } catch (Exception ex) { System.Windows.Forms.MessageBox.Show(ex.ToString()); } }