├── CTF ├── __init__.py ├── utils │ ├── __init__.py │ ├── invitation │ │ ├── __init__.py │ │ └── model.py │ ├── UTILS_SHOULD_BE_UPLOADED_HERE │ ├── check_user │ │ ├── __init__.py │ │ ├── requirements.txt │ │ ├── README.md │ │ └── CheckUser.py │ ├── game_crawler │ │ ├── requirements.txt │ │ ├── README.md │ │ ├── __init__.py │ │ ├── model.py │ │ └── game.py │ └── util.py ├── static │ ├── css │ │ ├── style.css │ │ ├── addons │ │ │ ├── directives.min.css │ │ │ ├── rating.min.css │ │ │ ├── directives.min.css.map │ │ │ ├── rating.min.css.map │ │ │ ├── jquery.zmd.hierarchical-display.min.css │ │ │ ├── jquery.zmd.hierarchical-display.min.css.map │ │ │ ├── datatables.min.css │ │ │ ├── datatables-select.min.css │ │ │ ├── datatables.min.css.map │ │ │ └── datatables-select.min.css.map │ │ ├── brands.min.css │ │ ├── solid.min.css │ │ ├── regular.min.css │ │ ├── brands.css │ │ ├── solid.css │ │ ├── regular.css │ │ ├── forgotpwd.css │ │ ├── base.css │ │ ├── navigator.css │ │ ├── svg-with-js.min.css │ │ └── svg-with-js.css │ ├── img │ │ ├── fakeLogo.JPG │ │ └── scuctf.JPG │ ├── upload │ │ └── avatar.jpg │ ├── fonts │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.ttf │ │ ├── glyphicons-halflings-regular.woff │ │ └── glyphicons-halflings-regular.woff2 │ └── js │ │ ├── jquery-ui-1.12.1.custom │ │ ├── images │ │ │ ├── ui-icons_444444_256x240.png │ │ │ ├── ui-icons_555555_256x240.png │ │ │ ├── ui-icons_777620_256x240.png │ │ │ ├── ui-icons_777777_256x240.png │ │ │ ├── ui-icons_cc0000_256x240.png │ │ │ └── ui-icons_ffffff_256x240.png │ │ ├── LICENSE.txt │ │ ├── package.json │ │ ├── jquery-ui.theme.min.css │ │ └── AUTHORS.txt │ │ ├── npm.js │ │ ├── addons │ │ ├── flag.min.js │ │ ├── directives.min.js │ │ ├── flag.min.js.map │ │ ├── directives.min.js.map │ │ └── rating.min.js │ │ ├── modules │ │ ├── animations-extended.min.js │ │ ├── scrolling-navbar.min.js │ │ ├── animations-extended.min.js.map │ │ ├── scrolling-navbar.min.js.map │ │ ├── treeview.min.js │ │ └── wow.min.js │ │ ├── navigator.js │ │ ├── mdb.lite.min.js.map │ │ └── conflict-detection.min.js ├── admin.py ├── tests.py ├── apps.py ├── urls.py ├── forms.py ├── auth.py ├── models.py └── views.py ├── SCUCTF_CMS ├── __init__.py ├── asgi.py ├── wsgi.py ├── urls.py └── settings.py ├── .idea ├── .gitignore ├── vcs.xml ├── inspectionProfiles │ └── profiles_settings.xml ├── modules.xml ├── misc.xml ├── SCUCTF_CMS.iml ├── markdown-navigator.xml └── markdown-navigator-enh.xml ├── README.md ├── templates ├── user_center.html ├── registration │ ├── password_reset_email.html │ ├── password_reset_complete.html │ ├── password_reset_done.html │ ├── password_reset_confirm.html │ └── password_reset_form.html ├── index.html ├── register.html ├── base.html ├── forgotPwd.html └── login.html ├── manage.py └── .gitignore /CTF/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CTF/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /SCUCTF_CMS/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CTF/static/css/style.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CTF/utils/invitation/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CTF/utils/UTILS_SHOULD_BE_UPLOADED_HERE: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CTF/utils/check_user/__init__.py: -------------------------------------------------------------------------------- 1 | from .CheckUser import * -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Default ignored files 3 | /workspace.xml -------------------------------------------------------------------------------- /CTF/utils/check_user/requirements.txt: -------------------------------------------------------------------------------- 1 | requests 2 | bs4 3 | re -------------------------------------------------------------------------------- /CTF/utils/game_crawler/requirements.txt: -------------------------------------------------------------------------------- 1 | requests 2 | bs4 3 | lxml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SCUCTF-CMS 2 | A cms system for Sichuan University CTF Association 3 | -------------------------------------------------------------------------------- /CTF/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /CTF/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /CTF/static/img/fakeLogo.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/img/fakeLogo.JPG -------------------------------------------------------------------------------- /CTF/static/img/scuctf.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/img/scuctf.JPG -------------------------------------------------------------------------------- /CTF/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class CtfConfig(AppConfig): 5 | name = 'CTF' 6 | -------------------------------------------------------------------------------- /CTF/static/upload/avatar.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/upload/avatar.jpg -------------------------------------------------------------------------------- /CTF/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /CTF/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /CTF/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /CTF/static/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_444444_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_444444_256x240.png -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_555555_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_555555_256x240.png -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_777620_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_777620_256x240.png -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_777777_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_777777_256x240.png -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_cc0000_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_cc0000_256x240.png -------------------------------------------------------------------------------- /CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/scu-ctf/SCUCTF-CMS/HEAD/CTF/static/js/jquery-ui-1.12.1.custom/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /templates/user_center.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |{{ user.username }}
,你好,你之所以收到这封邮件,是因为你正在进行重置密码操作, 2 | 重置密码点击{{ protocol }}://{{ domain }}{% url "password_reset_confirm" uidb64=uid token=token %} 3 | 4 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 |Welcome, {{ user.get_username }}. Thanks for logging in.
11 | logout here 12 | {% else %} 13 |Welcome, new user. Please log in.
14 | {% endif %} 15 | 16 | -------------------------------------------------------------------------------- /SCUCTF_CMS/asgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | ASGI config for SCUCTF_CMS 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.0/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', 'SCUCTF_CMS.settings') 15 | 16 | application = get_asgi_application() 17 | -------------------------------------------------------------------------------- /SCUCTF_CMS/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for SCUCTF_CMS 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.0/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', 'SCUCTF_CMS.settings') 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /CTF/utils/game_crawler/model.py: -------------------------------------------------------------------------------- 1 | from django.db.models import Model, TextField, IntegerField, DateField 2 | 3 | 4 | # Use class Model to manage database 5 | 6 | class GameInformation(Model): 7 | id = IntegerField(primary_key=True) # 标识符 8 | name = TextField(null=False) # 比赛名称 9 | type = TextField(null=False) # 比赛类型 10 | hyperlink = TextField() # 报名链接 11 | date = DateField(null=False) 12 | pic_addr = TextField(null=False) 13 | location = TextField(null=False) 14 | -------------------------------------------------------------------------------- /CTF/static/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /CTF/static/css/addons/directives.min.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["webpack:///./src/scss/addons/_directives.scss"],"names":[],"mappings":"AAAA,WAAW,UAAU,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,YAAY,WAAW,aAAa","file":"css/addons/directives.min.css","sourcesContent":[".opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}\n"],"sourceRoot":""} -------------------------------------------------------------------------------- /CTF/static/css/addons/rating.min.css.map: -------------------------------------------------------------------------------- 1 | {"version":3,"sources":["webpack:///./src/scss/addons/_rating.scss"],"names":[],"mappings":"AAAA,0BAA0B,cAAc,kBAAkB,WAAW,qBAAqB,cAAc,sBAAsB,cAAc,wBAAwB,cAAc,uBAAuB,cAAc,uBAAuB,cAAc,wBAAwB","file":"css/addons/rating.min.css","sourcesContent":[".mdb-rating .rate-popover{color:#808080}.mdb-rating .live{color:#000}.mdb-rating .oneStar{color:#44370f}.mdb-rating .twoStars{color:#96781e}.mdb-rating .threeStars{color:#e2b52e}.mdb-rating .fourStars{color:#f1ba12}.mdb-rating .fiveStars{color:#f3cb06}.mdb-rating .amber-text{color:#ffc107}\n"],"sourceRoot":""} -------------------------------------------------------------------------------- /CTF/static/css/brands.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"} -------------------------------------------------------------------------------- /CTF/static/css/solid.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900} -------------------------------------------------------------------------------- /CTF/static/css/regular.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:"Font Awesome 5 Free";font-weight:400} -------------------------------------------------------------------------------- /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 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'SCUCTF_CMS.settings') 9 | try: 10 | from django.core.management import execute_from_command_line 11 | except ImportError as exc: 12 | raise ImportError( 13 | "Couldn't import Django. Are you sure it's installed and " 14 | "available on your PYTHONPATH environment variable? Did you " 15 | "forget to activate a virtual environment?" 16 | ) from exc 17 | execute_from_command_line(sys.argv) 18 | 19 | 20 | if __name__ == '__main__': 21 | main() 22 | -------------------------------------------------------------------------------- /CTF/static/css/brands.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Brands'; 7 | font-style: normal; 8 | font-weight: normal; 9 | font-display: auto; 10 | src: url("../webfonts/fa-brands-400.eot"); 11 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } 12 | 13 | .fab { 14 | font-family: 'Font Awesome 5 Brands'; } 15 | -------------------------------------------------------------------------------- /CTF/static/css/solid.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Free'; 7 | font-style: normal; 8 | font-weight: 900; 9 | font-display: auto; 10 | src: url("../webfonts/fa-solid-900.eot"); 11 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } 12 | 13 | .fa, 14 | .fas { 15 | font-family: 'Font Awesome 5 Free'; 16 | font-weight: 900; } 17 | -------------------------------------------------------------------------------- /CTF/static/css/regular.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.11.2 by @fontawesome - https://fontawesome.com 3 | * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Free'; 7 | font-style: normal; 8 | font-weight: 400; 9 | font-display: auto; 10 | src: url("../webfonts/fa-regular-400.eot"); 11 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } 12 | 13 | .far { 14 | font-family: 'Font Awesome 5 Free'; 15 | font-weight: 400; } 16 | -------------------------------------------------------------------------------- /templates/registration/password_reset_complete.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 |17 | 如果您输入的邮件地址所对应的账户存在,设置密码的提示已经发送邮件给您,您将很快收到。 18 |
19 |20 | 如果你没有收到邮件, 请确保您所输入的地址是正确的, 并检查您的垃圾邮件文件夹. 21 |
22 |恭喜您,密码修改成功!
73 | {% endif %} 74 |