include ( "globalclass.php" ); $success = 0; $iMaxCount = 7; if ( isset ( $username ) && isset ( $password ) && isset ( $newpassword ) && isset ( $confirmpassword ) ) { if ( $newpassword == $password ) $success = -2; else { $sql = new sql(); $szPwdHash = md5 ( $password ); $sql->query ( "select TNGUserID, NewLoginStatus, LoginCount, EncPassword from TNGUser where LoginID='$username' and status=1" ); if ( $sql->count () == 1 ) { $iUserID = intval ( mssql_result ( $sql->result, 0, "TNGUserID" ) ); $iNewLogin = intval ( mssql_result ( $sql->result, 0, "NewLoginStatus" ) ); $iLoginCount = intval ( mssql_result ( $sql->result, 0, "LoginCount" ) ); $szDBPwd = mssql_result ( $sql->result, 0, "EncPassword" ); if ( $iLoginCount < 1 ) { $sql->query ( "update TNGUser set LoginCount = $iLoginCount - 1 where LoginID = '$username' and status = 1" ); $success = -3; } else { if ( $szPwdHash != $szDBPwd ) { $sql->query ( "update TNGUser set LoginCount = $iLoginCount - 1 where LoginID = '$username' and status = 1" ); if ( $iLoginCount > 1 ) $success = -4; else $success = -3; } } if ( $success == 0 ) { $szNewPwdHash = md5 ( $newpassword ); $szTodayDate = date ( "m/d/y" ); $iFound = 0; $sql->query ( "select count(*) as counter from PasswordHistory where UserID = $iUserID" ); if ( $sql->count () == 1 ) { $iCount = mssql_result ( $sql->result, 0, "counter" ); if ( $iCount > 0 ) { $sql->query ( "select count(*) as counter from PasswordHistory where UserID = $iUserID and EncPassword = '$szNewPwdHash'" ); if ( $sql->count () == 1 ) $iFound = mssql_result ( $sql->result, 0, "counter" ); } else $success = -1; if ( $iFound == 1 && $success == 0 ) $success = -5; else { if ( $iCount > 0 ) { if ( $iCount == $iMaxCount ) $sql->query ( "delete from PasswordHistory where UserID = $iUserID and Serial = $iMaxCount" ); $sql->query ( "update PasswordHistory set Serial = Serial + 1 where UserID = $iUserID" ); } $sql->query ( "insert into PasswordHistory (UserID, Serial, EncPassword) values ( $iUserID, 1, '$szPwdHash' )" ); $sql->query ( "update TNGUser set EncPassword='$szNewPwdHash', newloginstatus=0, LoginCount=3, LastPwdChange='$szTodayDate' where LoginID='$username' and EncPassword='$szPwdHash' and status=1 and newloginstatus=$iNewLogin" ); $success = 1; } } else $success = -1; } } else $success = -1; } } ?>