PageRenderTime 59ms CodeModel.GetById 32ms RepoModel.GetById 1ms app.codeStats 0ms

/reset.php

https://bitbucket.org/leow/openautoclassifieds-14-stable
PHP | 106 lines | 66 code | 11 blank | 29 comment | 18 complexity | 30d7158a24ed726bd6d1b9c3b13d729c MD5 | raw file
Possible License(s): GPL-2.0
  1. <?PHP
  2. //================================================================================
  3. // PLEASE DO NOT REMOVE THIS HEADER!!!
  4. //
  5. // COPYRIGHT NOTICE
  6. // This script is licensed under the GPL
  7. //
  8. // Copyright 2007-2008 Alias 454 Studios and Brandon Keep (c) All rights reserved.
  9. // Created 11/18/2007
  10. // Brandon Keep, http://www.openautoclassifieds.com
  11. // http://www.alias454studios.com/scripts/
  12. //
  13. // Last Modified 04-12-2008 by
  14. // Brandon Keep, http://alias454studios.com
  15. //================================================================================
  16. // This software IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  17. // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  18. // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
  19. // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
  20. // OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
  21. // ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  22. // OTHER DEALINGS IN THE SOFTWARE.
  23. //================================================================================
  24. require_once './Includes/configs/functions.php';
  25. require_once './Includes/libs/Smarty.class.php';
  26. include_once "./Includes/language/$site_lang.php";
  27. $smarty = new Smarty;
  28. $smarty->template_dir="templates/$template";
  29. $smarty->assign("manufacturerslist",getSearchList("make"));
  30. $smarty->assign("modelslist",getSearchList("model"));
  31. $smarty->assign("typeslist",getSearchList("vehicle_type"));
  32. //Check if single user mode 1 or multi-user mode 0
  33. if ($site_mode == 0) {
  34. $smarty->assign("site_mode",1);
  35. }
  36. if (isset($_SESSION["logged_in"])) {
  37. $smarty->assign("logged_in",1);
  38. //check privs to find out if user
  39. //is a seller, admin or user
  40. $status = checkPrivs();
  41. $smarty->assign("$status",1);
  42. }
  43. //User is logged in and wants to change password
  44. if (isset($_POST["change"]) && $_POST["change"] == SUBMIT) {
  45. $_POST = codeClean($_POST);
  46. if (validateEmail($_POST["email"])) {
  47. if (checkIfEmail($_POST["email"])) {
  48. //verify old password so we know it can be changed by valid user
  49. if (verifyLogin($_SESSION["user"],$_POST["old_pass"])) {
  50. updatePass($_SESSION["user"],$_POST["new_pass"]);
  51. $smarty->assign("success",PASSWORD_UPDATED);
  52. } else {
  53. $smarty->assign("error_message",BAD_PASSWORD);
  54. $smarty->assign("pass_error",1);
  55. $smarty->assign("formemail",(htmlentities($_POST["email"])));
  56. }
  57. } else {
  58. $smarty->assign("error_message",EMAIL_NOT_EXISTS);
  59. $smarty->assign("mail_error",1);
  60. }
  61. } else {
  62. $smarty->assign("error_message",NOT_VALID_EMAIL);
  63. $smarty->assign("mail_error",1);
  64. }
  65. } elseif (isset($_POST["submit"]) && $_POST["submit"] == RESET) {
  66. $_POST = codeClean($_POST);
  67. //if user not logged in show forgot password form
  68. if (validateEmail($_POST["email"])) {
  69. $email = codeClean($_POST["email"]);
  70. $sql = "SELECT user FROM users WHERE email = '" . $email . "'";
  71. $res = mysql_query($sql);
  72. $a_row = mysql_fetch_array($res);
  73. $user = $a_row["user"];
  74. if (!empty($user)) {
  75. $pass = generatePassword(6);
  76. updatePass($user,$pass);
  77. $smarty->assign("success",PASSWORD_RESET);
  78. //build email to be sent from lang file
  79. $body = preg_replace("!%USERNAME%!","$user",RESET_PASSWORD_BODY);
  80. $body = preg_replace("!%PASSWORD%!","$pass", $body);
  81. $body = preg_replace("!%URL%!","$site_url/login.php", $body);
  82. $subject = preg_replace("!%URL%!","$site_url/login.php",RESET_PASSWORD_SUBJECT);
  83. sendEmail($email,$subject,$body,$admin_name,$admin_email);
  84. } else {
  85. $smarty->assign("error_message",NOT_VALID_EMAIL);
  86. $smarty->assign("mail_error",1);
  87. }
  88. } else {
  89. $smarty->assign("error_message",NOT_VALID_EMAIL);
  90. $smarty->assign("mail_error",1);
  91. }
  92. }
  93. $smarty->assign("reset",1);
  94. $smarty->display('reset.tpl');
  95. ?>