<?php
require 'includes/bootstrap.php';$note='';$err='';
if($_SERVER['REQUEST_METHOD']==='POST'){
 verify_csrf();$login=trim($_POST['login']??'');$type='family';$s=$pdo->prepare("SELECT u.id,u.email FROM family_users u JOIN families f ON f.id=u.family_id WHERE (u.username=? OR u.mobile=? OR u.email=? OR f.family_code=?) AND u.status=1 AND f.status=1 LIMIT 1");$s->execute([$login,normalize_mobile($login),$login,$login]);$u=$s->fetch();
 if(!$u){$type='vendor';$s=$pdo->prepare("SELECT u.id,u.email FROM vendor_users u JOIN vendors v ON v.id=u.vendor_id WHERE (u.username=? OR u.mobile=? OR u.email=? OR v.vendor_code=?) AND u.status=1 AND v.status=1 LIMIT 1");$s->execute([$login,normalize_mobile($login),$login,$login]);$u=$s->fetch();}
 if($u){$token=bin2hex(random_bytes(32));$pdo->prepare('INSERT INTO password_resets(user_type,user_id,token_hash,expires_at,created_at) VALUES(?,?,?,DATE_ADD(NOW(),INTERVAL 30 MINUTE),NOW())')->execute([$type,$u['id'],hash('sha256',$token)]);$resetUrl=rtrim($config['base_url']??'','/').'/reset-password.php?token='.$token;if(!empty($u['email'])&&setting_bool($pdo,'email_otp_enabled')){[$ok,$why]=smtp_send($pdo,$u['email'],'GharKhata Password Reset',"Use this secure link to reset your password:\n{$resetUrl}\n\nThis link expires in 30 minutes.");if(!$ok)$err='Reset link created, but email delivery failed. Please contact Admin.';}}
 $note=t('reset_created','If the account exists and email service is enabled, a reset link has been sent. You can also ask Admin to reset the password.');
}
$publicPage=true;$pageTitle=t('forgot_title','Reset Password');include 'includes/header.php';?><div class="auth-wrap"><div class="auth-card premium-auth"><div class="center"><div class="otp-icon">🔑</div><h2><?=e(t('forgot_title','Reset Password'))?></h2><p class="hint">Enter Username, Mobile, Account Code or Email.</p></div><?php if($note):?><div class="flash"><?=e($note)?></div><?php endif;?><?php if($err):?><div class="flash warn"><?=e($err)?></div><?php endif;?><form method="post"><?=csrf_field()?><div class="field"><label><?=e(t('username_mobile_code','Username / Mobile / Code / Email'))?></label><input class="input" name="login" required></div><button class="btn btn-primary w100"><?=e(t('send_reset','Send Reset Link'))?></button></form><a class="btn btn-soft w100" style="margin-top:10px" href="login.php">← Secure Login</a></div></div><?php include 'includes/footer.php';?>
