diff --git a/app/(content)/community-guidelines/page.tsx b/app/(content)/community-guidelines/page.tsx new file mode 100644 index 0000000..5af6edb --- /dev/null +++ b/app/(content)/community-guidelines/page.tsx @@ -0,0 +1,454 @@ +import classNames from "classnames"; +import Link from "next/link"; +import Center from "../../../components/Center"; + +import { cookies } from "next/headers"; +import { getUser, sessionTokenCookieName } from "../../../lib/getUser"; + +export default async function CommunityGuidelinesPage() { + const token = cookies().get(sessionTokenCookieName)?.value; + const user = await getUser(token); + + const age: number | null = user?.birthdayMonth + ? (Date.now() - user.birthdayMonth.getTime()) / 1000 / 60 / 60 / 24 / 364.25 + : null; + + const ageRange = age ? (age < 16 ? "13+" : age < 18 ? "16+" : "18+") : null; + + return ( +
+ Everyone wants to have a good experience online. These community + guidelines describe the kinds of behaviors we expect in our community + so that we can create a positive environment for everybody. +
+ ++ We welcome everyone into our community, regardless of their + background or identity, and we respect the privacy and safety of + others. +
++ We are a community that embraces learning, supports each other, + and disagrees gracefully. +
+We represent the best of human ingenuity and collaboration.
+Everything we share is appropriate for anyone 13+.
++ We are careful about sharing our personal information. Younger + users are required to take extra precaution. +
++ For your own safety, you are{" "} + required to be cautious + about the personal information you share online. This chart shows + what you are allowed to share depending on your age. +
++ |
+ 13+
+ {ageRange === "13+" && (
+
+ {user!.username}
+
+ )}
+ |
+
+ 16+
+ {ageRange === "16+" && (
+
+ {user!.username}
+
+ )}
+ |
+
+ 18+
+ {ageRange === "18+" && (
+
+ {user!.username}
+
+ )}
+ |
+
---|---|---|---|
+ Full Name + | +|||
+ Birthday + | +|||
+ Email + | +|||
+ Phone number + | +|||
+ Face or voice + | +|||
+ Precise location + | +
+ Please keep in mind that even if you are allowed to share + something, that doesn't necessarily mean it's a good idea. Take + caution to protect yourself. The moderation team will do their + best to help assist you with this, but it is ultimately your + responsibility. +
+{children}
++ + Power up your programming! + +
++ Begin by{" "} + + creating your first Leopard project + + . +
++ I am providing Leopard free of charge because I believe + everybody should have an equal opportunity to learn JavaScript. +
++ But storing projects costs money. Leopard can't currently afford + to provide more free storage. +
++ If you would like to support Leopard development and hosting + costs, I would greatly appreciate a{" "} + + Patreon donation + + . +
+ +
+ If you've run out of storage space and do not wish to delete any
+ projects,{" "}
+
+ We don't want your private information. No, + really. We only store what is absolutely necessary. Anything + else is a safety risk for you and a liability for us. +
++ We provide complete transparency. The policy + below describes exactly what we gather and why, and our code is + open source so you can see 100% of what we do. +
++ We fund Leopard through donations. Leopard + isn't in the business of selling your personal information. We + bring in money when people trust us and want to support our + work, so our incentives are aligned with yours. +
+
+ Questions or concerns? If you have questions or
+ comments about this privacy policy, you can{" "}
+
+ This privacy policy for Leopard ("we", "us", "our") describes + how and why we collect, store, and/or share ("gather", "use", + "collect", "process") your information when you use our services + ("Leopard"), such as when you visit our website at + leopardjs.com. +
++ If you do not agree with our policies and practices, please do + not use Leopard. +
++ To protect your privacy, Leopard avoids gathering unnecessary + information about you. We only collect personal information that you + provide to us directly, and we only collect what we absolutely need + to make the website function. +
++ This information will appear publicly on Leopard. Only submit + things that can be seen by everyone. +
++ This information will never be shared. However, it may be used + by the Leopard core team for the purposes of making Leopard work + or responding to your requests. +
++ Using information is only legal if it done for legitimate reasons. + Leopard's legal basis for most information processing is called + "legitimate interest", which means that we are using your + information responsibly, in ways that you would reasonably expect + based on the service we perform. +
++ Leopard also reserves the right to use your information if you + explicitly opt-in or if we are required to by law. +
++ No. Some of your information appears publicly on the website, as + described above, but we do not share any of your private information + with anyone outside of our core team (as described in the "private + information" section above). +
++ Like the vast majority of online services, we do use third party + providers to store your information. We store almost all of your + information on servers provided by Amazon Web Services, and our web + traffic is routed through Vercel. +
+ +
+ If you wish, you can{" "}
+
+ Anything you permanently delete on Leopard is immediately removed + from our database. However, we may retain backups of our database + for up to 30 days for the purposes of disaster recovery. +
+ ++ We may update this privacy policy from time to time. The updated + version will be indicated by the "last updated" date at the top of + the policy. +
++ If we make material changes to this privacy policy, we will notify + you either by prominantly displaying a notice on the Leopard website + or by contacting you directly via email. +
+
+ Leopard is made possible by generous support from the following
+ sponsors and donors. If you would like to support Leopard, please
+ consider{" "}
+
+ donating on Patreon
+ {" "}
+ or{" "}
+
+ View public profile +
- Everyone wants to have a good experience online. These community - guidelines describe the kinds of behaviors we expect in our - community so that we can create a positive environment for - everybody. -
- -- We welcome everyone into our community, regardless of their - background or identity, and we respect the privacy and safety - of others. -
-- We are a community that embraces learning, supports each - other, and disagrees gracefully. -
-- We represent the best of human ingenuity and collaboration. -
-Everything we share is appropriate for anyone 13+.
-- We are careful about sharing our personal information. Younger - users are required to take extra precaution. -
-- For your own safety, you are{" "} - required to be - cautious about the personal information you share online. This - chart shows what you are allowed to share depending on your age. -
-- |
- 13+
- {ageRange === "13+" && (
-
- {user!.username}
-
- )}
- |
-
- 16+
- {ageRange === "16+" && (
-
- {user!.username}
-
- )}
- |
-
- 18+
- {ageRange === "18+" && (
-
- {user!.username}
-
- )}
- |
-
---|---|---|---|
- Full Name - | -|||
- Birthday - | -|||
- Email - | -|||
- Phone number - | -|||
- Face or voice - | -|||
- Precise location - | -
- Please keep in mind that even if you are allowed to - share something, that doesn't necessarily mean it's a good idea. - Take caution to protect yourself. The moderation team will do - their best to help assist you with this, but it is ultimately - your responsibility. -
-{children}
-- - Power up your programming! - -
-- Begin by{" "} - - creating your first Leopard project - - . -
-- I am providing Leopard free of charge because I believe - everybody should have an equal opportunity to learn - JavaScript. -
-- But storing projects costs money. Leopard can't currently - afford to provide more free storage. -
-- If you would like to support Leopard development and hosting - costs, I would greatly appreciate a{" "} - - Patreon donation - - . -
- -
- If you've run out of storage space and do not wish to delete
- any projects,{" "}
-
- We don't want your private information. No, - really. We only store what is absolutely necessary. Anything - else is a safety risk for you and a liability for us. -
-- We provide complete transparency. The policy - below describes exactly what we gather and why, and our code - is open source so you can see 100% of what we do. -
-- We fund Leopard through donations. Leopard - isn't in the business of selling your personal information. We - bring in money when people trust us and want to support our - work, so our incentives are aligned with yours. -
-
- Questions or concerns? If you have questions
- or comments about this privacy policy, you can{" "}
-
- This privacy policy for Leopard ("we", "us", "our") describes - how and why we collect, store, and/or share ("gather", "use", - "collect", "process") your information when you use our - services ("Leopard"), such as when you visit our website at - leopardjs.com. -
-- If you do not agree with our policies and practices, please do - not use Leopard. -
-- To protect your privacy, Leopard avoids gathering unnecessary - information about you. We only collect personal information that - you provide to us directly, and we only collect what we absolutely - need to make the website function. -
-- This information will appear publicly on Leopard. Only submit - things that can be seen by everyone. -
-- This information will never be shared. However, it may be used - by the Leopard core team for the purposes of making Leopard - work or responding to your requests. -
-- Using information is only legal if it done for legitimate reasons. - Leopard's legal basis for most information processing is called - "legitimate interest", which means that we are using your - information responsibly, in ways that you would reasonably expect - based on the service we perform. -
-- Leopard also reserves the right to use your information if you - explicitly opt-in or if we are required to by law. -
-- No. Some of your information appears publicly on the website, as - described above, but we do not share any of your private - information with anyone outside of our core team (as described in - the "private information" section above). -
-- Like the vast majority of online services, we do use third party - providers to store your information. We store almost all of your - information on servers provided by Amazon Web Services, and our - web traffic is routed through Vercel. -
- -
- If you wish, you can{" "}
-
- Anything you permanently delete on Leopard is immediately removed - from our database. However, we may retain backups of our database - for up to 30 days for the purposes of disaster recovery. -
- -- We may update this privacy policy from time to time. The updated - version will be indicated by the "last updated" date at the top of - the policy. -
-- If we make material changes to this privacy policy, we will notify - you either by prominantly displaying a notice on the Leopard - website or by contacting you directly via email. -
-