=== Spurvik – EU AI Act Article 50 AI Notice Badge ===
Contributors: spurvik
Tags: eu ai act, ai notice, chatbot, transparency, gdpr
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 7.4
Stable tag: 1.0.6
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Show a visible EU AI Act Article 50 AI notice badge in all 24 EU languages. Zero cookies, no tracking, one settings screen.

== Description ==

Running an AI chatbot, shopping assistant or AI-generated content on WordPress or WooCommerce? Article 50 of the EU AI Act asks providers and deployers to tell people when they deal with an AI system. This plugin adds a small, visible notice badge to every public page, with no code.

* All 24 official EU languages. "Auto" follows each page's `lang` attribute, so WPML, Polylang and Weglot switch the notice for you.
* Five notice types: AI interaction (Art. 50(1)), AI-generated content (visible label), deep fake (Art. 50(4)), AI text on matters of public interest (Art. 50(4)), emotion recognition or biometric categorisation (Art. 50(3)).
* Bottom-right or bottom-left placement, or inline: add `<div data-spurvik-badge></div>` in a Custom HTML block.
* Auto, dark or light theme.
* Zero cookies, no localStorage, no telemetry. Styles live in Shadow DOM, so your theme stays untouched.
* One option row in your database, removed on uninstall.

By default the badge ends with a small "Art. 50 · Spurvik" link to spurvik.com. White-label (hiding that link) is part of Spurvik Pro (€19/mo or €190/yr, excl. VAT, B2B): https://console.spurvik.com/signup?plan=pro

Prefer to have it done for you? The Done-For-You 24h AI Act setup (€199 once) installs the notice, configures Frankfurt call logs and approval gates, delivers a DPO PDF within 24 hours and includes one year of Pro: https://console.spurvik.com/signup?plan=concierge

== Installation ==

1. Download spurvik-eu-ai-act-wp.zip from https://spurvik.com/r/spurvik-eu-ai-act-wp.zip.
2. In WordPress, go to Plugins → Add New → Upload Plugin, choose the zip and click Install Now, then Activate.
3. Go to Settings → Spurvik AI Notice, tick "Show the AI notice", check the AI system name, notice type, language, position and theme, and click Save Changes.
4. Open your site in a private window to see the badge.

The badge stays off until you turn it on in step 3.

== Frequently Asked Questions ==

= Does this make my site meet the EU AI Act? =

No. The badge shows a visible, human-readable notice that supports your Article 50 transparency work. Whether and how the Act applies to you is a question for your own counsel. This plugin and its documentation are not legal advice.

= Does the badge mark AI-generated content under Article 50(2)? =

No. Article 50(2) asks providers of generative AI systems to mark output in a machine-readable format. A visible badge is a human-readable notice only; it does not watermark or embed machine-readable marking in images, audio, video or text.

= Does it set cookies or need a cookie banner? =

The badge sets no cookies, writes nothing to localStorage and sends no analytics or telemetry. Visitors' browsers download one JavaScript file from spurvik.com (see External services).

= How do I remove the "Art. 50 · Spurvik" link? =

Tick "White-label (Pro)" in Settings → Spurvik AI Notice. This adds data-attribution="false" to the script tag. White-label is part of Spurvik Pro; please use it only with an active Pro plan.

= Can I show the notice inside my chat window instead of a corner? =

Yes. Add a Custom HTML block or widget containing `<div data-spurvik-badge></div>` where you want it. When that element exists on a page, the badge renders there and does not float.

= My chat launcher sits bottom right. =

Choose "Bottom left" under Position so the badge never covers the launcher.

== External services ==

This plugin loads one script from a third-party service, Spurvik (operated by EyeTea Solutions ApS, Denmark), to render the notice.

* What: https://spurvik.com/badge.js (MIT licensed).
* When: on every public page while "Show the AI notice" is ticked. Nothing is loaded in wp-admin or while the badge is off.
* What is sent: a normal HTTP request for the script file from the visitor's browser, which, like any web request, includes the visitor's IP address and user agent. The plugin sends no site data, user data or settings to Spurvik. The script itself sets no cookies, uses no storage and makes no further network requests.
* The PHP code makes no remote calls.
* Terms of service: https://spurvik.com/terms
* Privacy policy: https://spurvik.com/privacy

== Changelog ==

= 1.0.6 =
* First release, matching badge.js 1.0.6.
* Settings → Spurvik AI Notice: on/off, AI system name (defaults to the site title), notice type, language (auto or 24 EU languages), position, theme and Pro white-label.
* The "Art. 50 · Spurvik" link is shown by default; white-label adds data-attribution="false".
* Uninstall removes the plugin's option.
