Skip to content

Commit a49eb47

Browse files
committed
Merge branch 'main' into issue-112-Make_host_URL_optional_for_games
2 parents c7741ee + 9c24a38 commit a49eb47

64 files changed

Lines changed: 2016 additions & 227 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci-backend.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ jobs:
5858
env:
5959
EMAIL_PORT: 1025
6060
FRONTEND_URL: http://localhost:3000
61+
API_ALLOWED_HOSTS: localhost
6162
run: poetry run python manage.py migrate
6263

6364
- name: Run tests 🧪
@@ -66,6 +67,7 @@ jobs:
6667
JWT_SIGNING_KEY: NjMgNmYgNmQgNmQgNzUgNmUgNjkgNzQgNzkgNzMgNzAgNjkgNzIgNjkgNzQgNjYgNmYgNzUgNmUgNjQgNjEgNzQgNjkgNmYgNmU=
6768
EMAIL_PORT: 1025
6869
FRONTEND_URL: http://localhost:3000
70+
API_ALLOWED_HOSTS: localhost
6971
run: |
7072
poetry run python3 -m pip install coverage
7173
poetry run coverage run manage.py test

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,5 +293,6 @@ dist
293293

294294
# misc
295295
.DS_Store
296+
.cursor/
296297

297298
opt/
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
## Committee Members
2+
3+
Profiles of the Committee Members of the club that are displayed on the about page.
4+
5+
## Fields
6+
7+
**Id:** Required and unique field for the club member that is on the committee. It is an integer field that corresponds to the raw integer id of a row in the Member table, as a Foreign Key if you know databases.
8+
9+
**Role:** Required and unique field for the specific role in the committee that this member has. It is something known as an Enum (Enumeration), which has a discrete number of custom choices. You can choose from 'President', 'Vice President', 'Secretary', 'Treasurer', 'Marketing', 'Events OCM', 'Projects OCM', and 'Fresher Rep'. Since they must be unique, you can only have 8 objects in the Committee table at a time for now. This can definitely be changed in the future when the committee grows.
10+
11+
## Other Notes
12+
13+
Before making a Committee object in the Committee table, you must make a Member object for the person that's on the committee and then link it through the id (just to clarify)
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
## Games
2+
3+
Pages for games can be added and edited at the row 'Game' of the GAME_DEV section on the main admin page.
4+
5+
### Fields
6+
7+
**Name:** Required field for the game's name. A character field (includes letters, numbers and symbols) of maximum length 200 characters.
8+
9+
**Descripiton:** Required field for the game's description. A text field.
10+
11+
**Completion:** Required field for the game's completion. A multichoice option field with four options including:
12+
- "Work in progress (Unplayable)"
13+
- "Playable - In Development"
14+
- "Beta - Stable but not Final"
15+
- "Completed"
16+
17+
**Active:** Required field for if the game is continued to be being worked on. A boolean field.
18+
19+
**Host URL:** Optional field for the game's host URL. A URL field with a maximum length 2083 characters
20+
21+
**Itch Embed ID:** Optional field for game's embed. If the field is empty the game will display a custom embed ID at the bottom of the page. This value can be gotten from the itch.io page of the game, at the bottom of the page there is an embed button, clicking this will bring up a full embed, the only part needed is the 7 digit number after "https://itch.io/embed/".
22+
23+
**Thumbnail:** Required field for the game's thumbnail. This image is displayed on the game page in place of a game embed or displayed within the game embed before the play button is pressed. Must be an image file.
24+
25+
**Event:** Optional field for the event at which the game was created. Links the game to an event. Foreign key field for an event.
26+
27+
**Itch Game Embed ID:** Optional field for the game's game embed. This ID allows the web version of a game to be played inside the site. This value can be acquired in two ways, either by the developer or through looking in the page source. A developer can get the value by going to the distribution tab of their game and going to the embed game section this will bring up a full embed for the game and the only part needed is the 8 digit number after "https://html-classic.itch.zone/html/". By looking through the page source that link can also be found either in a div or an iframe on the page depending on if the game has been played. **This value is not attainable if there is no web version of the game. hosted on itch.**
28+
29+
**Itch Game Width:** Required field for the game's game embed. This value is gotten in a similar way to the Itch Game Embed, however for the developer it's the number after "width=" and in the page source is found after "data-width=".
30+
31+
**Itch Game Height:** Required field for the game's game embed. This value is gotten in a similar way to the Itch Game Embed, however for the developer it's the number after "height=" and in the page source is found after "data-height=".
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## Member Profiles
2+
3+
Profiles of club members can be added and edited at the row 'Member' of the GAME_DEV section on the main admin page.
4+
5+
### Fields
6+
7+
**Name:** Required field for the member's name. A character field (includes letters, numbers and symbols) of maximum length 200 characters.
8+
9+
**Active:** Checkbox to represent whether a member is an active participant in the club. If the checkbox is not ticked then the member's profile will not be displayed on the website.
10+
11+
**Profile Picture:** Optional field to upload a profile picture. Must be an image file, and will display best if the image is at least 128 by 128 px in size. If no profile picture is provided then the member's initials will be displayed instead.
12+
13+
**About:** Optional field for a bio. A character field of maximum length 256 characters.
14+
15+
**Pronouns:** Optional field for the member's pronouns. A character field of maximum length 20 characters.
16+
17+
**Social media links:** Optional section to display links to the member's social media profiles. Requires a link to the profile (character field of maximum length 2083) and, optionally, the profile username (character field of maximum length 200). If a username is not supplied then only a social media icon will be displayed with the link attached, otherwise the username will be placed next to the relevant icon. The type of icon to be displayed (e.g. instagram, linkedin, generic link) is inferred from the social media link provided.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
## About/Committee Page
2+
3+
Has a description of the club, it's aim's etc, along with a big feature photo, intended to be a group photo of the committee or a big event? Then below is a display of all the current committee members of the club, showing name, role and pronouns.
4+
5+
## Hardcoded content to be modified by committee members
6+
7+
The club description and feature photo are the only things hardcoded into the website's front-end. Starting from the root directory of this website's source, this code to modify can be found in /client/src/pages/about.tsx
8+
9+
## Other Notes
10+
11+
The Committee Members are always displayed in the same order on the about page, which is the order mentioned in admin-dashboard/committee.md. If a certain Committee object can't be retreived, a placeholder Committee Member portrait will be displayed to maintain the same order.

client/package-lock.json

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
2.68 KB
Loading

client/public/sfx/xplsion_0.mp3

83.4 KB
Binary file not shown.

client/public/sfx/xplsion_1.mp3

166 KB
Binary file not shown.

0 commit comments

Comments
 (0)