diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 0000000..6a4703f --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,87 @@ +# OTS Signs Theme — Copilot Instructions + +Custom Xibo CMS theme for OTS Signs digital signage service. Built with Twig templates, vanilla CSS, and vanilla JS. No build pipeline — all assets are inlined at runtime. + +## Architecture + +- **Template engine**: Twig, inheriting from Xibo core's `base.twig` +- **Entry point**: `ots-signs/views/authed.twig` — wraps all authenticated pages (sidebar + topbar + content) +- **CSS delivery**: CSS files are **inlined** inside ` +{% endblock %} + +{% block pageContent %} + + +
+ + + +{% endblock %} + +{% block javaScript %} + {# Add common files #} + {% include "editorTranslations.twig" %} + {% include "editorVars.twig" %} + + + + + + + + + + + + {# ── Embed mode: postMessage bridge ──────────────────────── #} + +{% endblock %} diff --git a/ots-signs/views/welcome-page.twig b/ots-signs/views/welcome-page.twig new file mode 100644 index 0000000..c06f24b --- /dev/null +++ b/ots-signs/views/welcome-page.twig @@ -0,0 +1,648 @@ +{# +/** + * Copyright (C) 2026 OTS Signs + * + * Welcome / onboarding page for OTS Signs. + * + * Overrides Xibo's default welcome-page.twig. All cards are rendered + * server-side in Twig — no dependency on the Xibo compiled JS bundle. + * Inline JS populates live stat counts via the existing fetchCount pattern. + */ +#} +{% extends "authed.twig" %} + +{% block title %}{{ "Welcome"|trans }} | {% endblock %} + +{% block pageContent %} + + +{% trans %}Your digital signage control centre. Connect your displays, upload content, design layouts, and schedule what plays — all from one place.{% endtrans %}
+ +{% trans "Get Started" %}
+ + {% if currentUser.featureEnabled("displays.view") %} +{% trans %}Install the player app on a screen, then authorise it here. Once connected, your display is ready to receive scheduled content.{% endtrans %}
+ +{% trans %}Add images, videos, and other media files to your library. Supported formats include JPEG, PNG, MP4 and more.{% endtrans %}
+ +{% trans %}Create multi-zone screen layouts using the visual editor. Combine images, videos, text, and data widgets into a polished design.{% endtrans %}
+ +{% trans %}Assign layouts and campaigns to displays on a timed schedule. Set start and end times, repeat rules, and priorities.{% endtrans %}
+ +{% trans "Resources" %}
+{% trans "Step-by-step guides for every feature in OTS Signs." %}
+{% trans "Get help from the OTS Signs support team." %}
+{% trans "Configure your CMS installation and storage options." %}
+