diff --git a/.github/workflows/label-issues.yaml b/.github/workflows/label-issues.yaml new file mode 100644 index 00000000..4284f4cb --- /dev/null +++ b/.github/workflows/label-issues.yaml @@ -0,0 +1,30 @@ +name: Label Issues Based on Template + +on: + issues: + types: [opened, edited] + +jobs: + label-issues: + runs-on: ubuntu-latest + + steps: + - name: Check if issue needs a label + id: check_label + run: | + echo "Checking labels for issue #${{ github.event.issue.number }}" + + if [[ "${{ github.event.issue.body }}" == *"I'm a GSSOC'24 contributor"* ]]; then + echo "::set-output name=label::gssoc" + elif [[ "${{ github.event.issue.body }}" == *"I'm a VSOC'24 contributor"* ]]; then + echo "::set-output name=label::VSoC'24" + else + echo "::set-output name=label::" + fi + + - name: Apply Label + if: steps.check_label.outputs.label != '' + uses: actions-ecosystem/action-add-labels@v1 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + labels: ${{ steps.check_label.outputs.label }} diff --git a/Untitled (1).mp4 b/Untitled (1).mp4 new file mode 100644 index 00000000..a9f4b9dc Binary files /dev/null and b/Untitled (1).mp4 differ diff --git a/explore.css b/explore.css index e97aeafd..646224f1 100644 --- a/explore.css +++ b/explore.css @@ -1,119 +1,123 @@ * { - box-sizing: border-box; - /* ADDED BORDER RADIUS IN IMAGE SECTION */ - border-radius: 20px; - } - - .outer-box { - font-family: Verdana, Geneva, Tahoma, sans-serif; - display: flex; - align-items: center; - justify-content: center; - height: 100vh; - overflow: hidden; - margin: 0; - - } + box-sizing: border-box; + /* ADDED BORDER RADIUS IN IMAGE SECTION */ + border-radius: 20px; +} + +.outer-box { + font-family: Verdana, Geneva, Tahoma, sans-serif; + display: flex; + align-items: center; + justify-content: center; + height: 100vh; + overflow: hidden; + margin: 0; +} + +.containers { + display: flex; + width: 90vw; +} + +.card { + background-size: cover; + background-position: center; + background-repeat: no-repeat; + height: 70vh; + border-radius: 35px 35px; + /* border-radius: 20px; */ + color: #fff; + cursor: pointer; + flex: 0.5; + margin: 10px; + position: relative; + transition: flex 0.7s ease-in; + display: flex; + flex-direction: column; +} + +/* .card:hover { + flex: 3; +} + +.card:hover h3, .card:hover p { + opacity: 1; + transition: opacity 0.5s ease-in 0.8s; +} + +.card:hover .info { + visibility: visible; +} */ + +.info { + position: absolute; + bottom: 20px; + left: 25%; + visibility: hidden; + background: rgba(221, 206, 216, 0.462); + backdrop-filter:blur(0px); + width: 500px; + border-radius: 15px 15px; +} + +.card h3 { + font-size: 24px; + opacity: 0; + color: black !important; + font-family:Georgia, 'Times New Roman', Times, serif ; + font-weight: bolder; + -webkit-text-stroke:1px navy; +} + +.card p { + font-size: 16px; + opacity: 0; + color:black !important; + margin-top: 10px; + font-weight: 500; + /* -webkit-text-stroke:0.5px beige; */ +} + +.card.active { + flex: 3; +} + +.card.active h3, .card.active p { + opacity: 1; + transition: opacity 0.5s ease-in 0.8s; +} + +.card.active .info { + visibility: visible; +} + +@media (max-width: 1300px) { .containers { - display: flex; - width: 90vw; - - } - - .card { - background-size: cover; - background-position: center; - background-repeat: no-repeat; - height: 70vh; - border-radius: 35px 35px; - /* border-radius: 20px; */ - color: #fff; - cursor: pointer; - flex: 0.5; - margin: 10px; - position: relative; - transition: flex 0.7s ease-in; display: flex; flex-direction: column; + height: 100vh; } - - .info { - position: absolute; - bottom: 20px; - left: 25%; - visibility: hidden; - background: rgba(221, 206, 216, 0.462); - backdrop-filter:blur(0px); - width: 500px; - border-radius: 15px 15px; + .info{ + left: 10%; } - .card h3 { - font-size: 24px; - opacity: 0; - color: black !important; - font-family:Georgia, 'Times New Roman', Times, serif ; - font-weight: bolder; - -webkit-text-stroke:1px navy; - } - - .card p { font-size: 16px; - opacity: 0; - color:black !important; - margin-top: 10px; - font-weight: 500; - /* -webkit-text-stroke:0.5px beige; */ } - - .card.active { - flex: 3; - } - - .card.active h3 { - opacity: 1; - transition: opacity 0.5s ease-in 0.8s; - } - - .card.active p { - opacity: 1; - transition: opacity 0.5s ease-in 0.8s; - } - - .card.active .info { - visibility: visible; - } - .hedd{ - font-size: 25px; - } - @media (max-width: 1300px) { - .containers { - display: flex; - flex-direction: column; - height: 100vh; - } - .info{ - left: 10%; - } - .card h3 { - font-size: 16px; - } - - .card p { - font-size: 12px; - } + + .card p { + font-size: 12px; } - @media (max-width: 620px){ - .info{ - width: 200px; - left: 20px; - } +} +@media (max-width: 620px){ + .info{ + width: 200px; + left: 20px; } - @media (max-width: 280px){ - .info{ - width: 100px; - left: 0px; - } +} +@media (max-width: 280px){ + .info{ + width: 100px; + left: 0px; } - \ No newline at end of file +} \ No newline at end of file diff --git a/explore.js b/explore.js index 09512a4c..97a2d9db 100644 --- a/explore.js +++ b/explore.js @@ -1,14 +1,28 @@ +let lastClickedCard = document.querySelector(".active"); + +// Function to handle click events +function handleClick(card) { + // Remove active classes from all cards + const panels = document.querySelectorAll(".card"); + panels.forEach(panel => panel.classList.remove("active")); + + // Add active class to the clicked card + card.classList.add("active"); + lastClickedCard = card; // Update the reference to the last clicked card +} + +// Attach click event listener to all cards const panels = document.querySelectorAll(".card"); +panels.forEach(panel => panel.addEventListener("click", () => handleClick(panel))); -panels.forEach((card) => { - card.addEventListener("click", () => { - removeActiveClasses(); // Add fuctions to remove active class first - card.classList.add("active"); +// Adjust the mouseover event listener +panels.forEach(panel => { + panel.addEventListener('mouseover', () => { + lastClickedCard.classList.remove("active"); + panel.classList.add('active'); }); + panel.addEventListener('mouseout', () => { + panel.classList.remove('active'); + lastClickedCard.classList.add("active"); +}); }); - -function removeActiveClasses() { - panels.forEach((card) => { - card.classList.remove("active"); - }); -} diff --git a/faq-website.css b/faq-website.css index a0cf1449..ff45a771 100644 --- a/faq-website.css +++ b/faq-website.css @@ -232,11 +232,16 @@ color: white; background-color: rgb(40, 87, 241); } - - - - - + @media only screen and (max-width:465px){ + .newNav img{ + position: relative; + right: 14px; + } + .nav__logo{ + position: relative; + right: 16px; + } + } diff --git a/faq-website.js b/faq-website.js index 760971bb..dc12dac0 100644 --- a/faq-website.js +++ b/faq-website.js @@ -1,4 +1,3 @@ - const accordions = document.querySelectorAll(".accordion"); accordions.forEach((accordion, index) => { @@ -19,3 +18,68 @@ accordions.forEach((accordion, index) => { }); }); }); + +document.addEventListener("DOMContentLoaded", function () { + // Highlight active navbar + const navLinks = document.querySelectorAll(".navLinks a"); + + function highlightNavLink() { + const scrollPosition = window.scrollY; + + navLinks.forEach((link) => { + const sectionId = link.getAttribute("href").substring(1); + const section = document.getElementById(sectionId); + + // Adjust this value to control when the link should be highlighted + const offsetPercentage = 20; + + if ( + section.offsetTop - window.innerHeight * (offsetPercentage / 100) <= + scrollPosition && + section.offsetTop + section.offsetHeight > scrollPosition + ) { + link.classList.add("active"); + } else { + link.classList.remove("active"); + } + }); + } + + document.addEventListener("scroll", highlightNavLink); + window.addEventListener("resize", highlightNavLink); + + // Initialize AOS library + AOS.init(); + + // Set animation delays for FAQs + const faqs = document.querySelectorAll(".faq"); + faqs.forEach((faq, index) => { + faq.style.animationDelay = `${index * 0.2}s`; + }); +}); + +// Logout Button +document.addEventListener("DOMContentLoaded", function () { + var isLoggedIn = localStorage.getItem("isLoggedIn"); + var loginButton = document.getElementById("btn-style"); + var logoutButton = document.getElementById("logout-btn"); + + if (isLoggedIn === "true") { + loginButton.style.display = "none"; + logoutButton.style.display = "block"; + loginButton.disabled = true; + logoutButton.disabled = false; + logoutButton.style.cursor = "pointer"; + logoutButton.addEventListener("click", function () { + localStorage.setItem("isLoggedIn", "false"); + window.location.href = "./index.html"; + }); + } else { + loginButton.style.display = "block"; + logoutButton.disabled = true; + } +}); + +function sendEmail() { + window.location.href = "mailto:arpanchowdhury003@gmail.com"; +} diff --git a/faq.css b/faq.css new file mode 100644 index 00000000..efc4b90e --- /dev/null +++ b/faq.css @@ -0,0 +1,228 @@ +@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;800&display=swap"); + +* { + box-sizing: border-box; + border-radius: 20px; +} + +:root { + --color-primary: #ffd54b; + --color-text: #545d7a; + --color-white: #fff; + --color-title: #242e4c; + --color-background: #f7f8fb; + --color-border: #dae1f5; + --transition: 0.4s ease-in-out; + --shadow: 0px 60px 56px -12px rgba(9, 40, 163, 0.05); +} + +body { + font-family: "Poppins", sans-serif; + color: var(--color-text); + font-size: 16px; + font-weight: 400; + margin: 0; + padding: 0; +} + +/* .container { + width: 100% !important; + margin: auto; + min-height: 100vh; + padding: 2rem; + display: grid; + place-items: center; +} */ + +.faq-container { + margin: 0 auto; + max-width: 900px !important; + width: 80%; +} + +.faq { + background-color: rgb(176, 196, 242, 0.3); + border: 1px solid #9a9afb; + color: black; + border-radius: 25px; + margin: 20px 0; + overflow: hidden; + padding: 30px; + position: relative; + transition: 0.3s ease; + cursor: pointer; + opacity: 0; + transform: translateX(-100%); + animation: slideInFromLeft 2s ease-in-out forwards; /* Animation duration is now 2 seconds */ +} + +.faq.active { + background: rgb(239, 239, 239); + box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), 0 3px 6px rgba(0, 0, 0, 0.1); +} + +.faq.active::before, +.faq.active::after { + color: #2ecc71; + content: "\f075"; + font-family: "Poppins", sans-serif; + font-size: 7rem; + left: 20px; + opacity: 0.2; + position: absolute; + top: 20px; + z-index: 0; +} + +.faq.active::before { + color: #3498db; + left: -30px; + top: -10px; + transform: rotateY(180deg); +} + +.faq-title { + margin: 0 35px 0 0; + color: #3685fb; + transition: transform 0.3s ease; +} + +.faq-title:hover { + transform: scale(1.1); +} + +.faq-text { + margin: 30px 0 0; + color: black; +} + +.faq-toggle { + align-items: center; + background: rgb(239, 239, 239); + border: 0; + border-radius: 50%; + cursor: pointer; + display: flex; + font-size: 1rem; + height: 30px; + justify-content: center; + padding: 0; + position: absolute; + right: 30px; + top: 10px; /* Moving toggle button to top to remove overlapping with faq-title */ + width: 30px; +} + +.faq-toggle .fa-times, +.faq.active .faq-toggle .fa-chevron-down { + display: none; +} + +.accordion__wrapper { + background: url("https://img.freepik.com/free-photo/pouch-map-toy-airplane-blue-background-with-space-writing-text_23-2147958180.jpg") + no-repeat center center fixed; + background-size: cover; + box-shadow: var(--shadow); + border-radius: 10px; + width: 100%; + margin-top: 20px; + min-height: 100vh; + padding: 2rem; + display: grid; + place-items: center; + position: relative; /* Ensure position is relative for z-index to work */ + z-index: 1; /* Ensure the FAQ wrapper is above the background image */ +} + +.accordion__title { + font-size: 25px; + font-weight: 800; + color: var(--color-title); + text-align: center; + margin-bottom: 4rem; +} + +.accordion { + border-bottom: 0.1rem solid var(--color-border); + padding-bottom: 2rem; + margin-bottom: 3rem; + width: 100%; +} + +.accordion__header { + display: flex; + justify-content: space-between; + align-items: center; + gap: 1rem; + cursor: pointer; +} + +.accordion__icon { + background-color: var(--color-primary); + width: 2.2rem; + height: 2.2rem; + display: flex; + justify-content: center; + align-items: center; + border-radius: 50%; + color: var(--color-white); + flex-shrink: 0; +} + +.accordion__question { + font-size: 18px; + font-weight: 700; + color: var(--color-title); + width: 100%; +} + +.accordion__answer { + padding: 2rem 0; + font-size: 16px; +} + +.accordion__content { + overflow: hidden; + height: 0; + transition: var(--transition); +} + +@media screen and (min-width: 580px) { + .accordion__wrapper { + padding: 5rem 8rem; + } +} + +.more { + padding: 50px; + background: url("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ9dwjbQHiWY1sgKRxCurFvyI4pwTMM9L2AVQ&s") + no-repeat center center fixed; + background-size: cover; + margin: 10px auto; + display: flex; + flex-direction: row; + justify-content: space-between; +} + +.more p { + color: grey; +} + +.moreemail { + padding: 10px 20px; + font-size: 18px; + border-radius: 10px; + color: white; + background-color: rgb(40, 87, 241); +} + +@keyframes slideInFromLeft { + 0% { + opacity: 0; + transform: translateX(-100%); + } + 100% { + opacity: 1; + transform: translateX(0); + } +} diff --git a/faq.html b/faq.html index fb9db66d..3e179956 100644 --- a/faq.html +++ b/faq.html @@ -1,15 +1,11 @@ - - - - - + @@ -131,6 +127,25 @@ justify-content: center; gap: 8px; /* Adjust the gap between buttons */ } + .circle { + position: absolute; + width: 25px; + height: 25px; + border-radius: 50%; + pointer-events: none; + background: radial-gradient(circle, rgba(71, 240, 255, 0.3), rgba(0, 119, 255, 0.3)); + transition: transform 0.1s, left 0.1s, top 0.1s; + } + + .circle-container { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + pointer-events: none; + z-index: 9999; + } @@ -141,6 +156,78 @@ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -159,22 +246,22 @@ - - -
+ + + diff --git a/feedback.html b/feedback.html index 21d3e5d2..ae15a3aa 100644 --- a/feedback.html +++ b/feedback.html @@ -21,9 +21,101 @@ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + - -
-
-
-
-
-

- Our trip gallery that will inspire you -

-

- Visual Stories of Adventure to Spark Your Imagination.
- Get inspired for your next journey. -

- + +
+
+
+
+
+

+ Our trip gallery that will inspire you +

+

+ Visual Stories of Adventure to Spark Your Imagination.
+ Get inspired for your next journey. +

+ +
+
-
-




-
+

Tourist Guide

-

Have an amazing trip and explore the destiny

-

-

Connect with the Guide

-

-
- guide1 -

- guide2 -

- guide3 +

Have an amazing trip and explore + the destiny

+

+

+ Connect with the Guide

+

+
+ guide1 +

+ guide2 +

+ guide3
-
+




@@ -872,20 +979,24 @@

TourGuide made our dream vacation a reality! From the - breathtaking landscapes to the seamless logistics, every moment was a new adventure. The personalized - itinerary and expert guides added a special touch to our journey. We can't wait to book our next trip with + breathtaking landscapes to the seamless logistics, every moment was a new adventure. The + personalized + itinerary and expert guides added a special touch to our journey. We can't wait to book our next + trip with TourGuide!

-
+
-

Our cultural tour with TourGuide exceeded all expectations. +

Our cultural tour with TourGuide exceeded all + expectations. The - immersive experiences, knowledgeable guides, and carefully curated activities allowed us to connect with + immersive experiences, knowledgeable guides, and carefully curated activities allowed us to connect + with the local culture in a way we never thought possible. Thanks to TourGuide.

@@ -894,12 +1005,14 @@

Charles

-
+
-

Traveling with the family has never been easier! TourGuide +

Traveling with the family has never been easier! + TourGuide took - care of every detail, ensuring a stress-free and enjoyable vacation for all. The kid-friendly activities + care of every detail, ensuring a stress-free and enjoyable vacation for all. The kid-friendly + activities and family-oriented guides made our trip unforgettable.

-
+
-

Our cultural tour with TourGuide exceeded all expectations. +

Our cultural tour with TourGuide exceeded all + expectations. The - immersive experiences, knowledgeable guides, and carefully curated activities allowed us to connect with + immersive experiences, knowledgeable guides, and carefully curated activities allowed us to connect + with the local culture in a way we never thought possible. Thanks to TourGuide.

@@ -933,12 +1050,14 @@

Charles

-
+
-

Traveling with the family has never been easier! TourGuide +

Traveling with the family has never been easier! + TourGuide took - care of every detail, ensuring a stress-free and enjoyable vacation for all. The kid-friendly activities + care of every detail, ensuring a stress-free and enjoyable vacation for all. The kid-friendly + activities and family-oriented guides made our trip unforgettable.

- + @@ -959,12 +1078,12 @@

Katie

- - + + @@ -977,54 +1096,58 @@

How do I book my travel arrangements through your website?

- +
-

Booking your travel with us is simple and convenient. Start by entering your destination, +

Booking your travel with us is simple and convenient. Start by entering + your destination, travel dates, and other relevant details on our homepage. Browse through the available options, including flights, hotels, and car rentals. Once you find the perfect combination for your trip, follow the easy step-by-step process to confirm your booking. If you encounter any issues or have questions during the booking process, our customer support team is available 24/7 to assist you.

- + +
+
+ +
+
+

What measures are in place to ensure the safety of my personal + information?

+ + +
+
+

We take the security of your personal information seriously. Our website + employs + state-of-the-art encryption technology to safeguard your data during the booking process. Additionally, we + adhere to strict privacy policies and comply with industry standards to protect your information. Rest + assured that your details are used solely for the purpose of facilitating your travel arrangements, and we + do not share your information with third parties without your consent. For more details, please refer to our + Privacy Policy.

+
+
-
-
-

What measures are in place to ensure the safety of my personal information?

- - +
+
+

Can I make changes to my booking or cancel it if needed?

+ + -
-
-

We take the security of your personal information seriously. Our website employs - state-of-the-art encryption technology to safeguard your data during the booking process. Additionally, we - adhere to strict privacy policies and comply with industry standards to protect your information. Rest - assured that your details are used solely for the purpose of facilitating your travel arrangements, and we - do not share your information with third parties without your consent. For more details, please refer to our - Privacy Policy.

- -
-
+
+
+

Yes, we understand that plans can change. Depending on the terms and + conditions of your + specific booking, you may be able to make modifications or cancel your reservation. Log in to your account + on our website, navigate to the "Manage Booking" section, and follow the provided instructions. Keep in mind + that there may be associated fees or restrictions depending on the type of booking and the time of the + requested changes. For further assistance, feel free to contact our customer support team, and they will + guide you through the process.

+ +
+
-
-
-

Can I make changes to my booking or cancel it if needed?

- - - -
-
-

Yes, we understand that plans can change. Depending on the terms and conditions of your - specific booking, you may be able to make modifications or cancel your reservation. Log in to your account - on our website, navigate to the "Manage Booking" section, and follow the provided instructions. Keep in mind - that there may be associated fees or restrictions depending on the type of booking and the time of the - requested changes. For further assistance, feel free to contact our customer support team, and they will - guide you through the process.

- -
-
-
@@ -1110,18 +1233,19 @@

Contact Us

- +
- - + +
-
+
+ style="margin-right: 40px;box-shadow: 2px 2px 8px red;">Send
@@ -1146,32 +1270,33 @@

Subscribe to get special prize

- +
- +