Hi,
generally it is not a good idea to send out plain-text passwords via e-mail. Which is the case if the user resets his/her password.
It would be more secure to implement a one-time password reset link. If this would be to difficult and/or would require intensive work to rewrite the system, a password expiration should be implemented. Currently after resetting the password the user gets a new randomly generated password via e-mail, and the user is not required to change it after logging in. This means in if the e-mail was somehow acquired by an attacker at a later time the account might be still accessible. To prevent this a new field would be required in the DB, with which the password can be set as expired, and after logging in with the new password the user is required to change the password immediately, like if you call
passwd -e <login>
on a NIX machine. If the password is set as expired, the user should be blocked to do anything but changing his/her password.
Cheers,
stiefel