This commit is contained in:
2026-08-05 02:20:41 +02:00
parent 9f0c1b1b6c
commit 5ed6210f8f
4 changed files with 30 additions and 0 deletions
+2
View File
@@ -11,6 +11,7 @@ from datetime import date
from fastapi import FastAPI, Depends, Query, Request from fastapi import FastAPI, Depends, Query, Request
from fastapi.responses import HTMLResponse from fastapi.responses import HTMLResponse
from fastapi.staticfiles import StaticFiles
from fastapi.templating import Jinja2Templates from fastapi.templating import Jinja2Templates
from config import Config from config import Config
@@ -22,6 +23,7 @@ logging.basicConfig(level=Config.LOG_LEVEL, format="%(asctime)s [%(levelname)s]
logger = logging.getLogger("api") logger = logging.getLogger("api")
app = FastAPI(title="iCloud Contacts Sync Interne API", version="1.0.0") app = FastAPI(title="iCloud Contacts Sync Interne API", version="1.0.0")
app.mount("/static", StaticFiles(directory="api/static"), name="static")
templates = Jinja2Templates(directory="api/templates") templates = Jinja2Templates(directory="api/templates")
+26
View File
@@ -0,0 +1,26 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100">
<defs>
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#007AFF"/>
<stop offset="100%" style="stop-color:#5856D6"/>
</linearGradient>
</defs>
<!-- Background circle -->
<circle cx="50" cy="50" r="48" fill="url(#bg)"/>
<!-- Contact book -->
<rect x="28" y="22" width="44" height="56" rx="4" fill="#fff" opacity="0.95"/>
<rect x="28" y="22" width="8" height="56" rx="2" fill="#E5E5EA"/>
<!-- Contact silhouette -->
<circle cx="54" cy="40" r="8" fill="#8E8E93"/>
<path d="M42 58 Q54 48 66 58" fill="#8E8E93"/>
<!-- Sync arrows -->
<path d="M72 35 L80 35 L80 27" fill="none" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M80 27 L75 22 M80 27 L75 32" fill="none" stroke="#fff" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M72 65 L80 65 L80 73" fill="none" stroke="#fff" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M80 73 L75 68 M80 73 L75 78" fill="none" stroke="#fff" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

+1
View File
@@ -3,6 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
<title>{{ contact.full_name or 'Kontakt' }} Kontakte</title> <title>{{ contact.full_name or 'Kontakt' }} Kontakte</title>
<style> <style>
* { * {
+1
View File
@@ -3,6 +3,7 @@
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
<title>Kontakte {{ account_name }}</title> <title>Kontakte {{ account_name }}</title>
<style> <style>
* { * {