10 Commity d5db8d4c79 ... 0fa26f58dc

Autor SHA1 Wiadomość Data
  Pi 0fa26f58dc switch to from card to datagrid component 2 miesięcy temu
  Pi 5de551df68 separate buttons for WoL from internal/external network 2 miesięcy temu
  Pi 599fffd1ea add silverbullet 2 miesięcy temu
  Pi 7f0fc9d0ce add backhaul and update icon for gateway too 2 miesięcy temu
  Pi f2c9c15ef8 fix DNS resolution broken 3 miesięcy temu
  Pi 820d853050 restore missing group 10 miesięcy temu
  Pi f9ebd2d68d add mythtv 10 miesięcy temu
  Pi ef03a4a2c7 update icon paths 10 miesięcy temu
  Pi fffcfed841 add more groupings 10 miesięcy temu
  Pi 5f9eeec71f add babybuddy 1 rok temu

+ 9 - 3
docker-compose.yml

@@ -18,7 +18,9 @@ services:
     expose:
       - 8080
     networks:
-      - priv
+      priv:
+        aliases:
+          - home-activity
 
   landing:
     image: docker.io/lovasoa/sqlpage:latest
@@ -35,7 +37,9 @@ services:
     expose:
       - 8080
     networks:
-      - priv
+      priv:
+        aliases:
+          - home-landing
 
   proxy:
     image: home-launcher
@@ -53,7 +57,9 @@ services:
       - ./media:/usr/share/nginx/html/media
       - ./.well-known:/usr/share/nginx/html/.well-known
     networks:
-      - priv
+      priv:
+        aliases:
+          - home-proxy
 
 networks:
   priv:

+ 69 - 17
home-sqlpage/index.sql

@@ -36,10 +36,37 @@ SELECT 'shell' AS component
   )
   FROM sqlpage_cards
   WHERE grouping = 4) AS menu_item
+, (SELECT json_object(
+    'title', 'Admin',
+    'icon', 'user-cog',
+    'submenu', json_group_array(json_object(
+      'title', title,
+      'icon', icon,
+      'link', link
+    ))
+  )
+  FROM sqlpage_cards
+  WHERE grouping = 5) AS menu_item
+, (SELECT json_object(
+    'title', 'Internal',
+    'icon', 'door-enter',
+    'submenu', json_group_array(json_object(
+      'title', title,
+      'icon', icon,
+      'link', link
+    ))
+  )
+  FROM sqlpage_cards
+  WHERE grouping = 6) AS menu_item
 ;
 
 SELECT 'text' AS component
 , '<style>
+.card-header { padding: 0.5em}
+.card-body { padding: 0.8em}
+.datagrid-item { background-color: var(--tblr-muted-lt) }
+.datagrid-item span { background-color: var(--tblr-muted-lt) }
+.datagrid small { margin: 0.8em }
 .card-img-top:has(+ .bg-rss) {
     width: 40%;
     margin: 10% 50% 10% 10%;
@@ -57,37 +84,62 @@ SELECT 'text' AS component
 }
 </style>' AS html
 ;
-SELECT 'card' AS component
-, 4 AS columns
+SELECT 'datagrid' AS component
+, 'Utilities' AS title
+, 'calculator' AS icon
 ;
-SELECT title
+SELECT title AS description
 , link
-, top_image
-, description_md
+, top_image AS image_url
+, description_md AS footer
 , color
 FROM sqlpage_cards
 WHERE grouping = 2
 ;
-SELECT 'divider' AS component;
-SELECT 'card' AS component
-, 4 AS columns
+SELECT 'datagrid' AS component
+, 'Apps' AS title
+, 'apps' AS icon
 ;
-SELECT title
+SELECT title AS description
 , link
-, top_image
-, description_md
+, top_image AS image_url
+, description_md AS footer
 , color
 FROM sqlpage_cards
 WHERE grouping = 3
 ;
-SELECT 'divider' AS component;
-SELECT 'card' AS component
-, 4 AS columns
+SELECT 'datagrid' AS component
+, 'Admin' AS title
+, 'user-cog' AS icon
+;
+SELECT title AS description
+, link
+, top_image AS image_url
+, description_md AS footer
+, color
+FROM sqlpage_cards
+WHERE grouping = 5
+;
+SELECT 'datagrid' AS component
+, 'Internal' AS title
+, 'door-enter' AS icon
+;
+SELECT title AS description
+, link
+, top_image AS image_url
+, description_md AS footer
+, color
+FROM sqlpage_cards
+WHERE grouping = 6
+;
+SELECT 'datagrid' AS component
+, 'RSS' AS title
+, 'rss' AS icon
 ;
-SELECT title
+SELECT title AS description
 , link
-, 'https://upload.wikimedia.org/wikipedia/en/thumb/4/43/Feed-icon.svg/128px-Feed-icon.svg.png' AS top_image
-, description_md
+, 'https://upload.wikimedia.org/wikipedia/en/thumb/4/43/Feed-icon.svg/128px-Feed-icon.svg.png' AS image_url
+, description_md AS footer
 , 'rss' AS color
 FROM sqlpage_cards
 WHERE grouping = 4

+ 64 - 17
home-sqlpage/sqlpage/migrations/000_index.sql

@@ -40,7 +40,7 @@ VALUES
 (
 	'/clip?',
 	'Clipboard',
-	'https://shandan.one/static/clip/clip-favicon_square.svg',
+	'https://shandan.one/static/clip/icon.svg',
 	'Paste snippets to share via tiny URL',
 	'green',
 	2,
@@ -49,7 +49,7 @@ VALUES
 (
 	'/goto?',
 	'Short URL',
-	'https://shandan.one/static/goto/chain-link2fr-3-2.svg',
+	'https://shandan.one/static/goto/icon.svg',
 	'Make long URLs shorter and easy to type and say',
 	'pinterest',
 	2,
@@ -58,7 +58,7 @@ VALUES
 (
 	'/upload?',
 	'Share a File',
-	'https://shandan.one/static/upload/upload-favicon_square.svg',
+	'https://shandan.one/static/upload/icon.svg',
 	'Upload a file and generate a short URL to share easily',
 	'yellow',
 	2,
@@ -73,6 +73,24 @@ VALUES
 	2,
 	'barcode'
 ),
+(
+	'https://silverbullet.shandan.one',
+	'Silver Bullet',
+	'https://silverbullet.md/.client/logo.png',
+	'Markdown based note taking',
+	'blue',
+	2,
+	'notebook'
+),
+(
+	'https://babybuddy.shandan.one',
+	'Baby Tracker',
+        'https://babybuddy.shandan.one/static/babybuddy/logo/icon-brand.32cbedf6aee3.png',
+	'Track your baby activity and statistics',
+	'blue',
+	6,
+	'baby-carriage'
+),
 (
 	'https://mealie.shandan.one/g/das',
 	'Recipes',
@@ -88,7 +106,7 @@ VALUES
 	'https://shandan.one/grocery/favicon_square.svg',
 	'Plot charts showing historic price data',
 	'youtube',
-	3,
+	6,
 	'shopping-cart'
 ),
 (
@@ -110,12 +128,21 @@ VALUES
 	'mail'
 ),
 (
-	NULL, --'https://wol.shandan.one?location=outside',
+	'https://wol.shandan.one?location=outside',
 	'Wake a Device',
 	'data:image/svg+xml,<svg  xmlns="http://www.w3.org/2000/svg"  width="24"  height="24"  viewBox="0 0 24 24"  fill="none"  stroke="rgb(205,57,57)"  stroke-width="2"  stroke-linecap="round"  stroke-linejoin="round"  class="icon icon-tabler icons-tabler-outline icon-tabler-power"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M7 6a7.75 7.75 0 1 0 10 0" /><path d="M12 4l0 8" /></svg>',
-	'Wake a device from [home](https://wol.shandan.one?location=home) or [outside](https://wol.shandan.one?location=outside)',
+	'Send a Wake-on-LAN packet to a device at home',
 	'red',
-	3,
+	5,
+	'power'
+),
+(
+	'https://wol.shandan.one?location=home',
+	'Wake a Device',
+	'data:image/svg+xml,<svg  xmlns="http://www.w3.org/2000/svg"  width="24"  height="24"  viewBox="0 0 24 24"  fill="none"  stroke="rgb(205,57,57)"  stroke-width="2"  stroke-linecap="round"  stroke-linejoin="round"  class="icon icon-tabler icons-tabler-outline icon-tabler-power"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M7 6a7.75 7.75 0 1 0 10 0" /><path d="M12 4l0 8" /></svg>',
+	'Send a Wake-on-LAN packet to a device on the local LAN',
+	'red',
+	6,
 	'power'
 ),
 (
@@ -124,7 +151,7 @@ VALUES
 	'https://raw.githubusercontent.com/postgres/pgadmin4/c1ba645dceed5c9551a5f408e37a14d1041ee598/web/pgadmin/static/favicon.ico',
 	'Manage And access postgresql databases',
 	'azure',
-	3,
+	5,
 	'database'
 ),
 (
@@ -133,7 +160,7 @@ VALUES
 	'https://raw.githubusercontent.com/apache/guacamole-website/main/images/logos/guac-classic-logo.svg',
 	'Remote desktop',
 	'teal',
-	3,
+	6,
 	'avocado'
 ),
 (
@@ -151,7 +178,7 @@ VALUES
 	'https://syncthing.net/img/logo-horizontal.svg',
 	'Monitor and configure file shares',
 	'blue',
-	3,
+	6,
 	'topology-complex'
 ),
 (
@@ -162,9 +189,19 @@ VALUES
 
 Manage projects and tasks',
 	'teal',
-	3,
+	6,
 	'layout-kanban'
 ),
+(
+	'https://mythtv.shandan.one/dashboard/program-guide',
+	'TV Guide',
+	'https://www.mythtv.org/img/mythtv.png',
+	--'https://mythtv.shandan.one/images/mythtv.png',
+	'View upcoming shows and schedule recordings',
+	'gray',
+	6,
+	'device-tv'
+),
 (
 	'https://mouse.shandan.one/#remote-mouse',
 	'Remote Touchpad',
@@ -173,18 +210,29 @@ Manage projects and tasks',
 
 Turn your device''s touchscreen into a remote touchpad',
 	'github',
-	3,
+	6,
 	'pointer'
 ),
 (
 	'https://gateway.shandan.one',
 	'Gateway',
-	'https://gateway.shandan.one/favicon.ico?t=6dcc8b66',
+	'https://gateway.shandan.one/webpages/themes/default/img/logo/favicon.ico?t=f5cbedf9',
 	'Access the gateway
 
 Manage local LAN and internet connection settings',
 	'cyan',
-	3,
+	5,
+	'router'
+),
+(
+	'https://backhaul.shandan.one',
+	'Backhaul',
+	'https://backhaul.shandan.one/luci-static/resources/icons/wifi.svg',
+	'Access the backhaul
+
+Manage wireless backhaul connection settings',
+	'cyan',
+	5,
 	'router'
 ),
 (
@@ -195,17 +243,16 @@ Manage local LAN and internet connection settings',
 
 Publish news items and create new feeds',
 	'green',
-	3,
+	5,
 	'seeding'
 ),
 (
 	'https://shandan.one/pyapi/random',
 	'Prayer Generator',
 	'',
-	'Generate a template prayer following the form of the model prayer outlined in Matthew&nbsp;6:9‑13 and Luke&nbsp;11:2‑4',
+	'Generate a template prayer following the form of the model prayer outlined in Matthew 6:9‑13 and Luke 11:2‑4',
 	'orange',
 	3,
 	'pray'
 )
 ;
-