<?php

use Lab\Helpers;

$name = $name ?? 'printer';
$selected = (string) ($selected ?? '');
$printers = $printers ?? [];
$networkName = $networkName ?? '';
$networkValue = (string) ($networkValue ?? '');
?>
<div class="printer-picker" data-printer-picker>
    <label>Αναζήτηση εκτυπωτή
        <input type="search" data-printer-search placeholder="<?= PHP_OS_FAMILY === 'Darwin' ? 'Όνομα εκτυπωτή' : 'Όνομα, δίκτυο, IP ή \\\\ΥΠΟΛΟΓΙΣΤΗΣ\\εκτυπωτής' ?>" autocomplete="off">
    </label>
    <div class="printer-results" data-printer-results>
        <?php foreach ($printers as $printer): ?>
            <?php
                $kind = (string) ($printer['kind'] ?? 'installed');
                $kindLabel = $kind === 'network' ? 'Δίκτυο' : ($kind === 'default' ? 'Προεπιλογή' : 'Εγκατεστημένος');
                $id = (string) ($printer['id'] ?? '');
                $on = $id === $selected || ($selected === '' && ! empty($printer['default']));
                $port = (string) ($printer['port'] ?? '');
                $search = (string) ($printer['search'] ?? strtolower(($printer['name'] ?? '') . ' ' . $port . ' ' . $kind));
            ?>
            <button type="button" class="printer-item<?= $on ? ' on' : '' ?>" data-printer-item data-id="<?= Helpers::e($id) ?>" data-search="<?= Helpers::e($search) ?>">
                <span><?= Helpers::e((string) ($printer['name'] ?? '')) ?></span>
                <em><?= Helpers::e($kindLabel) ?><?= $port !== '' ? ' · ' . Helpers::e($port) : '' ?></em>
            </button>
        <?php endforeach; ?>
    </div>
    <p class="muted" data-printer-empty hidden><?= PHP_OS_FAMILY === 'Darwin'
        ? 'Δεν βρέθηκε εκτυπωτής. Πρόσθεσέ τον στις Ρυθμίσεις του Mac και πάτα Ανανέωση λίστας.'
        : 'Δεν βρέθηκε εκτυπωτής. Γράψε δικτυακή διαδρομή παρακάτω.' ?></p>
    <?php if (PHP_OS_FAMILY !== 'Darwin'): ?>
    <label>Δικτυακός (αν δεν είναι στη λίστα)
        <div class="net-row">
            <input type="text"<?= $networkName !== '' ? ' name="' . Helpers::e($networkName) . '"' : '' ?> value="<?= Helpers::e($networkValue) ?>" placeholder="\\PHOTO-PC\DS620 ή 192.168.1.50" data-printer-unc autocomplete="off">
            <button class="btn" type="button" data-printer-unc-add>Σύνδεση</button>
        </div>
    </label>
    <?php endif; ?>
    <input type="hidden" name="<?= Helpers::e($name) ?>" value="<?= Helpers::e($selected) ?>" data-printer-value>
</div>
