Site Admin Help
Managing the ABC Food Law Enforcement platform
A reference guide for ABC staff with site admin access — covering content management, subscribers, subscriptions, and settings.
Admin panel overview
Access the admin panel
Log in with your site admin account and go to /admin. The dashboard shows key statistics: total subscribers, active subscriptions, recent sign-ups, and content counts. The top navigation gives access to all admin sections.
Admin navigation
The admin panel is divided into sections: Dashboard (stats overview), Webinars, Live Webinars, Tutorials, Official Guidance, Library, Subscribers, Subscriptions, Authorities, Payments, and Settings. Each section is accessible from the top navigation bar.
Common questions
Content management
Manage on-demand webinars
Go to /admin/webinars. The list shows all webinars with their publish status, category, and CPD hours. Click a webinar to open the editor. The editor has six tabs: Details (title, description, category, CPD hours), Video (upload MP4), Course Notes (upload PDF), Quiz (AI-generated questions — review and edit before publishing), Related Content, and Library Docs.
Publish a webinar
A webinar is only visible to subscribers when its Published toggle is on. Set the toggle in the webinar editor or use the 'Publish all' button on the webinars list to publish all unpublished webinars at once. Check that the video, course notes, and quiz are all in place before publishing.
Manage live webinars
Go to /admin/live-webinars. Add, edit, or remove upcoming live webinar sessions. Each session has a title, description, date, time, duration, presenter, and a FlowApp registration URL. Update the registration URL for each session when it is confirmed in FlowApp.
Manage video tutorials
Go to /admin/tutorials. The workflow is the same as for webinars: upload video, upload course notes PDF, review the AI-generated quiz, then publish.
Manage official guidance courses
Go to /admin/official-guidance. Each course is built from sections — you can upload a PDF or DOCX source document and the system will extract the text into sections. Review and edit the extracted content, add quiz questions, then publish.
Manage the reference library
Go to /admin/library. The library is organised into categories. Add, edit, or remove categories and the resources within them. Resources have a title, summary, type label, and optional link.
Common questions
Subscribers & authorities
View subscribers
Go to /admin → Subscribers. The list shows all subscriber accounts with their name, email, authority, subscription status, and expiry date. Use the search and filter controls to find specific subscribers.
Activate a subscriber manually
For PO/invoice subscribers, activate their account once payment is confirmed. Find the subscriber in the list, open their record, and set their subscription status to Active. A welcome email with a password-set link is sent automatically on activation.
Bulk import subscribers
To import multiple subscribers at once, use the bulk import function in the Subscribers section. Download the Excel template, fill in subscriber details (name, email, authority), and upload the completed file. Imported subscribers receive a welcome email with a link to set their password.
Manage authorities
Go to /admin → Authorities. Authorities are the organisations that subscribers belong to. You can add new authorities, edit existing ones, and merge duplicate authorities. Each authority can have one or more authority admin accounts.
Common questions
Subscriptions & payments
View subscriptions
Go to /admin → Subscriptions. The list shows all subscriptions with payment method, status, start and end dates, and Stripe reference (for card payments). Filter by status (Active, Expired, Cancelled) or payment method.
View payment history
Go to /admin → Payments. This shows all payment transactions processed through Stripe, including the amount, date, subscriber, and Stripe session ID. Use this to reconcile payments or investigate a specific transaction.
Update subscription price
Go to /admin → Settings. The subscription price is stored in the database and displayed on the Subscribe page. Update it here — the new price will apply to all new subscriptions immediately. Existing subscriptions are not affected.
Handle a PO subscription
When a purchase order subscription is submitted, you will receive a notification. Raise the invoice manually and send it to the contact email provided. Once payment is received, activate the subscription in the admin panel — this triggers the welcome email to the subscriber.
Common questions
Training Needs Adviser
How the Training Needs Adviser works
The Training Needs Adviser is a subscriber-facing tool at /portal/competency-adviser. Subscribers self-assess their confidence against the 164 activities in the FSA Competency Standard (sections A–F), and the system uses AI to recommend specific webinars from the library that address their identified gaps. The tool also produces a short CPD planning note.
Webinar-to-activity mapping
The mapping between Competency Standard activities and webinar slugs is stored in src/data/competency-webinar-mapping.json. This file maps each of the 164 activity IDs to one or more webinar slugs. Update this file when new webinars are added to the library to ensure they appear in relevant recommendations.
Competency activity data
The full list of 164 activities — including their short titles, full text, group, and section — is stored in public/data/competency-activities.json. This file is loaded by the adviser page at runtime. It is based on the FSA Competency Standard and should be updated if the Standard is revised.
Privacy
Self-assessment ratings are not stored in the database. They are sent to the AI endpoint in the session, used to generate recommendations, and discarded. No subscriber self-assessment data is visible in the admin panel or authority portal.
Common questions
Settings
Site settings
Go to /admin → Settings. Here you can update the subscription price, the admin notification email address, and other site-wide configuration values.
Stripe webhook
The Stripe webhook URL is https://abcfoodlawenforcement.com/api/stripe/webhook. This must be registered in the Stripe dashboard under Developers → Webhooks. The webhook handles checkout.session.completed (new card subscriptions) and invoice.payment_succeeded (renewals).
API keys
API keys (Stripe, Anthropic) are stored as environment secrets in the hosting platform, not in the codebase. They can be updated through the platform's secrets management interface. The Anthropic key is used by the AI Ask widget and the Training Needs Adviser.
Common questions
Questions about the platform? Email admin@abcfoodlaw.co.uk
Back to admin panel