/** * This function adds ticket-upload meta to wp_usermeta table.If that column of that row has value but newest date * Of is older than 1 day ago, value will UPDATE completely, But if has value and that's date is not older than 1 * day ago, new date will CONCAT; *If there is no data before, meta will add; * @param int $user_id * @param array $meta_array * @return bool|int */ function meta_add($user_id, $meta_array) { if ($meta_array) { $date_obj = date_create($meta_array[count($meta_array) - 2]); $date = date_format($date_obj, "Y/m/d H:i:s"); if ($date < date("Y/m/d H:i:s", strtotime("-1 day"))) { return portal_update_user_meta($user_id, "ticket-upload", strval(date("Y/m/d H:i:s")) . "|"); } else { return portal_concat_user_meta($user_id, "ticket-upload", strval(date("Y/m/d H:i:s")) . "|"); } } else { return portal_add_user_meta($user_id, "ticket-upload", strval(date("Y/m/d H:i:s")) . "|"); } }
exit; } if ($pass_meta = portal_get_user_meta($id, "forget-password")) { $meta_array = explode("|", $pass_meta); $date_create = date_create($meta_array[count($meta_array) - 1]); $date = date_format($date_create, "Y/m/d H:i:s"); $new_date = date("Y/m/d H:i:s", strtotime("-7 days")); if ($new_date < $date) { echo "شما به تازگی پسورد خود را بازیابی کرده اید.امکان بازیابی دوباره ی رمز عبور پیش از یک هفته وجود ندارد"; exit; } } $meta = explode("|", $meta); $date_create = date_create($meta[count($meta) - 1]); $date = date_format($date_create, "Y/m/d H:i:s"); if ($date < date("Y/m/d H:i:s", strtotime("-1 day"))) { echo "اعتبار درخواست بازیابی رمز عبور شما گذشته است."; exit; } if ($_POST["password"] != $_POST["cpassword"]) { echo "فیلد ها با هم برابر نیستند"; exit; } wp_set_password($_POST['password'], $id); if ($pass_meta) { portal_concat_user_meta($id, "forget-password", strval(date("Y/m/d H:i:s")) . "|"); } else { portal_add_user_meta($id, "forget-password", strval(date("Y/m/d H:i:s")) . "|"); } echo "رمز عبور شما با موفقیت بازیابی شد.اکنون می توانید وارد شوید"; exit;
if (($forget_length = count($forget_array)) > 2) { $last_time = date_create($forget_array[$forget_length - 3]); $last_time_obj = date_format($last_time, "Y/m/d H:i:s"); if ($last_time_obj > date("Y/m/d H:i:s", strtotime("-1 day"))) { echo "شما در روز تنها می توانید دو بار درخواست دریافت ایمیل بازیابی کنید"; exit; } } $date_create = date_create($forget_array[count($forget_array) - 2]); $date = date_format($date_create, "Y/m/d H:i:s"); $new_date = date("Y/m/d H:i:s", strtotime("-15 minutes")); if ($new_date < $date) { echo "ایمیل بازیابی به تازگی برای شما ارسال شده است.شما حد اکثر هر 15 دقیقه یک بار می توانید درخواست دوباره بدهید."; exit; } portal_concat_user_meta($id[0], "forget-email", strval(date("Y/m/d H:i:s")) . "|"); } else { // echo "kir khar"; portal_add_user_meta($id[0], "forget-email", strval(date("Y/m/d H:i:s")) . "|"); } } $id = strval($id[0]); // email's variables; $final_link = "http://www.shek.ir/portal/login/retrieval.php?dfgiouadsdfghhdsaedsrftdyfuriysg="; for ($index = 0; $index < strlen($id); $index++) { $final_link .= random_str(38) . substr($id, $index, 1); } $final_link .= random_str(29); $content = <<<MAIL <html><head><title>بازیابی رمز عبور</title></head><body> <p>این ایمیل برای بازیابی اکانت شما در شک ارسال شده است</p><br>
/** * @param int $user_id * @param string $new_password * @return bool|int */ function change_user_password($user_id, $new_password) { wp_set_password($new_password, $user_id); if (portal_get_user_meta($user_id, "forget-password")) { return portal_concat_user_meta($user_id, "forget-password", date("Y/m/d H:i:s") . "|"); } return portal_add_user_meta($user_id, "forget-password", date("Y/m/d H:i:s") . "|"); }