=== FourNineties: Menus for Square ===
Contributors: fournineties
Donate link: http://10fish.com/
Tags: square, menu, restaurant, bar, signage
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 1.0.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Connect Square to WordPress and publish live web menus, printable menus, and digital menu boards from your Square catalog.

== Description ==

**FourNineties Menus for Square FREE** turns your Square Item Library directly into printable  menus for your business. Connect easily with your Square account, then design your printable menu. If you change an item's availability, description, or price in Square — simply reprint the menu and it will pull the latest information.

**FourNineties Menus for Square Pro** adds web menus with shortcodes, digital menu boards (DMS), custom HTTP response headers, and loyalty tools (coming soon!). Pro features require an active software license. Learn more: http://10Fish.com/FourNinetiesPro/

== FREE VERSION FEATURES ==
* **Connects Directly** to your Square account
* **Real-time Updates** for Square item names, descriptions, prices, and availability
* **Printable Menus** — design printable restaurant menus with information sourced directly from your Square account

== PRO (paid) VERSION FEATURES ==
* All Free features, plus:
* **Web menus** — embed live menus on WordPress pages and posts with a shortcode (all categories, or one category by ID)
* **Digital Menu System (DMS)** — full-screen digital menu boards and signage for TV or kiosk displays
* **Custom HTTP response headers** — optional header override block (including CSP for web menus / DMS)
* **Loyalty enrollments** — (Coming Soon) Square Loyalty membership listing shortcode

== External services ==
This plugin connects to a secure OAuth Connection broker - it's needed to facilitate an OAuth API connection with Square.
This service is provided by "Validakey Inc.":
Terms of Service: https://Validakey.com/oab-terms-of-service/
Privacy Policy: https://Validakey.com/oab-privacy/

This plugin connects to the Square API - it is needed to pull information from your Square account data in order to perform services.
This service is provided by "SquareUp Inc."
Terms of Service: https://squareup.com/us/en/legal/general/ua
Privacy Policy: https://squareup.com/us/en/legal/general/privacy

**Square connection**

Admins connect Square from Settings → FourNineties. OAuth runs through FourNineties’s hosted broker so the Application Secret never ships in the plugin.

**Admin**

Settings → FourNineties includes tabs for Settings (connection; license on Pro), Web Menus, Print Menus, and Digital Menus. On Free (or Pro without a license), Web Menus and Digital Menus show an Upgrade / activate-license panel. Free installs also show a **Go Pro Now** link on the Plugins screen.

**Styling web menus (Pro)**

Preferred: Appearance → Customize → Additional CSS (keeps overrides with your theme).

Alternative: Settings → FourNineties → Web Menus → Custom stylesheet URL for a separate hosted or Media Library CSS file.

== Installation ==

1. Upload the `fournineties-menus-for-square` folder to `/wp-content/plugins/`, or install the zip via Plugins → Add New.
2. Activate **FourNineties**.
3. Go to Settings → FourNineties and connect your Square account.
4. Free: use the Print Menus tab. Pro: activate your license, then use Web Menus / Digital Menus.

== To hide an item on the web page (Pro) ==

In the Square dashboard Item Library, select an item to edit.
In the "Custom Attributes" section, add custom attribute.
Create a new custom attribute with:
  Name: web_menu_hide
  Attribute Type: Toggle
Check the box next to the new attribute to add the custom attribute to the item.
To hide an item, click the toggle "on", and save the item.

To add a custom sort to a category on the menu:
Create a new custom attribute with:
  Name: web_menu_sort
  Attribute Type: Number

== Frequently Asked Questions ==

= Do I need a Square developer account? =

No. Site admins connect Square with OAuth from the FourNineties settings screen. The plugin will never ask you to create a Square app or paste a Square Application Secret.

= What shortcodes are available? =

Pro (licensed) only:

* `[fournineties]` — all menu categories (shortcode name is configurable on the Web Menus tab)
* `[fournineties category_id="YOUR_CATEGORY_ID"]` — one category
* `[fournineties action="category_tree"]` — debug list of category names and IDs
* `[fournineties_loyalty_enrollments]` — Square Loyalty enrollments table (coming soon)

= Where do print and digital menus live? =

Print documents: `yoursite.com/fournineties/printable/{slug}/`
Digital menus (Pro): Settings → FourNineties → Digital Menus, served on FourNineties custom page routes.

== Screenshots ==
1. The Print Menu Settings page.
2. The Printable Editor allows you configure your own custom menu.
3. Printable Menu PDFs are generated directly from data in Square.

== Changelog ==

= 1.0.0 =
* Initial release: Square OAuth connect, printable menus (Free).
