mirror of
https://github.com/cupcakearmy/cryptgeon.git
synced 2024-12-22 00:06:28 +00:00
added imprint_html option
This commit is contained in:
parent
fca8761515
commit
57ea5f0b28
@ -84,8 +84,8 @@ of the notes even if it tried to.
|
|||||||
| `THEME_PAGE_TITLE` | `""` | Custom text the page title |
|
| `THEME_PAGE_TITLE` | `""` | Custom text the page title |
|
||||||
| `THEME_FAVICON` | `""` | Custom url for the favicon. Must be publicly reachable |
|
| `THEME_FAVICON` | `""` | Custom url for the favicon. Must be publicly reachable |
|
||||||
| `THEME_NEW_NOTE_NOTICE` | `true` | Show the message about how notes are stored in the memory and may be evicted after creating a new note. Defaults to `true`. |
|
| `THEME_NEW_NOTE_NOTICE` | `true` | Show the message about how notes are stored in the memory and may be evicted after creating a new note. Defaults to `true`. |
|
||||||
| `IMPRINT_URL` | `""` | Custom url for an Imprint hosted somewhere else. Must be publicly reachable. |
|
| `IMPRINT_URL` | `""` | Custom url for an Imprint hosted somewhere else. Must be publicly reachable. Takes precedence above `IMPRINT_HTML`. |
|
||||||
|
| `IMPRINT_HTML` | `""` | Alternative to `IMPRINT_URL`, this can be used to specify the HTML code to show on `/imprint`. Only `IMPRINT_HTML` or `IMPRINT_URL` should be specified, not both.|
|
||||||
## Deployment
|
## Deployment
|
||||||
|
|
||||||
> ℹ️ `https` is required otherwise browsers will not support the cryptographic functions.
|
> ℹ️ `https` is required otherwise browsers will not support the cryptographic functions.
|
||||||
|
@ -42,6 +42,10 @@ pub static ref IMPRINT_URL: String = std::env::var("IMPRINT_URL")
|
|||||||
.unwrap_or("".to_string())
|
.unwrap_or("".to_string())
|
||||||
.parse()
|
.parse()
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
pub static ref IMPRINT_HTML: String = std::env::var("IMPRINT_HTML")
|
||||||
|
.unwrap_or("".to_string())
|
||||||
|
.parse()
|
||||||
|
.unwrap();
|
||||||
}
|
}
|
||||||
|
|
||||||
// THEME
|
// THEME
|
||||||
|
@ -13,6 +13,7 @@ pub struct Status {
|
|||||||
pub allow_advanced: bool,
|
pub allow_advanced: bool,
|
||||||
pub allow_files: bool,
|
pub allow_files: bool,
|
||||||
pub imprint_url: String,
|
pub imprint_url: String,
|
||||||
|
pub imprint_html: String,
|
||||||
// Theme
|
// Theme
|
||||||
pub theme_image: String,
|
pub theme_image: String,
|
||||||
pub theme_text: String,
|
pub theme_text: String,
|
||||||
@ -30,6 +31,7 @@ pub async fn get_status() -> (StatusCode, Json<Status>) {
|
|||||||
allow_advanced: *config::ALLOW_ADVANCED,
|
allow_advanced: *config::ALLOW_ADVANCED,
|
||||||
allow_files: *config::ALLOW_FILES,
|
allow_files: *config::ALLOW_FILES,
|
||||||
imprint_url: config::IMPRINT_URL.to_string(),
|
imprint_url: config::IMPRINT_URL.to_string(),
|
||||||
|
imprint_html: config::IMPRINT_HTML.to_string(),
|
||||||
theme_new_note_notice: *config::THEME_NEW_NOTE_NOTICE,
|
theme_new_note_notice: *config::THEME_NEW_NOTE_NOTICE,
|
||||||
theme_image: config::THEME_IMAGE.to_string(),
|
theme_image: config::THEME_IMAGE.to_string(),
|
||||||
theme_text: config::THEME_TEXT.to_string(),
|
theme_text: config::THEME_TEXT.to_string(),
|
||||||
|
@ -114,6 +114,7 @@ export type Status = {
|
|||||||
allow_advanced: boolean
|
allow_advanced: boolean
|
||||||
allow_files: boolean
|
allow_files: boolean
|
||||||
imprint_url: string
|
imprint_url: string
|
||||||
|
imprint_html: string
|
||||||
theme_image: string
|
theme_image: string
|
||||||
theme_text: string
|
theme_text: string
|
||||||
theme_favicon: string
|
theme_favicon: string
|
||||||
|
@ -10,6 +10,8 @@
|
|||||||
<a href="/about">/about</a>
|
<a href="/about">/about</a>
|
||||||
{#if $status?.imprint_url}
|
{#if $status?.imprint_url}
|
||||||
<a href={$status.imprint_url} target="_blank" rel="noopener noreferrer">/imprint</a>
|
<a href={$status.imprint_url} target="_blank" rel="noopener noreferrer">/imprint</a>
|
||||||
|
{:else if $status?.imprint_html}
|
||||||
|
<a href="/imprint">/imprint</a>
|
||||||
{/if}
|
{/if}
|
||||||
<a href="https://github.com/cupcakearmy/cryptgeon" target="_blank" rel="noopener noreferrer">
|
<a href="https://github.com/cupcakearmy/cryptgeon" target="_blank" rel="noopener noreferrer">
|
||||||
code
|
code
|
||||||
|
35
packages/frontend/src/routes/imprint/+page.svelte
Normal file
35
packages/frontend/src/routes/imprint/+page.svelte
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
<script lang="ts">
|
||||||
|
import { get } from 'svelte/store';
|
||||||
|
import { goto } from '$app/navigation';
|
||||||
|
import { status } from '$lib/stores/status'
|
||||||
|
|
||||||
|
status.subscribe((config) => {
|
||||||
|
if (config != null) {
|
||||||
|
if (config.imprint_url) {
|
||||||
|
window.location = config.imprint_url;
|
||||||
|
}
|
||||||
|
else if (config.imprint_html == "") {
|
||||||
|
goto("/about");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<svelte:head>
|
||||||
|
<title>Imprint</title>
|
||||||
|
</svelte:head>
|
||||||
|
|
||||||
|
<section class="content">
|
||||||
|
{#if $status?.imprint_html}
|
||||||
|
{@html $status.imprint_html}
|
||||||
|
{/if}
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
section {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 2rem;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue
Block a user