├── src └── student_network │ ├── __init__.py │ ├── views │ ├── __init__.py │ ├── chat.py │ ├── staff.py │ └── achievements.py │ ├── static │ ├── images │ │ ├── GSEP_ToS.png │ │ ├── default-pfp.jpg │ │ ├── logo │ │ │ ├── text_jpg.jpg │ │ │ ├── text_png.png │ │ │ ├── chatboxes_jpg.jpg │ │ │ ├── chatboxes_png.png │ │ │ ├── full_logo_jpg.jpg │ │ │ ├── full_logo_png.png │ │ │ ├── text_stretch_jpg.jpg │ │ │ ├── text_stretch_png.png │ │ │ ├── chatboxes_stretch_jpg.jpg │ │ │ ├── chatboxes_stretch_png.png │ │ │ ├── full_logo_stretch_jpg.jpg │ │ │ ├── full_logo_stretch_png.png │ │ │ └── chatboxes_stretch_png_square.png │ │ ├── blue_background.png │ │ ├── reconnect_tile_background.png │ │ ├── avatars │ │ │ ├── 20ce965d-68aa-488f-b2ee-159b5c8b339c.jpg │ │ │ ├── 2a607ae9-d4ab-4c34-bd59-7560f338302a.jpg │ │ │ ├── 3a84ceae-1643-4258-93ee-ce04be4a61a3.jpg │ │ │ ├── 3b9ab10f-cd01-4c12-9dce-b0cf38281e11.jpg │ │ │ ├── 475a1eeb-64f6-4577-ba0b-be4e5fea06fd.jpg │ │ │ ├── 477256f5-ecfd-4441-b7e7-554163c47dc6.jpg │ │ │ ├── 48615484-731c-47e2-bcc6-185f64c3c239.jpg │ │ │ ├── 49b44c64-65e3-4e8a-850c-04ce10ebc581.jpg │ │ │ ├── 5e8405fa-0940-44da-9908-e7e077c67977.jpg │ │ │ ├── 656629aa-dc27-489d-9af2-51913758f32b.jpg │ │ │ ├── 683dcfe2-e014-49b3-987f-3ade3f30305d.jpg │ │ │ ├── 8ae6f094-09c1-4d9a-b9fd-1ad12a8fcc5a.jpg │ │ │ ├── 8d1468c8-411a-4cbc-b1e4-2062761c98ce.jpg │ │ │ ├── 9068dbb4-7d17-44a2-9ccb-8b0d878c8c83.jpg │ │ │ ├── a7c9f14d-4de6-4735-9b16-13e1e3df0ca4.jpg │ │ │ ├── b3849c93-9baf-4366-8f9a-cb3609444d41.jpg │ │ │ ├── e050510d-b544-42ba-bcd0-d75a1089b7e2.jpg │ │ │ └── ea76ef51-d05e-455a-8bca-1dc2a7c82a4a.jpg │ │ └── post_imgs │ │ │ ├── 13ecaa90-d72f-4283-bb8e-726eafe79aa7.jpg │ │ │ ├── 33d7749f-6031-4a0a-b252-3d7a8ae64331.jpg │ │ │ ├── 54544cbe-a346-404a-b71e-80ab4f641f76.jpg │ │ │ ├── 70dc8871-e424-454e-85bc-ac02ac9f834f.jpg │ │ │ ├── 78afe457-39ba-4bed-b5cd-8e1fa8db227e.jpg │ │ │ ├── 877a3c17-2be4-4b21-a2b5-58d824aac62f.jpg │ │ │ ├── af2ecd76-c9c4-4e1f-8153-498f2abb5ecc.jpg │ │ │ ├── b76ff2d3-a292-4270-99a4-d4801321d626.jpg │ │ │ ├── ba4aa665-94c9-44e9-a171-c0f797ee77a4.jpg │ │ │ ├── c818c247-0fec-4a21-b2ca-f99ee7a2c903.jpg │ │ │ ├── d8a2f51b-14b8-42cd-a461-a06c79ed4833.jpg │ │ │ ├── eb3469c7-5a5b-4187-9e5c-c39cc884cbfc.jpg │ │ │ ├── f0f068ef-c325-49f4-831f-3d5129e26788.jpg │ │ │ └── f98c6507-7755-435a-90f1-ade8f618781c.jpg │ ├── FormatBody.js │ ├── searchbar.js │ ├── hobbies.js │ ├── interests.js │ ├── slideshow.js │ └── styles │ │ ├── mobile.css │ │ └── slideshow.css │ ├── templates │ ├── error.html │ ├── quiz_results.html │ ├── admin.html │ ├── login.html │ ├── flashcards_set.html │ ├── leaderboard.html │ ├── home_page.html │ ├── flashcards_view.html │ ├── flashcards_play.html │ ├── privacy_policy.html │ ├── flashcards_edit.html │ ├── members.html │ ├── terms.html │ ├── register.html │ ├── quiz.html │ ├── request.html │ ├── achievements.html │ ├── chat.html │ ├── base.html │ └── quizzes.html │ ├── app.py │ └── helpers │ ├── helper_login.py │ ├── helper_profile.py │ └── helper_general.py ├── db.sqlite3 ├── .prettierignore ├── docs ├── designs │ ├── poster.pdf │ ├── Register Page UI Concept.png │ ├── django_test │ │ ├── mysite │ │ │ ├── poll │ │ │ │ ├── apps.py │ │ │ │ ├── admin.py │ │ │ │ ├── static │ │ │ │ │ └── poll │ │ │ │ │ │ ├── images │ │ │ │ │ │ └── background.gif │ │ │ │ │ │ └── style.css │ │ │ │ ├── templates │ │ │ │ │ └── poll │ │ │ │ │ │ ├── results.html │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ └── detail.html │ │ │ │ ├── models.py │ │ │ │ ├── urls.py │ │ │ │ ├── migrations │ │ │ │ │ └── 0001_initial.py │ │ │ │ ├── views.py │ │ │ │ └── tests.py │ │ │ ├── mysite │ │ │ │ ├── asgi.py │ │ │ │ ├── wsgi.py │ │ │ │ ├── urls.py │ │ │ │ └── settings.py │ │ │ └── manage.py │ │ └── README.md │ ├── Version Release Cycle Plan (v0.1-2.0).png │ ├── Version Release Cycle Plan (v2.1-3.0).png │ ├── database test │ │ ├── database-test.py │ │ └── templates │ │ │ └── index.html │ └── Achievements table reference.csv ├── legal │ └── GSEP_privacy_policy.pdf ├── test-log │ └── Test Documentation.docx ├── kanban-snapshots │ ├── Kanban Snapshot 10.jpg │ ├── Kanban Snapshot 11.jpg │ ├── Kanban Snapshot 12.jpg │ ├── Kanban Snapshot 5.jpg │ ├── Kanban Snapshot 6.jpg │ ├── Kanban Snapshot 7.jpg │ ├── Kanban Snapshot 8.jpg │ ├── Kanban Snapshot 9.jpg │ ├── Kanban Snapshot - 11th Feb.jpg │ ├── Kanban Snapshot - 10th Feb (1).jpg │ ├── Kanban Snapshot - 10th Feb (2).jpg │ └── Kanban Snapshot - 10th Feb (3).jpg ├── requirements-analysis │ ├── MoSCoW Matrix.pdf │ ├── Analysis - Success Criteria.docx │ ├── Group N - Social Media Survey.pdf │ ├── Research - Back-End Solutions.docx │ ├── Research - Front-End Solutions.docx │ ├── Plan - Design Thinking and MoSCoW Matrix.docx │ └── Social Media Survey - Group N (Responses) (1).xlsx └── meeting-notes │ ├── Minutes - Initial Meeting.docx │ ├── Minutes - Follow-Up Meeting.docx │ ├── Minutes - Initial Backlog Meeting.docx │ ├── Minutes - Client Meeting (22nd Feb).docx │ ├── Minutes - Client Meeting (8th Feb).docx │ ├── Minutes - Stand-Up Meeting (12th Feb).docx │ ├── Minutes - Stand-Up Meeting (15th Feb).docx │ ├── Minutes - Stand-Up Meeting (19th Feb).docx │ ├── Minutes - Stand-Up Meeting (21st Feb).docx │ ├── Minutes - Stand-Up Meeting (22nd Feb).docx │ ├── Minutes - Stand-Up Meeting (24th Feb).docx │ ├── Minutes - Stand-Up Meeting (26th Feb).docx │ ├── Minutes - Stand-Up Meeting (3rd March).docx │ ├── Minutes - Stand-Up Meeting (5th March).docx │ ├── Minutes - Stand-Up Meeting (7th March).docx │ └── Minutes - Version Release Diagram Meeting.docx ├── setup.py ├── prototypes ├── password_hash.py ├── create_database.py └── registration.py ├── requirements.txt ├── tests ├── test_general.py ├── test_social_profiles.py └── test_login_system.py ├── utils └── change_demo_account_passwords.py ├── .github └── workflows │ ├── main.yml │ └── codeql-analysis.yml ├── CONTRIBUTING.md ├── .gitignore └── README.md /src/student_network/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/student_network/views/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /db.sqlite3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/db.sqlite3 -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | # Ignore styles as they're from external sources. 2 | src/student_network/static/styles -------------------------------------------------------------------------------- /docs/designs/poster.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/designs/poster.pdf -------------------------------------------------------------------------------- /docs/legal/GSEP_privacy_policy.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/legal/GSEP_privacy_policy.pdf -------------------------------------------------------------------------------- /docs/test-log/Test Documentation.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/test-log/Test Documentation.docx -------------------------------------------------------------------------------- /docs/designs/Register Page UI Concept.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/designs/Register Page UI Concept.png -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class PollConfig(AppConfig): 5 | name = "poll" 6 | -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 10.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 11.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 12.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 12.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 5.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 6.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 7.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 8.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot 9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot 9.jpg -------------------------------------------------------------------------------- /docs/requirements-analysis/MoSCoW Matrix.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/MoSCoW Matrix.pdf -------------------------------------------------------------------------------- /src/student_network/static/images/GSEP_ToS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/GSEP_ToS.png -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | from .models import Question 4 | 5 | admin.site.register(Question) 6 | -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Initial Meeting.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Initial Meeting.docx -------------------------------------------------------------------------------- /src/student_network/static/images/default-pfp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/default-pfp.jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot - 11th Feb.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot - 11th Feb.jpg -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Follow-Up Meeting.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Follow-Up Meeting.docx -------------------------------------------------------------------------------- /src/student_network/static/images/logo/text_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/text_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/text_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/text_png.png -------------------------------------------------------------------------------- /docs/designs/Version Release Cycle Plan (v0.1-2.0).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/designs/Version Release Cycle Plan (v0.1-2.0).png -------------------------------------------------------------------------------- /docs/designs/Version Release Cycle Plan (v2.1-3.0).png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/designs/Version Release Cycle Plan (v2.1-3.0).png -------------------------------------------------------------------------------- /src/student_network/static/images/blue_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/blue_background.png -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot - 10th Feb (1).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot - 10th Feb (1).jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot - 10th Feb (2).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot - 10th Feb (2).jpg -------------------------------------------------------------------------------- /docs/kanban-snapshots/Kanban Snapshot - 10th Feb (3).jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/kanban-snapshots/Kanban Snapshot - 10th Feb (3).jpg -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Initial Backlog Meeting.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Initial Backlog Meeting.docx -------------------------------------------------------------------------------- /src/student_network/static/images/logo/chatboxes_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/chatboxes_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/chatboxes_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/chatboxes_png.png -------------------------------------------------------------------------------- /src/student_network/static/images/logo/full_logo_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/full_logo_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/full_logo_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/full_logo_png.png -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Client Meeting (22nd Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Client Meeting (22nd Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Client Meeting (8th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Client Meeting (8th Feb).docx -------------------------------------------------------------------------------- /docs/requirements-analysis/Analysis - Success Criteria.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Analysis - Success Criteria.docx -------------------------------------------------------------------------------- /docs/requirements-analysis/Group N - Social Media Survey.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Group N - Social Media Survey.pdf -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup, find_packages 2 | 3 | setup( 4 | name="student_network", 5 | package_dir={"": "src"}, 6 | packages=find_packages("src"), 7 | ) 8 | -------------------------------------------------------------------------------- /src/student_network/static/images/logo/text_stretch_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/text_stretch_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/text_stretch_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/text_stretch_png.png -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (12th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (12th Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (15th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (15th Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (19th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (19th Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (21st Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (21st Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (22nd Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (22nd Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (24th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (24th Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (26th Feb).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (26th Feb).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (3rd March).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (3rd March).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (5th March).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (5th March).docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Stand-Up Meeting (7th March).docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Stand-Up Meeting (7th March).docx -------------------------------------------------------------------------------- /docs/requirements-analysis/Research - Back-End Solutions.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Research - Back-End Solutions.docx -------------------------------------------------------------------------------- /docs/requirements-analysis/Research - Front-End Solutions.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Research - Front-End Solutions.docx -------------------------------------------------------------------------------- /docs/meeting-notes/Minutes - Version Release Diagram Meeting.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/meeting-notes/Minutes - Version Release Diagram Meeting.docx -------------------------------------------------------------------------------- /src/student_network/static/images/logo/chatboxes_stretch_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/chatboxes_stretch_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/chatboxes_stretch_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/chatboxes_stretch_png.png -------------------------------------------------------------------------------- /src/student_network/static/images/logo/full_logo_stretch_jpg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/full_logo_stretch_jpg.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/logo/full_logo_stretch_png.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/full_logo_stretch_png.png -------------------------------------------------------------------------------- /src/student_network/static/images/reconnect_tile_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/reconnect_tile_background.png -------------------------------------------------------------------------------- /prototypes/password_hash.py: -------------------------------------------------------------------------------- 1 | import bcrypt 2 | 3 | password = input("Enter password: ") 4 | hash_password = bcrypt.hashpw(password.encode("utf-8"), bcrypt.gensalt()) 5 | print(hash_password) 6 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/static/poll/images/background.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/designs/django_test/mysite/poll/static/poll/images/background.gif -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/static/poll/style.css: -------------------------------------------------------------------------------- 1 | li a { 2 | color: green; 3 | font-weight: bolder; 4 | } 5 | 6 | body { 7 | background: white url("images/background.gif") no-repeat; 8 | } 9 | -------------------------------------------------------------------------------- /docs/requirements-analysis/Plan - Design Thinking and MoSCoW Matrix.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Plan - Design Thinking and MoSCoW Matrix.docx -------------------------------------------------------------------------------- /src/student_network/static/images/logo/chatboxes_stretch_png_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/logo/chatboxes_stretch_png_square.png -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | email_validator==1.1.3 2 | Flask==2.3.2 3 | Flask_SocketIO==5.1.1 4 | Werkzeug==3.0.0 5 | Pillow==9.3.0 6 | bcrypt==3.2.0 7 | pytest==6.2.5 8 | pytest-steps==1.8.0 9 | coverage==6.3.1 10 | -------------------------------------------------------------------------------- /docs/requirements-analysis/Social Media Survey - Group N (Responses) (1).xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/docs/requirements-analysis/Social Media Survey - Group N (Responses) (1).xlsx -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/20ce965d-68aa-488f-b2ee-159b5c8b339c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/20ce965d-68aa-488f-b2ee-159b5c8b339c.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/2a607ae9-d4ab-4c34-bd59-7560f338302a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/2a607ae9-d4ab-4c34-bd59-7560f338302a.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/3a84ceae-1643-4258-93ee-ce04be4a61a3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/3a84ceae-1643-4258-93ee-ce04be4a61a3.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/3b9ab10f-cd01-4c12-9dce-b0cf38281e11.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/3b9ab10f-cd01-4c12-9dce-b0cf38281e11.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/475a1eeb-64f6-4577-ba0b-be4e5fea06fd.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/475a1eeb-64f6-4577-ba0b-be4e5fea06fd.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/477256f5-ecfd-4441-b7e7-554163c47dc6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/477256f5-ecfd-4441-b7e7-554163c47dc6.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/48615484-731c-47e2-bcc6-185f64c3c239.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/48615484-731c-47e2-bcc6-185f64c3c239.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/49b44c64-65e3-4e8a-850c-04ce10ebc581.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/49b44c64-65e3-4e8a-850c-04ce10ebc581.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/5e8405fa-0940-44da-9908-e7e077c67977.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/5e8405fa-0940-44da-9908-e7e077c67977.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/656629aa-dc27-489d-9af2-51913758f32b.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/656629aa-dc27-489d-9af2-51913758f32b.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/683dcfe2-e014-49b3-987f-3ade3f30305d.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/683dcfe2-e014-49b3-987f-3ade3f30305d.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/8ae6f094-09c1-4d9a-b9fd-1ad12a8fcc5a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/8ae6f094-09c1-4d9a-b9fd-1ad12a8fcc5a.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/8d1468c8-411a-4cbc-b1e4-2062761c98ce.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/8d1468c8-411a-4cbc-b1e4-2062761c98ce.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/9068dbb4-7d17-44a2-9ccb-8b0d878c8c83.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/9068dbb4-7d17-44a2-9ccb-8b0d878c8c83.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/a7c9f14d-4de6-4735-9b16-13e1e3df0ca4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/a7c9f14d-4de6-4735-9b16-13e1e3df0ca4.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/b3849c93-9baf-4366-8f9a-cb3609444d41.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/b3849c93-9baf-4366-8f9a-cb3609444d41.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/e050510d-b544-42ba-bcd0-d75a1089b7e2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/e050510d-b544-42ba-bcd0-d75a1089b7e2.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/avatars/ea76ef51-d05e-455a-8bca-1dc2a7c82a4a.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/avatars/ea76ef51-d05e-455a-8bca-1dc2a7c82a4a.jpg -------------------------------------------------------------------------------- /src/student_network/static/FormatBody.js: -------------------------------------------------------------------------------- 1 | function FormatBody(body) { 2 | body = markdown.toHTML(body); 3 | return body.replace( 4 | /(@(\w+))/gi, 5 | `$1` 6 | ); 7 | } 8 | -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/13ecaa90-d72f-4283-bb8e-726eafe79aa7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/13ecaa90-d72f-4283-bb8e-726eafe79aa7.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/33d7749f-6031-4a0a-b252-3d7a8ae64331.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/33d7749f-6031-4a0a-b252-3d7a8ae64331.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/54544cbe-a346-404a-b71e-80ab4f641f76.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/54544cbe-a346-404a-b71e-80ab4f641f76.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/70dc8871-e424-454e-85bc-ac02ac9f834f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/70dc8871-e424-454e-85bc-ac02ac9f834f.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/78afe457-39ba-4bed-b5cd-8e1fa8db227e.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/78afe457-39ba-4bed-b5cd-8e1fa8db227e.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/877a3c17-2be4-4b21-a2b5-58d824aac62f.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/877a3c17-2be4-4b21-a2b5-58d824aac62f.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/af2ecd76-c9c4-4e1f-8153-498f2abb5ecc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/af2ecd76-c9c4-4e1f-8153-498f2abb5ecc.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/b76ff2d3-a292-4270-99a4-d4801321d626.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/b76ff2d3-a292-4270-99a4-d4801321d626.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/ba4aa665-94c9-44e9-a171-c0f797ee77a4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/ba4aa665-94c9-44e9-a171-c0f797ee77a4.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/c818c247-0fec-4a21-b2ca-f99ee7a2c903.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/c818c247-0fec-4a21-b2ca-f99ee7a2c903.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/d8a2f51b-14b8-42cd-a461-a06c79ed4833.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/d8a2f51b-14b8-42cd-a461-a06c79ed4833.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/eb3469c7-5a5b-4187-9e5c-c39cc884cbfc.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/eb3469c7-5a5b-4187-9e5c-c39cc884cbfc.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/f0f068ef-c325-49f4-831f-3d5129e26788.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/f0f068ef-c325-49f4-831f-3d5129e26788.jpg -------------------------------------------------------------------------------- /src/student_network/static/images/post_imgs/f98c6507-7755-435a-90f1-ade8f618781c.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/IsaacCheng9/student-network/HEAD/src/student_network/static/images/post_imgs/f98c6507-7755-435a-90f1-ade8f618781c.jpg -------------------------------------------------------------------------------- /src/student_network/static/searchbar.js: -------------------------------------------------------------------------------- 1 | var input = document.getElementById("search"); 2 | input.addEventListener("keyup", function (event) { 3 | if (event.keyCode === 13) { 4 | event.preventDefault(); 5 | location.href = "/profile/" + input.value; 6 | } 7 | }); 8 | -------------------------------------------------------------------------------- /prototypes/create_database.py: -------------------------------------------------------------------------------- 1 | import sqlite3 2 | 3 | conn = sqlite3.connect("../db.sqlite3") 4 | c = conn.cursor() 5 | 6 | c.execute( 7 | "CREATE TABLE Accounts([username] text, [password] text, " 8 | "[email] text, [type] text)" 9 | ) 10 | 11 | conn.commit() 12 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/templates/poll/results.html: -------------------------------------------------------------------------------- 1 |
No polls are available.
17 | {% endif %} 18 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/mysite/asgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | ASGI config for mysite project. 3 | 4 | It exposes the ASGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/3.1/howto/deployment/asgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.asgi import get_asgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 15 | 16 | application = get_asgi_application() 17 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/mysite/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for mysite project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/3.1/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /src/student_network/templates/error.html: -------------------------------------------------------------------------------- 1 | 2 | 6 | 10 | {% extends "base.html" %} {% block title %}Error{% endblock %} {% block content 11 | %} {% if message %} 12 | 17 | {% endif %} {% endblock %} 18 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/templates/poll/detail.html: -------------------------------------------------------------------------------- 1 |{{ error_message }}
5 | {% endif %} 6 | 7 | 20 | -------------------------------------------------------------------------------- /docs/designs/django_test/README.md: -------------------------------------------------------------------------------- 1 | To run this Django mock polling application, navigate to the file-path of the 2 | outer 'mysite' folder (where the 'manage.py' file resides) from within the 3 | command prompt. Then simply run the command 'python manage.py runserver' 4 | to initialise the page. 5 | Go to http://127.0.0.1:8000/poll/ or http://127.0.0.1:8000/admin/ on your 6 | browser to view the webpages. 7 | 8 | After creating this initial Django test, and researching the availability of 9 | Django on our chosen hosting service (AWS), we decided the lack of group 10 | knowledge of the syntax of Django as well as the restrictions on Django 11 | when paired with AWS made Flask a better choice for our backend web app 12 | development using Python. -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | """Django's command-line utility for administrative tasks.""" 3 | import os 4 | import sys 5 | 6 | 7 | def main(): 8 | """Run administrative tasks.""" 9 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings") 10 | try: 11 | from django.core.management import execute_from_command_line 12 | except ImportError as exc: 13 | raise ImportError( 14 | "Couldn't import Django. Are you sure it's installed and " 15 | "available on your PYTHONPATH environment variable? Did you " 16 | "forget to activate a virtual environment?" 17 | ) from exc 18 | execute_from_command_line(sys.argv) 19 | 20 | 21 | if __name__ == "__main__": 22 | main() 23 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/models.py: -------------------------------------------------------------------------------- 1 | import datetime 2 | 3 | from django.db import models 4 | from django.utils import timezone 5 | 6 | 7 | class Question(models.Model): 8 | question_text = models.CharField(max_length=200) 9 | pub_date = models.DateTimeField("date published") 10 | 11 | def __str__(self): 12 | return self.question_text 13 | 14 | def was_published_recently(self): 15 | now = timezone.now() 16 | return now - datetime.timedelta(days=1) <= self.pub_date <= now 17 | 18 | 19 | class Choice(models.Model): 20 | question = models.ForeignKey(Question, on_delete=models.CASCADE) 21 | choice_text = models.CharField(max_length=200) 22 | votes = models.IntegerField(default=0) 23 | 24 | def __str__(self): 25 | return self.choice_text 26 | -------------------------------------------------------------------------------- /docs/designs/django_test/mysite/poll/urls.py: -------------------------------------------------------------------------------- 1 | from django.urls import path 2 | 3 | from . import views 4 | 5 | """ 6 | app_name = 'poll' 7 | urlpatterns = [ 8 | # ex: /polls/ 9 | path('', views.index, name='index'), 10 | # ex: /polls/5/ 11 | path('Rank |
30 | User |
31 | Level |
32 | Total XP |
33 |
|---|---|---|---|
#{{ i + 1}} |
39 |
40 |
41 |
48 | {{ leaderboard[i][4] }}
45 |
46 | |
49 | {{ leaderboard[i][3][0] }} |
50 | {{ leaderboard[i][1] }} |
51 |
Comments
22 | {%for comment in comments%} 23 |