feat: admin module
fix: mobile number
This commit is contained in:
@@ -32,6 +32,7 @@ import {
|
||||
IconFileText,
|
||||
IconCircleDot,
|
||||
} from "@tabler/icons-react";
|
||||
import { useSearchParams } from "next/navigation";
|
||||
|
||||
interface accountData {
|
||||
stAccountNo: string;
|
||||
@@ -48,6 +49,9 @@ export default function App() {
|
||||
const [authorized, setAuthorized] = useState<boolean | null>(null);
|
||||
const [accountDetails, setAccountDetails] = useState<accountData | null>(null);
|
||||
const [loading, setLoading] = useState(false);
|
||||
const searchParams = useSearchParams();
|
||||
const passedAccNo = searchParams.get("accNo");
|
||||
|
||||
|
||||
useEffect(() => {
|
||||
const token = localStorage.getItem("access_token");
|
||||
@@ -73,6 +77,17 @@ export default function App() {
|
||||
}
|
||||
}, [authorized]);
|
||||
|
||||
useEffect(() => {
|
||||
if (authorized && passedAccNo && accountOptions.length > 0) {
|
||||
// auto select account
|
||||
setSelectedAccNo(passedAccNo);
|
||||
|
||||
// reuse existing logic
|
||||
handleAccountSelection(passedAccNo);
|
||||
}
|
||||
}, [authorized, passedAccNo, accountOptions]);
|
||||
|
||||
|
||||
const handleAccountSelection = async (accNo: string | null) => {
|
||||
setSelectedAccNo(accNo);
|
||||
setAccountDetails(null);
|
||||
|
||||
@@ -350,6 +350,7 @@ export default function AddBeneficiaryOthers() {
|
||||
val = val.replace(/[^A-Z0-9]/g, ""); // block special chars
|
||||
setIfsccode(val);
|
||||
}}
|
||||
readOnly={isVisibilityLocked}
|
||||
maxLength={11}
|
||||
withAsterisk
|
||||
/>
|
||||
@@ -437,7 +438,7 @@ export default function AddBeneficiaryOthers() {
|
||||
value={nickName}
|
||||
required
|
||||
onChange={(e) => setNickName(e.currentTarget.value)}
|
||||
|
||||
readOnly={isVisibilityLocked}
|
||||
/>
|
||||
</Grid.Col>
|
||||
<Grid.Col span={4}>
|
||||
|
||||
@@ -178,6 +178,65 @@ export default function RootLayout({ children }: { children: React.ReactNode })
|
||||
clearInterval(countdownTimer);
|
||||
};
|
||||
}, []);
|
||||
|
||||
// useEffect(() => {
|
||||
// const INACTIVITY_LIMIT = 5 * 60 * 1000; // 5 minutes
|
||||
// let inactivityTimer: NodeJS.Timeout;
|
||||
// let countdownTimer: NodeJS.Timeout;
|
||||
// let isSessionExpired = false; // lock flag
|
||||
|
||||
// const startLogoutCountdown = () => {
|
||||
// isSessionExpired = true; // lock session
|
||||
// setSessionModal(true);
|
||||
// setCountdown(30);
|
||||
|
||||
// countdownTimer = setInterval(() => {
|
||||
// setCountdown((prev) => {
|
||||
// if (prev <= 1) {
|
||||
// clearInterval(countdownTimer);
|
||||
// doLogout();
|
||||
// return 0;
|
||||
// }
|
||||
// return prev - 1;
|
||||
// });
|
||||
// }, 1000);
|
||||
// };
|
||||
|
||||
// const resetInactivityTimer = () => {
|
||||
// // If modal already shown, ignore ALL activity
|
||||
// if (isSessionExpired) return;
|
||||
|
||||
// clearTimeout(inactivityTimer);
|
||||
|
||||
// inactivityTimer = setTimeout(() => {
|
||||
// startLogoutCountdown();
|
||||
// }, INACTIVITY_LIMIT);
|
||||
// };
|
||||
|
||||
// const activityEvents = [
|
||||
// "mousemove",
|
||||
// "mousedown",
|
||||
// "keydown",
|
||||
// "scroll",
|
||||
// "touchstart",
|
||||
// "click",
|
||||
// ];
|
||||
|
||||
// activityEvents.forEach((event) =>
|
||||
// window.addEventListener(event, resetInactivityTimer)
|
||||
// );
|
||||
|
||||
// // Start timer on load
|
||||
// resetInactivityTimer();
|
||||
|
||||
// return () => {
|
||||
// activityEvents.forEach((event) =>
|
||||
// window.removeEventListener(event, resetInactivityTimer)
|
||||
// );
|
||||
// clearTimeout(inactivityTimer);
|
||||
// clearInterval(countdownTimer);
|
||||
// };
|
||||
// }, []);
|
||||
|
||||
const navItems = [
|
||||
{ href: "/home", label: "Home", icon: IconHome },
|
||||
|
||||
@@ -14,8 +14,8 @@ interface SendOtpPayload {
|
||||
}
|
||||
|
||||
function getStoredMobileNumber(): string {
|
||||
//const mobileNumber = localStorage.getItem('remitter_mobile_no');
|
||||
const mobileNumber = "6297421727";
|
||||
const mobileNumber = localStorage.getItem('remitter_mobile_no');
|
||||
// const mobileNumber = "7890544527";
|
||||
if (!mobileNumber) throw new Error('Mobile number not found.');
|
||||
return mobileNumber;
|
||||
}
|
||||
|
||||
@@ -68,9 +68,8 @@ export default function Login() {
|
||||
async function handleVerifyOtp(mobile?: string) {
|
||||
try {
|
||||
if (mobile) {
|
||||
//await verifyLoginOtp(otp, mobile);
|
||||
await verifyLoginOtp(otp, '6297421727');
|
||||
|
||||
await verifyLoginOtp(otp, mobile);
|
||||
// await verifyLoginOtp(otp, '7890544527');
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user