From cd62de0048a79b2060a68da2cba79581829b6262 Mon Sep 17 00:00:00 2001 From: Dhruv Dange Date: Fri, 11 Aug 2023 16:51:01 +0530 Subject: [PATCH 1/5] Created travel page, update button color --- components/header.js | 55 +++++---- components/travel.js | 272 +++++++++++++++++++++++++++++++++++++++++++ data/sponsor.yml | 3 - pages/travel.tsx | 16 +++ styles/css/style.css | 4 +- 5 files changed, 323 insertions(+), 27 deletions(-) create mode 100644 components/travel.js create mode 100644 pages/travel.tsx diff --git a/components/header.js b/components/header.js index 61e79e9..34fd94a 100644 --- a/components/header.js +++ b/components/header.js @@ -64,8 +64,8 @@ const navBarItems = [ name: "Python Express", href: "https://pythonexpress.org/", openInNewTab: true, - } -] + }, +]; export default function Header() { const [activeNavBarItem, setActiveNavBarItem] = useState(); @@ -79,7 +79,9 @@ export default function Header() { const sectionElement = document.getElementById(item.id); if (sectionElement) { const rect = sectionElement.getBoundingClientRect(); - const isVisible = (rect.top - elementOffsetTop <= 0) && (rect.bottom - elementOffsetTop > 0); + const isVisible = + rect.top - elementOffsetTop <= 0 && + rect.bottom - elementOffsetTop > 0; if (isVisible) { setActiveNavBarItem(i); // Stop checking once we find the visible element @@ -91,17 +93,16 @@ export default function Header() { useEffect(() => { handleScroll(); - window.addEventListener('scroll', handleScroll); + window.addEventListener("scroll", handleScroll); return () => { - window.removeEventListener('scroll', handleScroll); + window.removeEventListener("scroll", handleScroll); }; }, [navBarScrollTrigger]); - const navBarClickHandler = () => { - setNavBarToggle((prv) => (!prv)); - setNavBarScrollTrigger((prv) => (!prv)); - } + setNavBarToggle((prv) => !prv); + setNavBarScrollTrigger((prv) => !prv); + }; return (
@@ -131,10 +132,16 @@ export default function Header() { aria-label="Toggle navigation" onClick={navBarClickHandler} > - + {/* schema */} ( - { - position: index+1, - name: item.name, - item: item.openInNewTab ? item.href : `https://in.pycon.org${item.href}`, - } - )) - } + itemListElements={navBarItems.map((item, index) => ({ + position: index + 1, + name: item.name, + item: item.openInNewTab + ? item.href + : `https://in.pycon.org${item.href}`, + }))} />
); diff --git a/components/travel.js b/components/travel.js new file mode 100644 index 0000000..5170e5d --- /dev/null +++ b/components/travel.js @@ -0,0 +1,272 @@ +const Travel = () => { + return ( + <> + {" "} +
+
+
+
+

+ Getting to PyCon India 2023 +

+
+

+ This page is to help attendees to find various ways to Reach + PyCon India 2023 happening at Hyderabad, India.{" "} + + + Here is a handy Wiki page + + {" "} + describing about the various ways you can travel to Hyderabad. + The main points have been highlighted below. +

+ +

By Plane - Rajiv Gandhi International Airport

+

+ To Hyderabad: Domestic connectivity is + excellent with Indian airlines operating from here including + Air India, Air India Express, Indian Airlines, Indigo + Airlines, Trujet, and SpiceJet. +

+ +

+ From the Airport to the Venue: Once you + arrive at Rajiv Gandhi International Airport, one option is to + take the air-conditioned buses run by the airport (Pushpak) to + Hi-Tech City (Opposite Shilparamam). It will cost approx. 250 + INR. The buses have a frequency of every 30 min from + 3:30AM-12AM and every hour at midnight, 1AM, 2AM and 3AM. The + travel time varying from 45 mins to 2 hrs depending on time of + the day and traffic conditions.{" "} + + Here are the timings of various buses from the airport + + . Take a bus from{" "} + + RGIA TO JNTU (Via GACHIBOWLI, KOTHAGUDA & SHILPARAMAM) + + . You can reach the designated points and then take an auto or + metered cab from there to reach the venue. +

+ +

+ Alternatively, you can hire metered air-conditioned radio + cabs. Skycabs and Meru are approved by the airport itself @ 21 + INR/km and are available just after exiting the terminal + building. For the rest, you need to call and book with a lead + time of 15 minutes to 1 hour. These cabs charge 25% surcharge + in the night (ie, between 23:00 hours and 05:00 hours). + Hyderabad traffic police counter is on the ground floor with + prepaid taxis. +

+ +

+ + Beware of taxi soliciting tours at the airport greeting + area; they might try to scam you into paying exorbitant + rates (especially so in case of non-locals) + + . The Hyderabad Traffic Police has partnered with the Airport + authorities to run a counter for prepaid taxis. This is a safe + option as all taxis are registered with the police. The police + also runs a SHE cab service now, especially + for women travellers, with female drivers and safety equipment + such as a GPS connected to the Police Control Room. +

+ +

+ One can also hire a cab from many app-based services such as + Uber or Ola directly to the Venue which are readily available + in Hyderabad. +

+ +

+ If 3-4 of you are travelling together, then it is possible to + directly take a cab as it will be cheaper (Please keep in mind + that while these services are substantially cheaper than the + radio cabs, they will charge Rs. 200 in addition to the fare + as parking charges levied on them by the airport). This option + is the best while travelling to the airport, as the parking + charges do not apply for departures. +

+ +

+ Hired cars are also available from a booth just before walking + outside of the airport. This gives you the advantage of paying + in advance, thereby avoiding any disagreements over price. The + airport can be contacted on their (toll free for BSNL/MTNL + subscribers) number 1 800 419-2008 for all services and + inquiries including arrivals/departure information, + facilities, transport availability, etc. +

+ +

By Train - Secundrabad or Hyderabad

+

+ To Hyderabad: Indian Railways has service to + Hyderabad from all over India. There are three major railway + stations serving the twin cities:{" "} + Secunderabad, Hyderabad ,{" "} + Kachiguda and a minor station at{" "} + Begumpet. Hyderabad Deccan Station is + popularly known as Nampally Station. Most of + the trains bound for South India and North India originate + from Hyderabad,and leave via Secunderabad. +

+ + {/*

*/} +

+ {/*

*/} + +

+ Secundrabad and Kachiguda are almost the same distance from + the venue (~20 kms). Hyderabad (Nampally) Station is ~15 kms + from the venue. Using the above links, you can check which + trains you can get from your region.{" "} +

+ +

+ From the stations to the venue: From any station you + have can take a bus to{" "} + + Shilparamam (Hitex) + + . Just point Google Map from your location to Shilparamam and + you will get the bus numbers you need to board from the + station bus stop. From Shilparamam you can take a cab or auto + reach the venue. +

+ +

+ You can also get a cab from these stations to the venue + directly. Ola and Uber are 2 popular cab services in the area. + You can use their app to book a cab. +

+ +

By Car

+

+ Hyderabad is well connected to other major cities by road. + Bangalore is connected by NH7 and is at a distance of 560 km. + The city is 752 km from Chennai (using highways NH9 and NH5) + and 800 km from Mumbai (NH9 till Pune and the expressway to + Mumbai.) The Bangalore Hyderabad section is part of the North + South corridor which is being upgraded to a four-lane divided + highway. +

+ +

By Bus

+

+ To Hyderabad: Hyderabad is well-connected to all parts + of the Telangana and most parts of South and Western India. + Both state government and private buses operate large number + of luxury and ordinary services across the state and + neighboring states. +

+ +

+ JBS, (Jubilee Bus station), is in Secunderabad. TSRTC + runs direct A/C coaches to Mumbai, Bengaluru (Bangalore) and + Chennai. Telangana tourism runs A/C coaches to, Mumbai, + Chennai and Bengaluru. You have to book the tickets in + advance. There are many online bus ticketing portals to book + bus tickets. Mybustickets is one such portal. +

+

+ MGBS or Imliban, is said to be the largest bus station + in the world with around 84 bus bays side by side. TSRTC has + pickup and drop points from various points in the city. In + addition, government-run bus services of neighboring states + also run buses to Hyderabad, as do various private companies. +

+

+ Private Buses. South India is largely well served by + organised private bus operators. They run luxury buses like + Volvo, Mercedes, Kinglong Cerita buses including multi axle + buses. These are air-conditioned, semi sleeper or sleeper + services with online ticket booking facilities. Important + private travel hubs are KPHB Colony, Lakdi-Ka-Pool, Paradise + centre in Secunderabad and Dilsukh nagar. Luxury services run + to many cities from these places. Non-metropolitan areas and + towns are often connected by non-A/C buses but are still + provided with comfortable seating. +

+ +

+ It may be difficult to find direct buses from North India due + large size of that part of the country. +

+ +

+ From the Bus stand to the venue: +

+ {/*

*/} +

+ {/*

*/} + +

From the drop point take an auto/cab to the venue.

+ +

+ You can also get a cab from these bus stops to the venue + directly. +

+ +

+ If you want more details or have any inquiries, please contact{" "} + + + contact@in.pycon.org. + + +

+
+
+
+
+
+ + ); +}; + +export default Travel; diff --git a/data/sponsor.yml b/data/sponsor.yml index 7c49b2a..7069630 100644 --- a/data/sponsor.yml +++ b/data/sponsor.yml @@ -12,9 +12,6 @@ gold: - logo: images/sponsors/innovaccer.png website: https://innovaccer.com/ linkedin: https://www.linkedin.com/company/innovaccer/ - - logo: images/sponsors/corteva.png - website: https://www.corteva.com/ - linkedin: https://www.linkedin.com/company/corteva/ silver: - logo: images/sponsors/zoho.png website: https://www.site24x7.com/ diff --git a/pages/travel.tsx b/pages/travel.tsx new file mode 100644 index 0000000..5ef2727 --- /dev/null +++ b/pages/travel.tsx @@ -0,0 +1,16 @@ +import fs from "fs"; +import MiscLayout from "../components/miscLayout"; + +import Travel from "../components/travel"; + +interface CoCPageProps { + markdownContent: string; +} + +export default function CoCPage({ markdownContent }: CoCPageProps) { + return ( + + + + ); +} diff --git a/styles/css/style.css b/styles/css/style.css index 718ac49..d0d5e1d 100644 --- a/styles/css/style.css +++ b/styles/css/style.css @@ -218,7 +218,7 @@ button a { .custom-button { font-size: 16px; - font-weight: 400; + font-weight: 600; letter-spacing: 1px; padding: 13px 20px 13px; outline: 0; @@ -228,7 +228,7 @@ button a { } .green-btn { - color: white; + color: black; background-color: #1f928d; } From a772daee9f01c08e4e792f0990a0145a9f47cf11 Mon Sep 17 00:00:00 2001 From: Dhruv Dange Date: Fri, 11 Aug 2023 22:21:16 +0530 Subject: [PATCH 2/5] Completed Changes --- components/coc.js | 9 ++++++++- components/faqs.js | 15 ++++++++++----- components/travel.js | 11 +++++------ data/sponsor.yml | 3 +++ pages/travel.tsx | 14 ++++++-------- 5 files changed, 32 insertions(+), 20 deletions(-) diff --git a/components/coc.js b/components/coc.js index fe7a31a..c8604d2 100644 --- a/components/coc.js +++ b/components/coc.js @@ -3,7 +3,14 @@ import ReactMarkdown from "react-markdown"; export default function CoC({ markdownContent }) { return ( <> -

Code of Conduct

+

+ Code of Conduct +

{markdownContent} ); diff --git a/components/faqs.js b/components/faqs.js index 43d2c6f..c6f6f8f 100644 --- a/components/faqs.js +++ b/components/faqs.js @@ -1,12 +1,17 @@ import ReactMarkdown from "react-markdown"; -export default function Faqs({markdownContent}) { +export default function Faqs({ markdownContent }) { return ( <> -

Frequently Asked Questions

- - {markdownContent} - +

+ Frequently Asked Questions +

+ {markdownContent} ); } diff --git a/components/travel.js b/components/travel.js index 5170e5d..d2ac7ca 100644 --- a/components/travel.js +++ b/components/travel.js @@ -4,16 +4,15 @@ const Travel = () => { {" "}
-
-
-

+
+

Getting to PyCon India 2023 -

+

This page is to help attendees to find various ways to Reach diff --git a/data/sponsor.yml b/data/sponsor.yml index 7069630..7c49b2a 100644 --- a/data/sponsor.yml +++ b/data/sponsor.yml @@ -12,6 +12,9 @@ gold: - logo: images/sponsors/innovaccer.png website: https://innovaccer.com/ linkedin: https://www.linkedin.com/company/innovaccer/ + - logo: images/sponsors/corteva.png + website: https://www.corteva.com/ + linkedin: https://www.linkedin.com/company/corteva/ silver: - logo: images/sponsors/zoho.png website: https://www.site24x7.com/ diff --git a/pages/travel.tsx b/pages/travel.tsx index 5ef2727..c9a6f6b 100644 --- a/pages/travel.tsx +++ b/pages/travel.tsx @@ -1,16 +1,14 @@ -import fs from "fs"; +import Head from "next/head"; import MiscLayout from "../components/miscLayout"; - import Travel from "../components/travel"; -interface CoCPageProps { - markdownContent: string; -} - -export default function CoCPage({ markdownContent }: CoCPageProps) { +export default function TravelPage() { return ( - + + PyCon India 2023, Hyderabad | Travel + + ); } From c34c2610e30ede942dfe5b3870fb988c9860c861 Mon Sep 17 00:00:00 2001 From: Dhruv Dange Date: Sat, 12 Aug 2023 00:10:48 +0530 Subject: [PATCH 3/5] Travel page to md, undid contrast changes --- components/travel.js | 280 ++----------------------------------------- data/travel.md | 27 +++++ pages/travel.tsx | 31 +++-- styles/css/style.css | 4 +- 4 files changed, 66 insertions(+), 276 deletions(-) create mode 100644 data/travel.md diff --git a/components/travel.js b/components/travel.js index d2ac7ca..1ec1959 100644 --- a/components/travel.js +++ b/components/travel.js @@ -1,271 +1,17 @@ -const Travel = () => { +import ReactMarkdown from "react-markdown"; + +export default function Travel({ markdownContent }) { return ( <> - {" "} -

-
-
-
-

- Getting to PyCon India 2023 -

-
-

- This page is to help attendees to find various ways to Reach - PyCon India 2023 happening at Hyderabad, India.{" "} - - - Here is a handy Wiki page - - {" "} - describing about the various ways you can travel to Hyderabad. - The main points have been highlighted below. -

- -

By Plane - Rajiv Gandhi International Airport

-

- To Hyderabad: Domestic connectivity is - excellent with Indian airlines operating from here including - Air India, Air India Express, Indian Airlines, Indigo - Airlines, Trujet, and SpiceJet. -

- -

- From the Airport to the Venue: Once you - arrive at Rajiv Gandhi International Airport, one option is to - take the air-conditioned buses run by the airport (Pushpak) to - Hi-Tech City (Opposite Shilparamam). It will cost approx. 250 - INR. The buses have a frequency of every 30 min from - 3:30AM-12AM and every hour at midnight, 1AM, 2AM and 3AM. The - travel time varying from 45 mins to 2 hrs depending on time of - the day and traffic conditions.{" "} - - Here are the timings of various buses from the airport - - . Take a bus from{" "} - - RGIA TO JNTU (Via GACHIBOWLI, KOTHAGUDA & SHILPARAMAM) - - . You can reach the designated points and then take an auto or - metered cab from there to reach the venue. -

- -

- Alternatively, you can hire metered air-conditioned radio - cabs. Skycabs and Meru are approved by the airport itself @ 21 - INR/km and are available just after exiting the terminal - building. For the rest, you need to call and book with a lead - time of 15 minutes to 1 hour. These cabs charge 25% surcharge - in the night (ie, between 23:00 hours and 05:00 hours). - Hyderabad traffic police counter is on the ground floor with - prepaid taxis. -

- -

- - Beware of taxi soliciting tours at the airport greeting - area; they might try to scam you into paying exorbitant - rates (especially so in case of non-locals) - - . The Hyderabad Traffic Police has partnered with the Airport - authorities to run a counter for prepaid taxis. This is a safe - option as all taxis are registered with the police. The police - also runs a SHE cab service now, especially - for women travellers, with female drivers and safety equipment - such as a GPS connected to the Police Control Room. -

- -

- One can also hire a cab from many app-based services such as - Uber or Ola directly to the Venue which are readily available - in Hyderabad. -

- -

- If 3-4 of you are travelling together, then it is possible to - directly take a cab as it will be cheaper (Please keep in mind - that while these services are substantially cheaper than the - radio cabs, they will charge Rs. 200 in addition to the fare - as parking charges levied on them by the airport). This option - is the best while travelling to the airport, as the parking - charges do not apply for departures. -

- -

- Hired cars are also available from a booth just before walking - outside of the airport. This gives you the advantage of paying - in advance, thereby avoiding any disagreements over price. The - airport can be contacted on their (toll free for BSNL/MTNL - subscribers) number 1 800 419-2008 for all services and - inquiries including arrivals/departure information, - facilities, transport availability, etc. -

- -

By Train - Secundrabad or Hyderabad

-

- To Hyderabad: Indian Railways has service to - Hyderabad from all over India. There are three major railway - stations serving the twin cities:{" "} - Secunderabad, Hyderabad ,{" "} - Kachiguda and a minor station at{" "} - Begumpet. Hyderabad Deccan Station is - popularly known as Nampally Station. Most of - the trains bound for South India and North India originate - from Hyderabad,and leave via Secunderabad. -

- - {/*

*/} -

- {/*

*/} - -

- Secundrabad and Kachiguda are almost the same distance from - the venue (~20 kms). Hyderabad (Nampally) Station is ~15 kms - from the venue. Using the above links, you can check which - trains you can get from your region.{" "} -

- -

- From the stations to the venue: From any station you - have can take a bus to{" "} - - Shilparamam (Hitex) - - . Just point Google Map from your location to Shilparamam and - you will get the bus numbers you need to board from the - station bus stop. From Shilparamam you can take a cab or auto - reach the venue. -

- -

- You can also get a cab from these stations to the venue - directly. Ola and Uber are 2 popular cab services in the area. - You can use their app to book a cab. -

- -

By Car

-

- Hyderabad is well connected to other major cities by road. - Bangalore is connected by NH7 and is at a distance of 560 km. - The city is 752 km from Chennai (using highways NH9 and NH5) - and 800 km from Mumbai (NH9 till Pune and the expressway to - Mumbai.) The Bangalore Hyderabad section is part of the North - South corridor which is being upgraded to a four-lane divided - highway. -

- -

By Bus

-

- To Hyderabad: Hyderabad is well-connected to all parts - of the Telangana and most parts of South and Western India. - Both state government and private buses operate large number - of luxury and ordinary services across the state and - neighboring states. -

- -

- JBS, (Jubilee Bus station), is in Secunderabad. TSRTC - runs direct A/C coaches to Mumbai, Bengaluru (Bangalore) and - Chennai. Telangana tourism runs A/C coaches to, Mumbai, - Chennai and Bengaluru. You have to book the tickets in - advance. There are many online bus ticketing portals to book - bus tickets. Mybustickets is one such portal. -

-

- MGBS or Imliban, is said to be the largest bus station - in the world with around 84 bus bays side by side. TSRTC has - pickup and drop points from various points in the city. In - addition, government-run bus services of neighboring states - also run buses to Hyderabad, as do various private companies. -

-

- Private Buses. South India is largely well served by - organised private bus operators. They run luxury buses like - Volvo, Mercedes, Kinglong Cerita buses including multi axle - buses. These are air-conditioned, semi sleeper or sleeper - services with online ticket booking facilities. Important - private travel hubs are KPHB Colony, Lakdi-Ka-Pool, Paradise - centre in Secunderabad and Dilsukh nagar. Luxury services run - to many cities from these places. Non-metropolitan areas and - towns are often connected by non-A/C buses but are still - provided with comfortable seating. -

- -

- It may be difficult to find direct buses from North India due - large size of that part of the country. -

- -

- From the Bus stand to the venue: -

- {/*

*/} -

- {/*

*/} - -

From the drop point take an auto/cab to the venue.

- -

- You can also get a cab from these bus stops to the venue - directly. -

- -

- If you want more details or have any inquiries, please contact{" "} - - - contact@in.pycon.org. - - -

-
-
-
-
-
+

+ Getting to PyCon India 2023 +

+ {markdownContent} ); -}; - -export default Travel; +} diff --git a/data/travel.md b/data/travel.md new file mode 100644 index 0000000..f4ed57c --- /dev/null +++ b/data/travel.md @@ -0,0 +1,27 @@ +## PyCon India 2023 Travel Information + +This page provides information for attendees on how to reach PyCon India 2023 happening in Hyderabad, India. For more detailed travel information, refer to the [Hyderabad Wiki Page](https://wikitravel.org/en/Hyderabad#Get_in). + +### By Plane - Rajiv Gandhi International Airport + +**To Hyderabad:** Various Indian airlines operate from Rajiv Gandhi International Airport including Air India, Air India Express, Indian Airlines, Indigo Airlines, Trujet, and SpiceJet. + +**From the Airport to the Venue:** Upon arriving at the airport, you have the option to take air-conditioned buses (Pushpak) to Hi-Tech City (Opposite Shilparamam) for around 250 INR. Buses run frequently from 3:30 AM to 12 AM, and hourly during midnight. Travel time varies from 45 minutes to 2 hours. [Bus timings](http://www.hyderabad.aero/to-from-airport.aspx) are available online. You can also hire metered cabs from Skycabs and Meru or use app-based services like Uber or Ola. + +### By Train - Secunderabad or Hyderabad + +**To Hyderabad:** Indian Railways offer services to Hyderabad from various parts of India. Major railway stations include Secunderabad, Hyderabad, Kachiguda, and Begumpet. Hyderabad Deccan Station is also known as Nampally Station. Most trains for South and North India start from Hyderabad via Secunderabad. + +From the stations to the venue, you can take buses to Shilparamam (Hitex) and then use a cab or auto to reach the venue. + +### By Car + +Hyderabad is well-connected to other major cities by road, including Bangalore, Chennai, and Mumbai. The Bangalore-Hyderabad route is part of the North South corridor upgraded to a four-lane divided highway. + +### By Bus + +Hyderabad is well-connected by state government and private buses to various parts of Telangana, South India, and Western India. Major bus stations include JBS (Jubilee Bus Station) in Secunderabad and MGBS (Imliban), one of the largest bus stations in the world. + +From the bus stand to the venue, you can take buses to Shilparamam (Hitex) and then use an auto or cab to reach the venue. + +For more detailed inquiries, contact [contact@in.pycon.org](mailto:contact@in.pycon.org). diff --git a/pages/travel.tsx b/pages/travel.tsx index c9a6f6b..273a1bc 100644 --- a/pages/travel.tsx +++ b/pages/travel.tsx @@ -1,14 +1,31 @@ -import Head from "next/head"; -import MiscLayout from "../components/miscLayout"; +import fs from "fs"; +import path from "path"; import Travel from "../components/travel"; +import MiscLayout from "../components/miscLayout"; -export default function TravelPage() { +interface TravelPageProps { + markdownContent: string; +} + +export default function TravelPage({ markdownContent }: TravelPageProps) { return ( - - PyCon India 2023, Hyderabad | Travel - - + ); } + +export async function getStaticProps() { + const filePath = path.join(process.cwd(), "data", "travel.md"); + let markdownContent = fs.readFileSync(filePath, "utf8"); + + markdownContent = markdownContent.replace(/^---[\s\S]*?---/g, ""); + + return { + props: { + markdownContent, + }, + }; +} + + diff --git a/styles/css/style.css b/styles/css/style.css index d0d5e1d..718ac49 100644 --- a/styles/css/style.css +++ b/styles/css/style.css @@ -218,7 +218,7 @@ button a { .custom-button { font-size: 16px; - font-weight: 600; + font-weight: 400; letter-spacing: 1px; padding: 13px 20px 13px; outline: 0; @@ -228,7 +228,7 @@ button a { } .green-btn { - color: black; + color: white; background-color: #1f928d; } From 344f6a99713ed9e3fef98b97f607b19acaaca207 Mon Sep 17 00:00:00 2001 From: Dhruv Dange Date: Wed, 16 Aug 2023 15:15:27 +0530 Subject: [PATCH 4/5] Updated Travel page info --- data/travel.md | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/data/travel.md b/data/travel.md index f4ed57c..4563e3d 100644 --- a/data/travel.md +++ b/data/travel.md @@ -1,27 +1,38 @@ -## PyCon India 2023 Travel Information +# Travel Information for PyCon India 2023 in Hyderabad -This page provides information for attendees on how to reach PyCon India 2023 happening in Hyderabad, India. For more detailed travel information, refer to the [Hyderabad Wiki Page](https://wikitravel.org/en/Hyderabad#Get_in). +Welcome to PyCon India 2023 in Hyderabad! Below you'll find detailed travel information on how to reach the conference venue. -### By Plane - Rajiv Gandhi International Airport +## Getting to Hyderabad -**To Hyderabad:** Various Indian airlines operate from Rajiv Gandhi International Airport including Air India, Air India Express, Indian Airlines, Indigo Airlines, Trujet, and SpiceJet. +### By Plane - Rajiv Gandhi International Airport -**From the Airport to the Venue:** Upon arriving at the airport, you have the option to take air-conditioned buses (Pushpak) to Hi-Tech City (Opposite Shilparamam) for around 250 INR. Buses run frequently from 3:30 AM to 12 AM, and hourly during midnight. Travel time varies from 45 minutes to 2 hours. [Bus timings](http://www.hyderabad.aero/to-from-airport.aspx) are available online. You can also hire metered cabs from Skycabs and Meru or use app-based services like Uber or Ola. +If you're arriving by air, the Rajiv Gandhi International Airport serves as your gateway to Hyderabad. Various Indian airlines operate flights to this airport, including Air India, Air India Express, Indian Airlines, Indigo Airlines, Trujet, and SpiceJet. ### By Train - Secunderabad or Hyderabad -**To Hyderabad:** Indian Railways offer services to Hyderabad from various parts of India. Major railway stations include Secunderabad, Hyderabad, Kachiguda, and Begumpet. Hyderabad Deccan Station is also known as Nampally Station. Most trains for South and North India start from Hyderabad via Secunderabad. - -From the stations to the venue, you can take buses to Shilparamam (Hitex) and then use a cab or auto to reach the venue. +For those opting for train travel, Indian Railways offer services to Hyderabad from different parts of India. Major railway stations include Secunderabad, Hyderabad, Kachiguda, and Begumpet. Hyderabad Deccan Station, also known as Nampally Station, is a significant hub for trains to South and North India via Secunderabad. ### By Car -Hyderabad is well-connected to other major cities by road, including Bangalore, Chennai, and Mumbai. The Bangalore-Hyderabad route is part of the North South corridor upgraded to a four-lane divided highway. +Hyderabad is well-connected to other major cities by road. Routes like the Bangalore-Hyderabad corridor have been upgraded to four-lane divided highways, providing a convenient option for road travelers. ### By Bus -Hyderabad is well-connected by state government and private buses to various parts of Telangana, South India, and Western India. Major bus stations include JBS (Jubilee Bus Station) in Secunderabad and MGBS (Imliban), one of the largest bus stations in the world. +Hyderabad's extensive bus network, including state government and private buses, connects the city to various parts of Telangana, South India, and Western India. Major bus stations include JBS (Jubilee Bus Station) in Secunderabad and MGBS (Imliban), which holds the distinction of being one of the largest bus stations in the world. + +For more comprehensive travel information and options, please refer to the [Hyderabad Wiki Page](https://wikitravel.org/en/Hyderabad#Get_in). + +## Getting to the Conference Venue - JNTU-H, Kukatpally + +The conference will be held at JNTU-H, Kukatpally. Here are the different ways to reach the venue: + +### Via Hyderabad Metro + +JNTU-H, Kukatpally is best accessible via the Hyderabad Metro Red line. You can get down at either the "KPHB Colony" or "JNTU College" stop and then walk towards JNTU-H, Kukatpally. + +- **From the Blue Line:** If you're arriving via the Blue line, you can easily switch to the Red line (towards Miyapur) at Ameerpet station. +- **From the Green Line:** If you're coming via the Green line, you can switch to the Red line (towards M.G. Bus Station) at the M.G. Bus Station stop. -From the bus stand to the venue, you can take buses to Shilparamam (Hitex) and then use an auto or cab to reach the venue. +For a list of stations on the Hyderabad Metro Red line, you can refer to [Wikipedia](https://en.wikipedia.org/wiki/Red_Line_(Hyderabad_Metro)). -For more detailed inquiries, contact [contact@in.pycon.org](mailto:contact@in.pycon.org). +We're excited to welcome you to PyCon India 2023 and hope you have a fantastic experience in Hyderabad! If you have any further inquiries or need assistance, feel free to contact us at [contact@in.pycon.org](mailto:contact@in.pycon.org). From 6c813bbd957b5d50ae50532dd3cba1983926e5fe Mon Sep 17 00:00:00 2001 From: Dhruv Dange Date: Thu, 17 Aug 2023 18:52:17 +0530 Subject: [PATCH 5/5] Added easter egg quiz --- components/HeroBanner.js | 2 +- components/quiz.js | 90 +++++++++++++++++++++++++++++ pages/suprise.tsx | 9 +++ public/images/logos/python-256.png | Bin 0 -> 6272 bytes styles/css/style.css | 83 +++++++++++++++++++++++++- 5 files changed, 182 insertions(+), 2 deletions(-) create mode 100644 components/quiz.js create mode 100644 pages/suprise.tsx create mode 100644 public/images/logos/python-256.png diff --git a/components/HeroBanner.js b/components/HeroBanner.js index af3084c..aa8a26a 100644 --- a/components/HeroBanner.js +++ b/components/HeroBanner.js @@ -15,7 +15,7 @@ const HeroBanner = () => {
diff --git a/components/quiz.js b/components/quiz.js new file mode 100644 index 0000000..25388b7 --- /dev/null +++ b/components/quiz.js @@ -0,0 +1,90 @@ +import React, { useState, useEffect } from "react"; +import Button from 'react-bootstrap/Button'; +import Modal from 'react-bootstrap/Modal'; + +const Quiz = () => { + const [answer, setAnswer] = useState(""); + const [questions, setQuestions] = useState([]); + const [answersQ, setAnswersQ] = useState([]); + const [currentQuestion, setCurrentQuestion] = useState(0); + const [openModal, setOpenModal] = useState(false); + const discountCode = "PYCON2023"; + + useEffect(() => { + setQuestions([ + "Password", + "What is the name of the conference? \nA. pycon2023 \n B. pycon2022 \n C. pycon2021 \n D. pycon2020", + ]); + + setAnswersQ([ + "PYCON2023", + 'A', + ]); + }, []); + + useEffect(() => { + if (answer.toUpperCase() === answersQ[currentQuestion]) { + setAnswer(""); + setCurrentQuestion(currentQuestion + 1); + if (currentQuestion === questions.length - 1) { + setOpenModal(true); + } + } + }, [answer]); + + const handleAnswerChange = (event) => { + setAnswer(event.target.value); + }; + + const handleClose = () => {setOpenModal(false); window.location.href = "/2023";} + const copyToClipboard = async () => { + if ('clipboard' in navigator) { + return await navigator.clipboard.writeText(discountCode); + } else { + return document.execCommand('copy', true, discountCode); + } + } + + return ( + <> +
+
+ {currentQuestion !== 0 && ( +

+ Answer These Questions for a Special Prize! +

+ )} +
+ + +
+ + + + Congratulations! + + Woohoo, you completed the quiz! Here is a pycon ticket discount code just for you!
{discountCode}
+ + + + +
+
+
+ + ); +}; + +export default Quiz; diff --git a/pages/suprise.tsx b/pages/suprise.tsx new file mode 100644 index 0000000..22e3232 --- /dev/null +++ b/pages/suprise.tsx @@ -0,0 +1,9 @@ +import Quiz from "../components/quiz"; + +type componentProps = { + isMobile: boolean; +}; + +export default function CyberQuiz() { + return ; +} diff --git a/public/images/logos/python-256.png b/public/images/logos/python-256.png new file mode 100644 index 0000000000000000000000000000000000000000..186b0b5233677b56bfae005446bf8cd3fb53ff3e GIT binary patch literal 6272 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