flame hq element config + branding, e2ee-default-off (config.json + .well-known verified serving both flags 2026-08-29)
This commit is contained in:
5
README.md
Normal file
5
README.md
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Flame HQ Element (web) — config + branding
|
||||||
|
Deployed at hq.b2bgrowth.systems (container blackbox-element, config bind-mounted).
|
||||||
|
This release carries E2EE-default-off: `io.element.e2ee {default:false, secure_backup_required:false}`
|
||||||
|
in BOTH the served config.json and the Caddy .well-known — no device-verification/backup nag.
|
||||||
|
Rooms for Auralith are created with E2EE off by design (she cannot read megolm rooms).
|
||||||
93
element/config.json
Normal file
93
element/config.json
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
{
|
||||||
|
"default_server_config": {
|
||||||
|
"m.homeserver": {
|
||||||
|
"base_url": "https://hq.b2bgrowth.systems",
|
||||||
|
"server_name": "hq.b2bgrowth.systems"
|
||||||
|
},
|
||||||
|
"m.identity_server": {
|
||||||
|
"base_url": "https://vector.im"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"disable_guests": true,
|
||||||
|
"disable_login_language_selector": false,
|
||||||
|
"disable_3pid_login": false,
|
||||||
|
"brand": "Flame HQ",
|
||||||
|
"integrations_ui_url": "https://scalar.vector.im/",
|
||||||
|
"integrations_rest_url": "https://scalar.vector.im/api",
|
||||||
|
"integrations_widgets_urls": [
|
||||||
|
"https://scalar.vector.im/_matrix/integrations/v1",
|
||||||
|
"https://scalar.vector.im/api",
|
||||||
|
"https://scalar-staging.vector.im/_matrix/integrations/v1",
|
||||||
|
"https://scalar-staging.vector.im/api",
|
||||||
|
"https://scalar-staging.riot.im/scalar/api"
|
||||||
|
],
|
||||||
|
"defaultCountryCode": "US",
|
||||||
|
"showLabsSettings": false,
|
||||||
|
"features": {
|
||||||
|
"feature_new_spinner": true,
|
||||||
|
"feature_pinning": true,
|
||||||
|
"feature_custom_status": true,
|
||||||
|
"feature_custom_tags": true,
|
||||||
|
"feature_state_counters": true
|
||||||
|
},
|
||||||
|
"default_federate": true,
|
||||||
|
"default_theme": "custom-Flame HQ",
|
||||||
|
"roomDirectory": {
|
||||||
|
"servers": [
|
||||||
|
"hq.b2bgrowth.systems"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"settingDefaults": {
|
||||||
|
"breadcrumbs": true,
|
||||||
|
"showJoinLeaves": false,
|
||||||
|
"showRedactions": false,
|
||||||
|
"showHiddenEventsInTimeline": false,
|
||||||
|
"use_system_theme": false
|
||||||
|
},
|
||||||
|
"jitsi": {
|
||||||
|
"preferredDomain": "meet.b2bgrowth.systems"
|
||||||
|
},
|
||||||
|
"enable_presence_by_hs_url": {
|
||||||
|
"https://hq.b2bgrowth.systems": true
|
||||||
|
},
|
||||||
|
"terms_and_conditions_links": [],
|
||||||
|
"sso_redirect_options": {
|
||||||
|
"immediate": true
|
||||||
|
},
|
||||||
|
"custom_themes": [
|
||||||
|
{
|
||||||
|
"name": "Flame HQ",
|
||||||
|
"is_dark": true,
|
||||||
|
"colors": {
|
||||||
|
"accent-color": "#E76927",
|
||||||
|
"primary-color": "#E76927",
|
||||||
|
"warning-color": "#EB7D44",
|
||||||
|
"sidebar-color": "#0d0d0f",
|
||||||
|
"roomlist-background-color": "#0d0d0f",
|
||||||
|
"roomlist-text-color": "#EBEBEB",
|
||||||
|
"roomlist-text-secondary-color": "#999999",
|
||||||
|
"roomlist-highlights-color": "#1b1b21",
|
||||||
|
"roomlist-separator-color": "#1b1b21",
|
||||||
|
"timeline-background-color": "#0d0d0f",
|
||||||
|
"timeline-text-color": "#EBEBEB",
|
||||||
|
"timeline-text-secondary-color": "#999999",
|
||||||
|
"timeline-highlights-color": "#141419"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"secure_backup_required": false,
|
||||||
|
"branding": {
|
||||||
|
"auth_header_logo_url": "/flame-hq/mark.png",
|
||||||
|
"auth_footer_links": [],
|
||||||
|
"welcome_background_url": "/flame-hq/welcome-background.png"
|
||||||
|
},
|
||||||
|
"welcome_page_url": "/flame-hq/welcome.html",
|
||||||
|
"setting_defaults": {
|
||||||
|
"UIFeature.secureBackup": false
|
||||||
|
},
|
||||||
|
"force_verification": false,
|
||||||
|
"io.element.e2ee": {
|
||||||
|
"default": false,
|
||||||
|
"secure_backup_required": false
|
||||||
|
}
|
||||||
|
}
|
||||||
59
element/config.json.tmpl
Normal file
59
element/config.json.tmpl
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
{
|
||||||
|
"default_server_config": {
|
||||||
|
"m.homeserver": {
|
||||||
|
"base_url": "https://$HQ_DOMAIN",
|
||||||
|
"server_name": "$SYNAPSE_SERVER_NAME"
|
||||||
|
},
|
||||||
|
"m.identity_server": {
|
||||||
|
"base_url": "https://vector.im"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"disable_guests": true,
|
||||||
|
"disable_login_language_selector": false,
|
||||||
|
"disable_3pid_login": false,
|
||||||
|
"brand": "Comms",
|
||||||
|
"integrations_ui_url": "https://scalar.vector.im/",
|
||||||
|
"integrations_rest_url": "https://scalar.vector.im/api",
|
||||||
|
"integrations_widgets_urls": [
|
||||||
|
"https://scalar.vector.im/_matrix/integrations/v1",
|
||||||
|
"https://scalar.vector.im/api",
|
||||||
|
"https://scalar-staging.vector.im/_matrix/integrations/v1",
|
||||||
|
"https://scalar-staging.vector.im/api",
|
||||||
|
"https://scalar-staging.riot.im/scalar/api"
|
||||||
|
],
|
||||||
|
"bug_report_endpoint_url": "https://element.io/bugreports/submit",
|
||||||
|
"defaultCountryCode": "US",
|
||||||
|
"showLabsSettings": false,
|
||||||
|
"features": {
|
||||||
|
"feature_new_spinner": true,
|
||||||
|
"feature_pinning": true,
|
||||||
|
"feature_custom_status": true,
|
||||||
|
"feature_custom_tags": true,
|
||||||
|
"feature_state_counters": true
|
||||||
|
},
|
||||||
|
"default_federate": true,
|
||||||
|
"default_theme": "light",
|
||||||
|
"roomDirectory": {
|
||||||
|
"servers": [
|
||||||
|
"$SYNAPSE_SERVER_NAME"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"settingDefaults": {
|
||||||
|
"breadcrumbs": true,
|
||||||
|
"showJoinLeaves": false,
|
||||||
|
"showRedactions": false,
|
||||||
|
"showHiddenEventsInTimeline": false
|
||||||
|
},
|
||||||
|
"jitsi": {
|
||||||
|
"preferredDomain": "$MEET_DOMAIN"
|
||||||
|
},
|
||||||
|
"enable_presence_by_hs_url": {
|
||||||
|
"https://$HQ_DOMAIN": true
|
||||||
|
},
|
||||||
|
"terms_and_conditions_links": [
|
||||||
|
{
|
||||||
|
"url": "https://element.io/terms-of-service",
|
||||||
|
"text": "Terms and Conditions"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
114
element/flame-hq/flame-hq.css
Normal file
114
element/flame-hq/flame-hq.css
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
/* FLAME HQ estate skin v2.1.0 (2026-08-24, prime-4) — palette MEASURED from the rendered
|
||||||
|
* Nextcloud/Blackbox theme (drive.b2bgrowth.systems, dark): primary #E76927 (hover #EB7D44),
|
||||||
|
* ground #0d0d0f, panel #141419, hover #1b1b21, text #EBEBEB, muted #999999, hairline
|
||||||
|
* borders rgba(255,255,255,.07), radius 8px, primary buttons FILLED orange / white text.
|
||||||
|
* Served at /flame-hq/flame-hq.css via nginx sub_filter. HOST-EDITABLE, no restart. */
|
||||||
|
:root { color-scheme: dark; }
|
||||||
|
:root, .cpd-theme-light, .cpd-theme-dark {
|
||||||
|
--cpd-color-bg-canvas-default: #0d0d0f;
|
||||||
|
--cpd-color-bg-canvas-disabled: #0d0d0f;
|
||||||
|
--cpd-color-bg-subtle-primary: #1b1b21;
|
||||||
|
--cpd-color-bg-subtle-secondary: #141419;
|
||||||
|
--cpd-color-bg-action-primary-rest: #E76927;
|
||||||
|
--cpd-color-bg-action-primary-hovered: #EB7D44;
|
||||||
|
--cpd-color-bg-action-primary-pressed: #d55f20;
|
||||||
|
--cpd-color-bg-action-secondary-rest: transparent;
|
||||||
|
--cpd-color-bg-action-secondary-hovered: #1b1b21;
|
||||||
|
--cpd-color-bg-accent-rest: #E76927;
|
||||||
|
--cpd-color-bg-accent-hovered: #EB7D44;
|
||||||
|
--cpd-color-bg-critical-primary: #E76927;
|
||||||
|
--cpd-color-bg-critical-subtle: rgba(231,105,39,0.16);
|
||||||
|
--cpd-color-text-primary: #EBEBEB;
|
||||||
|
--cpd-color-text-secondary: #999999;
|
||||||
|
--cpd-color-text-placeholder: #6f6f6f;
|
||||||
|
--cpd-color-text-action-accent: #E76927;
|
||||||
|
--cpd-color-text-link-external: #EB7D44;
|
||||||
|
--cpd-color-text-on-solid-primary: #ffffff;
|
||||||
|
--cpd-color-text-critical-primary: #EB7D44;
|
||||||
|
--cpd-color-icon-primary: #EBEBEB;
|
||||||
|
--cpd-color-icon-secondary: #999999;
|
||||||
|
--cpd-color-icon-tertiary: #8a8a8a;
|
||||||
|
--cpd-color-icon-accent-primary: #E76927;
|
||||||
|
--cpd-color-icon-accent-tertiary: #E76927;
|
||||||
|
--cpd-color-icon-on-solid-primary: #ffffff;
|
||||||
|
--cpd-color-icon-critical-primary: #EB7D44;
|
||||||
|
--cpd-color-border-interactive-primary: rgba(255,255,255,0.10);
|
||||||
|
--cpd-color-border-interactive-secondary: rgba(255,255,255,0.07);
|
||||||
|
--cpd-color-border-interactive-hovered: #E76927;
|
||||||
|
--cpd-color-border-focused: #E76927;
|
||||||
|
--cpd-color-border-critical-primary: #E76927;
|
||||||
|
--cpd-color-border-critical-subtle: rgba(231,105,39,0.4);
|
||||||
|
--cpd-color-border-disabled: rgba(255,255,255,0.07);
|
||||||
|
--cpd-font-family-sans: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||||
|
/* legacy element vars */
|
||||||
|
--accent: #E76927; --accent-color: #E76927; --primary-color: #E76927; --alert: #E76927;
|
||||||
|
--roomlist-highlights-color: rgba(231,105,39,0.16);
|
||||||
|
--panel-actions: #1b1b21;
|
||||||
|
}
|
||||||
|
body, .mx_MatrixChat, .mx_MatrixChat_wrapper { font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; }
|
||||||
|
|
||||||
|
/* ---------- pre-login (auth) page ---------- */
|
||||||
|
.mx_AuthPage { background: #0d0d0f !important; }
|
||||||
|
.mx_AuthPage .mx_AuthBody, .mx_AuthBody { background: #141419 !important; color: #EBEBEB !important; border: 1px solid rgba(255,255,255,0.07); border-radius: 8px; }
|
||||||
|
.mx_AuthBody h1, .mx_AuthBody h2, .mx_AuthBody h3, .mx_AuthBody label, .mx_AuthHeader { color: #EBEBEB !important; }
|
||||||
|
.mx_AuthBody input, .mx_AuthBody .mx_Field input, .mx_AuthBody .mx_Field select { background: #0d0d0f !important; color: #EBEBEB !important; border-color: rgba(255,255,255,0.10) !important; border-radius: 8px; }
|
||||||
|
.mx_AuthBody .mx_Field input:focus { border-color: #E76927 !important; }
|
||||||
|
.mx_AuthFooter, .mx_AuthFooter a { color: #999999 !important; }
|
||||||
|
.mx_AuthBody a { color: #EB7D44 !important; }
|
||||||
|
.mx_SSOButton { background: #E76927 !important; color: #ffffff !important; border: 0 !important; border-radius: 8px !important; font-weight: 600; }
|
||||||
|
.mx_SSOButton:hover { background: #EB7D44 !important; }
|
||||||
|
.mx_AuthHeaderLogo img, .mx_AuthHeader img { max-height: 112px !important; max-width: 112px !important; object-fit: contain; }
|
||||||
|
.mx_Welcome, .mx_WelcomePage, .mx_EmbeddedPage, .mx_EmbeddedPage iframe { background: #0d0d0f !important; color: #EBEBEB !important; }
|
||||||
|
.mx_EmbeddedPage iframe { border: 0; }
|
||||||
|
|
||||||
|
/* ---------- app chrome ---------- */
|
||||||
|
.mx_SpacePanel { background: #0d0d0f !important; border-right: 1px solid rgba(255,255,255,0.07); }
|
||||||
|
.mx_LeftPanel, .mx_RoomListPanel, .mx_RoomList, .mx_RoomListView { background: #0d0d0f !important; }
|
||||||
|
.mx_LeftPanel { border-right: 1px solid rgba(255,255,255,0.07) !important; }
|
||||||
|
.mx_RoomHeader, .mx_RoomView_body, .mx_MessageComposer, .mx_RoomView_timeline { background: #0d0d0f !important; }
|
||||||
|
.mx_RoomHeader { border-bottom: 1px solid rgba(255,255,255,0.07) !important; }
|
||||||
|
.mx_MessageComposer_wrapper { border-top: 1px solid rgba(255,255,255,0.07) !important; padding-left: 16px !important; /* v2.1.1: collapse dead 42px E2E gutter (shield hidden by owner law) that read as a black square clipping the composer left edge */ }
|
||||||
|
.mx_BasicMessageComposer_input, .mx_MessageComposer .mx_MessageComposer_row { background: #141419 !important; border-radius: 8px; }
|
||||||
|
/* selected / hovered room (v2.1): Element 1.12 room list uses CSS-module hashed classes and paints the
|
||||||
|
* row with Compound tokens --cpd-color-bg-action-tertiary-{hovered,selected} (light grey stock).
|
||||||
|
* Override the TOKENS (hash-proof) + hash-agnostic selectors: orange tint selected, panel-dark hover. */
|
||||||
|
:root, .cpd-theme-light, .cpd-theme-dark {
|
||||||
|
--cpd-color-bg-action-tertiary-rest: transparent;
|
||||||
|
--cpd-color-bg-action-tertiary-hovered: #1b1b21;
|
||||||
|
--cpd-color-bg-action-tertiary-selected: rgba(231,105,39,0.16);
|
||||||
|
--cpd-color-bg-action-tertiary-pressed: rgba(231,105,39,0.24);
|
||||||
|
--cpd-color-bg-action-secondary-pressed: #1b1b21;
|
||||||
|
}
|
||||||
|
[class*="_roomListItem_"][class*="_selected_"] [class*="_container_"] { background-color: rgba(231,105,39,0.16) !important; }
|
||||||
|
[class*="_roomListItem_"]:hover [class*="_container_"] { background-color: #1b1b21 !important; }
|
||||||
|
[class*="_roomListItem_"][class*="_selected_"]:hover [class*="_container_"] { background-color: rgba(231,105,39,0.22) !important; }
|
||||||
|
[class*="_roomListItem_"][class*="_selected_"], [class*="_roomListItem_"]:hover { color: #EBEBEB !important; }
|
||||||
|
.mx_RoomTile_selected, .mx_RoomTile:hover, .mx_EntityTile:hover, .mx_MemberTileView:hover, .mx_AccessibleButton_hasKind.mx_AccessibleButton_kind_secondary:hover { background: #1b1b21 !important; color: #EBEBEB !important; }
|
||||||
|
/* filter chips + primary actions: filled orange / white when active */
|
||||||
|
.mx_RoomListHeader_filter[aria-selected="true"], .mx_RoomListPrimaryFilters_button[aria-selected="true"], .mx_RoomListPrimaryFilters [aria-selected="true"] { background: #E76927 !important; color: #ffffff !important; border-color: #E76927 !important; }
|
||||||
|
.mx_AccessibleButton_kind_primary { background: #E76927 !important; color: #ffffff !important; border-radius: 8px !important; }
|
||||||
|
.mx_AccessibleButton_kind_primary:hover { background: #EB7D44 !important; }
|
||||||
|
/* unread badges: orange, like the estate */
|
||||||
|
.mx_NotificationBadge_level_notification, .mx_NotificationBadge_level_highlight { background: #E76927 !important; color: #ffffff !important; border: 0 !important; }
|
||||||
|
.mx_NotificationBadge_dot { background: #E76927 !important; }
|
||||||
|
|
||||||
|
/* ---------- home ---------- */
|
||||||
|
.mx_HomePage_default_wrapper h1 { color: #EBEBEB !important; }
|
||||||
|
.mx_HomePage_default_wrapper h4 { color: #999999 !important; }
|
||||||
|
.mx_HomePage_default_wrapper img { width: 112px !important; height: 112px !important; }
|
||||||
|
.mx_HomePage_default_buttons .mx_AccessibleButton { background: #141419 !important; color: #EBEBEB !important; border: 1px solid rgba(255,255,255,0.10) !important; border-radius: 8px !important; }
|
||||||
|
.mx_HomePage_default_buttons .mx_AccessibleButton:hover { border-color: #E76927 !important; background: #1b1b21 !important; }
|
||||||
|
.mx_HomePage_default_buttons .mx_AccessibleButton::before { background-color: #E76927 !important; }
|
||||||
|
.mx_HomePage_button_explore, .mx_HomePage_button_exploreRooms { display: none !important; }
|
||||||
|
|
||||||
|
/* ---------- owner law 2026-08-24: no E2E shields / unverified red dots ---------- */
|
||||||
|
.mx_EventTile_e2eIcon, .mx_EventTile_e2eIcon_warning, .mx_EventTile_e2eIcon_unverified, .mx_EventTile_e2eIcon_unknown,
|
||||||
|
.mx_E2EIcon, .mx_E2EIcon_warning, .mx_E2EIcon_normal,
|
||||||
|
.mx_RoomTile_e2eIcon, .mx_DecoratedRoomAvatar_icon_e2e, .mx_UserInfo_verifyButton,
|
||||||
|
.mx_MessagePanel_e2eIcon, .mx_RoomHeader_e2eIcon { display: none !important; }
|
||||||
|
|
||||||
|
/* ---------- v2.1.2 (owner 2026-08-24): ONLINE presence dot = standard green ---------- */
|
||||||
|
/* The skin's global --cpd-color-icon-accent-primary (#E76927) also tinted the online presence
|
||||||
|
* dot orange. Scope online back to Element's own success green; away (unavailable) / busy (dnd) /
|
||||||
|
* offline keep their stock tertiary/quaternary greys - semantics untouched. */
|
||||||
|
.mx_PresenceIconView_online { color: var(--cpd-color-text-success-primary, #0DBD8B) !important; }
|
||||||
15
element/flame-hq/manifest.json
Normal file
15
element/flame-hq/manifest.json
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"name": "Flame HQ",
|
||||||
|
"short_name": "Flame HQ",
|
||||||
|
"display": "standalone",
|
||||||
|
"theme_color": "#000000",
|
||||||
|
"background_color": "#000000",
|
||||||
|
"start_url": "index.html",
|
||||||
|
"icons": [
|
||||||
|
{
|
||||||
|
"src": "/flame-hq/mark.png",
|
||||||
|
"sizes": "512x512",
|
||||||
|
"type": "image/png"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
BIN
element/flame-hq/mark.png
Normal file
BIN
element/flame-hq/mark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 282 KiB |
BIN
element/flame-hq/welcome-background.png
Normal file
BIN
element/flame-hq/welcome-background.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 820 KiB |
58
element/flame-hq/welcome.html
Normal file
58
element/flame-hq/welcome.html
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
<style type="text/css">
|
||||||
|
.flame-hq-welcome {
|
||||||
|
align-items: center;
|
||||||
|
background: #000000;
|
||||||
|
color: #d7d7d7;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
min-height: 100%;
|
||||||
|
padding: 32px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome__logo {
|
||||||
|
height: 112px;
|
||||||
|
object-fit: contain;
|
||||||
|
width: 112px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome h1 {
|
||||||
|
font-size: 32px;
|
||||||
|
margin: 20px 0 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome p {
|
||||||
|
color: #9a9a9a;
|
||||||
|
margin: 0 0 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome__actions {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 12px;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome__actions a {
|
||||||
|
border: 1px solid #89705E;
|
||||||
|
border-radius: 8px;
|
||||||
|
color: #d7d7d7;
|
||||||
|
min-width: 132px;
|
||||||
|
padding: 12px 18px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flame-hq-welcome__actions a:hover {
|
||||||
|
background: rgba(137, 112, 94, 0.12);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<div class="flame-hq-welcome">
|
||||||
|
<img src="/flame-hq/mark.png" alt="Flame HQ" class="flame-hq-welcome__logo" />
|
||||||
|
<h1>Welcome to Flame HQ</h1>
|
||||||
|
<p>Team chat for the Flame squad. Sign in with your Nextcloud account.</p>
|
||||||
|
<div class="flame-hq-welcome__actions">
|
||||||
|
<a href="#/login">Sign in</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
59
element/nginx-default.conf
Normal file
59
element/nginx-default.conf
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name localhost;
|
||||||
|
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
index index.html;
|
||||||
|
|
||||||
|
location = / {
|
||||||
|
try_files /index.html =404;
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
sub_filter_once off;
|
||||||
|
sub_filter '<title>Element</title>' '<title>Flame HQ</title>';
|
||||||
|
sub_filter 'name="application-name" content="Element"' 'name="application-name" content="Flame HQ"';
|
||||||
|
sub_filter 'name="apple-mobile-web-app-title" content="Element"' 'name="apple-mobile-web-app-title" content="Flame HQ"';
|
||||||
|
sub_filter 'https://app.element.io/themes/element/img/logos/opengraph.png' 'https://hq.b2bgrowth.systems/flame-hq/welcome-background.png';
|
||||||
|
sub_filter '</head>' '<link rel="stylesheet" href="/flame-hq/flame-hq.css"><link rel="icon" type="image/png" href="/flame-hq/mark.png"><link rel="apple-touch-icon" href="/flame-hq/mark.png"></head>';
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /index.html {
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
sub_filter_once off;
|
||||||
|
sub_filter '<title>Element</title>' '<title>Flame HQ</title>';
|
||||||
|
sub_filter 'name="application-name" content="Element"' 'name="application-name" content="Flame HQ"';
|
||||||
|
sub_filter 'name="apple-mobile-web-app-title" content="Element"' 'name="apple-mobile-web-app-title" content="Flame HQ"';
|
||||||
|
sub_filter 'https://app.element.io/themes/element/img/logos/opengraph.png' 'https://hq.b2bgrowth.systems/flame-hq/welcome-background.png';
|
||||||
|
sub_filter '</head>' '<link rel="stylesheet" href="/flame-hq/flame-hq.css"><link rel="icon" type="image/png" href="/flame-hq/mark.png"><link rel="apple-touch-icon" href="/flame-hq/mark.png"></head>';
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /version {
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
}
|
||||||
|
|
||||||
|
location /config {
|
||||||
|
root /tmp/element-web-config;
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
}
|
||||||
|
|
||||||
|
location /modules {
|
||||||
|
alias /modules;
|
||||||
|
}
|
||||||
|
|
||||||
|
location = /manifest.json {
|
||||||
|
alias /flame-hq/manifest.json;
|
||||||
|
default_type application/manifest+json;
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
}
|
||||||
|
|
||||||
|
location /flame-hq/ {
|
||||||
|
alias /flame-hq/;
|
||||||
|
add_header Cache-Control "no-cache";
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ ^/vector-icons/.*\.(?:ico|png)$ {
|
||||||
|
rewrite ^ /flame-hq/mark.png last;
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user