Diverses corrections

This commit is contained in:
Yohann D'ANELLO 2020-01-16 22:04:29 +01:00
parent 606ad5886f
commit 95ab142702
10 changed files with 71 additions and 58 deletions

View File

@ -194,7 +194,7 @@ class Team
public static function getAllTeams($only_not_validated = false)
{
global $DB, $YEAR;
$req = $DB->query("SELECT * FROM `teams` WHERE " . ($only_not_validated ? "`validation_status` = 'NOT_READY' AND " : "") . "`year` = $YEAR;");
$req = $DB->query("SELECT * FROM `teams` WHERE " . ($only_not_validated ? "`validation_status` = 0 AND " : "") . "`year` = $YEAR;");
$teams = [];

View File

@ -8,7 +8,7 @@ $orgas_response = $DB->query("SELECT `id`, `surname`, `first_name` FROM `users`
$has_error = false;
$error_message = null;
if (isset($_POST["submitted"])) {
if (isset($_POST["add_tournament"])) {
$tournament = new NewTournament($_POST);
try {
$tournament->makeVerifications();

View File

@ -1,6 +1,7 @@
<?php
$token = $_GET["token"];
$alert = "danger";
if (isset($token)) {
$result = $DB->query("SELECT `email` FROM `users` WHERE `confirm_email` = '$token' AND `year` = '$YEAR';");
@ -9,11 +10,13 @@ if (isset($token)) {
else {
$DB->exec("UPDATE `users` SET `confirm_email` = NULL WHERE `confirm_email` = '$token';");
$error_message = "Votre adresse mail a été validée ! Vous pouvez désormais vous connecter.";
$alert = "success";
}
}
else {
$error_message = "Il n'y a pas de compte à valider !";
$alert = "warning";
}
require_once "server_files/views/header.php";
echo "<h2>$error_message</h2>";
echo "<div class=\"alert alert-$alert\"><h2>$error_message</h2></div>";
require_once "server_files/views/footer.php";

View File

@ -95,6 +95,7 @@ class AttributeTeam
ensure($user->getConfirmEmailToken() == null, "Ce participant n'a pas encore validé son adresse e-mail.");
ensure($this->team_id != "no_team", "Vous n'avez pas choisi d'équipe.");
ensure($this->team != null, "Cette équipe n'existe pas.");
ensure($user->getTeamId() <= 0, "Cette personne est déjà dans une équipe !");
ensure($this->team->getValidationStatus() == ValidationStatus::NOT_READY, "Cette équipe est déjà validée ou en cours de validation.");
$role = $user->getRole();
@ -105,7 +106,7 @@ class AttributeTeam
$this->min_null_index = $i;
ensure($role == Role::PARTICIPANT && $this->min_null_index <= 5 || $role == Role::ENCADRANT && $this->min_null_index <= 2,
ensure($role == Role::PARTICIPANT && $this->min_null_index <= 6 || $role == Role::ENCADRANT && $this->min_null_index <= 2,
"Il n'y a plus de place pour vous dans l'équipe.");
}
@ -123,6 +124,12 @@ class AttributeTeam
Mailer::sendJoinTeamMail($user, $this->team, Tournament::fromId($this->team->getTournamentId()));
$team = $this->team;
global $documents, $payment, $tournament;
$documents = $user->getAllDocuments($team->getTournamentId());
$payment = $user->getPayment();
$tournament = Tournament::fromId($team->getTournamentId());
}
}

View File

@ -61,7 +61,7 @@ class NewUser
ensure(preg_match("#^[0-9]{4}[0-9]?$#", $this->postal_code) && intval($this->postal_code) >= 01000 && intval($this->postal_code) <= 95999, "Le code postal est invalide.");
if ($this->country == "")
$this->country = "France";
ensure(strlen($this->phone_number) >= 10, "Le numéro de téléphone est invalide.");
ensure(strlen($this->phone_number) >= 10 && strlen($this->phone_number) <= 20, "Le numéro de téléphone est invalide.");
$this->role = Role::fromName(strtoupper($this->role));
if ($this->role == Role::PARTICIPANT) {

View File

@ -22,13 +22,6 @@ if (isset($_POST["team_edit"])) {
}
}
if (isset($_POST["request_validation"])) {
if (!canValidate($team, $tournament))
$error_message = "Votre équipe ne peut pas demander la validation : il manque soit des participants, soit des documents.";
else
$_SESSION["team"]->setValidationStatus(ValidationStatus::WAITING);
}
if (isset($_SESSION["user_id"]) && isset($_SESSION["team"]) && $_SESSION["team"] !== null) {
/**
* @var User $user
@ -38,13 +31,20 @@ if (isset($_SESSION["user_id"]) && isset($_SESSION["team"]) && $_SESSION["team"]
$team = $_SESSION["team"];
$tournament = Tournament::fromId($team->getTournamentId());
$documents = $user->getAllDocuments($team->getTournamentId());
$documents = $tournament->getAllDocuments($team->getId());
if ($team->isSelectedForFinal())
$documents_final = $user->getAllDocuments($FINAL->getId());
$documents_final = $FINAL->getAllDocuments($team->getId());
}
else
require_once "server_files/403.php";
if (isset($_POST["request_validation"])) {
if (!canValidate($team, $tournament))
$error_message = "Votre équipe ne peut pas demander la validation : il manque soit des participants, soit des documents.";
else
$team->setValidationStatus(ValidationStatus::WAITING);
}
class MyTeam
{
public $name;

View File

@ -52,7 +52,7 @@
<li class="nav-item active">
<a class="nav-link" href="/mon-equipe">Mon équipe</a>
</li>
<?php if ($_SESSION["team"]->getValidationStatus() == ValidationStatus::VALIDATED || true) { ?>
<?php if ($_SESSION["team"]->getValidationStatus() == ValidationStatus::VALIDATED) { ?>
<li class="nav-item active">
<a class="nav-link" href="/paiement">Paiement</a>
</li>
@ -117,7 +117,7 @@
</div>
<?php }
if (!isset($_SESSION["user"]) && $view != "server_files/controllers/connexion.php") {
if (getallheaders()["X-Real-Ip"] != "185.230.76.133") {
echo "<div style=\"text-align: center;\" class=\"alert alert-success\"><h1>Cette plateforme ouvrira le 22 janvier 2020 ! :)</h1></div>";
require_once "footer.php";
}

View File

@ -104,48 +104,50 @@ if (!$has_error) {
Adresse e-mail du responsable légal : <a href="mailto:<?= $user->getResponsibleEmail() ?>"><?= $user->getResponsibleEmail() ?></a>
</div>
<div class="alert alert-info">
<strong>Récapitulatif du paiement :</strong><br /><br />
<?php if ($user->getRole() == Role::PARTICIPANT && $user->getTeamId() > 0) { ?>
<div class="alert alert-info">
<strong>Récapitulatif du paiement :</strong><br /><br />
<?php if ($payment->getValidationStatus() == ValidationStatus::NOT_READY) { ?>
<div class="alert alert-danger">
Cette personne n'a pas encore payé sa participation.
</div>
<?php } else { ?>
<strong>Tournoi :</strong> <?= $tournament->getName() ?><br />
<strong>Montant :</strong> <?= $payment->getAmount() ?> €<br />
<strong>Moyen de paiement :</strong> <?= PaymentMethod::getTranslatedName($payment->getMethod()) ?><br />
<?php if ($payment->getMethod() == PaymentMethod::SCHOLARSHIP) { ?>
<strong>Notification de bourse :</strong> <a href="/file/<?= $payment->getTransactionInfos() ?>">Télécharger</a><br /><br />
<?php } else { ?>
<strong>Informations sur le paiement :</strong> <?= $payment->getTransactionInfos() ?><br /><br />
<?php }
if ($payment->getValidationStatus() == ValidationStatus::WAITING) { ?>
<div class="alert alert-warning">
Le paiement n'a pas encore été validé.
<form method="POST">
<input type="hidden" name="validate_payment" value=""/>
<div class="form-group row">
<label for="message">Message à adresser au participant :</label>
<textarea class="form-control" id="message" name="message"></textarea>
</div>
<input class="btn btn-primary btn-lg" style="width: 49%;"
type="submit" name="accept" value="Valider le paiement"/>
<input class="btn btn-light btn-lg" style="width: 49%;" type="submit" name="reject"
value="Rejeter le paiement"/>
</form>
<?php if ($payment->getValidationStatus() == ValidationStatus::NOT_READY) { ?>
<div class="alert alert-danger">
Cette personne n'a pas encore payé sa participation.
</div>
<?php } else { ?>
<div class="alert alert-success">
Le paiement a été validé.
</div>
<strong>Tournoi :</strong> <?= $tournament->getName() ?><br />
<strong>Montant :</strong> <?= $payment->getAmount() ?> €<br />
<strong>Moyen de paiement :</strong> <?= PaymentMethod::getTranslatedName($payment->getMethod()) ?><br />
<?php if ($payment->getMethod() == PaymentMethod::SCHOLARSHIP) { ?>
<strong>Notification de bourse :</strong> <a href="/file/<?= $payment->getTransactionInfos() ?>">Télécharger</a><br /><br />
<?php } else { ?>
<strong>Informations sur le paiement :</strong> <?= $payment->getTransactionInfos() ?><br /><br />
<?php }
if ($payment->getValidationStatus() == ValidationStatus::WAITING) { ?>
<div class="alert alert-warning">
Le paiement n'a pas encore été validé.
<form method="POST">
<input type="hidden" name="validate_payment" value=""/>
<div class="form-group row">
<label for="message">Message à adresser au participant :</label>
<textarea class="form-control" id="message" name="message"></textarea>
</div>
<input class="btn btn-primary btn-lg" style="width: 49%;"
type="submit" name="accept" value="Valider le paiement"/>
<input class="btn btn-light btn-lg" style="width: 49%;" type="submit" name="reject"
value="Rejeter le paiement"/>
</form>
</div>
<?php } else { ?>
<div class="alert alert-success">
Le paiement a été validé.
</div>
<?php } ?>
<?php } ?>
<?php } ?>
</div>
</div>
<?php } ?>
<?php } elseif ($user->getDescription() != "") { ?>
<div class="alert alert-info">

View File

@ -198,7 +198,7 @@ if (!$has_error && (isset($my_account) || isset($new_password))) {
</div>
</form>
<?php if (isset($_SESSION["team"]) && $user->getRole() == Role::PARTICIPANT) {
<?php if (isset($_SESSION["team"]) && ($user->getRole() == Role::PARTICIPANT || $user->getRole() == Role::ENCADRANT)) {
$not_validated = $_SESSION["team"]->getValidationStatus() == ValidationStatus::NOT_READY;
?>
<hr/>

View File

@ -82,7 +82,7 @@ require_once "header.php";
<?php } else { ?>
<?php if ($_SESSION["team_validation_status"] == ValidationStatus::NOT_READY) { ?>
<?php if ($_SESSION["team"]->getValidationStatus() == ValidationStatus::NOT_READY) { ?>
<!--suppress HtmlUnknownTarget -->
<a href="/mon-equipe/modifier">
<button class="btn btn-secondary btn-lg btn-block">Modifier mon équipe</button>
@ -101,7 +101,7 @@ require_once "header.php";
if ($can_validate) { ?>
<hr />
<form method="post">
<label for="engage">Je m'engage à participer à l'intégralité des Correspondances</label>
<label for="engage">Je m'engage à participer à l'intégralité du TFJM²</label>
<input type="checkbox" name="engage" id="engage" required/>
<div class="alert alert-warning">
<strong>Attention !</strong> Une fois votre équipe validée, vous ne pourrez plus modifier le nom
@ -114,7 +114,8 @@ require_once "header.php";
<hr />
<div class="alert alert-warning">
Pour demander à valider votre équipe, vous devez avoir au moins un encadrant, quatre participants,
choisi un problème et soumis une autorisation de droit à l'image par participant.
choisi un problème et soumis une autorisation de droit à l'image, une fiche sanitaire et une autorisation
parentale (si besoin) par participant.
</div>
<?php } ?>
<?php }