<?php define('BASE_URL', 'http://api.warriordudimanche.net/fancytation/'); include_once 'helpers.php'; ?> <!DOCTYPE html> <html lang="fr"> <head> <meta charset="UTF-8"> <title>Fancytation</title> <link rel="stylesheet" href="index.css"/> </head> <body> <div class="max-w-sm mx-auto bg-white shadow-lg rounded-lg overflow-hidden"> <form action="" method="POST"> <div class="px-4 py-5 bg-white sm:p-6"> <h1 class="text-xl leading-tight">Fancytation</h1> <!-- t : texte (et on peut utiliser n pour les retours à la ligne) [ex: t=frist linensecond line] --> <div class="mt-6"> <label for="t" class="block text-sm font-medium leading-5 text-gray-700"> Texte </label> <div class="rounded-md shadow-sm"> <textarea rows="3" class="border border-gray-300 bg-white rounded-md mt-1 block w-full transition duration-150 ease-in-out sm:text-sm sm:leading-5" id="t" name="t"> <?= array_key_exists('t', $_POST) ? $_POST['t']:''?></textarea> </div> </div> <!-- c :couleur du texte au format FFFFFF (fancytation choisit automatiquement une couleur d'ombre noire ou blanche) --> <div class="grid grid-cols-3 gap-6"> <div class="col-span-3 sm:col-span-2"> <label for="c" class="block text-sm font-medium leading-5 text-gray-700"> Couleur </label> <div class="mt-1 flex rounded-md shadow-sm"> <input id="c" name="c" value="<?= array_key_exists('c', $_POST) ? $_POST['c']:'FFFFFF'?>" type="color" class="form-input flex-1 block w-full rounded-none rounded-r-md transition duration-150 ease-in-out sm:text-sm sm:leading-5"> </div> </div> </div> <!-- i : image de fond --> <div class="col-span-6 sm:col-span-3"> <label for="i" class="block text-sm font-medium leading-5 text-gray-700">Image de fond</label> <select id="i" name="i" class="mt-1 block form-select w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:shadow-outline-blue focus:border-blue-300 transition duration-150 ease-in-out sm:text-sm sm:leading-5"> <?php foreach(get_images() as $image) { ?> <option value="<?=$image?>" <?= array_key_exists('i', $_POST) && $_POST['i'] === $image ? ' selected="selected"': ''?>><?=$image?></option> <?php } ?> </select> </div> <!-- f : fonte utilisée --> <div class="col-span-6 sm:col-span-3"> <label for="f" class="block text-sm font-medium leading-5 text-gray-700">Police</label> <select id="f" name="f" class="mt-1 block form-select w-full py-2 px-3 border border-gray-300 bg-white rounded-md shadow-sm focus:outline-none focus:shadow-outline-blue focus:border-blue-300 transition duration-150 ease-in-out sm:text-sm sm:leading-5"> <?php foreach(get_fonts() as $font) { ?> <option value="<?=$font?>"<?= array_key_exists('f', $_POST) && $_POST['f'] === $image ? ' selected="selected"': ''?>><?=$font?></option> <?php } ?> </select> </div> <!-- fs: taille de fonte --> <div class="grid grid-cols-3 gap-6"> <div class="col-span-3 sm:col-span-2"> <label for="fs" class="block text-sm font-medium leading-5 text-gray-700"> Taille du texte </label> <div class="mt-1 flex rounded-md shadow-sm"> <input id="fs" name="fs" value="<?= array_key_exists('fs', $_POST) ? $_POST['fs']:'32'?>" type="number" class="border border-gray-300 form-input flex-1 block w-full rounded-none rounded-r-md transition duration-150 ease-in-out sm:text-sm sm:leading-5"> </div> </div> </div> </div> <div class="px-4 py-3 bg-gray-50 text-right sm:px-6"> <span class="inline-flex rounded-md shadow-sm"> <button type="submit" class="inline-flex justify-center py-2 px-4 border border-transparent text-sm leading-5 font-medium rounded-md text-white bg-indigo-600 hover:bg-indigo-500 focus:outline-none focus:border-indigo-700 focus:shadow-outline-indigo active:bg-indigo-700 transition duration-150 ease-in-out"> Enregistrement </button> </span> </div> </form> <?php if (!empty($_POST)) { $query_string = str_replace( '%0D%0A', '\n', // %0D%0A provoque une 502 sur l'API 🤷♂️ http_build_query( $_POST, null, '&', PHP_QUERY_RFC3986 ) ); $url = sprintf('%s?%s', BASE_URL, $query_string); ?> <div class="px-4 py-5 bg-white sm:p-6"> <h1 class="text-xl leading-tight"><a href="<?=$url?>">Télécharger l'image</a></h1> <img src="data:image/jpeg;charset=utf-8;base64,<?=base64_encode(file_curl_contents($url))?>" </div> <?php } ?> </div> </body> </html>