<?php

class printPaper
{
    public static function switch(string $_page, int $_id){
        switch ($_page) {
            case 'qrcode-event':
                self::qrcodeEmargement($_id);
                break;
            
            default:
                echo NULL;
                break;
        }
    }
    
    private static function searchElementPage(string $_element){
        return "{{" . $_element . "}}";
    }
    
    private static function show(string $_page, array $_search, array $_replace){
        $template = DIR_PRINT . "cms." . $_page . ".html";
        if(file_exists($template)){
            $pageEmpty = file_get_contents($template);
            $pageCompleted = $pageEmpty;
            echo str_replace($_search, $_replace, $pageCompleted);
        } else {
            return NULL;
        }
        
    }
    
    private static function qrcodeEmargement(int $_idEvent){
        $event = event::getFiche($_idEvent);

        if($event["actif"] == 0){
            $alert = '<div class="alert alert-danger" role="alert">Cet évènement est désactivé et non visible des salariés.</div>';
        } else {
            $alert = "";
        }

        if($event["type_inscription"] == 0){
            $note = '<div class="alert alert-success" role="alert">Evènement sans inscription.</div>';
        } else {
            $note = '<div class="alert alert-warning" role="alert">Préinscription obligatoire</div>';
        }

        $explication = "Pour vous émarger, il vous faut scanner ce QRCode ou vous rendre sur <span style='font-weight : bold;'>https://" . DOMAIN_EVENTS . "</span> dans le navigateur de votre mobile.<br />";
        $explication .= "Une fois sur l'app mobile, il vous faut renseigner votre <span style='font-weight : bold;'>matricule Capgemini</span> <span style='font-style: italic;'>(composé de chiffres et présent sur votre fiche paie)</span> ou votre <span style='font-weight : bold;'>identifiant Capgemini</span> <span style='font-style: italic;'>(qui est généralement la première lettre de votre prénom suivi de votre nom)</span> et votre <span style='font-weight : bold;'>date de naissance</span> <span style='font-style: italic;'>(celle renseignée sur le site du CSE)</span>.<br />";
        $explication .= "Une fois connecté, il vous suffira de cliquer sur la tuile correspondante à l'évènement <span style='font-style: italic;'>(la première fois, il vous faudra accepter les droits d'accès à votre caméra)</span> et de scanner ce QRcode.<br />";
        
        if($event["type_inscription"] == 0) { $explication .= "Cet évènement est accessible à tous les salariés."; }
        else { $explication .= "Important, cet évènement est seulement accessible aux salariés qui se sont préinscrits."; }

        $search = array(
            self::searchElementPage("TITRE"),
            self::searchElementPage("PERIODE"),
            self::searchElementPage("QRCODE"),
            self::searchElementPage("EXPLICATION"),
            self::searchElementPage("NOTE"),
            self::searchElementPage("ALERTE")
        );

        $replace = array(
            $event["titre"], // TITRE
            "du " . core::convertDate($event["startDate"]) . " au " . core::convertDate($event["endDate"]), // PERIODE
            event::getQRCode($event["id"], "300"), // QRCODE
            $explication, // EXPLICATION
            $note, // NOTE
            $alert // ALERTE
        );

        self::show("qrcode-event", $search, $replace);
    }
}