. */ namespace HTMLBuilder\Handler; /** * Gestione dell'input di tipo "image". * * @since 2.3 */ class MediaHandler implements HandlerInterface { public function handle(&$values, &$extras) { // Delega della gestione al metodo specifico per il tipo di input richiesto $result = $this->{$values['type']}($values, $extras); return $result; } /** * Gestione dell'input di tipo "image". * Esempio: {[ "type": "image", "label": "Immagine di test", "name": "image", "class": "img-thumbnail", "value": "image_path" ]}. * * @param array $values * @param array $extras * * @return string */ public function image(&$values, &$extras) { unset($values['class'][0]); // Valore non imposato if (empty($values['value'])) { $values['type'] = 'file'; // Generazione del codice HTML return ' '; } // Valore presente // Visualizzazione dell'immagine e della relativa spunta per la cancellazione else { $values['class'][] = 'img-thumbnail'; $values['class'][] = 'img-responsive'; // Generazione del codice HTML return '
'; } } }