Libre Bite

Changelog

1.2.8

  • Maintenance: Updated Freemius SDK to version 2.13.1.

1.2.7

  • Fix: HPOS compatibility – order meta now stored via HPOS API ($order->update_meta_data / $order->get_meta) instead of post meta functions.
  • Fix: Capability checks now use plugin-specific capabilities (lbite_use_pos, lbite_view_dashboard) instead of generic edit_posts.
  • Fix: Locations menu is now always visible – at least one location is required for POS and order overview.
  • Fix: Free plan is now limited to 1 published location; attempting to publish a second one keeps it as draft and shows an upgrade notice.
  • Fix: Removed orphaned onboarding assets and broken “Restart Setup” button in Help page.
  • Fix: All hardcoded German strings in dashboard.js and pos.js replaced with localizable strings via wp_localize_script.
  • New: Added de_CH_informal (informal Swiss German) and de_DE_formal (formal German) translation variants.

1.2.6

  • Improvement: Alle Plugin-Strings auf Englisch umgestellt (WordPress i18n-Standard).
  • New: Schweizerdeutsche Übersetzung (de_CH) wird direkt mit dem Plugin ausgeliefert.

1.2.5

  • Fix: Zeitzonenfehler in Kanban-Sortierung und Auto-Statuswechsel behoben — strtotime() durch lbite_local_time_to_timestamp() ersetzt (class-order-dashboard.php, Zeilen 192–193 und 531).
  • Fix: Anzeigefehler «Zuletzt geändert» in Order-Meta-Box korrigiert — strtotime() auf current_time(‘mysql’)-Strings durch lbite_local_time_to_timestamp() ersetzt.
  • Fix: Heutige Bestellungen im Dashboard-Widget zählten bei abweichender Server/WordPress-Timezone falsch — strtotime(‘today’) durch timezone-bewusstes Mitternacht-Timestamp ersetzt.
  • Fix: DateTime::createFromFormat() in checkout-location-time.php ohne Timezone-Parameter — auf DateTimeImmutable::createFromFormat() mit wp_timezone() umgestellt.
  • Improvement: Produkt-Optionen im Warenkorb werden nun als ein gruppierter Eintrag «Optionen» angezeigt statt als separate «Option»-Zeilen pro Auswahl.

1.2.4

  • Fix: Zeitzonenfehler bei Checkout-Bestätigung, Kanban-Board und E-Mails behoben — lokale Zeit-Strings werden nun korrekt mit lbite_local_time_to_timestamp() in Unix-Timestamps umgewandelt statt mit strtotime() (Doppelkonvertierung).
  • Fix: Zeitzonenfehler bei POS-Bestellungen behoben (gleiche Ursache wie oben).
  • Fix: Uhrzeit-Auswahlfelder im Checkout: Text wurde auf iOS/Safari unten abgeschnitten — line-height und height: auto ergänzt.

1.2.3

  • Improvement: Capability-Dokumentation in class-roles.php erweitert — alle lbite_-Capabilities mit Inline-Kommentaren zur Funktion versehen.
  • Improvement: phpcs:ignore-Kommentare um explizite Begründungen ergänzt (class-tables.php, class-reservations.php, class-checkout.php, class-onboarding.php, settings-tabbed.php).

1.2.2

  • Fix: @fs_premium_only-Header um Tischmodul und zugehörige Assets erweitert — /includes/modules/tables/, /templates/admin/table-plan.php, admin-tables.js, admin-table-plan.js, reservation-board.js, admin-tables.css, admin-table-plan.css, admin-reservation-board.css werden nun korrekt aus der von Freemius generierten Free Version entfernt.

1.2.1

  • Fix: Freemius-Deployment-Strategie korrigiert — Premium-Code korrekt mit @fs_premium_only-Header und is__premium_only()-Guards markiert, sodass die von Freemius generierte Free Version keinerlei Premium-Code enthält.
  • Fix: Inline – und -Tags in class-admin.php in bestehende enqueued Stylesheet- und Script-Dateien ausgelagert.
  • Fix: sanitize_admin_settings() implementiert — alle Felder werden nun mit den passenden WordPress-Sanitize-Funktionen bereinigt.
  • Fix: add_tip_fee() prüft nun explizit den WooCommerce-Nonce (woocommerce-process_checkout bzw. update-order-review) und extrahiert nur die benötigten $_POST-Felder statt den ganzen Array zu kopieren.

1.2.0

  • Feature: Reservierungs-Dashboard — neue Tagesansicht (Libre Bite → Reservierungsübersicht) mit Standort-Dropdown, Datums-Navigation, Status-Badge und Tisch-Zuweisung direkt auf der Karte.
  • Improvement: Aktualisierungsintervall für Reservierungsübersicht in den Einstellungen konfigurierbar (Standard: 60 Sekunden).
  • Improvement: Benachrichtigungs-Badge im Backend-Menü zeigt jetzt auf die neue Reservierungsübersicht.
  • Improvement: Gerätkompatibilität und Betriebsmodelle in der Plugin-Beschreibung dokumentiert.

1.1.9

  • Improvement: Plugin-Beschreibung auf Nutzen statt Features ausgerichtet (Kurzbeschreibung, Description, Why Libre Bite).
  • Improvement: SEO-Keywords für Schweizer Gastronomie eingebaut (Twint, QR-Code-Bestellung, 5-Rappen-Rundung, provisionsfrei).
  • Improvement: Tags auf WP.org optimiert.

1.1.8

  • Feature: Benachrichtigungs-Badge für ausstehende Reservierungen im Backend-Menü ergänzt.

1.1.7

  • Feature: Benachrichtigungs-Counter im Backend-Menü zeigt Anzahl eingehender Bestellungen an.
  • Feature: Drucken-Schaltfläche auf der Bestellbestätigung zum Ausdrucken oder als PDF speichern.
  • Verbesserung: «Bestellübersicht aktivieren» in die Karte «Bestellsystem» verschoben.
  • Verbesserung: «Hilfe & Support» im Dashboard-Schnellzugriff ergänzt.

1.1.6

  • Fix: PHP-Warning “Undefined property: WC_Order_Item_Fee::$total_tax” auf der Bestellbestätigungsseite behoben.
  • Fix: Zahlungsart wird auf der Bestellbestätigungsseite nun als eigene Box angezeigt (nicht mehr als unformatierter Text).
  • Fix: Vorbestellungen zeigen im Kanban-Board jetzt Datum und Uhrzeit an (nicht mehr nur die Uhrzeit).
  • Fix: Bestellungen im Kanban-Board werden nach Dringlichkeit sortiert (Sofort: Erstellungszeit, Vorbestellung: Abholzeit).
  • Fix: «Reservierungen» erscheint im Backend-Menü neu unter «Tischplan» statt ganz oben.
  • Fix: Reservierungsformular zeigt keine Tischauswahl mehr – Tischzuweisung erfolgt durch das Personal im Backend.
  • Fix: Sofort-Bestellungen werden blockiert, wenn der gewählte Standort aktuell geschlossen ist.
  • Fix: Status-Badge auf der Standort-Übersicht zeigt nun den korrekten Öffnungsstatus (robuster Zeitvergleich).
  • Fix: Nährwerttabelle auf der Produktdetailseite hat nun horizontales Innenabstand.
  • Improvement: «Produkt-Optionen» ist neu unter WooCommerce → Produkte eingetragen.
  • Improvement: Hilfe-Bereich um Tab und Inhalt für «Reservierungen» erweitert.

1.1.5

  • Performance: POS product data cached for 1 hour via transient, invalidated on product and location save.
  • Performance: Location colors cached via transient (lbite_location_colors), invalidated on location save.
  • Performance: Admin settings JS now loaded only on the settings page (not on all Libre Bite admin pages).
  • Improvement: Default dashboard refresh interval increased from 30s to 45s for new installations.

1.1.4

  • Feature: Visual floor plan — drag-and-drop canvas per location with shape/size controls and live table status (free, occupied, preparing, ready).
  • Feature: Table reservations — frontend form via shortcode [lbite_reservation_form], email notifications, and admin management view.
  • Feature: POS table selector shows live occupancy status (free/occupied) for each table.
  • Improvement: Floor plan link moved under Tables in admin menu.
  • Improvement: Order board popup links to Order Board instead of individual orders.
  • Improvement: Help section updated with floor plan documentation.
  • Fix: Tables without saved order meta are now correctly shown in the floor plan.

1.1.3

  • Feature: Location colors — color-coded highlight for location dropdowns in POS and Order Board.
  • Feature: POS blocks product area when no location is selected.
  • Feature: Seats per table — configurable seat count per table (preparation for reservations).
  • Feature: Bulk table creation — create multiple tables at once with prefix and numbering.
  • Feature: Location filter in table list.
  • Improvement: Help section updated with full table management documentation and location color info.

1.1.2

  • Improvement: Consolidated settings tabs – Checkout and Checkout Fields merged, Dashboard renamed to Order Board, Features tab shown first.
  • Improvement: Simplified user roles to two-tier system (administrator + staff), removed legacy role cleanup on migration.
  • Improvement: Rewrote help documentation to be feature-focused for new users.
  • Fix: Optimized checkout CSS layout overrides for theme compatibility (Astra and others).
  • Fix: Outdated legacy roles (OOS) removed from Roles & Menus screen.

1.1.1

  • Improvement: Prefix all variables in template files with lbite_ for WordPress.org compliance.
  • Improvement: Consistently use lbite_ prefix for passed-in and internal template variables.

1.1.0

  • Feature: Table Management module – create tables, assign to locations, generate QR codes for ordering.
  • Feature: Order at Table – QR code URL stores table + location in session, checkout adapts automatically.
  • Feature: Table filter in Kanban board and table name display in order cards.
  • Feature: Clean uninstall – new uninstall.php removes all plugin data when enabled in settings.
  • Security: XSS hardening in dashboard.js and pos.js (template strings replaced with jQuery DOM APIs).
  • Security: wp_unslash() added to all superglobal access in tables module and admin AJAX.
  • Security: current_user_can() check added to table meta save callback.
  • Security: Capability for table AJAX endpoint changed from edit_posts to lbite_use_pos.
  • Improvement: Template variables prefixed with lbite_ in all frontend templates (XSS namespace protection).
  • Improvement: Performance limits added to all unlimited post queries.
  • Improvement: Inline styles and scripts in tables module extracted to external CSS/JS files.
  • Improvement: readme.txt fully translated to English, external services disclosed.
  • Improvement: Order board and POS styles extracted to dedicated CSS files.

1.0.9

  • Feature: Onboarding page after initial installation – select features, no redirect to older instances.
  • Feature: POS Payment Confirmation – Overlay with order summary and payment method (Cash/Card/Twint/Other) before order creation.
  • Fix: HPOS incompatibility resolved – Order meta now uses WooCommerce HPOS API instead of get_post_meta/update_post_meta.
  • Fix: XSS in support settings resolved (.html() → .text() for preview field).
  • Fix: XSS in dashboard loading overlay resolved (message parameter escaped).

1.0.8

  • Security: POS order now uses server-side product price instead of client price (prevents manipulation).
  • Performance: Replaced wc_get_orders() unlimited limit (limit => -1) with sensible caps (Dashboard 50, Kanban 200, Cron 100).
  • Performance: Pagination in ajax_load_more_completed() switched to true DB pagination (instead of loading all orders and slicing).
  • Code: Removed redundant cron job registration from module constructors (cron setup only in activation hook).

1.0.7

  • Security: Added XSS escaping in dashboard.js (item.meta, error message when cancelling).
  • Security: Added XSS escaping in pos.js (variationName in product modal).
  • Fix: Corrected wrong capability name in class-product-options.php (manage_lbite_options → lbite_manage_options). Product options are now saved correctly.
  • Fix: Fixed typo in feature key in class-checkout.php (enable_tip → enable_tips). Tip JS is now loaded correctly for Pro users.
  • Fix: Status labels in class-order-dashboard.php made translatable via WordPress i18n (WordPress.org compliance).

1.0.6

  • Fix: Premium override only available in Pro version (WordPress.org compliance).
  • Fix: Nutritional info, allergens, and sound notifications correctly marked as Pro features.
  • Fix: Feature list in readme.txt adapted to Free/Pro assignment.
  • Fix: Plugin description translated to English (WordPress.org guideline).
  • Fix: Output escaping added to admin notices.
  • Bump: Version to 1.0.6.

1.0.5

  • Fix: Replaced Heredoc/Nowdoc syntax with external JS files (WPCS compliance).

1.0.4

  • Fix: Changed function prefix from lb_ to lbite_ (WordPress.org naming convention).
  • Fix: Moved inline CSS/JS from templates to separate enqueue files.
  • Fix: Added nonce checks in checkout and product options.
  • Fix: Added Freemius parameter is_org_compliant.
  • Fix: Updated SortableJS to version 1.15.7.
  • Fix: Corrected contributors field in readme.txt.

1.0.3

  • Fix: Resolved all WordPress.org Plugin Check errors and warnings.
  • Fix: Corrected direct file access protection in main plugin file.
  • Fix: Fixed output escaping in wp_die() calls.
  • Fix: Replaced strip_tags() with wp_strip_all_tags().
  • Fix: Added PHPCS ignore comments for legitimate uses.
  • Fix: Reduced tags in readme.txt to maximum 5.

1.0.2

  • Fix: Resolved WordPress.org Plugin Check errors (Tested up to tag, text domain loading).
  • Fix: Removed Domain Path header.

1.0.1

  • Improved: Freemius integration for better WordPress.org compliance.
  • Fixed: Uninstallation process adapted for feedback tracking.
  • Security: Improved security checks and escaping.

1.0.0-beta

  • First beta version.
  • Added: Location management module.
  • Added: Point of Sale (POS).
  • Added: Kanban order board.
  • Added: Tipping system and scheduled order time slots.
  • Added: Freemius integration for Pro features.

Plugin Website
Visit website

Author
urech.dev
Version:
1.2.8
Last Updated
April 16, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 6.9.4
Requires PHP
7.4

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.