/**
 * Fonction permettant de voir si la demande d'ami existe déjà en base de données.
 * @return bool : true si elle existe, false si elle n'existe pas.
 */
function verifDejaExistant()
{
    $id = $_GET['membre'];
    $idUser = $_SESSION['User']->getId();
    $am = new AmisManager(connexionDb());
    $testExistence1 = $am->getAmisById1AndId2($idUser, $id);
    $testExistence2 = $am->getAmisById1AndId2($id, $idUser);
    if ($testExistence1->getDate() != NULL || $testExistence2->getDate() != NULL) {
        return true;
    } else {
        return false;
    }
}
/**
 * Fonction permettant l'affichage du groupe auquel on appartient ainsi que la liste des membre du groupe et le chat du groupe.
 */
function voirGroupe()
{
    $ugm = new User_GroupeManager(connexionDb());
    $groupeId = $ugm->getGroupeIdByUserId($_SESSION['User']);
    $gm = new GroupeManager(connexionDb());
    $am = new ActivityManager(connexionDb());
    $um = new UserManager(connexionDb());
    $amiM = new AmisManager(connexionDb());
    $gmm = new Groupe_MessageManager(connexionDb());
    $groupe = $gm->getGroupeByIdGroupe($groupeId[0]['id_groupe']);
    $leader = $um->getUserById($groupe->getIdLeader());
    $act = $am->getActivityById($groupe->getIdActivity());
    $membres = $ugm->getUserIdByGroupeId($groupe);
    $messages = $gmm->getMessageByGroup($groupe);
    $existe = false;
    $autreMembre = false;
    formGroupe($groupe);
    echo "<div class='titleGroupe'>";
    echo "<div class='photoGroupe'>";
    echo "<img class='photoAct' src='../Images/activite/" . $act->getId() . ".jpg' alt='photoActivite' />";
    echo "</div>";
    echo "<h1 align='center'>" . $act->getLibelle() . "</h1>";
    echo "<h2 align='center'> Chef de groupe : " . $leader->getUserName() . "</h2>";
    echo "</div>";
    echo "<h3 align='center'> Description de votre activité :</h3>";
    echo "<div class='well well-lg'><h4 align='center'>" . $act->getDescription() . "</h4></div>";
    echo "<h3 align='center'> Description de votre groupe : </h3>";
    echo "<div class='well well-lg'><h3 align='center'>" . $groupe->getDescription() . " </h3></div>";
    ?>
    <div class="table-responsive">
    <table class="table table-striped">
        <caption> <h2> Membres du groupe </h2></caption>
        <tr>
            <th> Utilisateur </th>
            <th> Date de dernière connexion</th>
            <th> Ajouter en ami </th>
            <?php 
    if ($groupe->getIdLeader() == $_SESSION['User']->getId()) {
        ?>
                <th> Supprimer du groupe </th>
                <th> Nommer chef de groupe </th>
            <?php 
    }
    ?>
        </tr>
        <?php 
    foreach ($membres as $elem) {
        $user = $um->getUserById($elem['id_user']);
        $id = $user->getId();
        if ($user->getId() != $_SESSION['User']->getId()) {
            $autreMembre = true;
            $amiTest1 = $amiM->getAmisById1AndId2($user->getId(), $_SESSION['User']->getId());
            $amiTest2 = $amiM->getAmisById1AndId2($_SESSION['User']->getId(), $user->getId());
            echo "<tr> <td>" . $user->getUserName() . " </td><td>" . $user->getDateLastConnect() . " </td><td>";
            if ($amiTest1->getIdUser1() == NULL && $amiTest2->getIdUser1() == NULL) {
                echo "<a href='demandeAmi.page.php?membre=" . $user->getId() . "'> Ajouter comme ami </a>";
            } else {
                echo "Vous êtes déjà ami avec cette personne !";
            }
            echo "</td>";
            if ($groupe->getIdLeader() == $_SESSION['User']->getId()) {
                echo "<td><form class='form-horizontal col-sm-12' name='suppression{$id}' action='groupe.page.php?to=voirGroupe' method='post'>";
                echo "<input type='hidden'  name='idMembre{$id}'  value='" . $id . "''>";
                echo "<button class='btn btn-danger col-sm-10' type='submit' id='formulaire' name='supprimerMembre{$id}'>Supprimer ce membre</button>";
                echo "</form>";
                echo "</td>";
                echo "<td><form class='form-horizontal col-sm-12' name='nommerLead{$id}' action='groupe.page.php?to=voirGroupe' method='post'>";
                echo "<input type='hidden'  name='idMembre{$id}'  value='" . $id . "''>";
                echo "<button class='btn btn-success col-sm-10' type='submit' id='formulaire' name='nommerLead{$id}'>Nommer chef de groupe</button>";
                echo "</form>";
                echo "</td>";
            }
            echo "</tr>";
        }
    }
    if (!$autreMembre) {
        echo "<tr> <td> Vous êtes le seul membre du groupe pour le moment !</td></tr>";
    }
    ?>
    </table>
    </div>
    <?php 
    echo "<br> <br>";
    echo "<h2> Messagerie du groupe : </h2><br>";
    echo "<div class='messagerieGroupe'>";
    include "../Form/groupeMessage.form.php";
    echo "<br>";
    ?>
    <div class="table-responsive">
        <table class="table table-striped">
            <tr>
                <th> Utilisateur</th>
                <th> Date </th>
                <th> Message </th>
            </tr>
            <?php 
    foreach ($messages as $elem) {
        $user = $um->getUserById($elem['id_user']);
        echo "<tr> <td>" . $user->getUserName() . " </td><td>" . $elem['date'] . " </td><td>";
        echo $elem['description'];
        echo "</td></tr>";
        $existe = false;
    }
    if ($messages == NULL || $existe) {
        echo "<tr> <td> Aucun message pour le moment !</td></tr>";
    }
    ?>
        </table>
    </div>
    <?php 
    echo "</div>";
}
/**
 * Fonction supprimant un ami.
 * @param $id : l'id de l'ami supprimé.
 */
function supprimerAmi($id)
{
    $am = new AmisManager(connexionDb());
    $friendToDelete1 = new Amis(array("id_user_1" => $id, "id_user_2" => $_SESSION['User']->getId()));
    $friendToDelete2 = new Amis(array("id_user_2" => $id, "id_user_1" => $_SESSION['User']->getId()));
    $am->deleteAmis($friendToDelete1);
    $am->deleteAmis($friendToDelete2);
}