1. Επισκόπηση

Το Book Komotirio είναι ένα απλό και σβέλτο εργαλείο διαχείρισης ραντεβού για κομμωτήρια/κουρεία παιδιών. Υποστηρίζει ρόλους (super_admin, staff), ελληνικό περιβάλλον, φίλτρα ανά ημέρα/υπηρεσία/κατάσταση, εβδομαδιαία λωρίδα, ειδοποιήσεις και βασικές ρυθμίσεις επιχείρησης.

2. Ρόλοι & Πρόσβαση

ΡόλοςΔικαιώματα
super_adminΠλήρης πρόσβαση: έγκριση/επεξεργασία/διαγραφή ραντεβού, διαχείριση προσωπικού, υπηρεσιών, ρυθμίσεων, ωραρίων.
staffΠρόσβαση σε λίστες ραντεβού, έγκριση/ακύρωση εκκρεμών, προβολή ειδοποιήσεων.

Παραδοσιακό tip: λιγότερα δικαιώματα εκεί που δεν χρειάζονται. Έτσι μένει το σύστημα «σφιχτό» και ασφαλές.

3. Σύνδεση & Ασφάλεια

  • Μεταβείτε στη σελίδα Σύνδεσης και εισάγετε διαπιστευτήρια.
  • Η εφαρμογή απαιτεί require_login() σε όλες τις προστατευμένες σελίδες.
  • Για νέους χρήστες/προσωπικό, ο super_admin δημιουργεί λογαριασμούς.

4. Πίνακας Ελέγχου (index.php)

Συνοπτική εικόνα της ημέρας: KPIs, σημερινά ραντεβού, νέα αιτήματα και εβδομαδιαία λωρίδα.

KPI

  • Ολοκληρώθηκαν, Ακυρώθηκαν, Εγκρίθηκαν
  • Σε εξέλιξη & αναμονή: συνολικός όγκος εργασίας
  • Έσοδα Σήμερα: σύνολο, μετρητά, online
Συμβουλή: Αν τα έσοδα «δεν βγαίνουν», ελέγξτε price_paid vs price_estimate και την μέθοδο πληρωμής.

Νέα αιτήματα ραντεβού

Εμφανίζεται λίστα των τελευταίων εκκρεμών (pending). Στη στήλη Φύλο θα δείτε εικονίδιο 👦/👧 ανάλογα με το πεδίο child_gender.

Σημερινά ραντεβού

Λίστα ραντεβού της τρέχουσας ημέρας, με ώρα, πελάτη, τηλέφωνο, υπηρεσία και κατάσταση.

Εβδομαδιαία λωρίδα

7 κουτιά (Δευ–Κυρ) με badge συνολικού πλήθους ραντεβού. Κλικ σε ημέρα → μετάβαση στη σελίδα «Όλα τα ραντεβού» για τη συγκεκριμένη ημερομηνία.

5. Όλα τα ραντεβού (bookings.php)

Πλήρης λίστα ραντεβού ανά ημέρα, με φίλτρα και ενέργειες.

Φίλτρα & περιήγηση

  • Ημέρα: επιλογή ημερομηνίας
  • Κατάσταση: pending, approved, processing, done, canceled
  • Υπηρεσία: φιλτράρισμα ανά τύπο
  • Εβδομαδιαία λωρίδα: γρήγορη πλοήγηση στις ημέρες της εβδομάδας

Πίνακας & ενέργειες

Στήλες: Ώρα, Πελάτης, Φύλο, Τηλέφωνο, Υπηρεσία, Κατάσταση, Ενδ. τιμή, Ενέργειες.

  • Φύλο: ετικέτα «Αγόρι/Κορίτσι» από child_gender.
  • Ενέργειες:
    • super_admin: Έγκριση, Σε εξέλιξη, Ολοκληρώθηκε, Ακύρωση, Διαγραφή
    • staff: Έγκριση, Ακύρωση

Έννοιες κατάστασης: pending σε αναμονή → approved εγκεκριμένο → processing εκτελείται → done ολοκληρώθηκε → canceled ακυρώθηκε.

6. Νέα ραντεβού (pending.php)

Λίστα μόνο των εκκρεμών ραντεβού για γρήγορη απόφαση. Στήλες: Ημ/νία & Ώρα, Πελάτης, Φύλο, Τηλέφωνο, Υπηρεσία, Ενέργειες.

Επιλέξτε «Έγκριση» ή «Ακύρωση». Μετά την ενέργεια, το ραντεβού φεύγει από τη λίστα.

7. Πελάτες

Διαχείριση καρτέλας πελάτη: στοιχεία επικοινωνίας, ιστορικό ραντεβού. Αναζήτηση με όνομα/τηλέφωνο. Χρήσιμο όταν θέλουμε επανάληψη υπηρεσίας «ό,τι κάναμε την περασμένη φορά».

8. Δημιουργία ραντεβού / Ωράρια (slots.php)

Ορισμός διαθέσιμων χρονικών παραθύρων. Αφού προστεθούν, μπορούν να γίνουν κρατήσεις πάνω σε αυτά. Τηρείτε την «πατροπαράδοτη» ισορροπία: μην ανοίγετε αλόγιστα slots που μετά θα χρειάζονται ακυρώσεις.

9. Προσωπικό

Διαχείριση μελών ομάδας, ρόλων και βασικών στοιχείων. Μόνο ο super_admin έχει πρόσβαση.

10. Ειδοποιήσεις

Σύστημα ενημερώσεων (τοasts επάνω-αριστερά) για νέες ενέργειες ή αιτήματα. Κρατήστε το «καθαρό» διαβάζοντας/κλείνοντας παλιές ειδοποιήσεις.

11. Ρυθμίσεις (settings.php)

Α) Στοιχεία επιχείρησης

  • Όνομα επιχείρησης, Τηλέφωνο, Email, Διεύθυνση
  • Λογότυπο: αποδεκτοί τύποι jpg/png/webp
  • Δωρεάν μετά από Χ ολοκληρωμένα: loyalty κανόνας

Β) Υπενθυμίσεις

Αποστολή υπενθύμισης Χ ώρες πριν. Υποστηρίζονται μεταβλητές:

{name} {date} {time} {service} {phone}

Γ) SMTP

Ρυθμίσεις αποστολής email: host/port, user/pass, κρυπτογράφηση (TLS/SSL), αποστολέας.

Δ) iOS εικονίδια & τίτλος

  • Τίτλος σελίδας: λαμβάνεται από salon_name (DB settings) και εμφανίζεται ως <title>.
  • Apple Touch Icons: ορίστε URLs για 180×180, 167×167, 152×152. Αν μείνουν κενά, χρησιμοποιούνται τα προεπιλεγμένα /assets/icons/apple-touch-icon-*.png.
<link rel="apple-touch-icon" sizes="180x180" href="/assets/icons/apple-touch-icon-180.png">

12. Συχνές Ερωτήσεις (FAQ)

Πώς εγκρίνω ένα ραντεβού;

Από Νέα ραντεβού ή Όλα τα ραντεβού, επιλέξτε την ενέργεια Έγκριση στο drop-down.

Δεν βλέπω εικονίδιο φύλου στο Dashboard.

Ελέγξτε ότι το πεδίο child_gender είναι καταχωρημένο (boy/girl). Αν είναι κενό → εμφανίζεται «—».

Τα εικονίδια iOS δεν φορτώνουν.

Ρυθμίστε τα URLs στις Ρυθμίσεις > iOS Icons ή τοποθετήστε τα PNG στα προεπιλεγμένα paths.

Τα email δεν αποστέλλονται.

Ελέγξτε SMTP (host/port/credentials/SSL), και ότι ο server επιτρέπει εξερχόμενα στη θύρα.

13. Συντομεύσεις

ΕνέργειαΣυντόμευση
Αναζήτηση στη σελίδαCtrl + F + F)
Μετάβαση στην αρχική (Dashboard)Κλικ στο λογότυπο/brand

14. Ασφάλεια & Απόδοση

  • Δώστε ρόλο super_admin μόνο όπου είναι απαραίτητο.
  • Κρατάτε το λογισμικό server ενημερωμένο (PHP/DB).
  • Τακτικό backup της βάσης. Παραδοσιακό αλλά πάντα σωτήριο.

15. Λύση Προβλημάτων

  • Δεν εμφανίζονται ραντεβού ημέρας: βεβαιωθείτε ότι το φίλτρο Ημέρας είναι σωστό και ότι υπάρχει δεδομένο στο διάστημα.
  • Σφάλμα αποθήκευσης iOS Icons: προσθέστε τις στήλες ios_icon_180/167/152 στον πίνακα settings.
  • Τα KPIs δείχνουν 0: ελέγξτε ότι οι κρατήσεις έχουν σωστά status και ημερομηνίες.

16. Παραρτήματα

Α. Καταστάσεις ραντεβού

ΚωδικόςΕλληνική ετικέτα
pendingΣε αναμονή
approvedΕγκρίθηκε
processingΣε εξέλιξη
doneΟλοκληρώθηκε
canceledΑκυρώθηκε

Β. Placeholders υπενθυμίσεων

ΜεταβλητήΠεριγραφή
{name}Όνομα πελάτη
{date}Ημερομηνία ραντεβού
{time}Ώρα ραντεβού
{service}Όνομα υπηρεσίας
{phone}Τηλέφωνο επιχείρησης

Γ. Συμβάσεις δεδομένων

  • child_gender: boy ή girl (αλλιώς εμφανίζεται «—»).
  • Τιμές: εμφανίζονται σε ευρώ με δύο δεκαδικά.