diff --git a/.vscode/settings.json b/.vscode/settings.json
index 22c5aa0..2640558 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -41,6 +41,7 @@
},
// Spell checker
"cSpell.words": [
+ "Brevo",
"clickaway",
"deerhacks",
"DeerHacks",
diff --git a/components/Shared/Footer/index.tsx b/components/Shared/Footer/index.tsx
index 2bff414..67fa96b 100644
--- a/components/Shared/Footer/index.tsx
+++ b/components/Shared/Footer/index.tsx
@@ -54,19 +54,17 @@ const Footer = () => {
{toggles.dashboard && (
- <>
-
-
- Terms & Conditions
-
-
-
-
- Privacy Policy
-
-
- >
+
+
+ Terms & Conditions
+
+
)}
+
+
+ Privacy Policy
+
+
{toggles.mlh && (
diff --git a/pages/privacy/index.tsx b/pages/privacy/index.tsx
index cff661a..d043add 100644
--- a/pages/privacy/index.tsx
+++ b/pages/privacy/index.tsx
@@ -1,28 +1,465 @@
import Head from 'next/head'
+import NextLink from 'next/link'
import Container from '@mui/material/Container'
import Fade from '@mui/material/Fade'
+import Link from '@mui/material/Link'
import Typography from '@mui/material/Typography'
-import BackButton from '@/components/Shared/BackButton'
-import { useFeatureToggle } from '@/contexts/FeatureToggle'
-import Error404Page from '@/pages/404'
+import Navbar from '@/components/Shared/Navbar'
const Privacy = () => {
- const { toggles } = useFeatureToggle()
-
- if (!toggles.dashboard && !toggles.bypassPage) return
-
return (
<>
Privacy Policy | DeerHacks
-
-
- Privacy Policy
- Last Revised: Oct 27, 2023
+
+
+
+ Privacy Policy
+
+
+ Overview
+
+
+ DeerHacks (“DeerHacks,” “we,” “our,” or “us”) is committed to protecting your privacy.
+ This Privacy Policy, implemented by DeerHacks, is intended to inform Users ("User",
+ "Participant", "you") about our practices concerning the processing of personal data
+ when participating in DeerHacks within Canada. This Privacy Policy applies to our
+ website,{' '}
+
+ deerhacks.ca
+
+ {'.'} (hereinafter referred to as “our Service”). By accessing or using our Service and
+ participating in the DeerHacks hackathon, you signify that you agree to the collection,
+ storage, use, and disclosure of your personal information as described in this Privacy
+ Policy and agree to the DeerHacks{' '}
+
+ Terms & Conditions
+
+ {'.'}
+
+
+ Personal Data We Collect
+
+
+ Data Collected Automatically
+
+
+ We automatically collect certain information when you visit and use our Service.
+
+
+ Data Analytics
+
+
+ We collect analytics data or use third-party analytics tools to measure usage trends
+ of our Service. This helps us improve the online experience for visitors. This data
+ is anonymous, including visitor numbers and device types.
+
+
+ We use services like Cloudflare and Google Analytics for these purposes. Their
+ privacy policies can be found at{' '}
+
+ Cloudflare Privacy Policy
+ {' '}
+ and{' '}
+
+ Google Privacy
+
+ .
+
+
+
+
+ Cookies
+
+
+ Cookies are used for authentication and management of the signup process and general
+ administration. You can opt out of non-essential cookies.
+
+
+ Additionally, our analytics, bug reporting, and DNS providers also use cookies to
+ facilitate their services.
+
+
+
+
+ Widgets
+
+
+ Our Service may include social media features (e.g., LinkedIn, Instagram widgets)
+ and external links to DeerHacks official partners. These companies may collect
+ information about your visit. If you follow hyperlinks from our site, please note
+ that we are not responsible for their privacy policies and practices.
+
+
+
+
+ Data Collected Manually
+
+
+ This includes data collected through direct interactions on our site, such as when you
+ apply or sign up as a participant.
+
+
+ Primary User Data
+
+
+ We collect primary data via registration forms for event organization. This
+ includes, but is not limited to, first and last name, email address, contact number,
+ educational affiliation, and other information we ask you to provide during
+ registration.
+
+
+
+
+ Third Party Data
+
+
+ Using third-party sign-ins, such as Discord provides us with certain account
+ information. We receive the username, email address, profile picture, and OAuth
+ credentials of the Discord account. This information is used for identification and
+ sign-in purposes only. You can manage your privacy settings directly with these
+ third parties (e.g,{' '}
+
+ Discord Privacy Policy
+
+ ).
+
+
+
+
+ Email Communications
+
+
+ We use Brevo to send emails related to DeerHacks. Your email address is shared with
+ Brevo for this purpose. The email service providers do not use this personal data
+ for any other purpose and will not transfer or sell your personal data to any other
+ third party (e.g,{' '}
+
+ Brevo Privacy Policy
+
+ ). Our emails comply with anti-spam laws, and you can unsubscribe at any time by
+ following the link at the bottom of our newsletter emails.
+
+
+
+
+ Optional Survey Data
+
+
+ We may conduct optional surveys to improve DeerHacks and our Service. Survey data
+ will always be explicitly labeled as such. Participation in surveys is voluntary and
+ does not impact your event eligibility.
+
+
+
+
+ On-Site Participant Data
+
+
+ We collect various data during the event to ensure a smooth experience at DeerHacks.
+ For example, we record QR code scans for resource management (e.g, food and
+ merchandise) as well as to assess attendance rates and popular activities.
+
+
+
+
+ How We Use Personal Data
+
+
+ We use personal information solely for organizing and running DeerHacks, including
+ communication with participants.
+
+
+ Usage of Automatically Collected Data
+
+
+
+
+ We monitor metrics like visitor numbers, traffic, and demographic patterns on our
+ Service.
+
+
+ We diagnose and address technology problems to maintain a high Service standard.
+
+
+ We store information so that you will not have to re-enter it during your subsequent
+ visits and to implement Service enhancements.
+
+
+
+
+ Usage of Manually Collected Data
+
+
+
+
+ We release anonymized, aggregate data to the public and DeerHacks partners for
+ marketing, transparency, and sponsorship purposes.
+
+
+ We tailor follow-up communications such as post-event surveys or marketing
+ newsletters.
+
+
+ We collect feedback and participant interactions are analyzed for continuous
+ improvement.
+
+
+ We share and create personalized events like workshops, networking opportunities,
+ educational courses that align with participant's skills and interests.
+
+
+
+
+ Who We Share Personal Data With
+
+
+
+ Personal information may be disclosed to third parties only with your consent or as
+ required by law. This includes sharing information with sponsors or partners, only if
+ participants have opted in. We may share your personal data with the following third
+ parties:
+
+
+
The University of Toronto
+
Our event sponsors, for recruitment purposes
+
Service providers assisting us in event organization
+
Legal and regulatory authorities, where required by law
+
+
+
+ Data Security
+
+
+
+ We are committed to protecting your Personal Information through technical and
+ organizational measures against accidental or unlawful destruction, loss, change or
+ damage.
+
+
+
+ Our Service is hosted on secure Amazon AWS servers and Digital Ocean servers, that
+ comply with rigorous, globally recognized security and data protection standards
+ (e.g,{' '}
+
+ Amazon AWS Data Policy
+
+ ,{' '}
+
+ Digital Ocean Privacy Policy
+
+ ).
+
+
+ In the unlikely event of a data breach, affected parties will be notified within 72
+ hours, subject to legal or other circumstances.
+
+
+ DeerHacks will never send you unsolicited emails or contact you by phone requesting
+ your account's login details, credit or debit card information or national
+ identification numbers.
+
+
+
+
+ Your Rights
+
+
+
+ You can request access, update, or deletion of your personal data at{' '}
+
+ hello@deerhacks.ca
+
+ . Compliance with your request will occur within 30 days, barring legal or exceptional
+ circumstances. Please note that deleted data may be retained in our backups for up to
+ an additional 60 days, after which they are purged. You have several options to limit
+ how much information you share with us:
+
+
+
+ Limit information sharing by opting out of non-mandatory fields in our forms and
+ communications with you. However, fields marked as mandatory are considered to be
+ necessary to our operations and Service that we offer to you. In the event that you
+ object to these mandatory fields, you may terminate your activities with us and
+ request that we delete all data we have collected from you thus far.
+
+
+ Opt out of marketing emails to stop receiving marketing and promotional material
+ from us by clicking "unsubscribe" at the bottom of any promotional emails.
+
+
+ Use tracking blockers to limit analytics tracking. DeerHacks requires cookies to be
+ enabled for our services. However, we do not have individual control over tracking
+ activities done by the services outlined in{' '}
+
+ Personal Data We Collect
+
+ . Most browsers will allow you to change your cookies preferences. You may also use
+ a browser extension to block anonymous analytics activities.
+
+
+
+
+ Changes to Privacy Policy
+
+
+ We reserve the right to modify this Privacy Policy. Review this page periodically for
+ changes. Significant changes will be notified and the "last modified" date at the bottom
+ of this page will be updated. Continuing to use our Service after we publish changes to
+ this Privacy Policy means that you are consenting to the changes.
+
+
+ Contact Information
+
+
+ We are always open to feedback! For suggestions or questions about this Policy or our
+ Service, please contact us at{' '}
+
+ hello@deerhacks.ca
+
+ .
+
+
+ This privacy policy was last modified on December 20th, 2023.
+
>
diff --git a/pages/terms/index.tsx b/pages/terms/index.tsx
index 4d8b39b..dc33d36 100644
--- a/pages/terms/index.tsx
+++ b/pages/terms/index.tsx
@@ -6,12 +6,12 @@ import Typography from '@mui/material/Typography'
import BackButton from '@/components/Shared/BackButton'
import { useFeatureToggle } from '@/contexts/FeatureToggle'
-import Error404Page from '@/pages/404'
+import Error418Page from '@/pages/418'
const Terms = () => {
const { toggles } = useFeatureToggle()
- if (!toggles.dashboard && !toggles.bypassPage) return
+ if (!toggles.dashboard && !toggles.bypassPage) return
return (
<>
diff --git a/styles/global.css b/styles/global.css
index c95d7cb..ca02920 100644
--- a/styles/global.css
+++ b/styles/global.css
@@ -1,3 +1,7 @@
#__next {
overflow-x: hidden;
}
+
+* {
+ scroll-behavior: smooth;
+}