From a821d39dcd8403436d35555a1668d614766d1048 Mon Sep 17 00:00:00 2001 From: davegilligan Date: Mon, 25 May 2026 06:54:04 +0200 Subject: [PATCH] Replace landing card MCP copy pill with link to /mcp-tool.php; fix preview.php for slugs without authored content (legal-analysis, summarize, translate) --- assets/css/dbn-tools-redesign.css | 102 ++++++------------------------ index.php | 29 +++++---- preview.php | 69 ++++++++------------ 3 files changed, 64 insertions(+), 136 deletions(-) diff --git a/assets/css/dbn-tools-redesign.css b/assets/css/dbn-tools-redesign.css index 4a13bed..542e8cd 100644 --- a/assets/css/dbn-tools-redesign.css +++ b/assets/css/dbn-tools-redesign.css @@ -898,101 +898,39 @@ body[data-active-tool='citations'] .results { text-decoration: none; } .lt-card__footer-link--primary:hover { color: var(--dbn-red); } -.lt-card__mcp-pill { +.lt-card__footer-link--mcp { font-family: ui-monospace, 'IBM Plex Mono', monospace; - font-size: 0.64rem; - background: #f1f5f9; - border: 1px solid #e2e8f0; + font-size: 0.68rem; + font-weight: 700; + letter-spacing: 0.06em; + text-transform: uppercase; color: #64748b; - padding: 2px 8px; - border-radius: 4px; - cursor: pointer; - white-space: nowrap; + text-decoration: none; margin-left: auto; - transition: background 0.15s; } -.lt-card__mcp-pill:hover { background: #e2e8f0; } +.lt-card__footer-link--mcp:hover { color: var(--dbn-blue); } -/* ── Preview page MCP section ─────────────────────────────────── */ -.lt-preview-mcp { +/* ── Preview page: small MCP info link ───────────────────────── */ +.lt-preview-mcp-link { background: #f8fafc; border-top: 1px solid #e5e7eb; border-bottom: 1px solid #e5e7eb; - padding: 3rem 1.5rem; + padding: 1.25rem 1.5rem; } -.lt-preview-mcp__inner { +.lt-preview-mcp-link__inner { max-width: 760px; margin: 0 auto; - display: flex; - flex-direction: column; - gap: 1.25rem; + text-align: center; } -.lt-preview-mcp__head { - display: flex; - align-items: flex-start; - gap: 1rem; -} -.lt-preview-mcp__icon { font-size: 1.6rem; line-height: 1; flex-shrink: 0; margin-top: 0.15rem; } -.lt-preview-mcp__title { - font-size: 1.25rem; - font-weight: 700; - color: var(--dbn-blue); - margin: 0 0 0.25rem; -} -.lt-preview-mcp__sub { font-size: 0.9rem; color: #6b7280; margin: 0; } -.lt-preview-mcp__slug-row { - display: flex; - align-items: center; - gap: 0.75rem; - background: #fff; - border: 1px solid #e5e7eb; - border-radius: 8px; - padding: 0.7rem 1rem; - flex-wrap: wrap; -} -.lt-preview-mcp__slug-label { font-size: 0.8rem; color: #6b7280; flex-shrink: 0; } -.lt-preview-mcp__slug { - font-family: ui-monospace, 'IBM Plex Mono', monospace; +.lt-preview-mcp-link__inner p { font-size: 0.9rem; + color: #6b7280; + margin: 0; +} +.lt-preview-mcp-link__inner a { color: var(--dbn-blue); font-weight: 600; - flex: 1; + text-decoration: none; + margin-left: 0.4rem; } -.lt-preview-mcp__copy { - padding: 0.3rem 0.85rem; - background: var(--dbn-blue); - color: #fff; - border: none; - border-radius: 5px; - font-size: 0.78rem; - font-weight: 600; - cursor: pointer; - flex-shrink: 0; - transition: background 0.15s; -} -.lt-preview-mcp__copy:hover { background: var(--dbn-soft-blue); } -.lt-preview-mcp__snippet { display: flex; flex-direction: column; gap: 0.4rem; } -.lt-preview-mcp__snippet-label { - font-family: ui-monospace, 'IBM Plex Mono', monospace; - font-size: 0.7rem; - color: #9ca3af; - text-transform: uppercase; - letter-spacing: 0.06em; -} -.lt-preview-mcp__pre { - background: #1e293b; - color: #e2e8f0; - font-family: ui-monospace, 'IBM Plex Mono', monospace; - font-size: 0.82rem; - line-height: 1.65; - padding: 1.1rem 1.25rem; - border-radius: 8px; - overflow-x: auto; - margin: 0; -} -.lt-preview-mcp__note { - font-size: 0.82rem; - color: #9ca3af; - margin: 0; -} -.lt-preview-mcp__note a { color: var(--dbn-blue); } +.lt-preview-mcp-link__inner a:hover { color: var(--dbn-red); } diff --git a/index.php b/index.php index 290f1c0..21a7359 100644 --- a/index.php +++ b/index.php @@ -58,16 +58,19 @@ $registerUrl = 'https://dobetternorge.no/register.php'; require_once __DIR__ . '/includes/tool-svgs.php'; $toolMcpSlugs = [ - 'transcribe' => 'dbn.transcribe_audio', - 'timeline' => 'dbn.timeline', - 'redact' => 'dbn.redact', - 'korrespond' => 'dbn.korrespond', - 'barnevernet' => 'dbn.barnevernet_analyze', - 'advocate' => 'dbn.advocate_brief', - 'deep-research' => 'dbn.deep_research', - 'discrepancy' => 'dbn.discrepancy_find', - 'corpus' => 'dbn.list_documents', - 'citations' => 'dbn.citation_graph', + 'transcribe' => 'dbn.transcribe_audio', + 'timeline' => 'dbn.timeline', + 'redact' => 'dbn.redact', + 'summarize' => 'dbn.summarize', + 'legal-analysis' => 'dbn.legal_analysis', + 'korrespond' => 'dbn.korrespond', + 'barnevernet' => 'dbn.barnevernet_analyze', + 'advocate' => 'dbn.advocate_brief', + 'deep-research' => 'dbn.deep_research', + 'discrepancy' => 'dbn.discrepancy_find', + 'corpus' => 'dbn.list_documents', + 'citations' => 'dbn.citation_graph', + 'translate' => 'dbn.translate', ]; ?> @@ -244,8 +247,10 @@ window.DBN_TOOLS_LANG = ; - + MCP → diff --git a/preview.php b/preview.php index 931d2c9..c949903 100644 --- a/preview.php +++ b/preview.php @@ -18,16 +18,19 @@ $returnPath = '/'; $toolsLogin = 'https://dobetternorge.no/tools-login.php?return=' . urlencode($returnPath); $toolMcpSlugs = [ - 'transcribe' => 'dbn.transcribe_audio', - 'timeline' => 'dbn.timeline', - 'redact' => 'dbn.redact', - 'korrespond' => 'dbn.korrespond', - 'barnevernet' => 'dbn.barnevernet_analyze', - 'advocate' => 'dbn.advocate_brief', - 'deep-research' => 'dbn.deep_research', - 'discrepancy' => 'dbn.discrepancy_find', - 'corpus' => 'dbn.list_documents', - 'citations' => 'dbn.citation_graph', + 'transcribe' => 'dbn.transcribe_audio', + 'timeline' => 'dbn.timeline', + 'redact' => 'dbn.redact', + 'summarize' => 'dbn.summarize', + 'legal-analysis' => 'dbn.legal_analysis', + 'korrespond' => 'dbn.korrespond', + 'barnevernet' => 'dbn.barnevernet_analyze', + 'advocate' => 'dbn.advocate_brief', + 'deep-research' => 'dbn.deep_research', + 'discrepancy' => 'dbn.discrepancy_find', + 'corpus' => 'dbn.list_documents', + 'citations' => 'dbn.citation_graph', + 'translate' => 'dbn.translate', ]; $toolMcpSlug = $toolMcpSlugs[$slug] ?? null; @@ -207,7 +210,12 @@ $localizedContent = [ // uk/pl fall back to 'en' — sample documents are Norwegian regardless $contentLang = array_key_exists($uiLang, $localizedContent) ? $uiLang : 'en'; -$localContent = $localizedContent[$contentLang][$slug]; +$localContent = $localizedContent[$contentLang][$slug] ?? $localizedContent['en'][$slug] ?? null; +if ($localContent === null) { + // No marketing copy authored for this slug yet — send the visitor straight to the tool. + header('Location: /' . $slug . '.php' . ($uiLang !== 'en' ? '?lang=' . urlencode($uiLang) : '')); + exit; +} // ── Sample inputs/outputs (always Norwegian — legal domain is Norway) ───────── $samples = [ @@ -483,7 +491,7 @@ $samples = [ ], ]; -$sample = $samples[$slug]; +$sample = $samples[$slug] ?? null; ?> @@ -551,6 +559,7 @@ $sample = $samples[$slug]; +
@@ -573,38 +582,14 @@ $sample = $samples[$slug];
+ -
-
-
- -
-

-

-
-
-
- - - -
-
-

claude_desktop_config.json

-
{
-  "mcpServers": {
-    "dbn-tools": {
-      "command": "npx",
-      "args": ["-y", "@dobetternorge/mcp"],
-      "env": { "DBN_API_TOKEN": "YOUR_TOKEN" }
-    }
-  }
-}
-
-

- Logg inn for å generere token og se full oppsettsguide.' - : 'API tokens require a Plus or Pro plan. Log in to generate a token and view the full setup guide.' ?> +