diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index 65fa1b4..b7a2ad8 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -26,6 +26,7 @@ import AboutUs from "./Pages/AboutUs";
import Error from "./Pages/Error";
import PrivacyPolicy from "./Pages/PrivacyPolicy"; // Added back from one version
import User from "./Pages/User"; // Added from the other version
+import Faq from './Pages/Faq';
function App() {
return (
@@ -54,6 +55,7 @@ function App() {
} />
} />
} />{" "}
+ } />
{/* Restored PrivacyPolicy */}
} /> {/* Added User */}
} />
diff --git a/frontend/src/Pages/Faq.css b/frontend/src/Pages/Faq.css
new file mode 100644
index 0000000..37b90d6
--- /dev/null
+++ b/frontend/src/Pages/Faq.css
@@ -0,0 +1,78 @@
+/* Background styling */
+.faq-section {
+ background-color: #F3F4F6;
+ padding: 2rem;
+ }
+
+ /* Heading styling */
+ .faq-main-heading {
+ font-size: 2.5rem;
+ color: #1a73e8;
+ text-align: center;
+ margin-bottom: 2rem;
+ font-weight: bold;
+ text-transform: uppercase;
+ }
+
+ /* Container styling */
+ .faq-container {
+ max-width: 800px;
+ margin: 0 auto;
+ }
+
+ /* FAQ item styling */
+ .faq-item {
+ background-color: white;
+ margin: 1.5rem 0;
+ padding: 1.5rem;
+ border-radius: 10px;
+ box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
+ transition: transform 0.3s ease;
+ cursor: pointer;
+ }
+
+ .faq-item:hover {
+ transform: translateY(-5px);
+ }
+
+ .faq-question {
+ font-size: 1.5rem;
+ color: #1a73e8; /* Blue */
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-weight: 600;
+ }
+
+ .faq-answer {
+ font-size: 1.1rem;
+ color: black;
+ margin-top: 1rem;
+ line-height: 1.6;
+ padding-left: 1rem;
+ border-left: 3px solid #1a73e8; /* Accent line for visual appeal */
+ animation: fadeIn 0.3s ease-in-out;
+ }
+
+ @keyframes fadeIn {
+ from {
+ opacity: 0;
+ transform: translateY(-10px);
+ }
+ to {
+ opacity: 1;
+ transform: translateY(0);
+ }
+ }
+
+ /* Icon styling */
+ .faq-icon {
+ font-size: 1.4rem;
+ color: #1a73e8;
+ transition: transform 0.3s ease;
+ }
+
+ .rotate {
+ transform: rotate(180deg);
+ }
+
\ No newline at end of file
diff --git a/frontend/src/Pages/Faq.jsx b/frontend/src/Pages/Faq.jsx
new file mode 100644
index 0000000..3e1e5ea
--- /dev/null
+++ b/frontend/src/Pages/Faq.jsx
@@ -0,0 +1,80 @@
+import React, { useState } from 'react';
+import { useNavigate } from 'react-router-dom';
+import backicon from '../assets/svg/backicon.svg';
+import './faq.css';
+
+const Faq = () => {
+ const navigate = useNavigate(); // Initialize the useNavigate hook
+ const [activeIndex, setActiveIndex] = useState(null);
+
+ const faqData = [
+ {
+ question: "How can I book a station guide service?",
+ answer: "To book a station guide service, navigate to the 'Booking' page, select the service you need, and follow the steps to confirm your booking.",
+ },
+ {
+ question: "What payment methods are accepted?",
+ answer: "We accept various payment methods, including credit/debit cards, UPI, and popular digital wallets.",
+ },
+ {
+ question: "How can I cancel or modify my booking?",
+ answer: "You can cancel or modify your booking from your account under 'My Bookings'. Select the booking and choose the desired option.",
+ },
+ {
+ question: "Is there a way to contact support?",
+ answer: "Yes, you can contact our support team via the 'Help and Support' page, where we offer chat and email options for assistance.",
+ },
+ {
+ question: "Are there any discounts available?",
+ answer: "Check our 'Offers' section regularly for seasonal discounts and promotional codes.",
+ },
+ {
+ question: "What are the operating hours of the station guide service?",
+ answer: "Our station guide service operates 24/7 to assist you at any time.",
+ },
+ {
+ question: "Can I provide feedback about the service?",
+ answer: "Absolutely! We welcome feedback through the 'Feedback' section on our website.",
+ },
+ {
+ question: "What should I do if I lose my booking confirmation?",
+ answer: "If you lose your booking confirmation, you can retrieve it from your account or contact customer support for assistance.",
+ },
+ ];
+
+ const toggleAnswer = (index) => {
+ setActiveIndex(activeIndex === index ? null : index);
+ };
+
+ const HomeClick = () => {
+ navigate('/'); // Navigates to the home page
+ };
+
+ return (
+
+
+
Frequently Asked Questions
+
+ {faqData.map((item, index) => (
+
toggleAnswer(index)}>
+
+ {item.question}
+
+ ▼
+
+
+ {activeIndex === index && (
+
+ {item.answer}
+
+ )}
+
+ ))}
+
+
+ );
+};
+
+export default Faq;
diff --git a/frontend/src/Pages/hamburger.jsx b/frontend/src/Pages/hamburger.jsx
index 83d24a8..91d7964 100644
--- a/frontend/src/Pages/hamburger.jsx
+++ b/frontend/src/Pages/hamburger.jsx
@@ -2,6 +2,8 @@ import React, { useState, useEffect, useRef } from "react";
import styled, { keyframes } from "styled-components";
import { FaArrowLeft, FaSearch, FaTimes } from "react-icons/fa";
import { useNavigate } from "react-router-dom";
+import { FaQuestionCircle } from "react-icons/fa";
+
const fadeIn = keyframes`
from {
@@ -155,6 +157,10 @@ const Hamburger = () => {
const helpClick = () => {
navigate("/Help");
};
+ const FaqClick = () => {
+ navigate("/FAQ");
+ };
+
const aboutClick = () => {
navigate("/About");
diff --git a/frontend/src/components/navbar.jsx b/frontend/src/components/navbar.jsx
index 00c09a5..8e9bc5c 100644
--- a/frontend/src/components/navbar.jsx
+++ b/frontend/src/components/navbar.jsx
@@ -1,5 +1,5 @@
import React, { useState } from 'react';
-import { FaBars, FaTimes, FaUser, FaHandsHelping, FaBell, FaStar, FaCreditCard, FaInfoCircle } from 'react-icons/fa';
+import { FaBars, FaTimes, FaUser, FaHandsHelping, FaBell, FaStar, FaCreditCard, FaInfoCircle, FaQuestionCircle } from 'react-icons/fa';
import { IoSettings } from "react-icons/io5";
import { useNavigate } from 'react-router-dom';
import axios from 'axios'; // Import axios
@@ -85,6 +85,11 @@ const Navbar = () => {
navigate('/about');
setIsOpen(false);
};
+
+ const handleFaqClick = () => {
+ navigate('/FAQ');
+ setIsOpen(false);
+ };
const handleOpenModal = () => {
setIsModalOpen(true);
@@ -199,6 +204,10 @@ const Navbar = () => {
Settings
+
+
+ FAQ
+