diff --git a/public/document/grievance.jpg b/public/document/grievance.jpg new file mode 100644 index 0000000..976cd90 Binary files /dev/null and b/public/document/grievance.jpg differ diff --git a/src/app/home/page.tsx b/src/app/home/page.tsx index 6685a0d..951364d 100644 --- a/src/app/home/page.tsx +++ b/src/app/home/page.tsx @@ -1,8 +1,8 @@ "use client"; import React from 'react'; -import { AppShell, Button, Input, Group, Stack, Tooltip, UnstyledButton, Text, Avatar, Title, Divider, Box, Select, Paper, Image, Switch, Flex } from '@mantine/core'; -import { IconBook, IconBuildingBank, IconCoinRupee, IconCurrencyRupee, IconHome, IconLogout, IconSettings, IconUserCircle } from '@tabler/icons-react'; +import { AppShell, Button, Input, Group, Stack, Tooltip, UnstyledButton, Text, Avatar, Title, Divider, Box, Select, Paper, Image, Switch, Flex, TextInput, Center } from '@mantine/core'; +import { IconBook, IconBuildingBank, IconCurrencyRupee, IconEye, IconHome, IconLogout, IconPhoneFilled, IconSettings } from '@tabler/icons-react'; import { useRouter } from "next/navigation"; import { useEffect, useState } from "react"; import { Providers } from "../providers"; @@ -46,8 +46,11 @@ export default function Home() { if (authorized) { return ( -
- +
+ + Toll Free No : 1800-180-8008 -
@@ -98,23 +98,26 @@ export default function Home() { justifyContent: "left", }} > - Welcome, Rajat Kumar Maharana - Last logged in at 29/06/25, 05:35 PM + Welcome, Rajat Kumar Maharana + {/*   */} + Last logged in at 29/06/25, 05:35 PM
- Show Balance + + Show Balance setShowBalance(event.currentTarget.checked)} /> -
- - - {/* */} - - Deposit Account +
+ + + + + + Deposit Account ({ @@ -156,7 +161,8 @@ export default function Home() { input: { backgroundColor: "white", color: "black", - width: 150 + marginLeft: 25, + width: 125 } }} /> @@ -167,14 +173,30 @@ export default function Home() { - + Important Links + {/* Loan EMI Calculator */} + {/* + + + + + */}
@@ -184,7 +206,7 @@ export default function Home() { marginTop: 0, padding: "20px", display: "flex", - alignItems: "center", + // alignItems: "center", justifyContent: "left", }} > diff --git a/src/app/image/vision.jpg b/src/app/image/vision.jpg new file mode 100644 index 0000000..2d189ab Binary files /dev/null and b/src/app/image/vision.jpg differ diff --git a/src/app/login/clientCarousel.tsx b/src/app/login/clientCarousel.tsx index bc19c85..6d17e13 100644 --- a/src/app/login/clientCarousel.tsx +++ b/src/app/login/clientCarousel.tsx @@ -2,24 +2,42 @@ import { Box, Image, ActionIcon } from '@mantine/core'; import { IconChevronLeft, IconChevronRight } from '@tabler/icons-react'; -import { useRef } from 'react'; +import { useRef, useState, useEffect } from 'react'; import DICGC from '@/app/image/DICGC_image.jpg'; import objective from '@/app/image/objective.jpg'; -import frontPage from '@/app/image/ib_front_page.jpg'; +import vision from '@/app/image/vision.jpg'; export default function CustomCarousel() { const scrollRef = useRef(null); - const scrollBy = 300; // px per click + const images = [DICGC, objective, vision]; + const [currentIndex, setCurrentIndex] = useState(0); - const scrollLeft = () => { - scrollRef.current?.scrollBy({ left: -scrollBy, behavior: 'smooth' }); + const scrollToIndex = (index: number) => { + const container = scrollRef.current; + if (!container) return; + + const slideWidth = container.offsetWidth; // full width per slide + container.scrollTo({ + left: slideWidth * index, + behavior: 'smooth', + }); }; const scrollRight = () => { - scrollRef.current?.scrollBy({ left: scrollBy, behavior: 'smooth' }); + const nextIndex = (currentIndex + 1) % images.length; + setCurrentIndex(nextIndex); + scrollToIndex(nextIndex); }; - const images = [DICGC, objective, frontPage]; + const scrollLeft = () => { + const prevIndex = (currentIndex - 1 + images.length) % images.length; + setCurrentIndex(prevIndex); + scrollToIndex(prevIndex); + }; + + useEffect(() => { + scrollToIndex(currentIndex); + }, [currentIndex]); return ( @@ -28,10 +46,8 @@ export default function CustomCarousel() { ref={scrollRef} style={{ display: 'flex', - overflowX: 'auto', + overflowX: 'hidden', scrollSnapType: 'x mandatory', - gap: '1rem', - padding: '1rem', scrollBehavior: 'smooth', }} > @@ -64,7 +80,7 @@ export default function CustomCarousel() { {/* Left Scroll Button */} chars[Math.floor(Math.random() * chars.length)]).join(""); @@ -24,12 +22,9 @@ export default function Login() { const [psw, SetPsw] = useState(""); const [captcha, setCaptcha] = useState(""); const [inputCaptcha, setInputCaptcha] = useState(""); + const [isLogging, setIsLogging] = useState(false); const ClientCarousel = dynamic(() => import('./clientCarousel'), { ssr: false }); - // const [isClient,SetIsClient] =useState(false); - - - // useEffect(()=> SetIsClient(true),[]); - + useEffect(() => { setCaptcha(generateCaptcha()); }, []); @@ -41,6 +36,7 @@ export default function Login() { async function handleLogin(e: React.FormEvent) { e.preventDefault(); + setIsLogging(false); const onlyDigit = /^\d{11}$/; if (!onlyDigit.test(CIF)) { setError('Input value must be 11 digit'); @@ -62,6 +58,7 @@ export default function Login() { localStorage.setItem("customerNumber", CIF); localStorage.setItem("password", psw); localStorage.setItem("access_token", token); + setIsLogging(true); router.push("/home"); } else { // SetCIF(''); @@ -82,13 +79,24 @@ export default function Login() {
ebanking + + {/* */} + Head Office : Dharmshala, District: Kangra(H.P), Pincode: 176215 +
setInputCaptcha(e.currentTarget.value)} required /> - @@ -239,9 +248,10 @@ export default function Login() {
@@ -262,7 +272,8 @@ export default function Login() { Disclaimer |{" "} Privacy Policy |{" "} Phishing |{" "} - Security Tips + Security Tips |{" "} + Grievances