Compare commits
No commits in common. "00962b40d30c6e80aba8167938569fc069655700" and "a12dd0d02083b989a8d942e25ff381c6de22de3e" have entirely different histories.
00962b40d3
...
a12dd0d020
|
@ -1,3 +0,0 @@
|
||||||
[submodule "src/ctfs/templates/challenges"]
|
|
||||||
path = src/ctfs/templates/challenges
|
|
||||||
url = https://gitea.42ctf.org/42CTF/challenges-descriptions.git
|
|
|
@ -1,26 +0,0 @@
|
||||||
# Generated by Django 3.2.11 on 2022-02-15 16:13
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('ctfs', '0007_ctf_disabled'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='ctf',
|
|
||||||
name='description_de',
|
|
||||||
),
|
|
||||||
migrations.RemoveField(
|
|
||||||
model_name='ctf',
|
|
||||||
name='description_ru',
|
|
||||||
),
|
|
||||||
migrations.AddField(
|
|
||||||
model_name='ctf',
|
|
||||||
name='port',
|
|
||||||
field=models.PositiveSmallIntegerField(blank=True, null=True),
|
|
||||||
),
|
|
||||||
]
|
|
|
@ -15,9 +15,10 @@ class CTF(models.Model):
|
||||||
disabled = models.BooleanField(default=False)
|
disabled = models.BooleanField(default=False)
|
||||||
description = models.TextField(blank=True)
|
description = models.TextField(blank=True)
|
||||||
description_en = models.TextField(blank=True)
|
description_en = models.TextField(blank=True)
|
||||||
|
description_ru = models.TextField(blank=True)
|
||||||
|
description_de = models.TextField(blank=True)
|
||||||
file = models.FileField(blank=True, upload_to='challenges')
|
file = models.FileField(blank=True, upload_to='challenges')
|
||||||
ctf_url = models.URLField(blank=True)
|
ctf_url = models.URLField(blank=True)
|
||||||
port = models.PositiveSmallIntegerField(null=True, blank=True)
|
|
||||||
event = models.ForeignKey(Event, null=True, blank=True, on_delete=models.CASCADE)
|
event = models.ForeignKey(Event, null=True, blank=True, on_delete=models.CASCADE)
|
||||||
points = models.PositiveSmallIntegerField()
|
points = models.PositiveSmallIntegerField()
|
||||||
slug = models.SlugField(max_length=55)
|
slug = models.SlugField(max_length=55)
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 18fac3978d21dc824bcffa2bc960aa2bf6b4abd9
|
|
|
@ -2,8 +2,6 @@
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% load i18n %}
|
{% load i18n %}
|
||||||
{% load is_member %}
|
{% load is_member %}
|
||||||
{% load get_chall %}
|
|
||||||
{% get_current_language as lang %}
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm-12 col-md-9">
|
<div class="col-sm-12 col-md-9">
|
||||||
<div class="ctf-block">
|
<div class="ctf-block">
|
||||||
|
@ -17,11 +15,11 @@
|
||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="ctf-body">
|
<div class="ctf-body">
|
||||||
{% get_chall_by_lang ctf lang as content %}
|
{% if description %}
|
||||||
{{ content | safe }}
|
{{ description|safe }}
|
||||||
<!-- {% if ctf.port %}
|
{% else %}
|
||||||
<b>nc challenges.42ctf.org {{ ctf.port }}</b>
|
{% trans "No translation available. Please try another language (English or French)." %}
|
||||||
{% endif %} -->
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="ctf-footer">
|
<div class="ctf-footer">
|
||||||
{% if request.user.is_authenticated %}
|
{% if request.user.is_authenticated %}
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
from django import template
|
|
||||||
|
|
||||||
register = template.Library()
|
|
||||||
|
|
||||||
@register.simple_tag
|
|
||||||
def get_chall_by_lang(chall, lang):
|
|
||||||
print(chall.slug)
|
|
||||||
filepath = "ctfs/templates/challenges/"+ lang + "/" + chall.slug + ".html"
|
|
||||||
print(filepath)
|
|
||||||
try:
|
|
||||||
with open(filepath) as fp:
|
|
||||||
return fp.read()
|
|
||||||
except:
|
|
||||||
return chall.description_en
|
|
|
@ -1,23 +0,0 @@
|
||||||
# Generated by Django 3.2.11 on 2022-02-15 16:06
|
|
||||||
|
|
||||||
from django.db import migrations, models
|
|
||||||
|
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
|
||||||
|
|
||||||
dependencies = [
|
|
||||||
('events', '0008_event_dynamic'),
|
|
||||||
]
|
|
||||||
|
|
||||||
operations = [
|
|
||||||
migrations.AlterField(
|
|
||||||
model_name='eventplayer',
|
|
||||||
name='id',
|
|
||||||
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
|
|
||||||
),
|
|
||||||
migrations.AlterField(
|
|
||||||
model_name='team',
|
|
||||||
name='id',
|
|
||||||
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
|
|
||||||
),
|
|
||||||
]
|
|
Loading…
Reference in New Issue