<?php
// On charge toute la bibliotheque objet
require_once('../lib/autoload.inc.php');

function appreciation($element)
{
    $ret = '<div class="formField">' . "\n";
    $ret .= '<label for="' . $element . '">' . ucfirst($element) . '*</label>' . "\n";
    $ret .= '<select class="appreciation" name="' . $element . '" id="' . $element . '">' . "\n";
    $tabApp = array('Sans opinion' => 'sans_opinion', 'Mauvaise' => 'mauvaise', 'Bonne' => 'bonne', 'Excellent' => 'excellent');
    foreach ($tabApp as $key => $elem) {
        $ret .= '<option value="' . $elem . '">' . $key . '</option>' . "\n";
    }
    $ret .= '</select>' . "\n";
    $ret .= '</div>' . "\n";

    return $ret;
}


function detectTags($string)
{

    // Pas de code de la forme <tag attr=XXX>texte</tag>
    $testHTML = preg_match("/<[^>]+>/", $string);

    // Pas de code de la forme [tag attr=XXX]
    $testTag = preg_match("/[[^>]+]/", $string);

    // pas de lien commençant par http://…
    $testURL = strstr($string, "http://");

    if (($testHTML || $testTag) || $testURL) {
        return true;
    }
}

if (!isset($_GET['campus']) or !isset($_GET['cours'])) {
    header("HTTP/1.1 404 Not Found");
    exit();
}

// Lors d'un submit
if (isset($_POST['submit'])) {
    //die(var_dump($_POST));
    $msgErr = "";

    foreach ($_POST as $key => $value) {
        $post[$key] = $value;
    }

    //check if the honeypot field is filled out. If not, send a mail.
    if( !empty($post['firstname']) ){
        return; //you may add code here to echo an error etc.
    }else{
        //On vérifie les champs obligatoires
        $obligatoire = array('profession', 'internet', 'site', 'cours', 'qcm', 'cas_clinique');
        foreach ($obligatoire as $elem) {
            if (empty($post[$elem]))
                $erreurs[] = 'Veuillez bien renseignez le champs' . ucfirst($elem);
        }

        //On vérifie éventuellement l'adresse éléctronique
        $pattern = "/^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$/";
        if (!empty($post['email']) and !preg_match($pattern, strtolower($post['email']))) {
            $erreurs[] = 'L\'adresse e-mail saisie n\'est pas correcte.';
        }

        //On vérifie les spams
        if (detectTags($post['email']) || detectTags($post['frequence']) || detectTags($post['commentaires'])) {
            $erreurs[] = 'Veillez à insérer uniquement des caractères ou des expressions autorisées.';
        }

        //Pas d'erreurs, on peut continuer
        if (empty($erreurs)) {
            $avis = new Avis(array('CAMPUS_NAME' => $_GET['campus'],
                'FOLDER_NAME' => $_GET['cours'],
                'PROFESSION' => $post['profession'],
                'INTERNET' => $post['internet'],
                'FREQUENCE' => $post['frequence'],
                'APP_SITE' => $post['site'],
                'APP_COURS' => $post['cours'],
                'APP_QCM' => $post['qcm'],
                'APP_CAS_CLINIQUE' => $post['cas_clinique'],
                'COMMENTAIRES' => $post['commentaires'],
                'AVIS_EMAIL' => $post['email']));
            $ens = EnsFactory::createEns('EnsAvis');
            try {
                $ens->ajouter($avis);
            } catch (Exception $ex) {

            }
            $mail = MailFactory::nouvelAvis($avis);
            $mail->send();

            $msgInfo = 'Votre avis a bien &eacute;t&eacute; pris en compte.';
        }
    }
}
// Fin gestion submit
// Gestion des erreurs
if (!empty($erreurs)) {
    foreach ($erreurs as $value) {
        $msgErr .= '<div class="warning" style="color:red;">' . utf8_decode($value) . '</div>' . "\n";
    }
}
?>

<!DOCTYPE html PUBLIC "i-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Avis</title>
    <link rel="stylesheet" type="text/css" href="./style.css"/>
</head>
<body>
<div id="content">
    <?php
    if (isset($msgInfo)) {
        echo $msgInfo;
    } else {
        if (isset($msgErr))
            echo $msgErr;
        ?>
        <p>Merci de nous consacrer quelques secondes pour r&eacute;pondre &agrave; ces questions :</p>
        <form method="POST"
              action="./index.php?campus=<?php echo $_GET['campus']; ?>&cours=<?php echo $_GET['cours']; ?>">
            <fieldset>
                <legend>Informations</legend>
                <input name="firstname" type="text" id="firstname" class="hide-robot">
                <div class="formField">
                    <label for="profession">Votre profession*</label>
                    <input value="Etudiant" name="profession" id="profession" type="radio">Etudiant</input>
                    <input value="M&eacute;decin" name="profession" id="profession" type="radio">M&eacute;decin</input>
                    <input value="Sage Femme" name="profession" id="profession" type="radio">Sage Femme</input>
                    <input value="Interne" name="profession" id="profession" type="radio">Interne</input>
                    <input value="Autre" name="profession" id="profession" type="radio">Autre</input>
                </div>

                <div class="formField">
                    <label for="internet">Utilisez vous internet pour votre pratique?*</label>
                    <input value="Oui" name="internet" id="internet" type="radio">Oui</input>
                    <input value="Non" name="internet" id="internet" type="radio">Non</input>
                </div>

                <div class="formField">
                    <label for="frequence">Si oui, quelle fr&eacute;quence?</label>
                    <input name="frequence" id="frequence" type="text" maxlength="10"/>
                </div>

                <div class="formField">
                    <label for="email">Votre adresse e-mail</label>
                    <input name="email" id="email" type="text" maxlength="40"/>
                </div>

            </fieldset>

            <fieldset>
                <legend>Appr&eacute;ciation</legend>
                <?php
                $app = array('site', 'cours', 'qcm', 'cas_clinique');
                foreach ($app as $elem) {
                    echo appreciation($elem);
                }
                ?>
                <div class="formField">
                    <label for="commentaires">Vos commentaires</label>
                    <textarea rows="6" name="commentaires" id="commentaires"></textarea>
                </div>
            </fieldset>
            <p>* champs obligatoires</p>
            <div class="formButton">
                <input type="reset" value="Remise &agrave; z&eacute;ro"/>
                <input type="submit" name="submit" value="Valider"/>
            </div>

        </form>
        <?php
    }
    ?>
</div>
<div id="close"><a href="javascript:window.close();">Fermer la fen&ecirc;tre</a></div
</body>
</html>	
