=== Chessfolio Chess Club Fixtures And Results ===
Contributors: chessfolio
Tags: chess, fixtures, results, ecf, club
Requires at least: 5.8
Tested up to: 7.0
Requires PHP: 7.2
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Show your ECF chess club's fixtures and results anywhere on your WordPress site, via the chessfolio.io hosted widget. Set your club code once, then drop it in with a shortcode or block.

== Description ==

Chessfolio Fixtures lets any English Chess Federation (ECF) club display its live fixtures and results on a WordPress site without touching any HTML.

A club admin sets the club's ECF code and main colour once in wp-admin. The widget then renders anywhere on the site via a shortcode or a Gutenberg block. The fixtures data comes live from the ECF League Management System (LMS) through the hosted chessfolio.io service — the plugin itself stores nothing sensitive and holds no API keys.

Features:

* Simple settings page — set your ECF club code, main colour and theme once.
* "Find your club" search that looks up your club code by name.
* Shortcode `[chessfolio_fixtures]` for classic content.
* A "Chessfolio Fixtures" block for the block editor, with a live preview.
* Per-placement overrides (club, colour, theme, organisation id) on both the shortcode and the block.
* Light and dark themes, plus a configurable main colour.
* Loads the hosted widget script only on pages where the widget actually appears.

== External / third-party service ==

This plugin is a thin wrapper around a hosted widget. To display fixtures it loads a small JavaScript file, `club.js`, from **embed.chessfolio.io** on any page where the widget is placed. That script renders the widget and fetches public fixture and results data from the **English Chess Federation League Management System (ECF LMS)** on your behalf.

* Service: Chessfolio hosted club-embed widget — https://chessfolio.io
* Script loaded: https://embed.chessfolio.io/v1/club.js
* Data source: public ECF LMS fixture data, proxied by the hosted service.

No personal data is sent by this plugin, and no API keys or credentials are stored in your WordPress site. The only data leaving your site is the standard browser request for the widget script and the public fixture lookups it performs.

Terms and privacy for the hosted service are available at https://chessfolio.io.

== Installation ==

1. Upload the `chessfolio-fixtures` folder to `/wp-content/plugins/`, or install the ZIP via Plugins → Add New → Upload Plugin.
2. Activate the plugin through the Plugins screen.
3. Go to **Chessfolio Fixtures** in the wp-admin menu.
4. Use the "Find your club" search (or type your ECF club code), pick a main colour and theme, and save.
5. Add the widget to any page or post with the `[chessfolio_fixtures]` shortcode or the "Chessfolio Fixtures" block.

== Frequently Asked Questions ==

= How do I find my ECF club code? =

On the Chessfolio Fixtures settings page, start typing your club's name in the "Find your club" box and select it from the list — the code fills in automatically. If your club is not listed, you can enter the numeric code manually.

= How do I use the shortcode? =

Place `[chessfolio_fixtures]` in any post or page to use your saved defaults. To override per placement, pass attributes:

`[chessfolio_fixtures club="2556" accent="#f60" theme="dark" org="357"]`

All attributes are optional; any you omit inherit the settings defaults.

= How do I use the block? =

In the block editor, add the "Chessfolio Fixtures" block. It previews the real widget inline. Use the sidebar controls to override the club code, colour, theme, or organisation id for that placement; leave a field blank to inherit the site defaults.

= What is the organisation id for? =

It is optional. Providing it only improves the "View fixtures on LMS" deep link. The widget works fine without it.

= Does this store my data or slow my site down? =

No. The plugin stores only your chosen defaults (club code, colour, theme, optional organisation id). The widget script is loaded from the hosted service only on pages where the widget appears, and the hosted service handles caching.

== Changelog ==

= 1.0.1 =
* Add a small "Fixtures & results powered by Chessfolio" credit line beneath the widget, linking to chessfolio.io.

= 1.0.0 =
* Initial release. Settings page with "Find your club" search and live preview, `[chessfolio_fixtures]` shortcode, and a dynamic block, all sharing one render path.
