private void DoUpdate() { string randomPassword = Core.Utils.GetRandomPassword(); Core.Helpers.Database.ParameterBuilder paramBuilder = new Core.Helpers.Database.ParameterBuilder(); paramBuilder.AddParameter(SqlDbType.Int, "@StaffId", this._staffId); paramBuilder.AddParameter(SqlDbType.VarChar, "@Password", randomPassword); using (SqlDataReader dataReader = Core.Helpers.Database.Provider.ExecuteReader("/Sql/Specific/Staff/Modify/Update/Teaching/accountreset.sql", paramBuilder.Parameters)) { dataReader.Read(); switch ((int)dataReader["Status"]) { case 0: Core.WebServer.PleaseTakes.Redirect("/staff/unknownteaching/#Teaching"); break; case 1: Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "resetnoaccount"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 2: if (Core.WebServer.PleaseTakes.Session.CurrentInstance.Account.IsTeachingAccount) { Accounts.TeachingAccount account = (Accounts.TeachingAccount)Core.WebServer.PleaseTakes.Session.CurrentInstance.Account; if (account.StaffId.Equals(this._staffId)) { account.Password = randomPassword; } } Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountPassword", randomPassword); Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "created"); Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "resetsuccess"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; } } }
private void DoUpdate() { string randomPassword = Core.Utils.GetRandomPassword(); Core.Helpers.Database.ParameterBuilder paramBuilder = new Core.Helpers.Database.ParameterBuilder(); paramBuilder.AddParameter(SqlDbType.Int, "@StaffId", this._staffId); paramBuilder.AddParameter(SqlDbType.Bit, "@HasAccount", this._hasAccount); if (Core.WebServer.PleaseTakes.Session.CurrentInstance.Account.IsTeachingAccount) { Accounts.TeachingAccount account = (Accounts.TeachingAccount)Core.WebServer.PleaseTakes.Session.CurrentInstance.Account; paramBuilder.AddParameter(SqlDbType.Int, "@CurrentStaffId", account.StaffId); } else { paramBuilder.AddParameter(SqlDbType.Int, "@CurrentStaffId", null); } if (this._hasAccount) { if (this.HasUsername() && this.HasAccountType() && this.HasAccountStatus()) { paramBuilder.AddParameter(SqlDbType.VarChar, "@Username", this._username); paramBuilder.AddParameter(SqlDbType.VarChar, "@Password", randomPassword); paramBuilder.AddParameter(SqlDbType.Bit, "@IsAdmin", this._isAdmin); paramBuilder.AddParameter(SqlDbType.Bit, "@IsActive", this._isActive); } else { Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "missing"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); } } else { paramBuilder.AddParameter(SqlDbType.VarChar, "@Username", ""); paramBuilder.AddParameter(SqlDbType.VarChar, "@Password", ""); paramBuilder.AddParameter(SqlDbType.Bit, "@IsAdmin", false); paramBuilder.AddParameter(SqlDbType.Bit, "@IsActive", false); Core.WebServer.Response.Write("No account"); } if (Core.WebServer.PleaseTakes.Session.CurrentInstance.School.Settings.NonTeachingAccounts.Exists(this._username)) { Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "exists"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); } else { using (SqlDataReader dataReader = Core.Helpers.Database.Provider.ExecuteReader("/Sql/Specific/Staff/Modify/Update/Teaching/account.sql", paramBuilder.Parameters)) { dataReader.Read(); switch ((int)dataReader["Status"]) { case 0: Core.WebServer.PleaseTakes.Redirect("/staff/unknownteaching/#Teaching"); break; case 1: Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "exists"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 2: if (Core.WebServer.PleaseTakes.Session.CurrentInstance.Account.IsTeachingAccount) { Accounts.TeachingAccount account = (Accounts.TeachingAccount)Core.WebServer.PleaseTakes.Session.CurrentInstance.Account; if (account.StaffId.Equals(this._staffId)) { account.Password = randomPassword; } } Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "updated"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 3: if (Core.WebServer.PleaseTakes.Session.CurrentInstance.Account.IsTeachingAccount) { Accounts.TeachingAccount account = (Accounts.TeachingAccount)Core.WebServer.PleaseTakes.Session.CurrentInstance.Account; if (account.StaffId.Equals(this._staffId)) { account.Password = randomPassword; } } Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountPassword", randomPassword); Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "created"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 4: Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "deleted"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 5: Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; case 6: Core.Utils.SetTemporaryStorageObject("StaffTeachingAccountAlert", "loggedin"); Core.WebServer.PleaseTakes.Redirect("/staff/modify/teaching/" + this._staffId + "/#Account"); break; } } } }