mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-11-06 02:15:15 +00:00
Fix #4838 when showing avatars of deleted users
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
|
const defaultImg = "/images/default-avatar.jpg";
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
url: string;
|
url?: string;
|
||||||
name?: string;
|
name?: string;
|
||||||
}
|
}
|
||||||
export function GravatarFormatter({ url, name }: Props) {
|
export function GravatarFormatter({ url, name }: Props) {
|
||||||
@@ -9,7 +11,7 @@ export function GravatarFormatter({ url, name }: Props) {
|
|||||||
title={name}
|
title={name}
|
||||||
className="avatar avatar-2 me-2"
|
className="avatar avatar-2 me-2"
|
||||||
style={{
|
style={{
|
||||||
backgroundImage: `url(${url})`,
|
backgroundImage: `url(${url || defaultImg})`,
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -21,7 +21,10 @@ export default function Table({ data, isFetching, isFiltered, onEdit, onDelete,
|
|||||||
() => [
|
() => [
|
||||||
columnHelper.accessor((row: any) => row.owner, {
|
columnHelper.accessor((row: any) => row.owner, {
|
||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => <GravatarFormatter url={info.getValue().avatar} name={info.getValue().name} />,
|
cell: (info: any) => {
|
||||||
|
const value = info.getValue();
|
||||||
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ export default function Table({ data, isFetching, onSelectItem }: Props) {
|
|||||||
id: "user.avatar",
|
id: "user.avatar",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export default function Table({ data, isFetching, onDelete, onRenew, onDownload,
|
|||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export default function Table({ data, isFetching, onEdit, onDelete, onDisableTog
|
|||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ export default function Table({ data, isFetching, onEdit, onDelete, onDisableTog
|
|||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export default function Table({ data, isFetching, onEdit, onDelete, onDisableTog
|
|||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export default function Table({ data, isFetching, isFiltered, onEdit, onDelete,
|
|||||||
id: "owner",
|
id: "owner",
|
||||||
cell: (info: any) => {
|
cell: (info: any) => {
|
||||||
const value = info.getValue();
|
const value = info.getValue();
|
||||||
return <GravatarFormatter url={value.avatar} name={value.name} />;
|
return <GravatarFormatter url={value ? value.avatar : ""} name={value ? value.name : ""} />;
|
||||||
},
|
},
|
||||||
meta: {
|
meta: {
|
||||||
className: "w-1",
|
className: "w-1",
|
||||||
|
|||||||
Reference in New Issue
Block a user