File: /mnt/data/dreamsrent-wp/wp-content/themes/dreamsrent/templates/forget-password.php
<?php
/**
* Template Name: Forget Password Template
*
* This is the template that displays all pages by default.
* Please note that this is the WordPress construct of pages
* and that other 'pages' on your WordPress site will use a
* different template.
*
* @package Dreamsrent
*/
$error_message = ''; // Initialize the variable
$success_message = ''; // Initialize the success message variable
if ($_POST) {
$email = sanitize_email($_POST['email']);
$user = get_user_by('email', $email);
if ($user) {
if (dreamsrent_fl_framework_getoptions('forgot_password_email_enabled')) {
$reset_key = get_password_reset_key($user);
if (!is_wp_error($reset_key)) {
$reset_link = esc_url(add_query_arg([
'action' => 'rp',
'key' => $reset_key,
'login' => rawurlencode($user->user_login),
], wp_login_url()));
$email_content = dreamsrent_fl_framework_getoptions('forgot_password_email_content');
// Replace placeholders with actual data
$email_content = str_replace('{user_name}', $user->display_name, $email_content);
$email_content = str_replace('{reset_link}', $reset_link, $email_content);
$subject = dreamsrent_fl_framework_getoptions('forgot_password_email_subject', __('Password Reset Request', 'dreamsrent'));
$from_email = dreamsrent_fl_framework_getoptions('emails_from_email', get_bloginfo('admin_email'));
$email_logo = dreamsrent_fl_framework_getoptions('email_logo');
$email_logo_url = $email_logo['url'];
// Build the HTML message
$message = '<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body { font-family: Arial, sans-serif; color: #333; line-height: 1.6; }
.container { max-width: 600px; margin: 0 auto; padding: 20px; background-color: #f9f9f9; border: 1px solid #ddd; }
.header { text-align: center; margin-bottom: 30px; }
.header img { max-width: 150px; }
.content { background: #fff; padding: 20px; border-radius: 5px; }
.content h2 { color: #333; }
.content p { margin-bottom: 20px; }
.button { text-align: center; margin-top: 20px; }
.button a { background-color: #0073e6; color: #fff; padding: 12px 20px; border-radius: 5px; text-decoration: none; font-weight: bold; }
.footer { margin-top: 30px; text-align: center; color: #999; font-size: 12px; }
</style>
</head>
<body>
<div class="container">
<div class="header">';
if (!empty($email_logo_url)) {
$message .= '<img src="' . esc_url($email_logo_url) . '" alt="Logo">';
}
$message .= '</div>
<div class="content">' . $email_content . '</div>
<div class="footer">
© ' . date("Y") . ' ' . get_bloginfo('name') . '. All rights reserved.
</div>
</div>
</body>
</html>';
// Email headers
$headers = [
'Content-Type: text/html; charset=UTF-8',
'From: ' . get_bloginfo('name') . ' <' . $from_email . '>'
];
// Send the email
dreamsrent_send_email($email, $subject, $message, $headers);
$success_message = __('Password reset link sent successfully!', 'dreamsrent');
} else {
$error_message = __('Could not generate a reset link. Please try again later.', 'dreamsrent');
}
} else {
$error_message = __('Password reset email is disabled.', 'dreamsrent');
}
} else {
$error_message = __('Email is not registered. Please enter a valid email address.', 'dreamsrent');
}
}
?>
<?php get_template_part('templates/header/header', 'centerlogo'); ?>
<div class="login-wrapper">
<div class="loginbox">
<div class="login-auth">
<div class="login-auth-wrap">
<div class="sign-group">
<!-- <a href="<?php echo esc_url(home_url('/')); ?>" class="btn sign-up"><span><i class="fe feather-corner-down-left" aria-hidden="true"></i></span><?php echo esc_html__(' Back To Home', 'dreamsrent'); ?></a> -->
</div>
<?php if (!empty($error_message)) { ?>
<div class="error-message alert alert-danger"><?php echo esc_html($error_message); ?></div>
<?php } ?>
<?php if (!empty($success_message)) { ?>
<div class="success-message alert alert-success"><?php echo esc_html($success_message); ?></div>
<?php } ?>
<h1><?php echo get_the_title(); ?></h1>
<p class="account-subtitle"><?php echo esc_html__('Enter your email and we will send you a link to reset your password.', 'dreamsrent'); ?></p>
<form method="post">
<?php wp_nonce_field('reset_password_nonce', 'reset_password_nonce'); ?>
<div class="input-block">
<label class="form-label"><?php echo esc_html__('Email Address ', 'dreamsrent'); ?><span class="text-danger"><?php echo esc_html__('*', 'dreamsrent'); ?></span></label>
<input type="email" name="email" class="form-control" required>
</div>
<button type="submit" class="btn btn-outline-light w-100 btn-size"><?php echo esc_html__('Send Reset Link', 'dreamsrent'); ?></button>
</form>
</div>
</div>
</div>
</div>
<?php get_template_part('templates/footer/footer', 'copyright'); ?>