=== Glowshot — Product Photo Studio ===
Version: 1.0.0
Requires WordPress: 6.4
Requires PHP: 8.1
License: GPL-2.0-or-later

INSTALL
1. Upload glowshot.zip in WordPress > Plugins > Add New > Upload Plugin.
2. Activate. Open Settings > Glowshot.
3. Enter a NEW OpenAI API key. The key in the supplied original HTML was exposed; revoke it. Leave the settings key field blank to retain an existing key. A wp-config.php GLOWSHOT_OPENAI_API_KEY constant overrides the database setting.
4. Select quality, daily attempt limit, and optionally a default product ID.
5. Open Glowshot Studio, the standalone landing URL linked in settings, or add [glowshot] to a page.
6. Upload up to four photos (PNG/JPG/WebP, each <=10 MB and <=40 megapixels). Generate sequentially and review the output.
7. Search WooCommerce by product name or numeric ID, then save as gallery or featured + gallery. The previous featured image is retained in the gallery. Existing gallery entries are preserved and duplicates avoided.

WHAT IS INCLUDED
Public DE/EN responsive landing page; working plugin ZIP download; staff-only server-side image generation; Media Library storage; WooCommerce catalog search and image assignment; settings screen; nonce/capability checks; per-user daily attempt quota; concurrency guards; no browser API secrets.
WooCommerce is optional for generation and required for linking. This is a store-staff product photography tool, not a paid consumer photo service. It does not add images to customer carts or sell generation credits.

HOSTING
Allow outbound HTTPS to api.openai.com and REST API cookie authentication. PHP upload_max_filesize must allow 10 MB, post_max_size >=12 MB, memory_limit preferably >=256 MB. Image edits may take several minutes; PHP/FPM, web server and proxy timeouts must permit a 240-second request plus media processing. No automatic retries: a timeout can still incur API charges. Use a suitable host or reduce quality if requests time out. Exclude the ?glowshot=1 page from full-page/CDN caching because it contains a user-specific REST nonce. Server responses set no-cache headers. Inline scripts are required; adapt a restrictive CSP if necessary.

DATA
Original files are read from the temporary PHP upload and sent only upon Generate. They are not retained by this plugin. OpenAI processes submitted images according to your API account terms. Generated images are saved in WordPress uploads and may be public, even before linking them to products. Deleting or resetting a browser preview does NOT delete Media Library images. Remove unwanted images from Media Library. AI can alter logos/text/details; always review. API charges are separate from ChatGPT subscriptions. The plugin does not make billing requests until authorized staff click Generate. Fonts load from Google Fonts with local fallbacks.

ACCESS / SECRETS
Administrators and WooCommerce store managers need upload_files plus manage_options or manage_woocommerce. Product editing checks edit_post for each target. Image assignment accepts only the current user's generated attachments. API key is stored in a normal WordPress option unless supplied via wp-config.php; protect database backups accordingly. Password fields never render the saved key. Removing the plugin leaves settings and generated media intact.

DOWNLOAD PACKAGING
The installed plugin serves downloads/glowshot.zip. The shipped outer ZIP includes a smaller, installable source ZIP. That source ZIP regenerates its downloadable archive locally on activation using WordPress’s bundled ZIP writer; the plugin directory must be writable. No credentials, media or site configuration are ever included.

STATIC LANDING
The separate glowshot-landing.zip includes index.html and glowshot.zip: publish both side by side. The static landing provides upload previews and a real plugin download; actual generation requires the WordPress installation. Static HTML does not call OpenAI.

VALIDATION
See TEST-REPORT.txt in the delivery bundle for checks performed and limitations.

API REFERENCES
https://developers.openai.com/api/docs/models/gpt-image-1
https://developers.openai.com/api/docs/guides/image-generation
https://developer.wordpress.org/rest-api/extending-the-rest-api/adding-custom-endpoints/
