Skip to content

Commit

Permalink
Fixing Front end issues related to image loading and SEO (community-s…
Browse files Browse the repository at this point in the history
…cripts#219)

* Update mariadb.json

* Update vaultwarden.json

* Update vaultwarden.json

* Update keycloak.json

* Update json/keycloak.json

Co-authored-by: Håvard Gjøby Thom <[email protected]>

* Update mariadb.json

Co-authored-by: Håvard Gjøby Thom <[email protected]>

* Add canonical link to layout for improved SEO and page indexing

* Fix image source fallback for script logos to use a consistent relative path

* Fix image source for script logos across components to consistently use the "/ProxmoxVE/logo.png" path

* Update image source for script logos to use basePath for consistent paths across all components

* Fix image source for script logos to ensure leading slash is consistent for all components' paths

---------

Co-authored-by: CanbiZ <[email protected]>
Co-authored-by: Håvard Gjøby Thom <[email protected]>
  • Loading branch information
3 people authored Nov 13, 2024
1 parent c162f51 commit dac521c
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 9 deletions.
1 change: 1 addition & 0 deletions frontend/src/app/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ export default function RootLayout({
src={`https://${analytics.url}/script.js`}
data-website-id={analytics.token}
></script>
<link rel="canonical" href={metadata.metadataBase.href} />
<link rel="manifest" href="manifest.webmanifest" />
<link rel="preconnect" href="https://api.github.com" />
</head>
Expand Down
5 changes: 3 additions & 2 deletions frontend/src/app/scripts/_components/ScriptAccordion.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { cn } from "@/lib/utils";
import Image from "next/image";
import Link from "next/link";
import { useState } from "react";
import { basePath } from "@/config/siteConfig";

export default function ScriptAccordion({
items,
Expand Down Expand Up @@ -104,13 +105,13 @@ export default function ScriptAccordion({
>
<div className="flex items-center">
<Image
src={script.logo || "/logo.png"}
src={script.logo || `/${basePath}/logo.png`}
height={16}
width={16}
unoptimized
onError={(e) =>
((e.currentTarget as HTMLImageElement).src =
"/logo.png")
`/${basePath}/logo.png`)
}
alt={script.name}
className="mr-1 w-4 h-4 rounded-full"
Expand Down
14 changes: 11 additions & 3 deletions frontend/src/app/scripts/_components/ScriptInfoBlocks.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { mostPopularScripts } from "@/config/siteConfig";
import { basePath, mostPopularScripts } from "@/config/siteConfig";
import { extractDate } from "@/lib/time";
import { Category, Script } from "@/lib/types";
import { CalendarPlus } from "lucide-react";
Expand Down Expand Up @@ -92,11 +92,15 @@ export function LatestScripts({ items }: { items: Category[] }) {
<CardTitle className="flex items-center gap-3">
<div className="flex h-16 w-16 items-center justify-center rounded-lg bg-accent p-1">
<Image
src={script.logo || "/logo.png"}
src={script.logo || `/${basePath}/logo.png`}
unoptimized
height={64}
width={64}
alt=""
onError={(e) =>
((e.currentTarget as HTMLImageElement).src =
`/${basePath}/logo.png`)
}
className="h-11 w-11 object-contain"
/>
</div>
Expand Down Expand Up @@ -161,10 +165,14 @@ export function MostViewedScripts({ items }: { items: Category[] }) {
<div className="flex max-h-16 min-h-16 min-w-16 max-w-16 items-center justify-center rounded-lg bg-accent p-1">
<Image
unoptimized
src={script.logo || "/logo.png"}
src={script.logo || `/${basePath}/logo.png`}
height={64}
width={64}
alt=""
onError={(e) =>
((e.currentTarget as HTMLImageElement).src =
`/${basePath}/logo.png`)
}
className="h-11 w-11 object-contain"
/>
</div>
Expand Down
6 changes: 4 additions & 2 deletions frontend/src/app/scripts/_components/ScriptItem.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import Description from "./ScriptItems/Description";
import InstallCommand from "./ScriptItems/InstallCommand";
import InterFaces from "./ScriptItems/InterFaces";
import Tooltips from "./ScriptItems/Tooltips";
import { basePath } from "@/config/siteConfig";

function ScriptItem({
item,
Expand All @@ -40,10 +41,11 @@ function ScriptItem({
<div className="flex">
<Image
className="h-32 w-32 rounded-lg bg-accent/60 object-contain p-3 shadow-md"
src={item.logo || "/logo.png"}
src={item.logo || `/${basePath}/logo.png`}
width={400}
onError={(e) =>
((e.currentTarget as HTMLImageElement).src = "/logo.png")
((e.currentTarget as HTMLImageElement).src =
`/${basePath}/logo.png`)
}
height={400}
alt={item.name}
Expand Down
5 changes: 3 additions & 2 deletions frontend/src/components/CommandMenu.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ import React from "react";
import { Badge } from "./ui/badge";
import { Button } from "./ui/button";
import { DialogTitle } from "./ui/dialog";
import { basePath } from "@/config/siteConfig";

export const formattedBadge = (type: string) => {
switch (type) {
Expand Down Expand Up @@ -102,10 +103,10 @@ export default function CommandMenu() {
>
<div className="flex gap-2" onClick={() => setOpen(false)}>
<Image
src={script.logo || "/logo.png"}
src={script.logo || `/${basePath}/logo.png`}
onError={(e) =>
((e.currentTarget as HTMLImageElement).src =
"/logo.png")
`/${basePath}/logo.png`)
}
unoptimized
width={16}
Expand Down

0 comments on commit dac521c

Please sign in to comment.