Remplacement de toute mention du TFJM² par Correspondances des Jeunes Mathématicien·ne·s

This commit is contained in:
galaxyoyo 2019-09-10 20:25:26 +02:00
parent fa5202fe4f
commit e908ad1923
26 changed files with 68 additions and 451 deletions

View File

@ -1,6 +1,3 @@
ErrorDocument 403 /tfjm/server_files/403.php
ErrorDocument 404 /tfjm/server_files/404.php
Options +FollowSymlinks
Options -Indexes
RewriteEngine On

5
.idea/.gitignore vendored
View File

@ -1,3 +1,6 @@
# Default ignored files
/workspace.xml
/workspace.xml
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@ -5,7 +5,7 @@
<paths name="inscription.correspondances-maths.fr">
<serverdata>
<mappings>
<mapping deploy="/var/inscription-correspondances" local="$PROJECT_DIR$" web="/" />
<mapping deploy="/var/inscription-corres2math" local="$PROJECT_DIR$" web="/" />
</mappings>
</serverdata>
</paths>

View File

@ -32,6 +32,6 @@ COPY setup/msmtprc /etc/msmtprc
RUN echo "sendmail_path=msmtp -t" >> /usr/local/etc/php/conf.d/php-sendmail.ini
# Setting environment
ENV TFJM_LOCAL_PATH /var/www/html
ENV TFJM_MAIL_DOMAIN tfjm.org
ENV TFJM_URL_BASE https://inscription.correspondances-maths.fr
ENV CORRES2MATH_LOCAL_PATH /var/www/html
ENV CORRES2MATH_MAIL_DOMAIN correspondances-maths.fr
ENV CORRES2MATH_URL_BASE https://inscription.correspondances-maths.fr

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
assets/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@ -1,114 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
viewBox="209.843 -2.284 30.311995 9.7779996"
version="1.1"
id="svg27"
sodipodi:docname="logo.svg"
width="30.311995"
height="9.7779999"
style="fill:black"
inkscape:version="0.92.2 2405546, 2018-03-11">
<metadata
id="metadata31">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1055"
id="namedview29"
showgrid="false"
inkscape:zoom="41.779237"
inkscape:cx="15.215997"
inkscape:cy="4.3644999"
inkscape:window-x="0"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:current-layer="svg27" />
<defs
id="defs15">
<path
id="b"
d="m 2.58,-3.347 c 0.409,0 1.405,0.02 1.485,1.135 0.01,0.12 0.02,0.25 0.18,0.25 0.168,0 0.168,-0.14 0.168,-0.32 v -2.7 c 0,-0.159 0,-0.318 -0.169,-0.318 -0.13,0 -0.17,0.1 -0.18,0.21 -0.059,1.155 -0.756,1.354 -1.484,1.384 v -2.102 c 0,-0.668 0.19,-0.668 0.429,-0.668 h 0.468 c 1.275,0 1.923,0.688 1.983,1.375 0.01,0.08 0.02,0.23 0.179,0.23 0.17,0 0.17,-0.16 0.17,-0.33 v -1.295 c 0,-0.308 -0.02,-0.328 -0.33,-0.328 h -5 c -0.18,0 -0.34,0 -0.34,0.179 0,0.17 0.19,0.17 0.27,0.17 0.567,0 0.607,0.079 0.607,0.567 v 4.991 c 0,0.469 -0.03,0.568 -0.558,0.568 -0.15,0 -0.319,0 -0.319,0.17 C 0.14,0 0.3,0 0.48,0 h 2.878 c 0.18,0 0.33,0 0.33,-0.18 0,-0.169 -0.17,-0.169 -0.3,-0.169 -0.767,0 -0.807,-0.07 -0.807,-0.597 v -2.401 z m 2.88,-3.129 v 0.469 A 2.557,2.557 0 0 0 4.922,-6.476 Z M 4.065,-3.158 A 1.51,1.51 0 0 0 3.537,-3.547 c 0.189,-0.09 0.388,-0.249 0.528,-0.418 z m -2.7,-2.77 c 0,-0.12 0,-0.368 -0.08,-0.548 h 1.056 c -0.11,0.23 -0.11,0.558 -0.11,0.648 v 4.901 c 0,0.15 0,0.389 0.1,0.578 H 1.285 c 0.08,-0.179 0.08,-0.428 0.08,-0.548 v -5.03 z"
inkscape:connector-curvature="0" />
<path
id="c"
d="m 1.564,-6.824 c -0.18,0 -0.339,0 -0.339,0.179 0,0.17 0.18,0.17 0.29,0.17 0.687,0 0.727,0.069 0.727,0.577 v 5.59 c 0,0.169 0,0.358 -0.17,0.527 -0.08,0.07 -0.239,0.18 -0.478,0.18 -0.07,0 -0.369,0 -0.369,-0.11 0,-0.08 0.04,-0.12 0.09,-0.17 A 0.704,0.704 0 0 0 0.777,-1.057 0.704,0.704 0 0 0 0.06,-0.359 c 0,0.629 0.637,1.106 1.604,1.106 1.106,0 2.042,-0.387 2.192,-1.614 0.01,-0.09 0.01,-0.647 0.01,-0.966 v -4.184 c 0,-0.449 0.139,-0.449 0.707,-0.459 0.09,0 0.17,-0.08 0.17,-0.17 0,-0.178 -0.15,-0.178 -0.33,-0.178 z M 0.867,0.239 C 0.767,0.19 0.408,0.02 0.408,-0.349 c 0,-0.259 0.22,-0.358 0.37,-0.358 0.168,0 0.368,0.12 0.368,0.348 0,0.15 -0.08,0.24 -0.12,0.27 -0.04,0.04 -0.13,0.139 -0.16,0.328 z M 2.59,-5.918 c 0,-0.11 0,-0.378 -0.09,-0.558 h 1.097 c -0.08,0.18 -0.08,0.369 -0.08,0.708 v 4.015 c 0,0.298 0,0.797 -0.01,0.896 C 3.427,-0.349 3.198,0.11 2.44,0.31 2.59,0.08 2.59,-0.109 2.59,-0.288 v -5.629 z"
inkscape:connector-curvature="0" />
<path
id="d"
d="M 4.643,-2.092 2.74,-6.625 c -0.08,-0.2 -0.09,-0.2 -0.359,-0.2 H 0.528 c -0.18,0 -0.329,0 -0.329,0.18 0,0.17 0.18,0.17 0.23,0.17 0.119,0 0.388,0.02 0.607,0.099 v 5.32 c 0,0.21 0,0.648 -0.677,0.707 -0.19,0.02 -0.19,0.16 -0.19,0.17 C 0.17,0 0.33,0 0.51,0 h 1.543 c 0.18,0 0.33,0 0.33,-0.18 0,-0.089 -0.08,-0.159 -0.16,-0.169 -0.767,-0.06 -0.767,-0.478 -0.767,-0.707 v -4.961 l 0.01,-0.01 2.429,5.817 c 0.08,0.18 0.15,0.209 0.21,0.209 0.12,0 0.149,-0.08 0.199,-0.2 l 2.44,-5.827 0.01,0.01 v 4.961 c 0,0.21 0,0.648 -0.677,0.707 -0.19,0.02 -0.19,0.16 -0.19,0.17 0,0.179 0.16,0.179 0.34,0.179 h 2.66 c 0.179,0 0.328,0 0.328,-0.18 C 9.215,-0.27 9.135,-0.34 9.056,-0.35 8.289,-0.41 8.289,-0.828 8.289,-1.057 v -4.712 c 0,-0.21 0,-0.648 0.677,-0.708 0.1,-0.01 0.19,-0.06 0.19,-0.17 0,-0.178 -0.15,-0.178 -0.33,-0.178 H 6.905 c -0.259,0 -0.279,0 -0.369,0.209 z m -0.3,0.18 c 0.08,0.169 0.09,0.178 0.21,0.218 L 4.115,-0.638 H 4.095 L 1.823,-6.058 C 1.773,-6.187 1.693,-6.356 1.554,-6.476 h 0.867 l 1.923,4.563 z M 1.336,-0.35 h -0.17 c 0.02,-0.03 0.04,-0.06 0.06,-0.08 0.01,-0.01 0.01,-0.02 0.02,-0.03 z M 7.104,-6.477 H 8.16 c -0.219,0.25 -0.219,0.508 -0.219,0.688 v 4.752 c 0,0.18 0,0.438 0.23,0.687 H 6.883 c 0.22,-0.249 0.22,-0.508 0.22,-0.687 v -5.44 z"
inkscape:connector-curvature="0" />
<path
id="a"
d="m 4.135,-6.466 c 1.305,0.07 1.793,0.917 1.833,1.385 0.01,0.15 0.02,0.299 0.179,0.299 0.18,0 0.18,-0.17 0.18,-0.359 v -1.325 c 0,-0.348 -0.04,-0.358 -0.34,-0.358 H 0.658 c -0.308,0 -0.328,0.02 -0.328,0.318 V -5.1 c 0,0.16 0,0.319 0.17,0.319 0.17,0 0.178,-0.18 0.178,-0.2 0.04,-0.826 0.788,-1.424 1.834,-1.484 v 5.54 c 0,0.498 -0.04,0.577 -0.668,0.577 -0.12,0 -0.299,0 -0.299,0.17 0,0.179 0.16,0.179 0.339,0.179 h 2.89 C 4.95,0 5.1,0 5.1,-0.18 c 0,-0.169 -0.17,-0.169 -0.28,-0.169 -0.647,0 -0.686,-0.07 -0.686,-0.578 v -5.539 z m -3.458,-0.01 h 0.598 c -0.249,0.15 -0.458,0.349 -0.598,0.518 z m 5.3,0 v 0.528 A 2.606,2.606 0 0 0 5.37,-6.476 H 5.978 Z M 2.77,-0.349 c 0.09,-0.179 0.09,-0.428 0.09,-0.558 v -5.569 h 0.926 v 5.57 c 0,0.129 0,0.378 0.09,0.557 H 2.77 Z"
inkscape:connector-curvature="0" />
<path
id="e"
d="M 3.522,-1.27 H 3.285 c -0.021,0.154 -0.091,0.566 -0.182,0.635 -0.055,0.042 -0.592,0.042 -0.69,0.042 H 1.13 c 0.732,-0.648 0.976,-0.844 1.395,-1.171 0.516,-0.412 0.997,-0.844 0.997,-1.507 0,-0.844 -0.74,-1.36 -1.632,-1.36 -0.865,0 -1.45,0.607 -1.45,1.249 0,0.355 0.3,0.39 0.369,0.39 0.167,0 0.37,-0.118 0.37,-0.37 0,-0.125 -0.05,-0.369 -0.412,-0.369 0.216,-0.495 0.69,-0.649 1.018,-0.649 0.698,0 1.06,0.544 1.06,1.11 0,0.606 -0.432,1.087 -0.655,1.338 l -1.68,1.66 C 0.44,-0.209 0.44,-0.195 0.44,0 h 2.873 z"
inkscape:connector-curvature="0" />
</defs>
<use
x="209.843"
y="6.6110001"
xlink:href="#a"
id="use17"
width="100%"
height="100%"
transform="translate(-0.33000232,0.13600003)" />
<use
x="216.485"
y="6.6110001"
xlink:href="#b"
id="use19"
width="100%"
height="100%"
transform="translate(-0.33000232,0.13600003)" />
<use
x="222.573"
y="6.6110001"
xlink:href="#c"
id="use21"
width="100%"
height="100%"
transform="translate(-0.33000232,0.13600003)" />
<use
x="227.554"
y="6.6110001"
xlink:href="#d"
id="use23"
width="100%"
height="100%"
transform="translate(-0.33000232,0.13600003)" />
<use
x="236.963"
y="2.211"
xlink:href="#e"
id="use25"
width="100%"
height="100%"
transform="translate(-0.33000232,0.13600003)" />
</svg>

Before

Width:  |  Height:  |  Size: 7.1 KiB

View File

@ -53,7 +53,7 @@ $ROUTES["^tournois/?$"] = ["server_files/controllers/tournois.php"];
# Assets files
$ROUTES["^favicon\.ico$"] = ["assets/favicon.ico", "image/x-icon"];
$ROUTES["^logo\.svg$"] = ["assets/logo.svg", "image/svg+xml"];
$ROUTES["^logo\.png"] = ["assets/logo.png", "image/png"];
$ROUTES["^style\.css$"] = ["assets/style.css", "text/css"];
foreach ($ROUTES as $route => $file) {

View File

@ -3,19 +3,20 @@
* Config options
*/
$YEAR = $_ENV["TFJM_YEAR"];
$URL_BASE = $_ENV["TFJM_URL_BASE"];
$LOCAL_PATH = $_ENV["TFJM_LOCAL_PATH"];
$MAIL_DOMAIN = $_ENV["TFJM_MAIL_DOMAIN"];
$YEAR = $_ENV["CORRES2MATH_YEAR"];
$URL_BASE = $_ENV["CORRES2MATH_URL_BASE"];
$LOCAL_PATH = $_ENV["CORRES2MATH_LOCAL_PATH"];
$MAIL_DOMAIN = $_ENV["CORRES2MATH_MAIL_DOMAIN"];
$MAIL_DOMAIN = "correspondances-maths.fr";
/**
* DB infos
*/
$DB_HOST = $_ENV["TFJM_DB_HOST"];
$DB_NAME = $_ENV["TFJM_DB_NAME"];
$DB_USER = $_ENV["TFJM_DB_USER"];
$DB_PASSWORD = $_ENV["TFJM_DB_PASSWORD"];
$DB_HOST = $_ENV["CORRES2MATH_DB_HOST"];
$DB_NAME = $_ENV["CORRES2MATH_DB_NAME"];
$DB_USER = $_ENV["CORRES2MATH_DB_USER"];
$DB_PASSWORD = $_ENV["CORRES2MATH_DB_PASSWORD"];
try {
$DB = new PDO("mysql:host=$DB_HOST;dbname=$DB_NAME;charset=utf8", "$DB_USER", "$DB_PASSWORD", array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

View File

@ -65,11 +65,6 @@ class NewTournament {
$this->size = intval($this->size);
ensure($this->size >= 3 && $this->size <= 15, "Un tournoi doit avoir au moins 3 et au plus 15 équipes.");
ensure(preg_match("#[0-9]*#", $this->price), "Le tarif pour les participants n'est pas un entier valide.");
$this->price = intval($this->price);
ensure($this->price >= 0, "Le TFJM² ne va pas payer les élèves pour venir.");
ensure($this->price <= 50, "Soyons raisonnable sur le prix.");
ensure(dateWellFormed($this->date_start), "La date de début n'est pas valide.");
ensure(dateWellFormed($this->date_end), "La date de fin n'est pas valide.");
ensure(dateWellFormed($this->date_inscription . " " . $this->time_inscription), "La date de clôture des inscriptions n'est pas valide.");

View File

@ -81,11 +81,6 @@ class UpdateTournament
$this->size = intval($this->size);
ensure($this->size >= 3 && $this->size <= 15, "Un tournoi doit avoir au moins 3 et au plus 15 équipes.");
ensure(preg_match("#[0-9]*#", $this->price), "Le tarif pour les participants n'est pas un entier valide.");
$this->price = intval($this->price);
ensure($this->price >= 0, "Le TFJM² ne va pas payer les élèves pour venir.");
ensure($this->price <= 50, "Soyons raisonnable sur le prix.");
ensure(dateWellFormed($this->date_start), "La date de début n'est pas valide.");
ensure(dateWellFormed($this->date_end), "La date de fin n'est pas valide.");
ensure(dateWellFormed($this->date_inscription . " " . $this->time_inscription), "La date de clôture des inscriptions n'est pas valide.");

View File

@ -197,7 +197,7 @@ function getZipFile($document_type, $tournament_id, $team_id = -1)
$zip = new ZipArchive();
$file_name = tempnam("tmp", "tfjm-");
$file_name = tempnam("tmp", "corres2math-");
if ($zip->open($file_name, ZipArchive::CREATE) !== true) {
die("Impossible de créer le fichier zip.");

View File

@ -9,11 +9,11 @@ class Mailer
$content = preg_replace("#{URL_BASE}#", $URL_BASE, $content);
$content = preg_replace("#{YEAR}#", $YEAR, $content);
$headers = "From: \"Contact TFJM²\" <" . $from . "@" . $MAIL_DOMAIN . ">\r\n";
$headers .= "Reply-To: \"Contact TFJM²\" <contact@" . $MAIL_DOMAIN . ">\r\n";
$headers = "From: \"Contact Corres2Math\" <" . $from . "@" . $MAIL_DOMAIN . ">\r\n";
$headers .= "Reply-To: \"Contact corres2Math\" <contact@" . $MAIL_DOMAIN . ">\r\n";
$headers .= "Content-Type: text/html; charset=UTF-8\r\n";
mail($email, $subject, $content, $headers);
ensure(mail($email, $subject, $content, $headers), "Un problème est survenu dans l'envoi d'un mail. Veuiller contacter votre administrateur.");
}
private static function getTemplate($name)
@ -31,7 +31,7 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $new_user->surname, $content);
$content = preg_replace("#{TOKEN}#", $new_user->confirm_email_token, $content);
self::sendMail($new_user->email, "Inscription au TFJM² $YEAR", $content);
self::sendMail($new_user->email, "Inscription aux Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
public static function sendConfirmEmail(User $user)
@ -43,7 +43,7 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $user->getSurname(), $content);
$content = preg_replace("#{TOKEN}#", $user->getConfirmEmailToken(), $content);
self::sendMail($user->getEmail(), "Confirmation d'adresse e-mail TFJM² $YEAR", $content);
self::sendMail($user->getEmail(), "Confirmation d'adresse e-mail Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
public static function sendChangeEmailAddressMail(User $user)
@ -53,7 +53,7 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $user->getSurname(), $content);
$content = preg_replace("#{TOKEN}#", $user->getConfirmEmailToken(), $content);
self::sendMail($user->getEmail(), "Changement d'adresse e-mail TFJM²", $content);
self::sendMail($user->getEmail(), "Changement d'adresse e-mail Correspondances des Jeunes Mathématicien·ne·s", $content);
}
public static function sendForgottenPasswordProcedureMail(User $user)
@ -63,7 +63,7 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $user->getSurname(), $content);
$content = preg_replace("#{TOKEN}#", $user->getForgottenPasswordToken(), $content);
self::sendMail($user->getEmail(), "Mot de passe oublié TFJM²", $content);
self::sendMail($user->getEmail(), "Mot de passe oublié Correspondances des Jeunes Mathématicien·ne·s", $content);
}
public static function sendChangePasswordMail(User $user)
@ -72,7 +72,7 @@ class Mailer
$content = preg_replace("#{FIRST_NAME}#", $user->getFirstName(), $content);
$content = preg_replace("#{SURNAME}#", $user->getSurname(), $content);
self::sendMail($user->getEmail(), "Mot de passe changé TFJM²", $content);
self::sendMail($user->getEmail(), "Mot de passe changé Correspondances des Jeunes Mathématicien·ne·s", $content);
}
public static function sendAddTeamMail(User $user, Team $team, Tournament $tournament)
@ -87,7 +87,7 @@ class Mailer
$content = preg_replace("#{TOURNAMENT_NAME}#", $tournament->getName(), $content);
$content = preg_replace("#{ACCESS_CODE}#", $team->getAccessCode(), $content);
self::sendMail($user->getEmail(), "Ajout d'une équipe TFJM² $YEAR", $content);
self::sendMail($user->getEmail(), "Ajout d'une équipe Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
public static function sendJoinTeamMail(User $user, Team $team, Tournament $tournament)
@ -101,7 +101,7 @@ class Mailer
$content = preg_replace("#{TRIGRAM}#", $team->getTrigram(), $content);
$content = preg_replace("#{TOURNAMENT_NAME}#", $tournament->getName(), $content);
self::sendMail($user->getEmail(), "Équipe rejointe TFJM² $YEAR", $content);
self::sendMail($user->getEmail(), "Équipe rejointe Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
public static function sendAddOrganizerMail(NewOrganizer $new_orga)
@ -113,7 +113,7 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $new_orga->surname, $content);
$content = preg_replace("#{PASSWORD}#", $new_orga->password, $content);
self::sendMail($new_orga->email, "Ajout d'un organisateur TFJM² $YEAR", $content);
self::sendMail($new_orga->email, "Ajout d'un organisateur Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
public static function sendAddOrganizerForTournamentMail(User $organizer, Tournament $tournament)
@ -125,6 +125,6 @@ class Mailer
$content = preg_replace("#{SURNAME}#", $organizer->getSurname(), $content);
$content = preg_replace("#{TOURNAMENT_NAME}#", $tournament->getName(), $content);
self::sendMail($organizer->getEmail(), "Ajout d'un organisateur pour le tournoi " . $tournament->getName() . " TFJM² $YEAR", $content);
self::sendMail($organizer->getEmail(), "Ajout d'un organisateur pour le tournoi " . $tournament->getName() . " Correspondances des Jeunes Mathématicien·ne·s $YEAR", $content);
}
}

View File

@ -2,12 +2,12 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Organisateur du TFJM²</title>
<title>Organisateur des Correspondances des Jeunes Mathématicien·ne·s</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br />
<br />
Vous recevez ce message (envoyé automatiquement) car vous êtes organisateur d'un des tournois du TFJM<sup>2</sup>.
Vous recevez ce message (envoyé automatiquement) car vous êtes organisateur d'un des tournois des Correspondances des Jeunes Mathématicien·ne·s.
Veuillez trouver ci-dessous vos informations d'utilisateur pour le site officiel des inscriptions. Elles vous permettront de gérer les inscriptions des équipes de votre tournoi.<br />
<br />
Votre mot de passe est : <strong style="color: red; font-size: 18px;">{PASSWORD}</strong><br />
@ -16,6 +16,6 @@ Notez bien que ce mot de passe est temporaire, et pour des raisons de sécurité
<br />
Merci beaucoup pour votre aide !<br />
<br />
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -3,15 +3,15 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Organisateur du tournoi de {TOURNAMENT_NAME} TFJM²</title>
<title>Organisateur du tournoi de {TOURNAMENT_NAME} Correspondances des Jeunes Mathématicien·ne·s</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br />
<br />
Vous venez d'être promu organisateur du tournoi <a href="{URL_BASE}/tournoi/{TOURNAMENT_NAME}">{TOURNAMENT_NAME}</a> du TFJM<sup>2</sup> {YEAR}.<br />
Vous venez d'être promu organisateur du tournoi <a href="{URL_BASE}/tournoi/{TOURNAMENT_NAME}">{TOURNAMENT_NAME}</a> des Correspondances des Jeunes Mathématicien·ne·s {YEAR}.<br />
<br />
Cordialement,<br />
<br />
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -2,15 +2,15 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Nouvelle équipe TFJM² {YEAR}</title>
<title>Nouvelle équipe Correspondances des Jeunes Mathématicien·ne·s {YEAR}</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br />
<br />
Vous venez de créer l'équipe « {TEAM_NAME} » ({TRIGRAM}) pour le TFJM<sup>2</sup> de {TOURNAMENT_NAME} et nous vous en remercions.<br />
Vous venez de créer l'équipe « {TEAM_NAME} » ({TRIGRAM}) pour les Correspondances des Jeunes Mathématicien·ne·s de {TOURNAMENT_NAME} et nous vous en remercions.<br />
Afin de permettre aux autres membres de votre équipe de vous rejoindre, veuillez leur transmettre le code d'accès :
{ACCESS_CODE}<br/>
<br />
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -3,7 +3,7 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Changement d'adresse e-mail TFJM²</title>
<title>Changement d'adresse e-mail Correspondances des Jeunes Mathématicien·ne·s</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br/>
@ -11,6 +11,6 @@ Bonjour {FIRST_NAME} {SURNAME},<br/>
Vous venez de changer votre adresse e-mail. Veuillez désormais la confirmer en cliquant ici : <a
href="{URL_BASE}/confirmer_mail/{TOKEN}">{URL_BASE}/confirmer_mail/{TOKEN}</a><br/>
<br/>
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -2,7 +2,7 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Mot de passe changé TFJM²</title>
<title>Mot de passe changé Correspondances des Jeunes Mathématicien·ne·s</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br/>
@ -13,6 +13,6 @@ d'inscription.<br/>
<br/>
Cordialement,<br/>
<br/>
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -3,16 +3,16 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Inscription au TFJM² {YEAR}</title>
<title>Inscription aux Correspondances des Jeunes Mathématicien·ne·s {YEAR}</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br/>
<br/>
Vous êtes inscrit au TFJM<sup>2</sup> {YEAR} et nous vous en remercions.<br/>
Vous êtes inscrit aux Correspondances des Jeunes Mathématicien·ne·s {YEAR} et nous vous en remercions.<br/>
Pour valider votre adresse e-mail, veuillez cliquer sur le lien : <a href="{URL_BASE}/confirmer_mail/{TOKEN}">{URL_BASE}/confirmer_mail/{TOKEN}</a><br/>
<br/>
Cordialement,<br/>
<br/>
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -3,7 +3,7 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Mot de passe oublié TFJM²</title>
<title>Mot de passe oublié Correspondances des Jeunes Mathématicien·ne·s</title>
</head>
<body>
Bonjour,<br/>
@ -15,6 +15,6 @@ Si vous n'êtes pas à l'origine de cette manipulation, vous pouvez ignorer ce m
<br/>
Cordialement,<br/>
<br/>
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -2,16 +2,16 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Équipe rejointe TFJM² {YEAR}</title>
<title>Équipe rejointe Correspondances des Jeunes Mathématicien·ne·s {YEAR}</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br/>
<br/>
Vous venez de rejoindre l'équipe « {TEAM_NAME} » ({TRIGRAM}) pour le TFJM² de {TOURNAMENT_NAME} et nous vous en
Vous venez de rejoindre l'équipe « {TEAM_NAME} » ({TRIGRAM}) pour les Correspondances des Jeunes Mathématicien·ne·s de {TOURNAMENT_NAME} et nous vous en
remercions.<br/>
<br/>
Cordialement,<br/>
<br/>
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -3,14 +3,14 @@
<html lang="fr">
<head>
<meta charset="UTF-8">
<title>Inscription au TFJM² {YEAR}</title>
<title>Inscription aux Correspondances des Jeunes Mathématicien·ne·s {YEAR}</title>
</head>
<body>
Bonjour {FIRST_NAME} {SURNAME},<br />
<br />
Vous venez de vous inscrire au TFJM<sup>2</sup> {YEAR} et nous vous en remercions.<br />
Vous venez de vous inscrire aux Correspondances des Jeunes Mathématicien·ne·s {YEAR} et nous vous en remercions.<br />
Pour valider votre adresse e-mail, veuillez cliquer sur le lien : <a href="{URL_BASE}/confirmer_mail/{TOKEN}">{URL_BASE}/confirmer_mail/{TOKEN}</a><br />
<br />
Le comité national d'organisation du TFJM<sup>2</sup>
Le comité d'organisation des Correspondances des Jeunes Mathématicien·ne·s
</body>
</html>

View File

@ -4,7 +4,7 @@
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="viewport" content= "width=device-width, initial-scale=1.0" />
<title>Site d'inscription pour le TFJM² <?= $YEAR ?></title>
<title>Site d'inscription pour les Correspondances des Jeunes Mathématicien·ne·s <?= $YEAR ?></title>
<link rel="stylesheet" type="text/css" href="<?= $URL_BASE ?>/style.css"/>
<link REL="shortcut icon" href="<?= $URL_BASE ?>/favicon.ico" />
@ -23,7 +23,7 @@
<body>
<ul id="menu">
<li id="menu-logo"><img src="<?= $URL_BASE ?>/logo.svg" alt="Logo TFJM²"></li>
<li id="menu-logo"><img src="<?= $URL_BASE ?>/logo.png" alt="Logo Corres2Math"></li>
<li><a href="<?= $URL_BASE ?>/">Accueil</a></li>
<li><a href="<?= $URL_BASE ?>/tournois">Liste des tournois</a></li>
<?php if (!isset($_SESSION["user_id"])) { ?>

View File

@ -3,14 +3,9 @@
<!--suppress HtmlUnknownTarget, HtmlDeprecatedAttribute, HtmlDeprecatedTag -->
<div class="container-fluid">
<div id="header">
<center>
<img src="https://s3-eu-west-1.amazonaws.com/tfjm2-inscriptions/static/inscription/images/header.jpg"
alt="" width="720" height="160">
</center>
</div>
<br>
<center>
<h2>Bienvenue sur le site d'inscription des Correspondances de Jeunes Mathématicien·ne·s !</h2>
</center>
<center>
<h3>Vous souhaitez participer au tournoi ? Votre équipe est déjà formée ?</h3>
@ -18,108 +13,10 @@
<a href="<?= $URL_BASE ?>/connexion">connectez-vous</a> si votre équipe a déjà un compte.</h4>
</center>
<br>
<center>
<h2>Bienvenue sur le site d'inscription du TFJM<sup>2</sup> !</h2>
</center>
<center>
Ce site a été conçu pour gérer les inscriptions au Tournoi Français des Jeunes Mathématiciennes et
Mathématiciens.
<br>
<a href="http://www.tfjm.org/">Cliquez ici pour accéder au site de présentation du tournoi.</a>
</center>
<br>
<p align="justify"><strong>
Attention aux échéances ! Chaque tournoi a une date limite pour les inscriptions et une date limite pour
déposer vos solutions. Elles sont affichées avec les informations de chaque tournoi. Merci de vous y
référer !
<br>
Une fois l'échéance passée, le site bloque tout accès aux inscriptions (et respectivement au dépôt des
solutions).</strong>
</p>
<p style="color:red;">
Attention, modification du règlement par rapport aux années précédentes : article 4.3
<br>
"léquipe doit envoyer par mail à contact@tfjm.org, une lettre (au format pdf), répondant aux questions
suivantes :
<br>
</p>
<ul style="color:red;">
<li>Comment léquipe sest-elle formée ?</li>
<li>Comment léquipe va-t-elle travailler ( peut-elle se rencontrer, à quelle fréquence, rencontres avec
lencadrant•e) ?
</li>
</ul>
Cette lettre permettra aux organisateurs•trices de vérifier que léquipe dispose des conditions nécessaires à
une participation sérieuse. Sont dispensées les équipes dont la moitié ou plus des membres sont scolarisés dans
le même établissement. Le comité National dOrganisation se réserve le droit daccepter ou non linscription des
équipes concernées par cette lettre."
<br>
Pour plus de détail, voir le règlement : <a href="https://tfjm.org/infos-tournois/">https://tfjm.org/infos-tournois/</a>
<p></p>
<center>
<h2>Comment ça marche ?</h2>
</center>
<p align="justify">
Pour participer à l'un des tournois régionaux, il suffit de créer un compte sur la rubrique
<b>Inscription</b>. Il vous faudra une adresse email pour ce faire. Un mail de confirmation sera envoyé à
cette adresse. Il vous fournira un nom d'utilisateur et un mot de passe que vous allez devoir changer par la
suite.
</p>
<p>
Vous pouvez accéder à votre compte via la rubrique <b>Connexion</b>. Une fois connecté, vous pourrez :
</p>
<ul>
<li>rentrer des informations sur les membres de votre équipe, tant participants qu'encadrants ;</li>
<li>enregistrer et télécharger des versions préliminaires de vos solutions (seulement la dernière version
enregistrée avant la date limite sera prise en compte pour le tournoi).
</li>
</ul>
Une fois que vous aurez fourni toutes les informations demandées dans la rubrique <b>Mon Équipe</b>, votre
inscription pourra être validée par les organisateurs locaux.
<p></p>
<p class="text-danger">
ATTENTION ! Votre équipe ne sera considérée comme admissible à participer au tournoi que
lorsque cette première étape aura été franchie.
</p>
<p>
Pensez donc à former une équipe complète (minimum 4 participants et 1 encadrant) le plus tôt possible pour
avoir plus de chances de participer, compte tenu du nombre des places disponibles dans chaque tournoi (qui
sera dûment affiché sur la rubrique <b>Liste des Tournois</b>). Les équipes restantes seront placées en
liste d'attente.
</p>
<p>
Pour les équipes dont l'inscription aura été validée, des documents à télécharger, remplir et signer
deviendront disponibles sur votre compte. Vous allez devoir ensuite les scanner et les télécharger vers le
site pour compléter votre inscription.
</p>
<p class="text-danger">
ATTENTION ! Les équipes qui ne respecteront pas les délais pour rendre ces documents
risquent d'être disqualifiées et de laisser leur place aux équipes placées en liste d'attente.
</p>
<p>
<em><strong>NB :</strong> Ce site est récent et il est encore possible que certaines pages ne fonctionnent
pas correctement. Si vous remarquez des bugs, merci de les signaler à l'adresse <a
href="mailto:contact@tfjm.org">contact@tfjm.org</a>.</em>
href="mailto:contact@correspondances-maths.fr">contact@correspondances-maths.fr</a>.</em>
</p>
</div>

View File

@ -17,167 +17,10 @@ SET time_zone = "+02:00";
/*!40101 SET NAMES utf8mb4 */;
--
-- Base de données : `tfjm`
-- Base de données : `inscription_corres2math`
--
CREATE DATABASE IF NOT EXISTS `inscription-tfjm` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `inscription-tfjm`;
-- --------------------------------------------------------
--
-- Structure de la table `documents`
--
CREATE TABLE IF NOT EXISTS `documents`
(
`file_id` varchar(64) NOT NULL,
`user` int(11) NOT NULL,
`team` int(11) NOT NULL,
`tournament` int(11) NOT NULL,
`type` varchar(64) NOT NULL,
`uploaded_at` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`file_id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `organizers`
--
CREATE TABLE IF NOT EXISTS `organizers`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`organizer` int(11) NOT NULL,
`tournament` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `solutions`
--
CREATE TABLE IF NOT EXISTS `solutions`
(
`file_id` varchar(64) NOT NULL,
`team` int(11) NOT NULL,
`tournament` int(11) NOT NULL,
`problem` int(11) NOT NULL,
`uploaded_at` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`file_id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `syntheses`
--
CREATE TABLE IF NOT EXISTS `syntheses`
(
`file_id` varchar(64) NOT NULL,
`team` int(11) NOT NULL,
`tournament` int(11) NOT NULL,
`dest` varchar(64) NOT NULL,
`uploaded_at` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`file_id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `teams`
--
CREATE TABLE IF NOT EXISTS `teams`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL,
`trigram` varchar(3) NOT NULL,
`tournament` int(8) NOT NULL,
`encadrant_1` int(8) DEFAULT NULL,
`encadrant_2` int(8) DEFAULT NULL,
`participant_1` int(8) DEFAULT NULL,
`participant_2` int(8) DEFAULT NULL,
`participant_3` int(8) DEFAULT NULL,
`participant_4` int(8) DEFAULT NULL,
`participant_5` int(8) DEFAULT NULL,
`participant_6` int(8) DEFAULT NULL,
`inscription_date` timestamp NOT NULL DEFAULT current_timestamp(),
`validation_status` varchar(64) NOT NULL,
`final_selection` tinyint(1) NOT NULL DEFAULT 0,
`access_code` varchar(6) NOT NULL,
`year` int(4) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `tournaments`
--
CREATE TABLE IF NOT EXISTS `tournaments`
(
`id` int(8) NOT NULL AUTO_INCREMENT,
`name` varchar(64) NOT NULL,
`size` int(1) NOT NULL,
`place` varchar(255) NOT NULL,
`price` int(4) NOT NULL,
`description` varchar(255) NOT NULL,
`date_start` date NOT NULL,
`date_end` date NOT NULL,
`date_inscription` datetime NOT NULL,
`date_solutions` datetime NOT NULL,
`date_syntheses` datetime NOT NULL,
`final` tinyint(1) NOT NULL DEFAULT 0,
`year` int(4) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
-- --------------------------------------------------------
--
-- Structure de la table `users`
--
CREATE TABLE IF NOT EXISTS `users`
(
`id` int(8) NOT NULL AUTO_INCREMENT,
`email` varchar(255) NOT NULL,
`pwd_hash` varchar(64) NOT NULL,
`surname` varchar(255) NOT NULL,
`first_name` varchar(255) NOT NULL,
`birth_date` date DEFAULT NULL,
`gender` char(1) DEFAULT NULL,
`address` varchar(255) DEFAULT NULL,
`postal_code` int(5) DEFAULT NULL,
`city` varchar(255) DEFAULT NULL,
`country` varchar(255) DEFAULT 'France',
`phone_number` varchar(20) DEFAULT NULL,
`school` varchar(255) DEFAULT NULL,
`class` varchar(255) DEFAULT NULL,
`responsible_name` varchar(255) DEFAULT NULL,
`responsible_phone` varchar(20) DEFAULT NULL,
`responsible_email` varchar(255) DEFAULT NULL,
`description` varchar(255) DEFAULT NULL,
`role` varchar(64) NOT NULL,
`team_id` int(8) DEFAULT NULL,
`year` int(4) NOT NULL DEFAULT 2020,
`confirm_email` varchar(64) DEFAULT NULL COMMENT 'Jeton de confirmation d''e-mail',
`forgotten_password` varchar(64) DEFAULT NULL COMMENT 'Jeton de récupération de mot de passe',
`inscription_date` datetime NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8;
CREATE DATABASE IF NOT EXISTS `inscription_corres2math` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `inscription_corres2math`;
/*!40101 SET CHARACTER_SET_CLIENT = @OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS = @OLD_CHARACTER_SET_RESULTS */;

View File

@ -6,13 +6,13 @@ tls_trust_file /etc/ssl/certs/ca-certificates.crt
syslog on
logfile /var/log/msmtp.log
account tfjm
account corres2math
host ssl0.ovh.net
auth on
port 465
from contact@tfjm.org
from contact@correspondances-maths.fr
user contact@tfjm.org
passwordeval "echo $TFJM_MAIL_PASSWORD"
passwordeval "echo $CORRES2MATH_MAIL_PASSWORD"
# Set a default account
account default : tfjm
account default : corres2math