<?php
    require("classes.php");
    session_start();
    $currentGrid = strip_tags($_GET['grid']);
    $_SESSION["currentGrid"] = $currentGrid;

    if (!isset($_SESSION[$currentGrid])) {
        $grid = new Grid();
        $grid->import($currentGrid);
        if ($grid->containsDuplicates()) {
            $warning = "Cette grille contient des doublons.";
        } else {
            switch($grid->countSolutions(2)) {
                case 0:
                    $warning = "Cette grille n'a pas de solution.";
                    break;
                case 1:
                    break;
                default:
                    $warning = "Cette grille a plusieurs solutions.";
            }
        }
    }
?>
<!DOCTYPE html>
<html lang='fr' prefix="og: https://ogp.me/ns#">
    <head>
        <meta charset='utf-8' />
        <meta name='viewport' content='width=device-width' />
        <title>Sudoku</title>
        <link rel='stylesheet' type='text/css' href='style.css' />
        <script src='sudoku.js'></script>
        <link rel="apple-touch-icon" href="thumbnail.php?size=57"  sizes="57x57">
        <link rel="apple-touch-icon" href="thumbnail.php?size=114" sizes="114x114">
        <link rel="apple-touch-icon" href="thumbnail.php?size=72"  sizes="72x72">
        <link rel="apple-touch-icon" href="thumbnail.php?size=144" sizes="144x144">
        <link rel="apple-touch-icon" href="thumbnail.php?size=60"  sizes="60x60">
        <link rel="apple-touch-icon" href="thumbnail.php?size=120" sizes="120x120">
        <link rel="apple-touch-icon" href="thumbnail.php?size=76"  sizes="76x76">
        <link rel="apple-touch-icon" href="thumbnail.php?size=152" sizes="152x152">
        <link rel="icon" type="image/png" href="thumbnail.php?size=196" sizes="196x196">
        <link rel="icon" type="image/png" href="thumbnail.php?size=160" sizes="160x160">
        <link rel="icon" type="image/png" href="thumbnail.php?size=96"  sizes="96x96">
        <link rel="icon" type="image/png" href="thumbnail.php?size=16"  sizes="16x16">
        <link rel="icon" type="image/png" href="thumbnail.php?size=32"  sizes="32x32">
        <link rel="manifest" href="manifest.php">
        <meta property="og:title" content="Sudoku"/>
        <meta property="og:type" content="website"/>
        <meta property="og:url" content="<?=$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].$_SERVER["DOCUMENT_URI"]?>"/>
        <meta property="og:image" content="<?=$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].dirname($_SERVER["DOCUMENT_URI"])?>/thumbnail.php?size=200"/>
        <meta property="og:image:width" content="200"/>
        <meta property="og:image:height" content="200"/>
        <meta property="og:description" content="Remplissez la grille de sorte que chaque ligne, colonne et région (carré de 3×3 cases) contienne tous les chiffres de 1 à 9."/>
        <meta property="og:locale" content="fr_FR"/>
		<meta property="og:site_name" content="<?=$_SERVER["HTTP_HOST"]?>"/>
    </head>
    <body>
        <header>
            <h1>Sudoku</h1>
        </header>
        <form id='sudokuForm'>
            <table id='grid' class='grid'>
                <tbody>
<?php
        for ($row = 0; $row < 9; $row++) {
?>
                    <tr>
<?php
        for ($column = 0; $column < 9; $column++) {
            $value = $currentGrid[9*$row+$column];
            if ($value == UNKNOWN) {
?>
                        <td><input type='number' min='1' max='9' step='1' value='' title='Valeurs possibles [Clic-droit]'/></td>
<?php
                } else {
?>
                        <td><input type='number' min='1' max='9' step='1' value='<?=$value?>' disabled/></td>
<?php
            }                                                            
        }
?>
                    </tr>
<?php
   }
?>
                </tbody>
            </table>
        </form>
        <section class='tools'>
            <div id='insertRadioGroup' class='insertRadioGroup'>
<?php
        for($value=1; $value<=9; $value++) {
            echo "                <input type='radio' id='insertRadio$value' value='$value' name='insertRadioGroup' onclick='insert(this)' accesskey='$value'/>\n";
            echo "                <label for='insertRadio$value' title='Insérer un $value'>$value</label>\n";
        }
?>
            </div>
            <div>
                <input id='highlighterCheckbox' type="checkbox" onclick='highlight()'/>
                <label for='highlighterCheckbox' title='Surligner les lignes, colonnes et régions contenant déjà le chiffre sélectionné'><img src='img/highlighter.svg' alt='Surligneur'></label>
                <input type='radio' id='inkPenRadio' name='tool' onclick='grid.style.cursor = "url(img/ink-pen.svg) 2 22, auto"' checked/>
                <label for='inkPenRadio' title='Écrire un chiffre'><img src='img/ink-pen.svg' alt='Stylo indélébile'/></label>
                <input type='radio' id='pencilRadio' name='tool' onclick='grid.style.cursor = "url(img/pencil.svg) 2 22, auto"'/>
                <label for='pencilRadio' title='Prendre des notes'><img src='img/pencil.svg' alt='Crayon'/></label>
                <input type='radio' id='eraserRadio' name='tool' onclick='grid.style.cursor = "url(img/eraser.svg) 2 22, auto"'/>
                <label for='eraserRadio' title='Effacer une case'><img src='img/eraser.svg' alt='Gomme'/></label>
                <button type='button' class='warning' onclick='restart()' title='Recommencer'>
                    <img src='img/restart.svg' alt='Recommencer'/>
                </button>
                <button id='undoButton' type='button' onclick='undo()' disabled title='Annuler' accesskey='z'>
                    <img src='img/undo.svg' alt='Annuler'/>
                </button>
            </div>
        </section>
        <section>
<?php
    if (isset($warning))
        echo("            <strong>⚠️ $warning ⚠️</strong><br/>\n");
    else
        echo("            Remplissez la grille de sorte que chaque ligne, colonne et région (carré de 3×3 cases) contienne tous les chiffres de 1 à 9.\n")
?>
        </section>
        <ul id='contextMenu' class='context-menu'></ul>
        <footer>
            <div id='links'>
                <a href=''>Lien vers cette grille</a><br/>
                <a href='.'>Nouvelle grille</a><br/>
                <a href='.................................................................................'>Grille vierge</a><br/>
                <a href='' id='fixGridLink'>Figer cette grille</a>
                
            </div>
            <div class='credits'>
                Icônes par <a href='https://www.flaticon.com/authors/freepik' title='Freepik'>Freepik</a> chez <a href='https://www.flaticon.com/' title='Flaticon'>www.flaticon.com</a>
            </div>
        </footer>
    </body>
</html>