Compare commits
16 Commits
7887074b3d
...
06593b26f9
Author | SHA1 | Date |
---|---|---|
Danhia | 06593b26f9 | |
Danhia | e8f5f33269 | |
Danhia | f0479f6577 | |
Danhia | 8f32ef9a6e | |
Danhia | a0b76903a7 | |
Danhia | a7de7b8054 | |
Danhia | 0d734e98b1 | |
Danhia | 3d24fe9b3b | |
Danhia | ba0d75c250 | |
Danhia | 3ae80ca17f | |
Danhia | a7e75b2a43 | |
Danhia | 9ea67ae2a0 | |
Danhia | c40d49c326 | |
Starthur | d6b1380552 | |
Arthur-TRT | d0c93f98a1 | |
Arthur-TRT | 97e120e5fc |
104
bot.py
104
bot.py
|
@ -1,104 +0,0 @@
|
|||
import os
|
||||
import discord
|
||||
import discord.utils
|
||||
import urllib.request, json
|
||||
import asyncio
|
||||
import json
|
||||
import logging
|
||||
|
||||
TOKEN = os.getenv('DISCORD_TOKEN')
|
||||
GUILD = '42ctf'
|
||||
|
||||
intents = discord.Intents.all()
|
||||
client = discord.Client(intents=intents)
|
||||
|
||||
db_file = open('members.json', 'r')
|
||||
users = json.load(db_file)
|
||||
db_file.close()
|
||||
|
||||
logging.basicConfig(filename='bot.log', format='%(asctime)s %(message)s', level=logging.INFO)
|
||||
|
||||
guild = ''
|
||||
roles = {}
|
||||
|
||||
def get_rank(token):
|
||||
url = urllib.request.urlopen("https://www.42ctf.org/accounts/rank/" + token)
|
||||
data = json.loads(url.read().decode())
|
||||
rank = data['rank']
|
||||
return rank
|
||||
|
||||
async def watch_roles():
|
||||
global users
|
||||
await client.wait_until_ready() # ensures cache is loaded
|
||||
while not client.is_closed():
|
||||
for member_id, token in users.items():
|
||||
if (token == "0000"):
|
||||
continue
|
||||
member = discord.utils.get(guild.members, id=int(member_id))
|
||||
rank = get_rank(token)
|
||||
if rank == 1 and roles['top1'] not in member.roles:
|
||||
await member.add_roles(roles['top1'])
|
||||
await member.remove_roles(roles['top10'])
|
||||
await member.remove_roles(roles['top50'])
|
||||
elif rank > 1 and rank <= 10 and roles['top10'] not in member.roles:
|
||||
await member.add_roles(roles['top10'])
|
||||
await member.remove_roles(roles['top1'])
|
||||
await member.remove_roles(roles['top50'])
|
||||
elif rank > 10 and rank <= 50 and roles['top50'] not in member.roles:
|
||||
await member.add_roles(roles['top50'])
|
||||
await member.remove_roles(roles['top10'])
|
||||
await member.remove_roles(roles['top1'])
|
||||
elif rank > 50:
|
||||
await member.remove_roles(roles['top1'])
|
||||
await member.remove_roles(roles['top10'])
|
||||
await member.remove_roles(roles['top50'])
|
||||
await asyncio.sleep(60)
|
||||
|
||||
@client.event
|
||||
async def on_ready():
|
||||
global guild, roles
|
||||
guild = discord.utils.get(client.guilds, name=GUILD)
|
||||
roles['top10'] = discord.utils.get(guild.roles, id=801787467064672286)
|
||||
roles['top1'] = discord.utils.get(guild.roles, id=798638767359524875)
|
||||
roles['top50'] = discord.utils.get(guild.roles, id=803729539145924649)
|
||||
|
||||
logging.info('%s is connected to the following guild: %s(id: %d)', client.user, guild.name, guild.id)
|
||||
client.loop.create_task(watch_roles())
|
||||
|
||||
@client.event
|
||||
async def on_message(message):
|
||||
global guild, roles
|
||||
|
||||
if message.author == client.user:
|
||||
return
|
||||
|
||||
if '!connect' in message.content:
|
||||
try:
|
||||
user_token = message.content.split(' ')[1]
|
||||
member = discord.utils.get(guild.members, name=message.author.name)
|
||||
rank = get_rank(user_token)
|
||||
users[str(member.id)] = user_token
|
||||
logging.info("MESSAGE: from %s with token %s", message.author.name, user_token)
|
||||
with open('members.json', 'w') as json_file:
|
||||
json.dump(users, json_file)
|
||||
if rank == 1:
|
||||
await member.add_roles(roles['top1'])
|
||||
response = "Congratulations, you're now Top 1. But for how long ?"
|
||||
|
||||
elif (rank <= 10):
|
||||
await member.add_roles(roles['top10'])
|
||||
response = "You've been granted the Top 10 role. Now, go away and flag !"
|
||||
|
||||
elif rank <= 50:
|
||||
await member.add_roles(roles['top50'])
|
||||
response = "You've been granted the Top 50 role. Now, go away and flag !"
|
||||
|
||||
else:
|
||||
response = "No role for you now, but I'll keep watching you."
|
||||
except IndexError:
|
||||
response = 'usage: !connect 42ctf_token'
|
||||
await message.author.create_dm()
|
||||
await message.author.dm_channel.send(response)
|
||||
|
||||
|
||||
client.run(TOKEN)
|
|
@ -33,15 +33,38 @@
|
|||
</br>Token
|
||||
<input type='text' readonly value='{{token}}'>
|
||||
</br>
|
||||
<input class="form-control" type="submit" value="{% trans "Apply" %}">
|
||||
<input class="form-control" type="submit" value="{% trans " Apply" %}">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="ctf-block">
|
||||
<div class="ctf-head">
|
||||
<h3>{% trans "Connected accounts" %}</h3>
|
||||
</div>
|
||||
<div class="d-none d-md-block col-10 col-md-3 right-sidebar">
|
||||
<div class="bloc-body">
|
||||
<div class="d-flex">
|
||||
{% if user.userprofileinfo.discord_id|length > 0 %}
|
||||
<form action="{% url 'accounts:connections-disconnect-discord' %}" method='POST'
|
||||
class="form-inline p-2">
|
||||
{%csrf_token%}
|
||||
<button class="btn btn-dark" type="submit">{% trans "Disconnect Discord" %}</button>
|
||||
</form>
|
||||
{% else %}
|
||||
<form action="{% url 'accounts:connections-connect-discord' %}" method='POST'
|
||||
class="form-inline p-2">
|
||||
{%csrf_token%}
|
||||
<button class="btn btn-dark" type="submit">{% trans "Connect Discord" %}</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-none d-md-block col-10 col-md-3 right-sidebar">
|
||||
<ul class="list-group">
|
||||
<li class="list-group-item">{{ user.username }}</li>
|
||||
<li class="list-group-item">{% trans "Score" %} : {{ user.userprofileinfo.score }}</li>
|
||||
|
@ -58,11 +81,10 @@
|
|||
<form method='GET' action="{% url 'accounts:delete_account' %}">
|
||||
{%csrf_token%}
|
||||
<li class="list-group-item">
|
||||
<input class="form-control" type="submit" value="{% trans "Delete my account" %}">
|
||||
<input class="form-control" type="submit" value="{% trans " Delete my account" %}">
|
||||
</li>
|
||||
</form>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
|
|
|
@ -4,6 +4,7 @@ from django.views.decorators.http import require_POST
|
|||
from django.views.defaults import bad_request
|
||||
from django.urls import reverse
|
||||
from django.shortcuts import redirect
|
||||
from django.contrib.sites.models import Site
|
||||
import os
|
||||
|
||||
oauth = OAuth()
|
||||
|
@ -23,8 +24,9 @@ oauth.register(
|
|||
def connect(request):
|
||||
if request.user.userprofileinfo.discord_id:
|
||||
return bad_request(request, "Already connected")
|
||||
site = Site.objects.get_current()
|
||||
redirect_uri = reverse('accounts:connections-connect-discord-authorize')
|
||||
redirect_uri = request.build_absolute_uri(redirect_uri)
|
||||
redirect_uri = "https://" + site.domain + redirect_uri[3:] # remove language code
|
||||
print(redirect_uri)
|
||||
return oauth.discord.authorize_redirect(request, redirect_uri)
|
||||
|
||||
|
|
|
@ -154,17 +154,7 @@ def profile(request, user_name):
|
|||
|
||||
return render(request,'accounts/profile.html', {'user':user_obj, 'solves':solves,'solved':solved,'catsDatas': catsDatas, 'pointDatas': pointDatas,
|
||||
'rank': rank, 'score' : somme, 'member' : member, 'cats':cats})
|
||||
|
||||
def rank(request, token):
|
||||
all_users = UserProfileInfo.objects.filter(score__gt=0).select_related().order_by('-score', 'last_submission_date', 'user__username')
|
||||
|
||||
rank = 1
|
||||
for elem in all_users:
|
||||
if elem.token == token:
|
||||
break
|
||||
rank += 1
|
||||
data = {"rank": rank}
|
||||
return JsonResponse(data)
|
||||
<<<<<<< HEAD
|
||||
|
||||
@login_required
|
||||
def delete_account(request):
|
||||
|
@ -182,3 +172,14 @@ def delete_account(request):
|
|||
|
||||
else:
|
||||
return render(request, 'accounts/delete.html', {'deleted': False, 'bad_password': False} )
|
||||
|
||||
def rank(request, token):
|
||||
all_users = UserProfileInfo.objects.filter(score__gt=0).select_related().order_by('-score', 'last_submission_date', 'user__username')
|
||||
|
||||
rank = 1
|
||||
for elem in all_users:
|
||||
if elem.token == token:
|
||||
break
|
||||
rank += 1
|
||||
data = {"rank": rank}
|
||||
return JsonResponse(data)
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
from django.contrib import admin
|
||||
|
||||
# Register your models here.
|
|
@ -0,0 +1,6 @@
|
|||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class ApiConfig(AppConfig):
|
||||
default_auto_field = 'django.db.models.BigAutoField'
|
||||
name = 'api'
|
|
@ -0,0 +1,3 @@
|
|||
from django.db import models
|
||||
|
||||
# Create your models here.
|
|
@ -0,0 +1,3 @@
|
|||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
|
@ -0,0 +1,6 @@
|
|||
from django.urls import path
|
||||
from . import views
|
||||
|
||||
urlpatterns = [
|
||||
path('bot/discord', views.discord_bot, name='discord_bot'),
|
||||
]
|
|
@ -0,0 +1,27 @@
|
|||
from django.shortcuts import render
|
||||
from accounts.models import UserProfileInfo
|
||||
from django.http import JsonResponse
|
||||
import os
|
||||
|
||||
# Create your views here.
|
||||
|
||||
|
||||
def discord_bot(request):
|
||||
if request.method != 'GET':
|
||||
return JsonResponse({'error':'bad request'})
|
||||
|
||||
token = request.GET.get('token')
|
||||
auth_token = os.getenv('BOT_TOKEN')
|
||||
|
||||
if (token != auth_token or not auth_token):
|
||||
return JsonResponse({'error':'not authorized'})
|
||||
|
||||
all_users = UserProfileInfo.objects.select_related().order_by('-score', 'last_submission_date', 'user__username')
|
||||
data = {}
|
||||
rank = 1
|
||||
for user in all_users:
|
||||
if user.discord_id:
|
||||
data[user.discord_id] = rank
|
||||
rank += 1
|
||||
|
||||
return JsonResponse(data)
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: 2022-02-10 19:50+0100\n"
|
||||
"Last-Translator: Clément Hamada <clementhamada@pm.me>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -48,7 +48,7 @@ msgstr "Passwort"
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -60,7 +60,7 @@ msgid "Email"
|
|||
msgstr "Email"
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -74,7 +74,7 @@ msgstr "Anwenden"
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -138,7 +138,7 @@ msgid "Points"
|
|||
msgstr "Punkte"
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -219,66 +219,58 @@ msgstr "Nutzername bereits vergeben."
|
|||
msgid "Updated."
|
||||
msgstr "Aktualisiert."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr "Veröffentlichungsdatum"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr "Herausforderung ist noch nicht verfügbar."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
"Keine Übersetzung verfügbar. Bitte versuchen Sie es auf einer anderen "
|
||||
"Sprache noch einmal (Englisch oder Französisch)."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr "Herzlichen Glückwunsch!"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr "Schon gelöst"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr "Herausforderung beginnen"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr "Herunterladen"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr "Falsche flagge! Sie können es schaffen!"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr "Gelöst von"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr "Bisher hat noch niemand diese Herausforderung gelöst."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr "Autor/-in"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr "Belohnungspunkte"
|
||||
|
@ -371,6 +363,13 @@ msgstr "Finde mir einen Team!"
|
|||
msgid "Event"
|
||||
msgstr "Ereignis"
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
"Keine Übersetzung verfügbar. Bitte versuchen Sie es auf einer anderen "
|
||||
"Sprache noch einmal (Englisch oder Französisch)."
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -49,7 +49,7 @@ msgstr ""
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -61,7 +61,7 @@ msgid "Email"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -75,7 +75,7 @@ msgstr ""
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -139,7 +139,7 @@ msgid "Points"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -218,64 +218,58 @@ msgstr ""
|
|||
msgid "Updated."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr ""
|
||||
|
@ -368,6 +362,11 @@ msgstr ""
|
|||
msgid "Event"
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: 2022-02-09 10:55+0100\n"
|
||||
"Last-Translator: Javier Uhagón (uhagontorralvojavier@gmail.com)\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -49,7 +49,7 @@ msgstr "Contraseña"
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -61,7 +61,7 @@ msgid "Email"
|
|||
msgstr "Email"
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -75,7 +75,7 @@ msgstr "Aplicar"
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -139,7 +139,7 @@ msgid "Points"
|
|||
msgstr "Puntos"
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -220,65 +220,58 @@ msgstr "Nombre de usuario ya usado."
|
|||
msgid "Updated."
|
||||
msgstr "Actualizado."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr "Fecha de publicación"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr "El reto aún no está disponible."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
"Traducción no disponible. Por favor pruebe otro idioma (inglés o francés)."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr "¡ Felicidades !"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr "Flag ya conseguida"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr "Comenzar el reto"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr "Descargar"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr "¡ Flag incorrecta ! ¡ Puedes hacerlo !"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr "Resuelto por"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr "Nadie ha resuelto este reto aún."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr "Autor"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr "Recompensa de puntos"
|
||||
|
@ -371,6 +364,12 @@ msgstr "¡ Encuentrame un equipo !"
|
|||
msgid "Event"
|
||||
msgstr "Evento"
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
"Traducción no disponible. Por favor pruebe otro idioma (inglés o francés)."
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -53,7 +53,7 @@ msgstr "Mot de passe"
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -65,7 +65,7 @@ msgid "Email"
|
|||
msgstr "Email"
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -79,7 +79,7 @@ msgstr "Appliquer"
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -145,7 +145,7 @@ msgid "Points"
|
|||
msgstr "Points"
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -228,66 +228,60 @@ msgstr "Le pseudo est déjà utilisé."
|
|||
msgid "Updated."
|
||||
msgstr "Mis à jour."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr "Date de publication"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
#, fuzzy
|
||||
#| msgid "No category available."
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr "Il n'y a pas de catégorie disponible."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr "Félicitations !"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr "Déjà résolu"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr "Démarrer le challenge"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr "Télécharger"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr "Mauvais flag ! Vous pouvez le faire !"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr "Résolu par"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr "Personne n'a résolu ce CTF."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr "Auteur"
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr "Points"
|
||||
|
@ -386,6 +380,11 @@ msgstr ""
|
|||
msgid "Event"
|
||||
msgstr "Événement"
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -49,7 +49,7 @@ msgstr ""
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -61,7 +61,7 @@ msgid "Email"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -75,7 +75,7 @@ msgstr ""
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -139,7 +139,7 @@ msgid "Points"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -218,64 +218,58 @@ msgstr ""
|
|||
msgid "Updated."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr ""
|
||||
|
@ -368,6 +362,11 @@ msgstr ""
|
|||
msgid "Event"
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -49,7 +49,7 @@ msgstr ""
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -61,7 +61,7 @@ msgid "Email"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -75,7 +75,7 @@ msgstr ""
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -139,7 +139,7 @@ msgid "Points"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -218,64 +218,58 @@ msgstr ""
|
|||
msgid "Updated."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr ""
|
||||
|
@ -368,6 +362,11 @@ msgstr ""
|
|||
msgid "Event"
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -51,7 +51,7 @@ msgstr ""
|
|||
#: accounts/templates/accounts/edit.html:21
|
||||
#: accounts/templates/accounts/login.html:18
|
||||
#: accounts/templates/accounts/register.html:22
|
||||
#: ctfs/templates/ctfs/ctf_info.html:61 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:12
|
||||
#: events/templates/events/ctf_info.html:65
|
||||
#: events/templates/events/event_info.html:64
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:13
|
||||
|
@ -63,7 +63,7 @@ msgid "Email"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/edit.html:30
|
||||
#: ctfs/templates/ctfs/ctf_info.html:62
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: events/templates/events/ctf_info.html:66
|
||||
#: events/templates/events/event_info.html:65
|
||||
#: scoreboard/templates/scoreboard/scoreboard.html:14
|
||||
|
@ -77,7 +77,7 @@ msgstr ""
|
|||
|
||||
#: accounts/templates/accounts/edit.html:47
|
||||
#: accounts/templates/accounts/profile.html:46
|
||||
#: ctfs/templates/ctfs/ctf_info.html:63 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: ctfs/templates/ctfs/ctf_info.html:65 ctfs/templates/ctfs/ctfs_list.html:13
|
||||
#: events/templates/events/event_info.html:66
|
||||
#: events/templates/events/event_info.html:89
|
||||
#: events/templates/events/manage_team.html:40
|
||||
|
@ -141,7 +141,7 @@ msgid "Points"
|
|||
msgstr ""
|
||||
|
||||
#: accounts/templates/accounts/profile.html:24
|
||||
#: ctfs/templates/ctfs/ctf_info.html:64
|
||||
#: ctfs/templates/ctfs/ctf_info.html:66
|
||||
#: events/templates/events/ctf_info.html:67
|
||||
#: events/templates/events/team.html:23
|
||||
msgid "Date"
|
||||
|
@ -220,66 +220,60 @@ msgstr ""
|
|||
msgid "Updated."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:10
|
||||
#: ctfs/templates/ctfs/ctf_info.html:12
|
||||
#: events/templates/events/ctf_info.html:12
|
||||
msgid "Published date"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:14
|
||||
#: ctfs/templates/ctfs/ctf_info.html:16
|
||||
#, fuzzy
|
||||
#| msgid "No article available."
|
||||
msgid "Challenge is not yet available."
|
||||
msgstr "Нет доступных статей."
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:21
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:27
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: events/templates/events/ctf_info.html:24
|
||||
msgid "Congratulation !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:29
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31
|
||||
#: events/templates/events/ctf_info.html:26
|
||||
msgid "Already flagged"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:31 ctfs/templates/ctfs/ctf_info.html:40
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: events/templates/events/ctf_info.html:36
|
||||
#: events/templates/events/ctf_info.html:45
|
||||
msgid "Start the challenge"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:33 ctfs/templates/ctfs/ctf_info.html:42
|
||||
#: ctfs/templates/ctfs/ctf_info.html:35 ctfs/templates/ctfs/ctf_info.html:44
|
||||
#: events/templates/events/ctf_info.html:38
|
||||
#: events/templates/events/ctf_info.html:47
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:37
|
||||
#: ctfs/templates/ctfs/ctf_info.html:39
|
||||
#: events/templates/events/ctf_info.html:42
|
||||
msgid "Wrong flag ! You can do it !"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:56
|
||||
#: ctfs/templates/ctfs/ctf_info.html:58
|
||||
#: events/templates/events/ctf_info.html:60
|
||||
msgid "Solved by"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:80
|
||||
#: ctfs/templates/ctfs/ctf_info.html:82
|
||||
#: events/templates/events/ctf_info.html:90
|
||||
msgid "Nobody has solved this challenge yet."
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:87
|
||||
#: ctfs/templates/ctfs/ctf_info.html:89
|
||||
#: events/templates/events/ctf_info.html:97
|
||||
msgid "Author"
|
||||
msgstr ""
|
||||
|
||||
#: ctfs/templates/ctfs/ctf_info.html:88
|
||||
#: ctfs/templates/ctfs/ctf_info.html:90
|
||||
#: events/templates/events/ctf_info.html:98
|
||||
msgid "Point reward"
|
||||
msgstr ""
|
||||
|
@ -372,6 +366,11 @@ msgstr ""
|
|||
msgid "Event"
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:18
|
||||
msgid ""
|
||||
"No translation available. Please try another language (English or French)."
|
||||
msgstr ""
|
||||
|
||||
#: events/templates/events/ctf_info.html:28
|
||||
#: events/templates/events/event_info.html:18
|
||||
msgid "This event is over."
|
||||
|
|
|
@ -38,6 +38,7 @@ INSTALLED_APPS = [
|
|||
'scoreboard.apps.ScoreboardConfig',
|
||||
'resources.apps.ResourcesConfig',
|
||||
'django.contrib.sites',
|
||||
'api.apps.ApiConfig',
|
||||
]
|
||||
|
||||
MIDDLEWARE = [
|
||||
|
|
|
@ -24,6 +24,7 @@ urlpatterns = [
|
|||
path('', include('home.urls')),
|
||||
path('set_lang/<str:lang_code>', home.views.set_language, name="set_language"),
|
||||
path('dashboard/secret/admin', admin.site.urls),
|
||||
path('api/', include('api.urls'))
|
||||
]
|
||||
|
||||
urlpatterns += i18n_patterns(
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: 2022-02-10 19:27+0100\n"
|
||||
"Last-Translator: Clément Hamada <clementhamada@pm.me>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -36,7 +36,9 @@ msgstr ""
|
|||
"die meisten Punkte zu verdienen."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
"Die Herausforderungen bestehen darin eine Art Passwort zu finden: sogenannte "
|
||||
"\\"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -34,7 +34,9 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:15
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: 2022-02-09 10:55+0100\n"
|
||||
"Last-Translator: Javier Uhagón (uhagontorralvojavier@gmail.com)\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -37,7 +37,9 @@ msgstr ""
|
|||
"para ganar puntos y progresar en la Tabla de puntos."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
"Los retos requieren que los participantes encuentren unas contraseñas "
|
||||
"llamadas \\"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -20,7 +20,7 @@ msgstr ""
|
|||
|
||||
#: resources/templates/resources/42ctf.html:7
|
||||
msgid "What is 42CTF ?"
|
||||
msgstr "Qu'est ce que 42CTF ?"
|
||||
msgstr "Qu'est-ce que 42CTF ?"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:10
|
||||
msgid "A short introduction to CTF"
|
||||
|
@ -32,90 +32,114 @@ msgid ""
|
|||
"participants have to solve challenges of various categories to gain points "
|
||||
"and progress on the scoreboard."
|
||||
msgstr ""
|
||||
"CTF veut dire Capture The Flag. C'est une compétition de cybersécurité où "
|
||||
"les participants doivent résoudre des challenges dans différentes catégories "
|
||||
"pour gagner des points et progresser dans le classement."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
#: resources/templates/resources/42ctf.html:122
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
"Les challenges demandent aux participants de trouver des sortes de mots de "
|
||||
"passe appelés \"flags\" et de les soumettre sur la plateforme."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:15
|
||||
msgid "Functionment of 42CTF"
|
||||
msgstr ""
|
||||
msgstr "Fonctionnement de 42CTF"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:16
|
||||
msgid "42CTF is what we call a permanent CTF."
|
||||
msgstr ""
|
||||
msgstr "42CTF est ce qu'on appelle un CTF permanent."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:17
|
||||
msgid "Except from the"
|
||||
msgstr ""
|
||||
msgstr "Sauf pour les"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:17
|
||||
msgid "events"
|
||||
msgstr ""
|
||||
msgstr "évènements"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:17
|
||||
msgid "challenges are available on the platform without time limitations."
|
||||
msgstr ""
|
||||
"les challenges sont disponnibles sur la plateforme sans limites de temps."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:18
|
||||
msgid "The registration on 42CTF is open to everyone, 42 students or not."
|
||||
msgstr ""
|
||||
msgstr "L'inscription à 42CTF est ouverte à tous, étudiant de 42 ou"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:19
|
||||
msgid ""
|
||||
"Events may or may not be open. If you would like to organize an event on "
|
||||
"42CTF, feel free to contact us."
|
||||
msgstr ""
|
||||
"Les évènements peuvent être publics ou non. Si vous souhaitez organiser un "
|
||||
"évènement sur 42CTF, n'hésitez pas à nous contacter."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:22
|
||||
msgid "42CTF Team"
|
||||
msgstr ""
|
||||
msgstr "Équipe de 42CTF"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:23
|
||||
msgid "42CTF is managed by 42 students."
|
||||
msgstr ""
|
||||
msgstr "42CTF est géré par des étudiants de 42"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:24
|
||||
msgid "You can meet the team on"
|
||||
msgstr ""
|
||||
msgstr "Vous pouvez rencontrer l'équipe sur"
|
||||
|
||||
#: resources/templates/resources/42ctf.html:25
|
||||
msgid ""
|
||||
"Challenges are created by various contributors, not necessarily 42 students."
|
||||
msgstr ""
|
||||
"Les challenges sont créés par divers contributeurs, pas nécessairement des "
|
||||
"étudiants de 42."
|
||||
|
||||
#: resources/templates/resources/42ctf.html:26
|
||||
msgid ""
|
||||
"Anyone is welcome to submit their own challenges, either on the permanent "
|
||||
"CTF or for a specific event."
|
||||
msgstr ""
|
||||
"Tout le monde est invité à soumettre ses propres défis, que ce soit sur le "
|
||||
"CTF permanent ou pour un évènement spécifique."
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:7
|
||||
msgid "Create new challenges"
|
||||
msgstr ""
|
||||
msgstr "Créer de nouveaux challenges"
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:10
|
||||
msgid "If you want to create new challenges for 42CTF, send us a message on "
|
||||
msgstr ""
|
||||
"Si vous souhaitez créer de nouveaux challenges pour 42CTF, envoyez-nous un "
|
||||
"message sur "
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:11
|
||||
msgid "If your challenge is offline, then you don't have to ask us in advance."
|
||||
msgstr ""
|
||||
"Si votre défi est hors ligne, vous n'avez pas besoin de nous demander à "
|
||||
"l'avance."
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:12
|
||||
msgid ""
|
||||
"If your challenge is online (for example web or pwn), then you should give "
|
||||
"us a short description of what you want to do."
|
||||
msgstr ""
|
||||
"Si votre challenge est en ligne (par exemple web or pwn), alors vous devrez "
|
||||
"nous donner une courte description de ce que vous voulez faire."
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:13
|
||||
msgid ""
|
||||
"We may be able to help you or to give you resources such as dockerfiles."
|
||||
msgstr ""
|
||||
"Nous pouvons être en mesure de vous aider ou de vous fournir des ressources "
|
||||
"comme des dockerfiles."
|
||||
|
||||
#: resources/templates/resources/create_challenge.html:14
|
||||
msgid "We plan to make those resources publicly available in a near future."
|
||||
msgstr ""
|
||||
"Nous prévoyons de rendre ces ressources accessibles au public dans un avenir "
|
||||
"proche."
|
||||
|
||||
#: resources/templates/resources/donate.html:7
|
||||
msgid "Donate"
|
||||
|
@ -159,7 +183,7 @@ msgid ""
|
|||
"in the form of private events with the people of your choice."
|
||||
msgstr ""
|
||||
"La possibilité de jouer de nouveau aux CTF passés, avec des challenges qui "
|
||||
"ne sont plus disponibles, sous la forme d'un événement privé avec les "
|
||||
"ne sont plus disponibles, sous la forme d'un évènement privé avec les "
|
||||
"personnes de votre choix."
|
||||
|
||||
#: resources/templates/resources/donate.html:18
|
||||
|
@ -187,7 +211,7 @@ msgid ""
|
|||
"for all."
|
||||
msgstr ""
|
||||
"Cependant, nous n'organiserons pas de CTF en temps limité réservé aux "
|
||||
"membres, car cela serait équivalent à organiser des événements payants, and "
|
||||
"membres, car cela serait équivalent à organiser des évènements payants, et "
|
||||
"nous voulons que 42CTF reste GRATUIT pour tous."
|
||||
|
||||
#: resources/templates/resources/donate.html:26
|
||||
|
@ -206,14 +230,14 @@ msgid ""
|
|||
"cash, send us a message !"
|
||||
msgstr ""
|
||||
"Si vous aimeriez qu'on ajoute un autre moyen de paiement, ou si vous voulez "
|
||||
"payer en liquide, envoyez nous un message !"
|
||||
"payer en liquide, envoyez-nous un message !"
|
||||
|
||||
#: resources/templates/resources/donate.html:48
|
||||
msgid ""
|
||||
"If you're paying for your membership, don't forget to send us your first and "
|
||||
"last name, as well as your 42CTF pseudo."
|
||||
msgstr ""
|
||||
"Si vous payez pour l'adhesion, n'oubliez pas de nous envoyer vos noms et "
|
||||
"Si vous payez pour l'adhésion, n'oubliez pas de nous envoyer vos noms et "
|
||||
"prénoms, ainsi que votre pseudo 42CTF."
|
||||
|
||||
#: resources/templates/resources/donate.html:49
|
||||
|
@ -227,61 +251,69 @@ msgstr ""
|
|||
|
||||
#: resources/templates/resources/edit.html:7
|
||||
msgid "Edit this page"
|
||||
msgstr ""
|
||||
msgstr "Modifier cette page"
|
||||
|
||||
#: resources/templates/resources/edit.html:12
|
||||
msgid ""
|
||||
"More information coming soon, but as you can guess it involves making a pull "
|
||||
"request to your favorite"
|
||||
msgstr ""
|
||||
"De plus amples informations seront bientôt disponibles, mais comme vous "
|
||||
"pouvez le deviner, vous pouvez faire une pull request sur votre bien aimé"
|
||||
|
||||
#: resources/templates/resources/tools.html:7
|
||||
msgid "Recommended Tools"
|
||||
msgstr ""
|
||||
msgstr "Outils recommandés"
|
||||
|
||||
#: resources/templates/resources/tools.html:10
|
||||
msgid "To get you started, we built a VM that you can simply import in"
|
||||
msgstr ""
|
||||
"Pour commencer, nous avons construit une VM que vous pouvez simplement "
|
||||
"importer dans"
|
||||
|
||||
#: resources/templates/resources/tools.html:10
|
||||
msgid "with a bunch of useful tools."
|
||||
msgstr ""
|
||||
msgstr "avec quelques outils utiles"
|
||||
|
||||
#: resources/templates/resources/tools.html:11
|
||||
msgid "You can dowload this OVA"
|
||||
msgstr ""
|
||||
msgstr "Vous pouvez télécharger l'OVA"
|
||||
|
||||
#: resources/templates/resources/tools.html:11
|
||||
msgid "here"
|
||||
msgstr ""
|
||||
msgstr "ici"
|
||||
|
||||
#: resources/templates/resources/tools.html:13
|
||||
msgid "Here are the tools installed on the VM:"
|
||||
msgstr ""
|
||||
msgstr "Voici la liste des outils installés sur la VM:"
|
||||
|
||||
#: resources/templates/resources/tools.html:22
|
||||
msgid ""
|
||||
"If you want to solve the challenges on your own machine, we recommend you to "
|
||||
"use a Linux operating system."
|
||||
msgstr ""
|
||||
"Si vous voulez résoudre les challenges sur votre propre machine, nous "
|
||||
"recommandons l'utilisation de Linux."
|
||||
|
||||
#: resources/templates/resources/tools.html:23
|
||||
msgid ""
|
||||
"Most of the reverse challenges are ELF binaries and won't run on Mac OS or "
|
||||
"Windows."
|
||||
msgstr ""
|
||||
"La plupart des challenges de reverse sont des binaies ELF et ne "
|
||||
"fonctionneront pas sur MacOS ou Windows."
|
||||
|
||||
#: resources/templates/resources/tools.html:25
|
||||
msgid "Additionnaly, you will need the following languages interpreters:"
|
||||
msgstr ""
|
||||
msgstr "De plus, vous aurez besoin des interpréteurs de langage suivants :"
|
||||
|
||||
#: resources/templates/resources/translate.html:7
|
||||
msgid "Translate 42CTF"
|
||||
msgstr ""
|
||||
msgstr "Traduire 42CTF"
|
||||
|
||||
#: resources/templates/resources/translate.html:10
|
||||
msgid "42CTF source code is publicly available on this"
|
||||
msgstr ""
|
||||
msgstr "Le code source de 42CTF est publiquement disponible sur ce"
|
||||
|
||||
#: resources/templates/resources/translate.html:11
|
||||
msgid ""
|
||||
|
@ -289,21 +321,29 @@ msgid ""
|
|||
"contribute if you want to help us, by making the platform always more "
|
||||
"accessible."
|
||||
msgstr ""
|
||||
"La traduction ne nécessite aucune compétence en programmation et constitue "
|
||||
"un bon moyen de contribuer si vous souhaitez nous aider, en rendant la "
|
||||
"plateforme toujours plus accessible."
|
||||
|
||||
#: resources/templates/resources/translate.html:12
|
||||
msgid "We have a"
|
||||
msgstr ""
|
||||
msgstr "Nous avons un"
|
||||
|
||||
#: resources/templates/resources/translate.html:12
|
||||
msgid ""
|
||||
"describing how to translate pages with the Django internalization module."
|
||||
msgstr ""
|
||||
"qui décrit comment traduire des pages avec le module d'internalisation de "
|
||||
"Django."
|
||||
|
||||
#: resources/templates/resources/translate.html:13
|
||||
msgid ""
|
||||
"We invite you to read it to know all the details, but it merely requires you "
|
||||
"to edit text files, so you see, no programming skills required ;)"
|
||||
msgstr ""
|
||||
"Nous vous invitons à le lire pour connaitre tous les détails, mais il suffit "
|
||||
"simplement de modifier des fichiers texte, donc vous voyez, aucune "
|
||||
"compétence en programmation n'est requise ;)"
|
||||
|
||||
#: resources/templates/resources/translate.html:14
|
||||
msgid ""
|
||||
|
@ -311,7 +351,10 @@ msgid ""
|
|||
"then open a pull request so that we can merge your contributions into our "
|
||||
"repository."
|
||||
msgstr ""
|
||||
"Vous devrez forker le dépôt git, effectuer vos modifications, les push, puis "
|
||||
"ouvrir une pull request afin que nous puissions merge vos contributions dans "
|
||||
"notre repo."
|
||||
|
||||
#: resources/templates/resources/translate.html:15
|
||||
msgid "Don't hesitate to reach for help on"
|
||||
msgstr ""
|
||||
msgstr "N'hésitez pas à demander de l'aide sur"
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -34,7 +34,9 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:15
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -34,7 +34,9 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:15
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-02-14 19:36+0100\n"
|
||||
"POT-Creation-Date: 2022-02-16 20:02+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -36,7 +36,9 @@ msgid ""
|
|||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:12
|
||||
msgid "The challenges require participants to find sort of passwords called \\"
|
||||
msgid ""
|
||||
"The challenges require participants to find sort of passwords called \"flags"
|
||||
"\" and to submit them on the platform."
|
||||
msgstr ""
|
||||
|
||||
#: resources/templates/resources/42ctf.html:15
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<div class="ctf-body">
|
||||
<h4>{% trans "A short introduction to CTF" %}</h4>
|
||||
{% trans "CTF stands for Capture The Flag. It is a cybersecurity competition, where participants have to solve challenges of various categories to gain points and progress on the scoreboard." %}
|
||||
{% trans "The challenges require participants to find sort of passwords called \"flags\" and to submit them on the platform."%}
|
||||
{% blocktranslate %}The challenges require participants to find sort of passwords called "flags" and to submit them on the platform.{% endblocktranslate %}
|
||||
<br><br>
|
||||
|
||||
<h4>{% trans "Functionment of 42CTF" %}</h4>
|
||||
|
|
Loading…
Reference in New Issue