From af54db6c136138c66cf5ca72419989525a0baa5c Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Tue, 7 Aug 2018 15:09:08 +0100 Subject: Initial project layout for django --- templates/errors/error.html | 56 -- templates/main/about/channels.html | 268 --------- templates/main/about/index.html | 40 -- templates/main/about/partners.html | 46 -- templates/main/about/privacy.html | 324 ----------- templates/main/about/rules.html | 124 ---- templates/main/base.html | 53 -- templates/main/bot/clean_logs.html | 81 --- templates/main/index.html | 38 -- templates/main/info/faq.html | 324 ----------- templates/main/info/help.html | 461 --------------- templates/main/info/index.html | 43 -- templates/main/info/resources.html | 103 ---- templates/main/jams/already.html | 26 - templates/main/jams/banned.html | 44 -- templates/main/jams/index.html | 144 ----- templates/main/jams/info.html | 128 ----- templates/main/jams/join.html | 362 ------------ templates/main/jams/profile.html | 103 ---- templates/main/jams/retract.html | 61 -- templates/main/jams/retracted.html | 31 - templates/main/jams/team_list.html | 106 ---- templates/main/jams/team_view.html | 291 ---------- templates/main/jams/thanks.html | 25 - templates/main/navigation.html | 165 ------ templates/main/ws_test.html | 26 - templates/main/ws_test_rst.html | 39 -- templates/robots.txt | 14 - templates/sitemap.xml | 64 --- templates/staff/index.html | 23 - templates/staff/jams/create.html | 78 --- templates/staff/jams/edit_basics.html | 79 --- templates/staff/jams/edit_ending.html | 152 ----- templates/staff/jams/edit_info.html | 309 ---------- templates/staff/jams/forms/preamble_edit.html | 150 ----- templates/staff/jams/forms/questions_edit.html | 354 ------------ templates/staff/jams/forms/questions_view.html | 593 ------------------- templates/staff/jams/forms/view.html | 755 ------------------------- templates/staff/jams/index.html | 252 --------- templates/staff/jams/infractions/view.html | 328 ----------- templates/staff/jams/participants.html | 163 ------ templates/staff/jams/teams/view.html | 513 ----------------- templates/staff/tables/edit.html | 50 -- templates/staff/tables/index.html | 32 -- templates/staff/tables/table.html | 165 ------ templates/wiki/base.html | 216 ------- templates/wiki/compare_revision.html | 13 - templates/wiki/page_delete.html | 25 - templates/wiki/page_edit.html | 137 ----- templates/wiki/page_in_use.html | 12 - templates/wiki/page_move.html | 26 - templates/wiki/page_source.html | 13 - templates/wiki/page_view.html | 18 - templates/wiki/revision_list.html | 36 -- templates/wiki/search.html | 23 - templates/wiki/search_results.html | 39 -- templates/wiki/special.html | 17 - templates/wiki/special_all.html | 26 - 58 files changed, 8187 deletions(-) delete mode 100644 templates/errors/error.html delete mode 100644 templates/main/about/channels.html delete mode 100644 templates/main/about/index.html delete mode 100644 templates/main/about/partners.html delete mode 100644 templates/main/about/privacy.html delete mode 100644 templates/main/about/rules.html delete mode 100644 templates/main/base.html delete mode 100644 templates/main/bot/clean_logs.html delete mode 100644 templates/main/index.html delete mode 100644 templates/main/info/faq.html delete mode 100644 templates/main/info/help.html delete mode 100644 templates/main/info/index.html delete mode 100644 templates/main/info/resources.html delete mode 100644 templates/main/jams/already.html delete mode 100644 templates/main/jams/banned.html delete mode 100644 templates/main/jams/index.html delete mode 100644 templates/main/jams/info.html delete mode 100644 templates/main/jams/join.html delete mode 100644 templates/main/jams/profile.html delete mode 100644 templates/main/jams/retract.html delete mode 100644 templates/main/jams/retracted.html delete mode 100644 templates/main/jams/team_list.html delete mode 100644 templates/main/jams/team_view.html delete mode 100644 templates/main/jams/thanks.html delete mode 100644 templates/main/navigation.html delete mode 100644 templates/main/ws_test.html delete mode 100644 templates/main/ws_test_rst.html delete mode 100644 templates/robots.txt delete mode 100644 templates/sitemap.xml delete mode 100644 templates/staff/index.html delete mode 100644 templates/staff/jams/create.html delete mode 100644 templates/staff/jams/edit_basics.html delete mode 100644 templates/staff/jams/edit_ending.html delete mode 100644 templates/staff/jams/edit_info.html delete mode 100644 templates/staff/jams/forms/preamble_edit.html delete mode 100644 templates/staff/jams/forms/questions_edit.html delete mode 100644 templates/staff/jams/forms/questions_view.html delete mode 100644 templates/staff/jams/forms/view.html delete mode 100644 templates/staff/jams/index.html delete mode 100644 templates/staff/jams/infractions/view.html delete mode 100644 templates/staff/jams/participants.html delete mode 100644 templates/staff/jams/teams/view.html delete mode 100644 templates/staff/tables/edit.html delete mode 100644 templates/staff/tables/index.html delete mode 100644 templates/staff/tables/table.html delete mode 100644 templates/wiki/base.html delete mode 100644 templates/wiki/compare_revision.html delete mode 100644 templates/wiki/page_delete.html delete mode 100644 templates/wiki/page_edit.html delete mode 100644 templates/wiki/page_in_use.html delete mode 100644 templates/wiki/page_move.html delete mode 100644 templates/wiki/page_source.html delete mode 100644 templates/wiki/page_view.html delete mode 100644 templates/wiki/revision_list.html delete mode 100644 templates/wiki/search.html delete mode 100644 templates/wiki/search_results.html delete mode 100644 templates/wiki/special.html delete mode 100644 templates/wiki/special_all.html (limited to 'templates') diff --git a/templates/errors/error.html b/templates/errors/error.html deleted file mode 100644 index dbb7e3b4..00000000 --- a/templates/errors/error.html +++ /dev/null @@ -1,56 +0,0 @@ -{% extends 'main/base.html' %} -{% block title %}Error {{ code }}{% endblock %} -{% block og_title %}Error {{ code }}{% endblock %} -{% block og_description %}{{ error_message | safe }}{% endblock %} - -{% block extra_head %} - -{% endblock %} - -{% block content %} -
-
-
-

{{ error_title }}

-
-
-
- -
-
-
-
-
- - - -
- -
- -
-
-
-
-
-
-
-
- -
-
-

{{ error_message | safe }}

-
- - -{% endblock %} - diff --git a/templates/main/about/channels.html b/templates/main/about/channels.html deleted file mode 100644 index ac3d95b5..00000000 --- a/templates/main/about/channels.html +++ /dev/null @@ -1,268 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Channels{% endblock %} -{% block og_title %}Channels{% endblock %} -{% block og_description %}Channel listing and what's each channel is for{% endblock %} -{% block content %} -
-
-
-

- Channels - - - - -

- - -

- Every channel on the server has a use, and we expect users to keep things relevant to the channel - whenever possible. Below, we've outlined all of the channels a normal user has access to send - messages to, and what they should be used for. -

- -

Discussion

- -

- Channels in this section are designated for discussion and chat, and shouldn't be used for help - requests in most cases. All channels in this category are on-topic. -

- - - - - - - - - - - - - - - - - - - - - - -
ChannelInfo
#python-discussion - Discussion about the Python programming language and ecosystem -
#tools - Discussion relating to Python tooling - IDEs, editors, package managers, documentation - generators, and so on -
#meta - Discussion and suggestions relating to the Discord server, site, bot, and other - projects of ours -
- -

Off-Topic

- -

- Channels in this section are designated for off-topic discussion, and any topic - may be talked about here once it follows our rules. Note that these channels are for discussion, - and are not places for you to dump images or memes. -

- -

- These channels are renamed daily by the server bot. Suggest funny channel names - on the dedicated GitLab meta issue. -

- -

Python Help

- -

- Channels in this section are strictly on-topic, and designated for asking general Python-related - questions. If you're a beginner or you need some help with your Python, this is probably where you - want to be. -

- -

- Please try to pick a channel that isn't busy when asking your question. If you're not sure - how best to ask a question, take a look at - our guide on that subject. -

- -

Topical Chat/Help

- -

- Channels in this section are strictly on-topic, and geared towards specific subjects. They can be - used for either discussion or asking questions - if you need help with one of the specific things - covered here, it's best to ask your question in the relevant channel rather than one of the general - help channels. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ChannelInfo
#databases - Discussion and questions relating to databases - both traditional and document-oriented - - such as SQLite, Postgresql, RethinkDB, Cassandra, Redis and so on -
#data-science - Discussion and questions relating to machine learning, natural language processing, - statistics and graphing and so on -
#dev-ops - Discussion and questions relating to devops - for example, deployment and configuration - of services, virtual machines and containers, and the day-to-day running of your - Python-powered services -
#discord-py - Discussion and questions relating to the - discord.py library for writing - Discord bots in Python - This channel refers specifically to the - async branch of discord.py, - which is currently the stable version but is heavily outdated -
#discord-py-rewrite - Discussion and questions relating to the - discord.py library for writing - Discord bots in Python - This channel refers specifically to the - rewrite branch of discord.py, - which is the most up-to-date version but is considered to be in beta -
#security - Discussion and questions relating to cybersecurity, especially in relation to Python - and best practises -
#software-testing - Discussion and questions relating to testing your Python applications -
#user-interface - Discussion and questions relating to designing and building user interfaces - in Python, and related libraries and tools - this includes graphical interfaces and - console interfaces -
#web-development - Discussion and questions relating to web development - including Python frameworks - such as Flask and Django, as well as HTML and JavaScript where it relates to the Web -
- -

Events

- -

- Channels in this section are strictly on-topic, and designated for the discussion of Python-related - events - for example, our Code Jams, as well as any - other large, related events that many of our users are partaking in. -

-

- If you're part of a related event and you don't see a channel for it here, feel free to ask for one! -

- -

Special

- -

- Channels in this section are designated for special uses, and don't really fit into the other - categories. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ChannelInfo
#bot-commands - A channel specifically for making use of the bots on the server without clogging up - the other channels -
#checkpoint - Invisible to most users after verifying themselves, this channel is where new - users verify that they accept the rules and - privacy policy -
#challenges - While currently not in use, this channel lists various programming challenges that - one might like to attempt during their learning efforts - we'll be replacing this - with something better later, so stay tuned! -
#reddit - A listing channel with a live feed of posts from - r/Python, our official subreddit. -
#show-your-projects - A listing channel for users to show off their Python-oriented projects - please note - that this is not a discussion channel, and we do not allow postings for communities - or commercial projects - and if possible, we prefer that you post a link to your - source code instead of a website -
#show-your-projects-discussion - Strictly on-topic discussion relating to projects posted in - #show-your-projects - we prefer that all discussion - relating to personal projects goes here -
- -

Voice

- -

- This section contains all of our general voice channels, as well as a single text channel - - #voice-chat. If you're in a voice channel but can't use a - microphone, you should use this channel to reply to other users using text instead of any - of the other channels. -

-
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/about/index.html b/templates/main/about/index.html deleted file mode 100644 index 35fe6ae0..00000000 --- a/templates/main/about/index.html +++ /dev/null @@ -1,40 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}About{% endblock %} -{% block og_title %}About{% endblock %} -{% block og_description %}Partners links, and information about the server{% endblock %} -{% block content %} -
-
-
-

- About - - - - -

- -

- Channels - -
- Server channel listings and information -

-

- Partners - -
- Links to our partnered servers -

-

- Rules - -
- Rules and infraction information for our community -

-
-
-
-{% endblock %} diff --git a/templates/main/about/partners.html b/templates/main/about/partners.html deleted file mode 100644 index 83803265..00000000 --- a/templates/main/about/partners.html +++ /dev/null @@ -1,46 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Partners{% endblock %} -{% block og_title %}Partners{% endblock %} -{% block og_description %}List and Links to Partner servers{% endblock %} -{% block content %} -
-
-
-

- Partners - - - -

-
- {% if partners is none %} -
-

- We were unable to load the partners.json file. If you see this, please - notify us! -

-
- {% else %} - {% for partner_name, partner_data in partners.items() %} -
-
- - {{ partner_name }} - -
-
-

{{ partner_data['description'] }}

-
- -
- {% endfor %} - {% endif %} -
-
-
-
-{% endblock %} diff --git a/templates/main/about/privacy.html b/templates/main/about/privacy.html deleted file mode 100644 index fa4e2aab..00000000 --- a/templates/main/about/privacy.html +++ /dev/null @@ -1,324 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Privacy{% endblock %} -{% block og_title %}Privacy{% endblock %} -{% block og_description %}Our privacy policy, and compliance information{% endblock %} -{% block content %} -
-
-
-

- Privacy - - - - -

- - -

- We take every step to ensure that your data is used ethically and that includes making sure that - you know exactly what data we collect, and what we do with it. That means that instead of a - bunch of legalese, we've provided this information in an easy, human-readable form below. -

- -

- Please note that we are a completely non-profit community. We have no interest in selling your - data, or shipping it off to third parties. Our community is entirely volunteer-run - it does - not have any form of monetary income whatsoever - and we believe that this is how it should be. -

- -

Data collection

- -
-

- Please note that data marked with blurple text below is not - automatically removed. We need to hold onto this information in order to maintain infraction records - and ensure the smooth running of our community. -

-

- We do not store any data until you have verified yourself in #checkpoint on the server, - and certified that you agree to our rules and privacy policy. If you are leaving the server and would - like us to remove this data as well, please contact a member of staff directly. -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
What we collectWhen it's collectedWhat it's used forWho can access it
Discord user ID!accept run on DiscordStatistics, data association (infractions, code jam applications, etc)Administrative staff
Discord username and discriminator!accept run on DiscordDisplay purposes (alongside ID in staff areas, public profiles)Public (for code jam team listings and winner info) and staff areas
Discord avatar URLs!accept run on DiscordDisplay purposes (alongside ID in staff areas, public profiles)Public (for code jam team listings and winner info) and staff areas
Assigned roles on Discord!accept run on DiscordAccess control for the site, infractions, role restoration after kicksAdministrative staff
Messages sent on Discord!accept run on Discord - Stored in memory by the bot for processing temporarily, may also end up in - staff-only logging channels for the purposes of accountability and infraction - management - Administrative staff
OAuth access and refresh tokenDiscord login on siteUsed to find your Discord user ID when you log inAdministrative staff
GitLab usernameCode jam profileUsed to identify you on GitLab as part of a code jam teamPublic, for code jam team listings
TimezoneCode jam profileA factor in code jam team match-upsAdministrative staff
System InformationCode jam signupUsed to verify that you have a working environmentAdministrative staff
Email AddressIssues emailed directly to GitLabUsed to keep track of issue submissionsGitLab staff - never stored in our database
- -

- Note that we don't ordinarily collect your email address, and your email address will never be - stored on our servers. The only time it will be shown is in the title of any issues you create on - GitLab by directly emailing us on the meta@ email address. These issues are confidential, - not associated with a user account, do not require a GitLab account, and will only ever be seen by - staff. -

- -

- Collecting consent - - - - -

- -

- If you joined the community on or before the 20th of May, 2018, you will have seen an announcement about our - privacy policy on the Discord server. You will have had the opportunity to leave the server if - you weren't happy with it. If you decided to stay, then we will consider you to have accepted - our use of your data, as detailed on this page. -

-

- If you joined the community after the 20th of May, 2018, you will have been greeted with the - #checkpoint channel. In this channel, you must run the !accept - command to signify that you accept both our rules and this privacy policy. This will also have been - detailed in a message in that channel. -

-

- Please note that your acceptance of this privacy policy is retroactive, and you agree that any - revisions to it will apply when they are published. We will attempt to keep everyone updated on - changes to this policy via the usual announcement channels - if at any point you are not happy with - a change to the privacy policy, please bring it up with a member of staff. If we're unable to - solve your issue in a satisfactory way, you may remove your data as detailed below. -

- -

- Data removal - - - - -

- -

- If you'd like to remove your data from our servers, there are two options available to you. -

- -
-
-
-
-

Complete data removal

-
- -
-

- If you'd like to remove all of your personal data from our servers, all you need to do - is leave the Discord server. As much of the data we collect is necessary for running - our community, we are unable to offer you community membership with zero data collection. -

-

- Please note that data marked with blurple text in the table above - is not automatically removed. We need to hold onto this information in order to maintain infraction records - and ensure the smooth running of our community. If you are leaving the server and would like us to remove - this data as well, please contact a member of staff directly. -

-

- Once you've left the Discord server, your data is removed automatically. Please note that - for the sake of data integrity and moderation purposes, we do not remove your Discord - user ID from our database - but we do anonymize your data as far as possible. -

-

- As with deleting your code jam profile directly, you will be issued an automatic ban - from future code jams if you have applied for or are currently taking part in a - code jam. -

-
-
-
-
-
-
-

Code jam profile removal

-
- -
-

- If you've provided us with a code jam profile in the past and would like to remove - it, you may do so by heading to the - "My Profile" page, - where you will find a button that will remove your profile. -

-

- Please note that this is a nuclear option. If you have applied for or are currently - taking part in a code jam, this will void your application and you will receive an - automatic ban from future code jams until you've contacted us about it. -

-
-
-
-
- -

- GDPR compliance - - - - -

- - -

- Under the terms specified above, we do aim to comply with GDPR. While we do not currently have - an automated way for users to export the data they've provided to us, we're happy to do this - manually or answer any other GDPR- or privacy-related queries you may have. Feel free to contact - our GDPR officer on Discord (gdude#2002), or any other member of the administrative - staff. -

-

- We believe that the best way to keep your personal data safe is to avoid collecting it at all. - Discord itself is GDPR-compliant and they've already done the legwork required to ensure that - your data may be collected - so we don't see the need to collect your personal information - ourselves. Don't forget that by using Discord, you are stating that you are of legal age in - your country to give consent to process your data! -

-

- We are currently working on an automated way to get all of your data in both a human-readable - and machine-readable format. Keep your eye on the usual announcements channels for more information - on that, as it happens. -

- -

- Changelog - - - - -

- - -
    -
  • -

    July 27th, 2018

    -

    - As we're replacing Rowboat (the bot we use for moderation), we need to hold onto some of - your data - even after you've left the server. This is necessary to ensure the smooth - running and security of our community. -

    -
  • -
  • -

    July 3rd, 2018

    -

    - While we don't collect your email addresses, they are visible on GitLab if you email an - issue directly to our meta@ email address, but only to staff. -

    -
  • -
  • -

    June 7th, 2018

    -

    - We no longer collect GitHub usernames - instead, we collect GitLab usernames. Additionally, - we now collect user avatar URLs for display purposes. -

    -
  • -
  • -

    June 5th, 2018

    -

    - Rectified an omission in the old privacy policy, where the system information you provide - as part of a code jam signup wasn't mentioned. -

    -
  • -
  • -

    May 31st, 2018

    -

    - We no longer collect your date of birth, and all collected dates of birth have been - removed from our database. The reason for this is that Discord itself already complies with - GDPR - and in order for you to sign up for a code jam, you must already have a Discord - account. -

    -
  • -
  • -

    May 20th, 2018

    -

    - Completed the first version of our privacy policy. We also updated our OAuth scopes for - Discord logins - we no longer collect your email, or get the access to join you to servers - automatically. All collected emails have also been removed from the database. -

    -
  • -
-
-
-
-{% endblock %} diff --git a/templates/main/about/rules.html b/templates/main/about/rules.html deleted file mode 100644 index b11f91d9..00000000 --- a/templates/main/about/rules.html +++ /dev/null @@ -1,124 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Rules{% endblock %} -{% block og_title %}Rules{% endblock %} -{% block og_description %}The server rules, along with an explanation of what happens when they're broken{% endblock %} -{% block content %} -
-
-
-

- Rules - - - - -

- -

- We have a small but strict set of rules on our server. Please read over them and take them on board - - if you don't understand anything or need some clarification, feel free to ask any staff member! -

-
    -
  1. - Be polite, and do not spam -
  2. -
  3. - Follow the Discord community guidelines -
  4. -
  5. - Don't intentionally make other people uncomfortable - if someone asks you to stop discussing - something, you should stop -
  6. -
  7. - Be patient both with users asking questions, and the users answering them -
  8. -
  9. - We will not help you with anything that might break a law or the terms of service of any other - community, site, service, or otherwise - No piracy, brute-forcing, captcha circumvention, - sneaker bots, or anything else of that nature -
  10. -
  11. - Listen to and respect the staff members - we're here to help, but we're all human beings -
  12. -
  13. - All discussion should be kept within the relevant channels for the subject - See the - channels page for more information -
  14. -
  15. - This is an English-speaking server, so please speak English to the best of your ability - - Google Translate should be fine if you're not sure -
  16. -
  17. - Keep all discussions safe for work - No gore, nudity, sexual soliciting, references to suicide, - or anything else of that nature -
  18. -
  19. - We do not allow advertisements for communities or commercial projects - Contact us directly if - you want to discuss a partnership! -
  20. -
- -

- Nickname Policy - - - - -

- -

- In order to keep things pleasant and workable for both users and staff members, we enforce the - following requirements regarding your nickname. -

-
    -
  1. No blank or "invisible" names
  2. -
  3. No slurs or other offensive sentiments
  4. -
  5. No noisy unicode characters - for example, z̯̯͡a̧͎̺̻̝͕̠l̡͓̫̣g̹̲o̡̼̘ or byte order marks
  6. -
  7. No nicknames designed to annoy other users
  8. -
  9. Make sure the nickname is easy to mention using a keyboard that can only type ASCII characters
  10. -
-

- Staff reserves the right to change the nickname of any user for any reason. Failure to comply with these - requirements may result in you losing the right to change your nickname. We also reserve the right to - discipline users with offensive usernames, regardless of the nickname they're using. -

- -

- Infractions - - - - -

- -

- We have a generally no-nonsense policy when it comes to our rules. If you notice someone breaking - them, feel free to mention or DM a staff member and we'll try to deal with it as soon as possible. -

-

- The possible actions we take based on infractions can include the following: -

-
    -
  • A public verbal or textual warning
  • -
  • Forced nick changes, where appropriate
  • -
  • A short temporary mute
  • -
  • A long temporary mute
  • -
  • A kick from the server
  • -
  • A temporary ban from the server
  • -
  • A permanent ban from the server
  • -
-

- While we do discuss more serious matters internally before handing out a punishment, simpler - infractions are dealt with directly by individual staffers and the punishment they hand out is left - to their own discretion. -

-
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/base.html b/templates/main/base.html deleted file mode 100644 index bb12fc9b..00000000 --- a/templates/main/base.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - {% block head %} - Python Discord | {% block title %}{% endblock %} - - - - - - - - - - - - - - - - - {% endblock %} - {% block extra_head %} - - {% endblock %} - - - {% if current_page == "main.index" %} -
- {% else %} -
- {% endif %} - {% include "main/navigation.html" %} - {% block content %}{% endblock %} -
- -
-
-
-

- This website uses Python and - Flask, and was developed collaboratively on - GitLab. -
- For privacy & GDPR-related info, please see this page. -

-
-
-
- - diff --git a/templates/main/bot/clean_logs.html b/templates/main/bot/clean_logs.html deleted file mode 100644 index 83ee0cba..00000000 --- a/templates/main/bot/clean_logs.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - - {% for message in messages %} - - - {{ message.author }}{{ message.timestamp }} | User ID: {{ message.user_id }}
- {{ message.content }} - - - {% for attachment in message.attachments %} - {{ attachment }} - {% endfor %} - - - {% for embed in message.embeds %} -
- - - {% if embed.title %} - {% if embed.url %} - {{ embed.title }}
- {% else %} - {{ embed.title }}
- {% endif %} - {% endif %} - - - - {% if embed.description %} -
- {{ embed.description }} - {% endif %} - - - {% if embed.fields %} -
- {% for field in embed.fields %} -
-
- {% if field.name %} - {{ field.name }}
- {% endif %} - - {{ field.value }} -
- {% endfor %} -
- {% endif %} - - - {% if embed.image %} -
- {% if embed.image.url %} - - {% endif %} - {% endif %} - - - {% if embed.thumbnail %} -
- {% if embed.thumbnail.url %} - - {% endif %} - {% endif %} - - - {% if embed.footer %} -
- {% if embed.footer.text %} - {{ embed.footer.text }} - {% endif %} - {% endif %} -
- {% endfor %} - {% endfor %} - - - diff --git a/templates/main/index.html b/templates/main/index.html deleted file mode 100644 index c73c2e4b..00000000 --- a/templates/main/index.html +++ /dev/null @@ -1,38 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Home{% endblock %} -{% block og_title %}Home{% endblock %} -{% block content %} -
-
-

- Python Discord -

- -

- We're a large, friendly community focused around the Python programming language, - open to those who wish to learn the language or improve their skills, as well as - those looking to help others. -

-

- We organise regular community events and have a dedicated staff of talented Python developers - available to assist around the clock. Whether you're looking to learn the language or working - on a complex project, we've got someone who can help you if you get stuck. -

-
- - - -
-
-
-

- Please note: this site is under construction. What you see now may be vastly different - from the final project state. Feel free to chat to us on Discord if you're curious! -

-
- -
-
-{% endblock %} diff --git a/templates/main/info/faq.html b/templates/main/info/faq.html deleted file mode 100644 index e742f317..00000000 --- a/templates/main/info/faq.html +++ /dev/null @@ -1,324 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}FAQ{% endblock %} -{% block og_title %}FAQ{% endblock %} -{% block og_description %}Frequently Asked Questions{% endblock %} -{% block content %} -
-
-
-

- Frequently Asked Questions - - - - -

- -

- These are some of the most-asked questions we get on a day-to-day basis. If you have a - question, be sure to check this page and see if we've answered it already. If you'd like to - suggest an entry to this page, why not submit a merge request - on GitLab? -

- -
-
-

- Starting Out with Python - - - - -

-
- -
- Is Python a good first language? -
-
-

- In our opinion, yes it is. It's a very powerful language, but it will force you to - write readable code and it's designed to allow you to write code very quickly, without - you having to keep your head in a book for hours on end. -

-

- Python is used as a teaching language in many schools, colleges and universities - but - it's a very capable language that is suitable for many real-world tasks as well, and - it's only gaining in popularity! -

-
- -
- I'm new to Python - how/where do I get started? -
-
-

- How you get started with Python is very much going to depend on your prior programming - experience. If you're already an experienced programmer, you should should have no - trouble following pretty much any guide out there - but for true beginners, we recommend - full-on tutorials such as Automate the Boring Stuff with Python. -

-

- For more information on that and other resources, feel free to take a look at - our resources page. -

-
- -
- Should I start with Python 2 or Python 3? Which is better? -
-
-

- Generally, we're always going to recommend that people new to Python start with Python 3. - There's a few reasons for this: -

-
    -
  • - Python 3 is the latest-and-greatest version. It gets all the new features and is in - active development. -
  • -
  • - Python 2 lacks many features available in Python 3 and is mechanically different in a - few important areas. -
  • -
  • - Python 2 is being sunset and will reach its end of life in 2020. It will not be - maintained past 2020. There will be no Python 2.8. -
  • -
  • - Most libraries now fully support Python 3, and many are dropping or have dropped support - for Python 2. -
  • -
- -

- The only reason a user may want to stick with Python 2 is if they are stuck working a job - with a legacy codebase that cannot or will not be updated to work with Python 3. To users - in those situations: Commiserations. -

-
- -
- What IDE/Editor should I use? Should I use an IDE if I'm a beginner? -
-
-

- If you're a beginner, you should not be using an IDE. This is because IDEs do a lot of - basic things automatically where a beginner should learn to do things themselves - for - example, some IDEs can generate huge chunks of code or catch beginner errors without you - even noticing you'd made a typo. -

-

- If you're not a beginner or you decide to try an IDE regardless, we heavily recommend - PyCharm. This is a well-known IDE which - is entirely in a league of its own, and has a very capable free "community" edition that - will serve most people's needs. -

-

- We've listed off some of our favourite editors and IDEs on - our resources page. Feel free to - take a look if you're not sure what's out there. -

-

- By the way, we host quarterly code jams - for the users of our community, and the prize for winning it is a one-year PyCharm Pro - license - sponsored by JetBrains. If you like PyCharm and are thinking of grabbing a copy - of Pro, why not join in? -

-
- -
- What's wrong with "Learn Python the Hard Way"? -
-
-

- Learn Python the Hard Way, Zed Shaw's most infamous work, is largely considered by the - Python community to be poor-quality and misleading in general. This is due to numerous - issues with the material, which include being extremely opinionated and sometimes - condescending, out of date, confusing and even wildly incorrect in some places. -

-

- Learners that have used Learn Python the Hard Way as their primary learning material often - find themselves confused and asking questions that really don't make that much sense - it's - also been observed that learners in this position tend to suffer heavily from the infamous - XY Problem. -

-

- For more information on why you should avoid Learn Python the Hard Way, you can have a look - at this article on the sopython - wiki, - which enumerates the most egregious issues with it. -

-
- -
- If I type "python" or "pip" into a terminal, I get "command not found". -
-
-

- That's not a question, but there's a few things you can look at to try to solve this. -

-
    -
  • - If you're on Windows, the python installer has an option labelled "Add to PATH" - - Make sure you check this when you install python. If you forgot to do that the - first time, then the easiest way to solve this problem is to reinstall Python -
  • -
  • - If you're on Windows, there's a good chance that python and - pip aren't what you actually need to run! Some options you could - try include py -3, python3 or python36 - if - one of these works, then you should be able to use py -3 -m pip, - pip3 or pip36 as well -
  • -
  • - If you're on a Mac, Python comes with the OS - however, it's quite likely to be - an old version. You can solve this by using Homebrew - to install a more recent version of Python, which should be made available as - python3 -
  • -
-
- -
- Why can't I import this module? -
-
-

- When finding yourself unable to import something in Python, you can follow these - steps to figure it out: -

-
    -
  • - Is the module part of Python's standard - library? -
  • -
  • - If not, have you installed it? If the module is on - PyPi, - you can install it using pip in a terminal: pip install module_name -
  • -
  • - If you think you've installed it, try upgrading it with pip in a terminal: - pip install -U module_name - Make sure there were no errors during - installation -
  • -
  • - If all else fails, make sure you've read the module documentation fully, and ensure - that you're following it correctly -
  • -
  • - If you're sure that you've done everything correctly, you may have found a bug - come - and chat to us, and we might recommend that you report your problem to the developer -
  • -
-
- -
- What's PEP8? Should I care about code style? -
-
-

- Python Enhancement Proposal #8 - is known as the official Python style guide. It sets out a lot of very clear guidelines - which help you structure your code. -

-

- One of the most useful things you can do when writing your code is to follow a style - guide. It makes it easier to read your code overall, but a consistent style guide - is very important as it means that everyone that contributes to your project is - writing code in the same style - meaning everyone will be able to read it. As PEP - itself reads: "A foolish consistency is the hobgoblin of little minds". -

-

- PEP8 isn't the only style guide available to you, but it is the most widely used - and best-understood of them - and for that reason, we do recommend you use it. That - said, - Google's Python Style Guide - is also widely used by Google engineers. -

-
- -
-

- Community Questions - - - - -

-
- -
- Why did you move to GitLab? Do you hate Microsoft? -
-
-

- While many of our users do prefer to work on Linux, we don't hate Microsoft. While - - the news about Microsoft's acquisition of GitHub - - did prompt us to initially mirror our GitHub repositories to GitLab for safety, we didn't - outright make the move because of the acquisition - in fact, some of our staff members - had been suggesting we use it from the start! Here's some of the reasons we decided - to move: -

-
    -
  • - Prior to moving to GitLab, our development efforts were split among three services: - ClickUp for issue tracking, - GitHub for code storage and collaboration, - and Travis for continuous integration and testing. - GitLab is a fantastic alternative to all of these services, and moving to it has allowed - us to consolidate our efforts in one place. -
  • -
  • - For a long time now, GitLab has been innovating on features and pushing them to production - much faster than GitHub. Using GitLab gives us far more options when it comes to issue - management, merge requests, continuous integration and deployment - to name - a few things. -
  • -
  • - In the vast majority of cases where GitHub and GitLab solve the same problem or - have a similar feature, GitLab does it better. -
  • -
  • - GitLab has had free private repositories for some time now, and these are convenient - for us to store internal documentation and tasks in. -
  • -
  • - GitLab is fully open-source and quite easy to host yourself. In the event that the - public platform ends up dying or being abused by its staff, we can simply spin - up our own instance and keep on working as if there were no problems. -
  • -
-
- -
-

- Misc. Questions - - - - -

-
- -
- What does "real" Python development look like? -
-
-

- Python is a very versatile language, and a real-life application using it can take - many forms. That said, we do plenty of Python development here ourselves. If - you're curious about this question, then why not take a look at - our projects? -

-
-
-
-
-
-{% endblock %} diff --git a/templates/main/info/help.html b/templates/main/info/help.html deleted file mode 100644 index 9cc09af2..00000000 --- a/templates/main/info/help.html +++ /dev/null @@ -1,461 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Getting Help{% endblock %} -{% block og_title %}Getting Help{% endblock %} -{% block og_description %}A guide on how to ask good questions, how to avoid annoying those helping out, and how to interpret answers{% endblock %} -{% block content %} -
-
-
-

- Getting Help - - - - -

- -

- This document is intended to provide you with the information you need to get help as quickly and - effectively as possible. If you're stuck on a problem or you just don't understand something, feel - free to join us and ask for help - you can use this as a reference when forming your question. -

-

- Much of this document is based on the sentiments expressed by Eric Steven Raymond and Rick Moen - in their essay, How To Ask Questions The Smart Way. - Please note that the essay is very long and may be considered rude by some. Additionally, the people - behind that essay are in no way affiliated with us - please do not bother them with your Python - problems. -

-

- Before You Ask - - - - -

- -

- Before you ask your question, there are a few things you can do to find an answer on your own. - Experienced developers will do the following: -

-
    -
  • Read the official documentation for whatever you're working with
  • -
  • Use a debugger to inspect your code
  • -
  • Do some research online - for example, on Stack Overflow
  • -
  • Read the source code for whatever you're working with
  • -
  • Search the message history of the help channels
  • -
-

- Essentially, doing your research is the first step towards a solution to any problem. If your - problem isn't extremely general, we're going to be doing exactly these steps ourselves when you ask, - so doing the legwork beforehand saves everyone a lot of time. -

-
-
-
-
-
-
-

- - - Creativity requires input, and that's what research is. You're gathering material with which to - build. -

- - Gene Luen Yang - -
-
-
-
-
-
-

- If you're an absolute beginner, take a moment to step back from the problem. - Have you read a book or done a - tutorial? There's a huge amount of resources out there, many of which are going to help you a lot more than - us answering the beginners' questions for you. If you're following a tutorial, book or course and - you don't understand something, then that is the correct time to ask a beginners' - question. Of course, we won't turn you away if you do have a beginners' question — by all - means, - come to us if you do have a problem. -

-

- Have you read the official documentation for the module or technology you're working with? The - official Python 3 docs are a fantastic and valuable - resource, so if you're using a bundled module, your first port of call should be there. If you're - using a third-party library, often they will have some official documentation uploaded somewhere - — - try having a Google around, or take a look at PyPi in case they've - linked it from there. -

-

- If you can't find the documentation or you find it lacking, the next place to look is the source - code. - Grab a decent IDE (we recommend PyCharm Community) - and a coffee, download a copy of the project and open it up, and get to browsing! -

-

- If you're still confused, try searching the Internet for people that have already had the same - problem. Often, you won't be the only person to have encountered the issue you're dealing with - more often - than not, you'll find a GitLab ticket or a StackOverflow question along with a fix or answer to your - question already posted. -

-

- If none of the above helps you or you're lost, scared and alone, feel free to continue on to the - Discord server. You can use the search feature (the at the top right) to check - whether someone else has asked your question recently, or just feel free to pick one of the help channels - and ask your question. -

-

- A Good Question - - - - -

- -

- When you're ready to ask a question, there's a few things you should have to hand before forming - a query. -

-
    -
  • - A code example that illustrates your problem -
      -
    • If possible, make this a minimal example rather than an entire application
    • -
    -
  • -
  • Details on how you attempted to solve the problem on your own
  • -
  • Full version information — for example, "Python 3.6.4 with - discord.py 1.0.0a"
  • -
-

- Your question should be informative, but to the point. More importantly, how you phrase your - question - and how you address those that may help you is crucial. Courtesy never hurts, and please type - using correctly-spelled and grammatical language as far as you possibly can. -

-

- When you're inspecting a problem, don't be quick to assume that you've found a bug, or that your - approach is correct. While it helps to detail what exactly you're trying to do, you should also - be able to give us the bigger picture - describe the goal, not just the step. Describe the problem's - symptoms in chronological order - not your guesses as to their cause. -

-
-
-
-
-
-
-
-

- Bad Questions -

-
-
-

- Good Questions -

-
-
-
-
-

- Where can I find information on discord.py? -

-

- This question suggests that the person asking it hasn't done any research, or even a simple - Google search. -

-
-
-

- I used Google to try to find more information about "discord.py 1.0.0a", but I couldn't - really - find anything useful. Does anyone know where I might find a guide to writing commands - using this library? -

-
-
-
-
-
-
-
-
-
-
-
-
-

- Pillow puts my text at the bottom of the image instead of where I wanted it. Why is it broken? -

-

- This question assumes that the problem is with Pillow itself, and that it isn't - the questioner's fault. It also doesn't provide enough information on the problem. -

-
-
-

- Pillow appears to insert text at the bottom of the image if the given X coordinate is negative. - I had a look at the documentation and searched Stack Overflow, but I couldn't find any - information on using negative coordinates to position text. Has anyone attempted this? -

-
-
-
-
-
-
-
-
-
-
-
-
-

- I'm having some trouble writing a YouTube random URL generator - can anyone help? -

-

- This question provides no information on the problem, and asks for help in a way that isn't - engaging - some people will find this annoying, as answering your question is guaranteed - to result in another question. -

-
-
-

- My YouTube random URL generator appears to be returning false positives for tested URLs, - stating that a URL points to a real video when that video doesn't actually exist. Obviously - there's some issue with how this is checked, but I can't put my finger on it. Is there anything - I can check? -

-
-
-
-
-
-
-
-
-
-
-
-
-

- I want to share a YouTube video with my friend, but the video doesn't move when I print the page. - How do I make the video move? -

-

- This question assumes a specific (wrong) approach, and isn't open-ended enough to account for - the possibility of a better solution. -

-
-
-

- I'm attempting to figure out the best way to share a YouTube video with my friend that doesn't - have the Internet at home. I can't think of a better approach than printing the page, which - obviously doesn't help much given that the video doesn't move on the paper - can anyone think - of a better approach to this? -

-
-
-
-
-
-
-
-
-
-
-
-
-

- I was given this assignment by my teacher, but I'm not sure how to approach it. Does anyone - have any ideas? -

-

- This question is clearly a homework question. Homework is supposed to challenge you, and we - will not provide solutions to homework. Instead, ask a more general question. -

-
-
-

- I have a list of numbers - how do I calculate how many of them are even? Is there a way - to remove all the odd numbers from my list? Are there quick ways to find the average of - a list of numbers, or add them all together? -

-
-
-
-
-
-
-
-

- Interpreting Answers - - - - -

- -

- Programmers have a certain set of mannerisms. While we all try to be as courteous with our replies - as possible, occasionally it may seem as if a helper is annoyed or disinterested in your question. - This isn't personal - it's just part of our culture. Remember that the people you're asking for help - are humans and that they're here voluntarily, in their free time. -

-

- If you've asked a question and you're told to read the documentation or search the web, you should - do that. When this happens, it's often the case that the person responding has the information you need - open in their web browser and either thinks that it's very easy to find, or that you would learn - more from seeking out the source of the information yourself. If you've already done this, you should - tell us by including it in your question! -

-

- If you don't understand an answer, don't immediately bounce back and demand clarification. Use the - tools available to you (the internet, documentation, source code) to help you understand the answer, and - if you still can't figure it out, ask for clarification and provide any relevant information you learned - during your research. -

-
-
-
- -
-
-
-

- - - Successful people ask better questions, and as a result, they get better answers. -

- - Tony Robbins - -
-
-
- -
-
-
-

- Much of what looks like rudeness within programming communities is not intended to be offensive and - it's often just a product of the down-to-earth, direct style of communication that is typical in - a community that is more concerned with solving problems than anything else. If you perceive - rudeness, try to react calmly. If a user really is acting out, then chances are that a member of staff will - call them out on it. If this doesn't happen, contact a member of staff directly and they will try - to clarify this with you. -

-

- It's okay to mess up. It happens to all of us. That said, if you mess up badly enough, it's likely - that you will be corrected there and then, in public and with a verbal scalpel. Take this as a - learning experience and don't let it get to you - this is a common and appropriate response in - many programming circles. Community standards do not maintain themselves - they're maintained by - people applying actively them, visibly, in public. -

- -

- What Not To Ask - - - - -

- - -

- Can I ask a question? -

-

- Yes. Always yes. Just ask it. -

- -

- Can I use str() on a discord.py Channel object? -

-

- Try it yourself and see. Experimentation is a great way to learn, and you'll save a lot of time by - just trying things out. Don't be afraid of your computer! -

- -

- My code doesn't work -

-

- This isn't a question, and it provides absolutely no context or information. Depending on the moods - of the people that are around, you may even find yourself ignored. Don't be offended by this - just - try - again with a better question. -

-
-
-
- -
-
-
-

- - - So much of life isn’t about having the right answer; it’s about knowing the right question. -

- - Duane Hewitt - -
-
-
- -
-
-
-

- Can anyone help me break into someone's Facebook account?
- Can anyone help me download anime from this streaming site's listing page?
- How do I write a virus? -

-

- We will absolutely not help you with hacking, pirating, or any other illegal activity. A question - like this is likely to be followed up with a ban if the person asking it doesn't back down quickly. -

- -

- Can I send you a private message? -

-

- No. We do not provide one-on-one tutoring - you can hire someone locally if you really need that. We - also prefer that questions are answered in a public channel as it means that everyone else present - is able to learn from them. If you're working with code that you are unable to disclose for any - reason, you should try to make your question more general and write a separate, small piece of code - to illustrate your problem. -

- -

- Can you help me over Teamviewer? -

-

- No. We will not help you by accessing your computer remotely, or watching a video stream of your - problem, unless the problem is something that inherently requires that. The reason for this is that - our time is limited, and watching a video or participating in a screen-sharing session means that we - have to focus on you, instead of being able to deal with other people while you're figuring out an - answer. If your problem is graphical and you can't adequately describe it without a visual, take a - screenshot or provide a short screen recording to illustrate your problem. -

-
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/info/index.html b/templates/main/info/index.html deleted file mode 100644 index 07e1a4d8..00000000 --- a/templates/main/info/index.html +++ /dev/null @@ -1,43 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Information{% endblock %} -{% block og_title %}Information{% endblock %} -{% block og_description %}Informational pages, listings and guides{% endblock %} -{% block content %} -
-
-
-

- Information - - - - -

- - -

- Code Jams   - -
- Information on our monthly code jams, where users are paired into teams to compete with each other -

- -

- Getting Help   - -
- How to ask for help - and how to interpret the responses -

- -

- Resources   - -
- A page full of useful resources for learning and working with Python -

-
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/info/resources.html b/templates/main/info/resources.html deleted file mode 100644 index 574d0bfb..00000000 --- a/templates/main/info/resources.html +++ /dev/null @@ -1,103 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Resources{% endblock %} -{% block og_title %}Resources{% endblock %} -{% block og_description %}A list of helpful resources for beginner and experienced Python programmers alike{% endblock %} -{% block content %} -
-
-
-

- Resources - - - - -

- -

- This page is intended to be a listing of useful resources for beginner and experienced Python - programmers alike. This page is generated from a JSON file - on GitLab - - if there's a great resource that you love and you don't see it on this page, feel free to submit a - merge request! -

-

- Some resources aren't free - the below key will help you figure out whether you need to pay for - a resource or not. You can also hover them for more information on the payment (or tap them on - mobile). -

-
-
- - Free -
- -
- - Payment optional -
- -
- - Paid -
-
- {% if categories is none %} -
-

- We were unable to load the resources.json file. If you see this, please - notify us! -

-
- {% else %} - {% for category_name, category_data in categories.items() %} -

- {{ category_name }} - - - - -
- -

- {% for item, data in category_data.resources.items() %} -

- {% if data["payment"] == "optional" %} - {% set file_path = static_file("images/payment_icons/yellow.svg") %} - {% elif data["payment"] == "paid" %} - {% set file_path = static_file("images/payment_icons/red.svg") %} - {% else %} - {% set file_path = static_file("images/payment_icons/green.svg") %} - {% endif %} - - {% if data["payment_description"] %} - - {% else %} - - {% endif %} - -

- {{ item }}
-
- {% for url in data.urls %} - - {% endfor %} -
-
- -
- {{ data.description }} -

- {% endfor %} - {% endfor %} - {% endif %} -
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/jams/already.html b/templates/main/jams/already.html deleted file mode 100644 index 16cba149..00000000 --- a/templates/main/jams/already.html +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Already applied{% endblock %} -{% block og_title %}Code Jams | Already applied{% endblock %} - -{% block content %} -
-
-

- Code Jam {{ jam.number }}: {{ jam.title }} -

- - -

- Thanks for your interest in this code jam! It looks like we already have an application here for you, - so please just sit back, relax, and we'll let you know whether you've been selected for this code - jam when the time comes. -

- - -  Back to all code jams - -
-
-{% endblock %} diff --git a/templates/main/jams/banned.html b/templates/main/jams/banned.html deleted file mode 100644 index fa47c1ec..00000000 --- a/templates/main/jams/banned.html +++ /dev/null @@ -1,44 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Banned{% endblock %} -{% block og_title %}Code Jams | Banned{% endblock %} - -{% block content %} -
-
-

- Code Jam {{ jam.number }}: {{ jam.title }} -

- - - {% if infraction.number == -1 %} -

- Thanks for your interest in this code jam! Unfortunately, due to your previous actions, you have been - permanently banned from participating in our code jams. -
-
- The reason given is: {{ infraction.reason }} -
-
- If you feel that this is a mistake, please feel free to contact one of the admins on Discord. -

- {% else %} -

- Thanks for your interest in this code jam! Unfortunately, due to your previous actions, you have been - temporarily banned from participating in our code jams. -
-
- The reason given is: {{ infraction.reason }} -
-
- If you feel that this is a mistake, please feel free to contact one of the admins on Discord. -

- {% endif %} - - -  Back to all code jams - -
-
-{% endblock %} diff --git a/templates/main/jams/index.html b/templates/main/jams/index.html deleted file mode 100644 index 3546bd71..00000000 --- a/templates/main/jams/index.html +++ /dev/null @@ -1,144 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Home{% endblock %} -{% block og_title %}Code Jams | Home{% endblock %} -{% block page_classes %}uses-rst{% endblock %} -{% block content %} -
-
-
-
-
-

- Code Jams -

- - -

- Every three months or so, we aim to host a server-wide code jam, suitable for all members of the server. In - these, we announce a theme and date in advance, and users may sign up via a link provided in the - announcements channel on the server. Once the sign-up period is over, users are grouped into - teams. On the day of the code jam, we announce a task - each team will then work on a solution - to this task. -

-

- Once the code jam is over, our staff team will review and test each submission. Once that's done, - a winner will be decided! -

-

- If you'd like to join one of our code jams, feel free to ask a member of staff about the next one. -

-
- -
-

- Sponsors -

- - - - - -
-
- -
- -  Wiki - - -  Rules & Guidelines - - -  Git Primer - - - {% if jams %} - {% for jam in jams %} -

- Code Jam {{ jam.number }}: {{ jam.title }} - - {% if jam.state == "announced" %} - {% if has_applied_to_jam(jam) %} - -  Applied - - {% else %} - -  Join - - {% endif %} - {% else %} - {% if jam.teams and jam.teams | length > 0 %} - -  Teams - - {% endif %} - - - - {% endif %} - - -

-
-
-

Start: {{ format_datetime(jam.date_start) }} UTC

-
-
-

End: {{ format_datetime(jam.date_end) }} UTC

-
- {% if jam.participants %} - {% if jam.winning_team %} - -

Participants: {{ jam.participants | length }}

-
- -

Champions: {{ jam.winning_team.name }}

-
- {% else %} - -

Participants: {{ jam.participants | length }}

-
- {% endif %} - {% endif %} -
-

- {% if jam.state in ["running", "judging", "finished"] %} - - Theme: {{ jam.theme }} - - {% endif %} -

- -

- - {{ jam.info_html | safe }} - - {% if jam.state in ["running", "judging", "finished"] %} -
- - {{ jam.task_html | safe }} - {% endif %} - - {% if jam.state == "finished" %} -
- - {{ jam.end_html | safe }} - {% endif %} - - {% endfor %} - {% else %} -

- Looking for our code jams? There's nothing here just yet! -

- {% endif %} -
-
-
-{% endblock %} diff --git a/templates/main/jams/info.html b/templates/main/jams/info.html deleted file mode 100644 index 920256a6..00000000 --- a/templates/main/jams/info.html +++ /dev/null @@ -1,128 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Git Primer{% endblock %} -{% block og_title %}Code Jams | Git Primer{% endblock %} -{% block og_description %}Information about our code jams - monthly events where users are grouped into pairs to solve a Python task{% endblock %} -{% block content %} -
-
-
-

- Getting Started - - - - -

- -

- All of our code jams happen on GitLab. If you don't have an - account there, you'll need to create one before you can join one of our code jams. Teams are required - to fork the repository we have set up for the current code jam, commit their code to their fork, and - then open a merge request with their project on the code jam repository. -

-

- Once the challenge task has been announced, head to the link provided to reach the challenge repository. - In order to work on the task, you will need to fork the repository - this will create a copy of the - repository under your account, which you will be able to work on with your teammates. To do so, - log into GitLab and click on the "Fork" button on the repository page. Select your username from the - dialogue, and it will be forked to your account. -

-
- - -
-

- Once this has been done, you should find yourself looking at your new copy of the repository. Next - up, you'll need to give your teammates access to it! Click on the "Settings" tab, click on - "Collaborators", enter your password if you're prompted for it, and add your teammates as - collaborators. -

-
- - - -
-

- Now that you've set up your repository, it's time to install Git. If you're on Linux, you can - install Git using your system's package manager. Windows users can install - Git for Windows, and Mac users can install Git - using Homebrew. Once you're all installed, open up a terminal - (or open Git Bash if you're on Windows). For the purpose of illustration we will be working on - Windows, but this will work on any platform. -

-

- We will use Git to clone the repository to the machine. Simply type git clone <url> - and Git will download a copy of the repository. The URL is the same one you use to get to the - repository page on GitLab. Use cd project-name to change directory to the repository. -

-
- -
-

- Now, open the newly-cloned repository in your favourite editor and make some edits. We'll be using - Visual Studio Code in this example, but use whatever - you prefer. For example, let's create a file named "hello.py", and add a line of code to it. -

-
- -
-

- Now that we've edited a file, we need to make Git aware of our changes. Head back over to your - terminal, and type git add hello.py to add this file to our changeset. -

-

- Next up, we'll need to bundle up our changes into a commit, and push it to GitLab. To do that, we'll - use git commit -am "message". Make sure you use a descriptive message explaining why - you made your changes and what they are, but try to keep it to a single line of text if you can. - Following this, we can use git push origin master to push our commit up to GitLab. -

-
- - -
-

- In order to pull the latest version of the code when the repository was cloned earlier, we can - simply use the git pull command. In order to illustrate this, we will need to enlist - the help of our lovely assistant... -

-
- - - -
-

- Oh boy. -

-

- Once you've pushed some code to the repository, you will notice a "Merge request" link. Click on - that to create a merge request, which will let us know that you're working on the task and help us - to keep track of things. Simply click on the "Create merge request" button on the next page, fill - in the "Title" box with your team number - for example, "Team 1" - and click the big green - button to finish. -

-
- - - - -
-

- Now that your merge request has been created, keep working on your project! Code that you push to - GitLab will automatically be added to your merge request in real-time. As the code jam continues on, - you may find review comments waiting from us. These are just suggestions to help you improve as - a programmer - free advice from us. Feel free to incorporate our suggestions into your project - if you wish. -

-
- -
-

- That's all there is to it! Keep working at your task, do your best and you might just come out - on top! -

-
-
-
-{% endblock %} \ No newline at end of file diff --git a/templates/main/jams/join.html b/templates/main/jams/join.html deleted file mode 100644 index 4ff645b8..00000000 --- a/templates/main/jams/join.html +++ /dev/null @@ -1,362 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Join{% endblock %} -{% block og_title %}Code Jams | Join{% endblock %} -{% block page_classes %}uses-rst{% endblock %} - -{% macro show_question(question) %} -
-
- {% if question.optional %} - - {% else %} - - {% endif %} -
-
- {% if question.type == "checkbox" %} - {% if question.optional %} - - - {% else %} - - - {% endif %} - - {% elif question.type == "email" %} - {% if question.optional %} - - {% else %} - - {% endif %} - - {% elif question.type == "number" %} - {% if question.optional %} - - {% else %} - - {% endif %} - - {% elif question.type == "radio" %} - {% if question.optional %} - {% for option in question.data.options %} - - - {% endfor %} - {% else %} - {% for option in question.data.options %} - - - {% endfor %} - {% endif %} - - {% elif question.type == "range" %} -
- {% if question.optional %} - {% for num in range(question.data.min, question.data.max + 1) %} - - - - - {% endfor %} - {% else %} - {% for num in range(question.data.min, question.data.max + 1) %} - - - - - {% endfor %} - {% endif %} -
- - {% elif question.type == "text" %} - {% if question.optional %} - - {% else %} - - {% endif %} - - {% elif question.type == "textarea" %} - {% if question.optional %} - - {% else %} - - {% endif %} - - {% elif question.type == "slider" %} -
- - -
- - {% endif %} -
-
-{% endmacro %} - -{% block content %} -
-
-

- Code Jam {{ jam.number }}: {{ jam.title }} -

- -

- Please fill out the form below to apply for this code jam. Once you've submitted your application and the - application window has closed, we'll review it and let you know whether you've been entered! -

-

- Please note that you will not be able to edit your application after you've submitted it. -

-
- - {{ form.preamble_html | safe }} - -
- - {% if jam.state != "announced" %} -

- Unfortunately, we're not accepting applications for this code jam right now - but we appreciate your - interest. Keep an eye on #announcements on Discord for information on the next jam! -

- {% else %} -
- {% for question in questions %} - {{ show_question(question) }} -
- {% endfor %} -
- - - -
- -  Back - - -
-
- - {% endif %} -
-
- - -{% endblock %} diff --git a/templates/main/jams/profile.html b/templates/main/jams/profile.html deleted file mode 100644 index 40d22490..00000000 --- a/templates/main/jams/profile.html +++ /dev/null @@ -1,103 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | My Profile{% endblock %} -{% block og_title %}Code Jams | My Profile{% endblock %} - -{% block content %} -
-
-

- Code Jams: My Profile -

- - {% if done %} -

- Thanks - your data has been saved! -

- {% else %} -

- Please make sure you've filled this out correctly, as we do use this data when evaluating your code jam - application. -
-
- You may come back here and edit your data at any time. -

- {% endif %} - - {% if form %} -
- {% else %} - - {% endif %} - -
-
- -
-
- -
-
-
-
- -
-
- -
-
- -
- -
- -  Back - - - - {% if existing %} - -  Delete - - {% else %} - -  Delete - - {% endif %} -
-
-
-
- - - - -{% endblock %} diff --git a/templates/main/jams/retract.html b/templates/main/jams/retract.html deleted file mode 100644 index e013337b..00000000 --- a/templates/main/jams/retract.html +++ /dev/null @@ -1,61 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Already applied{% endblock %} -{% block og_title %}Code Jams | Already applied{% endblock %} - -{% block content %} -
-
-

- Code Jams: Retract Profile -

- - {% if participant %} -

- Are you sure you'd like to retract your code jam profile? -

- - {% if banned %} -

- Retracting your code jam profile will remove your date of birth, GitLab username and timezone from our - database. If you're entirely sure that you'd like to remove your profile, please click on the "Remove" button below. -

- -

- As you are currently taking part in a code jam, - this will void your application and you will receive an automatic ban from future code jams - until you've contacted us about it. -

- {% else %} -

- Retracting your code jam profile will remove your date of birth, GitLab username and timezone from our - database. If you're entirely sure that you'd like to remove your profile, please click on the "Remove" button below. -

- -

- As you are not currently taking part in an ongoing code jam, - you will not be banned from future code jams. -

- {% endif %} - -
- - - -  Cancel - - -
- {% else %} -

- You can't delete your profile - you haven't submitted one to us yet! -

- - -  Back - - {% endif %} -
-
-{% endblock %} diff --git a/templates/main/jams/retracted.html b/templates/main/jams/retracted.html deleted file mode 100644 index b67b6497..00000000 --- a/templates/main/jams/retracted.html +++ /dev/null @@ -1,31 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Already applied{% endblock %} -{% block og_title %}Code Jams | Already applied{% endblock %} - -{% block content %} -
-
-

- Code Jams: Profile Retracted -

- - {% if banned %} -

- Your code jam profile has been deleted. As you were participating in an ongoing code jam, you have - been issued with an automatic ban from future code jams. If you'd like to join a code jam in the - future, please contact us directly and we'll try to resolve the situation with you. Thanks for your - interest in our code jams regardless! -

- {% else %} -

- Your code jam profile has been deleted. you were not participating in an ongoing code jam, no further - action is required by you. Thanks for your interest in our code jams regardless! -

- {% endif %} - - -  Back to code jams - -
-
-{% endblock %} diff --git a/templates/main/jams/team_list.html b/templates/main/jams/team_list.html deleted file mode 100644 index 75c48337..00000000 --- a/templates/main/jams/team_list.html +++ /dev/null @@ -1,106 +0,0 @@ -{% extends "main/base.html" %} - -{% block title %} - {% if user_teams %} - Code Jams | My Teams - {% else %} - Code Jams | Code Jam {{ jam.number }} Teams - {% endif %} -{% endblock %} -{% block og_title %} - {% if user_teams %} - Code Jams | My Teams - {% else %} - Code Jams | Code Jam {{ jam.number }} Teams - {% endif %} -{% endblock %} - -{% block page_classes %}jam-team-list{% endblock %} - -{% block content %} -
-
-

- {% if user_teams %} - Code Jams: My Teams - {% else %} - Code Jam {{ jam.number }}: Teams - {% endif %} -

- {% if not user_teams %} -

- -  All Jams - -

- {% endif %} - {% if teams %} -
- {% for team in teams %} -
-
-
- {% if not user_teams %} - {% if logged_in and user.user_id in member_ids(team.members) %} - - {% endif %} - {% if jam.winning_team and jam.winning_team == team.id %} - - {% endif %} - {% endif %} - Team {{ team.name }} - {% if user_teams %} - - {% endif %} -
-
- {% for member in team.members %} - - - - {% endfor %} -
- -
-
- {% endfor %} -
- {% else %} - {% if user_teams %} -

You are not part of any team.

- {% else %} -

There are no teams in this jam.

- {% endif %} - {% endif %} -
-
-{% endblock %} diff --git a/templates/main/jams/team_view.html b/templates/main/jams/team_view.html deleted file mode 100644 index 0554c3d4..00000000 --- a/templates/main/jams/team_view.html +++ /dev/null @@ -1,291 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Team {{ team.name }}{% endblock %} -{% block og_title %}Team {{ team.name }}{% endblock %} - -{% block page_classes %}jam-team-view{% endblock %} - -{% block content %} -
-
-

- Team {{ team.name }} -

- -

- -  Competing Teams - - {% if logged_in %} - -  My Teams - - {% endif %} -

- -
-
-

- Team Members -

-
- {% for member in team.members %} -
- - - - {{ member.username }}#{{ member.discriminator }} - -
- {% endfor %} -
-
-
-

- Activity -

-

- {% if team.repo %} - -  View on GitLab - - {% else %} - -  View on GitLab - - {% endif %} - {% if is_own_team %} - - - - {% endif %} -

-
-
-
-

- Loading GitLab activity, hang tight... -

-
-
-
-
-
-
-
-
- {% if is_own_team %} -
-
- - -
-

Edit Repository

-
-
- -
-

- Enter your team's GitLab repository URL in the field below. -

-

- Note: it should be a fork of the jam's GitLab repository - ({{ team.jam.repo }}). -

-
-
-
- -
- -
- -
-
-
-
- - -
-
-
- {% endif %} - -{% endblock %} diff --git a/templates/main/jams/thanks.html b/templates/main/jams/thanks.html deleted file mode 100644 index f123b227..00000000 --- a/templates/main/jams/thanks.html +++ /dev/null @@ -1,25 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Code Jams | Thanks!{% endblock %} -{% block og_title %}Code Jams | Thanks!{% endblock %} - -{% block content %} -
-
-

- Code Jam {{ jam.number }}: {{ jam.title }} -

- - -

- Thanks for your application! Just sit back, relax, and we'll let you know whether you've been selected - for this code jam when the time comes. -

- - -  Back to all code jams - -
-
-{% endblock %} diff --git a/templates/main/navigation.html b/templates/main/navigation.html deleted file mode 100644 index a32ac1c1..00000000 --- a/templates/main/navigation.html +++ /dev/null @@ -1,165 +0,0 @@ - -
- -
diff --git a/templates/main/ws_test.html b/templates/main/ws_test.html deleted file mode 100644 index 64a7dfc4..00000000 --- a/templates/main/ws_test.html +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}WS Test{% endblock %} -{% block og_title %}WS Test{% endblock %} -{% block og_description %}A test page for our Websockets implementation{% endblock %} -{% block content %} -
-

Open your JS console to test

- - -
-{% endblock %} diff --git a/templates/main/ws_test_rst.html b/templates/main/ws_test_rst.html deleted file mode 100644 index a0bae79b..00000000 --- a/templates/main/ws_test_rst.html +++ /dev/null @@ -1,39 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}WS Test{% endblock %} -{% block og_title %}WS Test{% endblock %} -{% block og_description %}A test page for our Websockets implementation{% endblock %} -{% block content %} -
-

Enter some text to test.

- - - - -
- -
- - -
-{% endblock %} diff --git a/templates/robots.txt b/templates/robots.txt deleted file mode 100644 index fa61be5e..00000000 --- a/templates/robots.txt +++ /dev/null @@ -1,14 +0,0 @@ -{# robots.txt is a little picky about whitespace and newlines - that's why the below looks kind of bad.#} -{% if rules is defined and rules %} -{% for user_agent, disallowed in rules.items() %} -User-agent: {{ user_agent }} -{% for rule in rules %} -Disallow: {{ rule }} -{% endfor %} -{% endfor %} -{% else %} -User-agent: * -Disallow: -{% endif %} - -Sitemap: {{ sitemap_url }} diff --git a/templates/sitemap.xml b/templates/sitemap.xml deleted file mode 100644 index 3d63d3a9..00000000 --- a/templates/sitemap.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - -{% for url in urls %} - - {{ url.url }} - - {% if url.images is defined %} - {% for image in url.images %} - - {{ image.url }} - {{ image.caption }} - - {% endfor %} - {% endif %} - - {% if url.videos is defined %} - {% for video in url.videos %} - - {{ video.description }} - {{ video.title }} - - {{ video.url }} - {{ video.player_url }} - {{ video.thumbnail_url }} - - {% endfor %} - {% endif %} - - {% if url.news_items is defined %} - {% for item in url.news_items %} - - - Python Discord: {{ item.section }} - en - - - PressRelease, Blog - {{ item.date }} - {{ item.title }} - {{ ", ".join(item.keywords) }} - - {% endfor %} - {% endif %} - - {% if url.last_modified is defined %} - {{ url.last_modified }} - {% endif %} - - {% if url.change_frequency is defined %} - {{ url.change_frequency }} - {% endif %} - - {% if url.priority is defined %} - {{ "{0:.1f}".format(url.priority) }} - {% endif %} - -{% endfor %} - diff --git a/templates/staff/index.html b/templates/staff/index.html deleted file mode 100644 index 31fddceb..00000000 --- a/templates/staff/index.html +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Home{% endblock %} -{% block og_title %}Staff | Home{% endblock %} -{% block og_description %}Landing page for the staff management area{% endblock %} -{% block content %} -
-

- Management links -

- - Code Jams - {% if manager %} - Table Management - {% endif %} - -

- App config -

-
-    {{ app_config | safe }}
-        
-
-{% endblock %} \ No newline at end of file diff --git a/templates/staff/jams/create.html b/templates/staff/jams/create.html deleted file mode 100644 index c19addd3..00000000 --- a/templates/staff/jams/create.html +++ /dev/null @@ -1,78 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Create{% endblock %} -{% block og_title %}Staff | Jams | Create{% endblock %} -{% block og_description %}Create a brand new code jam{% endblock %} -{% block content %} -
-

Code Jam: Create

- -
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
- - - -
- -  Back - - -
-
- -
- - -{% endblock %} diff --git a/templates/staff/jams/edit_basics.html b/templates/staff/jams/edit_basics.html deleted file mode 100644 index 1208e5d2..00000000 --- a/templates/staff/jams/edit_basics.html +++ /dev/null @@ -1,79 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Edit (Basics){% endblock %} -{% block og_title %}Staff | Jams | Edit (Basics){% endblock %} -{% block og_description %}Edit the basic info for a code jam{% endblock %} -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-

Code Jam: Edit (Basics)

- -
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
- - - -
- -  Back - - -
-
-
- - -{% endblock %} diff --git a/templates/staff/jams/edit_ending.html b/templates/staff/jams/edit_ending.html deleted file mode 100644 index a0c5e8ff..00000000 --- a/templates/staff/jams/edit_ending.html +++ /dev/null @@ -1,152 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Edit (Ending Comments){% endblock %} -{% block og_title %}Staff | Jams | Edit (Ending Comments){% endblock %} -{% block og_description %}Edit the ending comments for a code jam{% endblock %} - -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-

Code Jam: Edit (Ending Comments)

- -
-
-
- -
- -
-
{{ jam.end_rst }}
-
- - -
- - - -
- -  Back - - - -
-
-
- -
-
- - -
-

Code Jam {{ jam.number }}: {{ jam.title }}

-

Theme: {{ jam.theme }}

- -
- {{ jam.end_rst | safe }} -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/edit_info.html b/templates/staff/jams/edit_info.html deleted file mode 100644 index 75df1957..00000000 --- a/templates/staff/jams/edit_info.html +++ /dev/null @@ -1,309 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Edit (Info){% endblock %} -{% block og_title %}Staff | Jams | Edit (Info){% endblock %} -{% block og_description %}Edit the basic info for a code jam{% endblock %} - -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-

Code Jam: Edit (Info)

- -
-
-
- -
- -
- -
-
-
-
- -
- -
- -
-
- -
-
- -
- -
-
{{ jam.info_rst }}
-
- - -
- -
-
- -
- -
-
{{ jam.task_rst }}
-
- - -
- - - -
- -  Back - - -
-
-
- -
-
- - -
-

Code Jam {{ jam.number }}: {{ jam.title }}

-

Theme: {{ jam.theme }}

- -
- {{ jam.task_html | safe }} -
-
- - -
-
- -
-
- - -
-

Code Jam {{ jam.number }}: {{ jam.title }}

-

Theme: {{ jam.theme }}

- -
- {{ jam.task_html | safe }} -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/forms/preamble_edit.html b/templates/staff/jams/forms/preamble_edit.html deleted file mode 100644 index 85747713..00000000 --- a/templates/staff/jams/forms/preamble_edit.html +++ /dev/null @@ -1,150 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Forms | Edit Preamble{% endblock %} -{% block og_title %}Staff | Forms | Edit Preamble{% endblock %} - -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-

Form: Edit Preamble

- -
-
-
- -
- -
-
{{ form.preamble_rst }}
-
- - -
- - - -
- -  Back - - - -
-
-
- -
-
- - -
-

Form: {{ jam.number }}

- -
- {{ jam.preamble_html | safe }} -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/forms/questions_edit.html b/templates/staff/jams/forms/questions_edit.html deleted file mode 100644 index d6fe082c..00000000 --- a/templates/staff/jams/forms/questions_edit.html +++ /dev/null @@ -1,354 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Question Edit{% endblock %} -{% block og_title %}Staff | Jams | Question Edit{% endblock %} -{% block og_description %}Edit a question{% endblock %} -{% block content %} -
-

Question Edit

- -
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
- -
-
- - {% if question.type == "radio" %} -
- {% else %} - - - {% if question.type in ["number", "range", "slider"] %} -
- {% else %} - - -
- -
- - - -  Cancel - - -
- -
- - -{% endblock %} diff --git a/templates/staff/jams/forms/questions_view.html b/templates/staff/jams/forms/questions_view.html deleted file mode 100644 index f8eeea40..00000000 --- a/templates/staff/jams/forms/questions_view.html +++ /dev/null @@ -1,593 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Questions{% endblock %} -{% block og_title %}Staff | Jams | Questions{% endblock %} -{% block og_description %}Manage all created questions{% endblock %} -{% block content %} -
-

Questions List

- -  Back - - {#  Preview #} - - {% if not questions %} -

No questions found. Add one above!

- - - - - - - - - - - - - - - {% else %} - - -
-
- - - - - - - - - - - - - {% for question in questions %} - - - - - - - - - {% endfor %} - -
 IDOptionalTitleTypeData
- - - {{ question.id }} - {% if question.optional %} - - {% else %} - - {% endif %} - {{ question.title }}{{ question.type.title() }} - {% if question.type == "text" %} - - {% elif question.type == "number" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% elif question.type == "checkbox" %} - - {% elif question.type == "email" %} - - {% elif question.type == "textarea" %} - - {% elif question.type == "radio" %} -
    - {% for option in question.data.options %} -
  • {{ option }}
  • - {% endfor %} -
- {% elif question.type == "range" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% elif question.type == "slider" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% else %} - {{ question.data }} - {% endif %} -
-
- {% endif %} -
- -
-
- - -
-

Add Question

-
- -
-
- -
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
- - - - -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/forms/view.html b/templates/staff/jams/forms/view.html deleted file mode 100644 index 49ea672d..00000000 --- a/templates/staff/jams/forms/view.html +++ /dev/null @@ -1,755 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Form{% endblock %} -{% block og_title %}Staff | Jams | Form{% endblock %} -{% block og_description %}Manage the form for a code jam{% endblock %} -{% block content %} -
-

Application Form {{ jam.number }}: {{ jam.title }}

- -  Back -  Edit Preamble - - {#  Preview #} - - {% if not questions %} -

No questions found. Add one above!

- - - - - - - - - - - - - - - {% else %} - - -
-
- - - - - - - - - - - - - {% for question in questions %} - - - - - - - - - {% endfor %} - -
 IDOptionalTitleTypeData
- - {{ question.id }} - {% if question.optional %} - - {% else %} - - {% endif %} - {{ question.title }}{{ question.type.title() }} - {% if question.type == "text" %} - - {% elif question.type == "number" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% elif question.type == "checkbox" %} - - {% elif question.type == "email" %} - - {% elif question.type == "textarea" %} - - {% elif question.type == "radio" %} -
    - {% for option in question.data.options %} -
  • {{ option }}
  • - {% endfor %} -
- {% elif question.type == "range" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% elif question.type == "slider" %} -  {{ question.data.max }} -
-  {{ question.data.min }} - {% else %} - {{ question.data }} - {% endif %} -
-
- {% endif %} -
- -
-
- - -
-

Add Question

-
- -
-
-
-
-
- -
-
- -
-
-
- - - - - - - - -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/index.html b/templates/staff/jams/index.html deleted file mode 100644 index e4e1e242..00000000 --- a/templates/staff/jams/index.html +++ /dev/null @@ -1,252 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Code Jams{% endblock %} -{% block og_title %}Staff | Code Jams{% endblock %} -{% block content %} -
-

Code Jams

- -  Back -  Questions -  Infractions -  Create - - {% if not jams %} -

- No code jams found. Create one above! -

- {% else %} - {% for jam in jams %} -

- Code Jam {{ jam.number }}: {{ jam.title }} - - - {% if jam.state == "planning" %} - - {% else %} - - {% endif %} - - {% if jam.state == "announced" %} - - {% else %} - - {% endif %} - - {% if jam.state == "preparing" %} - - {% else %} - - {% endif %} - - {% if jam.state == "running" %} - - {% else %} - - {% endif %} - - {% if jam.state == "judging" %} - - {% else %} - - {% endif %} - - {% if jam.state == "finished" %} - - {% else %} - - {% endif %} - - {% if not jam.state in states %} - - {% else %} - - {% endif %} - -

- - Participants: {{ jam.participants | length }} - Start: {{ format_datetime(jam.date_start) }} (UTC) - End: {{ format_datetime(jam.date_end) }} (UTC) - -
-
- -  State - - - -  Basics - - - {% if jam.state in ["planning", "announced", "preparing", "finished"] %} - -  Info - - {% else %} - - {% endif %} - - {% if jam.state in ["judging", "finished"] %} - -  Ending - - {% else %} - - {% endif %} -
-
- -
- {% endfor %} - {% endif %} -
- -
-
- - -
-

Set State

-
- -
-
-
-
- -
- -
- -
-
-
-
- - -
-
- - -{% endblock %} \ No newline at end of file diff --git a/templates/staff/jams/infractions/view.html b/templates/staff/jams/infractions/view.html deleted file mode 100644 index a4391c53..00000000 --- a/templates/staff/jams/infractions/view.html +++ /dev/null @@ -1,328 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Infractions{% endblock %} -{% block og_title %}Staff | Jams | Infractions{% endblock %} -{% block og_description %}Manage infractions{% endblock %} -{% block content %} -
-

Infractions

- -  Back - - - {% if not infractions %} -

No infractions found.

- - - - - - - - - - - - - - {% else %} - - -
-
- - - - - - - - - - - - {% for infraction in infractions %} - - - - - - - - {% endfor %} - -
 IDParticipantReasonNumber
- - {{ infraction.id }} - {% if infraction.participant is not string %} - {{ infraction.participant.user_id }} -
- ({{ infraction.participant.username }}#{{ infraction.participant.discriminator }}) - {% else %} - {{ infraction.participant }} - {% endif %} -
{{ infraction.reason }}{{ infraction.number }}
-
- {% endif %} -
- -
-
- - -
-

Add Infraction

-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
- -
-
-
-
- -
-
- -
-
- -
-
- - -
-
- - -{% endblock %} diff --git a/templates/staff/jams/participants.html b/templates/staff/jams/participants.html deleted file mode 100644 index 726d407c..00000000 --- a/templates/staff/jams/participants.html +++ /dev/null @@ -1,163 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Participants{% endblock %} -{% block og_title %}Staff | Jams | Participants{% endblock %} -{% block og_description %}Listing of participant applications and their status{% endblock %} -{% block content %} - {% macro card_header(app) %} -
-

- - - - {{ app.username }}#{{ app.discriminator }} -

- - {% if jam.state in ["announced", "preparing"] %} - {% if app.approved %} - - - {% else %} - - - {% endif %} - {% endif %} - - - - - - -
- {% endmacro %} - -
-

Code Jam {{ jam.number }}: Participants

-  Back - -
-
- - {% for app in jam.participants %} - -
- {% endfor %} -
- - -{% endblock %} diff --git a/templates/staff/jams/teams/view.html b/templates/staff/jams/teams/view.html deleted file mode 100644 index 659a60c2..00000000 --- a/templates/staff/jams/teams/view.html +++ /dev/null @@ -1,513 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Jams | Teams{% endblock %} -{% block og_title %}Staff | Jams | Teams{% endblock %} -{% block og_description %}Manage Teams{% endblock %} -{% block page_classes %}page-staff-jams-edit-teams{% endblock %} -{% block content %} -
-
-

Hover a user to show their information here

- -
- -
- -
-
-

Code Jam {{ jam.number }}: Teams

- -  Back - - {% if teams %} - - {% else %} - - {% endif %} - - - - {% if jam.winning_team %} - - {% else %} - - {% endif %} - -
-
- -
- {% for participant in jam.participants %} - {% if participant.user_id not in assigned %} -
-
-
- - {{ participant.username }}#{{ participant.discriminator }} -
-
-
- {% else %} -
-
-
- - {{ participant.username }}#{{ participant.discriminator }} -
-
-
- {% endif %} - {% endfor %} -
- - {% if not teams %} -

No teams found.

- -
-
- {% else %} - - -
- {% for id, team in teams.items() %} -
-
-
-

- {{ team.name }} -

-
-
-

Drop users here to assign them

- - {% for user_id in team.members %} -
- - - {{ participants[user_id].username }}#{{ participants[user_id].discriminator }} ({{ participants[user_id].profile.timezone }}) - -
- {% endfor %} -
- -
-
- {% endfor %} -
- {% endif %} -
-
- - -{% endblock %} diff --git a/templates/staff/tables/edit.html b/templates/staff/tables/edit.html deleted file mode 100644 index b3b9faae..00000000 --- a/templates/staff/tables/edit.html +++ /dev/null @@ -1,50 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Home{% endblock %} -{% block og_title %}Staff | Home{% endblock %} -{% block og_description %}Landing page for the staff management area{% endblock %} -{% block content %} -
- {% if message %} -
- {{ message }} -
- {% endif %} -
-
-

Primary key: "{{ primary_key }}"

-
-
-   Back - -
-
-
{{ document }}
- -
- - - - {% if old_primary %} - - {% endif %} -
- - -
-{% endblock %} diff --git a/templates/staff/tables/index.html b/templates/staff/tables/index.html deleted file mode 100644 index 206234bb..00000000 --- a/templates/staff/tables/index.html +++ /dev/null @@ -1,32 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Tables{% endblock %} -{% block og_title %}Staff | Tables{% endblock %} -{% block og_description %}Table management and editor{% endblock %} -{% block content %} -
-  Back -

- Table manager -

-

- Click one of the tables below to manage its data: -

- -
-{% endblock %} \ No newline at end of file diff --git a/templates/staff/tables/table.html b/templates/staff/tables/table.html deleted file mode 100644 index 87d981a0..00000000 --- a/templates/staff/tables/table.html +++ /dev/null @@ -1,165 +0,0 @@ -{% extends "main/base.html" %} -{% block title %}Staff | Home{% endblock %} -{% block og_title %}Staff | Home{% endblock %} -{% block og_description %}Landing page for the staff management area{% endblock %} -{% block content %} -
-  Back - - {% if page == "all" %} -  Page 1 - {% else %} -  All Data - {% endif %} - - {% if not table_obj.locked %} -  Add - {% endif %} - -

- - {{ table }} - - {% if table_obj.locked %} - - {% endif %} - -

- -
-
- {% if search %} - - {% else %} - - {% endif %} - -
- -
- - - -
-
- - {% macro paginate() %} - {% if pages != "all" %} -
    - {% if page > 1 %} -
  • - {% else %} -
  • - {% endif %} - - {% if page == 1 %} -
  • 1
  • - {% else %} -
  • 1
  • - {% endif %} - - {% if page >= 5 %} -
  • ...
  • - {% endif %} - - {% set current_page = page - 2 %} - - {% for num in range(5) %} - {% if current_page + num > 1 and current_page + num < pages %} - {% if current_page + num == page %} -
  • {{ current_page + num }}
  • - {% else %} -
  • {{ current_page + num }}
  • - {% endif %} - {% endif %} - {% set current_page = current_page - 1 %} - {% endfor %} - - {% if pages - page > 3 %} -
  • ...
  • - {% endif %} - - {% if pages != 1 %} - {% if page == pages %} -
  • {{ pages }}
  • - {% else %} -
  • {{ pages }}
  • - {% endif %} - {% endif %} - - {% if page < pages %} -
  • - {% else %} -
  • - {% endif %} -
- {% endif %} - {% endmacro %} - - {{ paginate() }} - -
-
- {% if documents %} - - - - {% if not table_obj.locked %} - - {% endif %} - - {% for key in table_obj.keys %} - - {% endfor %} - - - - {% for doc in documents %} - - {% if not table_obj.locked %} - - {% endif %} - - {% for key in table_obj.keys %} - - {% endfor %} - - {% endfor %} - -
- - - {% if key == table_obj.primary_key %} - {{ key }} - {% else %} - {{ key }} - {% endif %} -
- - - - - {% if key == table_obj.primary_key %} - {{ doc[key] }} - {% else %} - {{ doc[key] }} - {% endif %} -
- {% else %} -

No documents found

- {% endif %} - - {{ paginate() }} -
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/base.html b/templates/wiki/base.html deleted file mode 100644 index 038ee5a2..00000000 --- a/templates/wiki/base.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - {% block head %} - Python Discord | {% block title %}{% endblock %} - - - - - - - - - - - - - - - - - {% endblock %} - {% block extra_head %} - - {% endblock %} - - -
- {% include "main/navigation.html" %} -
-
- -
-
- -
-
-
- {% block content %}{% endblock %} -
-
-
-
- -
-
-
-

- This website uses Python and - Flask, and was developed collaboratively on - GitLab. -
- For privacy & GDPR-related info, please see this page. -

-
-
-
- - - - diff --git a/templates/wiki/compare_revision.html b/templates/wiki/compare_revision.html deleted file mode 100644 index 34ab61bc..00000000 --- a/templates/wiki/compare_revision.html +++ /dev/null @@ -1,13 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Comparing {{ title }}{% endblock %} -{% block og_title %}Wiki | Comparing {{ title }}{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
-

- Revision comparison for {{ title }} -

- - {{ diff | safe }} -
-{% endblock %} diff --git a/templates/wiki/page_delete.html b/templates/wiki/page_delete.html deleted file mode 100644 index 27c4b406..00000000 --- a/templates/wiki/page_delete.html +++ /dev/null @@ -1,25 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Delete: {{ page }}{% endblock %} -{% block og_title %}Wiki | Delete: {{ page }}{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
-
-

Delete Page: {{ page }}

-

- Are you sure you want to delete this page? -

- -
-
- Cancel -
-
- -
- - -
-
-
-{% endblock %} diff --git a/templates/wiki/page_edit.html b/templates/wiki/page_edit.html deleted file mode 100644 index 7293b5f5..00000000 --- a/templates/wiki/page_edit.html +++ /dev/null @@ -1,137 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Edit: {{ page }}{% endblock %} -{% block og_title %}Wiki | Edit: {{ page }}{% endblock %} -{% block og_description %}{% endblock %} - -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-
- -
-
- -
-
- -
-
-
{{ rst }}
- -
- - -
- -
-

{{ title }}

- -
- {{ preview | safe }} -
-
- - -{% endblock %} diff --git a/templates/wiki/page_in_use.html b/templates/wiki/page_in_use.html deleted file mode 100644 index 1707845c..00000000 --- a/templates/wiki/page_in_use.html +++ /dev/null @@ -1,12 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki Error{% endblock %} -{% block og_title %}Wiki Error{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
-
-

The page you requested is currently being edited

-

Please try again in a little bit when the lock has expired.

-
-
-{% endblock %} diff --git a/templates/wiki/page_move.html b/templates/wiki/page_move.html deleted file mode 100644 index 2bd772e9..00000000 --- a/templates/wiki/page_move.html +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Move: {{ page }}{% endblock %} -{% block og_title %}Wiki | Move: {{ page }}{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
- {% if message is defined %} -
-

{{ message }}

-
- {% endif %} - -

Move Page: {{ page }}

-
- -
- Cancel -
-
- -
- - -
-
-{% endblock %} diff --git a/templates/wiki/page_source.html b/templates/wiki/page_source.html deleted file mode 100644 index 15384aa9..00000000 --- a/templates/wiki/page_source.html +++ /dev/null @@ -1,13 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | {{ data["title"] }}{% endblock %} -{% block og_title %}Wiki | {{ data["title"] }}{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
-

- {{ data["title"] }} -

- - {{ rst | safe }} -
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/page_view.html b/templates/wiki/page_view.html deleted file mode 100644 index aa560390..00000000 --- a/templates/wiki/page_view.html +++ /dev/null @@ -1,18 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | {{ data["title"] }}{% endblock %} -{% block og_title %}Wiki | {{ data["title"] }}{% endblock %} - -{# To be safe about whitespace formatting on various platforms, we do everything one one line here #} -{% block og_description %}{% if data.rst.startswith(".. header::") %}{{ data.text.split("\n", 1)[0] }}{% endif %}{% endblock %} - -{% block page_classes %}uses-rst{% endblock %} - -{% block content %} -
-

- {{ data["title"] }} -

- - {{ data["html"] | safe }} -
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/revision_list.html b/templates/wiki/revision_list.html deleted file mode 100644 index cd6767db..00000000 --- a/templates/wiki/revision_list.html +++ /dev/null @@ -1,36 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Revisions to {{ page }}{% endblock %} -{% block og_title %}Wiki | Revisions to {{ page }}{% endblock %} -{% block og_description %}{% endblock %} -{% block content %} -
-

Wiki page revisions

- - - - - - - - - - - - {% for revision in revisions %} - - - - - - - - {% endfor %} - -
Page titleDateUser IDCompare beforeCompare after
{{ revision["post"]["title"] }}{{ revision["pretty_time"] }}{{ revision['user'] }}
- Compare selections -
- -{% endblock %} diff --git a/templates/wiki/search.html b/templates/wiki/search.html deleted file mode 100644 index 8a337192..00000000 --- a/templates/wiki/search.html +++ /dev/null @@ -1,23 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Search{% endblock %} -{% block og_title %}Wiki | Search{% endblock %} -{% block og_description %}Search for pages by content{% endblock %} -{% block content %} -
-

- Search -

- -
- -
-   -
-
- -
- - -
-
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/search_results.html b/templates/wiki/search_results.html deleted file mode 100644 index 9b9ad946..00000000 --- a/templates/wiki/search_results.html +++ /dev/null @@ -1,39 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Search Results{% endblock %} -{% block og_title %}Wiki | Search Results{% endblock %} -{% block og_description %}Search results{% endblock %} -{% block content %} -
- {% if not pages %} -

- Search -

-
-

- Sorry, no results were found. Please check your query and try again. -

-
- {% else %} -

- Search Results -

- - {% for page in pages %} -

- {{ page.title }} - ({{ page.slug }}) -

- - {% for snippet in page["matches"] %} -
- -
- {{ snippet | safe }} -
- -
- {% endfor %} - {% endfor %} - {% endif %} -
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/special.html b/templates/wiki/special.html deleted file mode 100644 index 12e9cb18..00000000 --- a/templates/wiki/special.html +++ /dev/null @@ -1,17 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Special Pages{% endblock %} -{% block og_title %}Wiki | Special Pages{% endblock %} -{% block og_description %}Wiki special pages, non-article informational pages{% endblock %} -{% block content %} -
-

- Special Pages -

- - -
-{% endblock %} \ No newline at end of file diff --git a/templates/wiki/special_all.html b/templates/wiki/special_all.html deleted file mode 100644 index 45a641a6..00000000 --- a/templates/wiki/special_all.html +++ /dev/null @@ -1,26 +0,0 @@ -{% extends "wiki/base.html" %} -{% block title %}Wiki | Special: All Pages{% endblock %} -{% block og_title %}Wiki | Special: All Pages{% endblock %} -{% block og_description %}A listing for all pages on the wiki{% endblock %} -{% block content %} -
-

- Special: All Pages -

-

- A listing for all pages on the wiki -

- - {% for letter, pages in letters.items() %} -

{{ letter }}

- - - {% endfor %} -
-{% endblock %} \ No newline at end of file -- cgit v1.2.3