From 0121c82412a4212c59fcf52f714837e59b95034c Mon Sep 17 00:00:00 2001 From: duffyduck Date: Sat, 21 Mar 2026 12:16:04 +0100 Subject: [PATCH] fixed back button with source, and customer in customer lsit clickable --- frontend/src/pages/contracts/ContractCockpit.tsx | 4 ++-- frontend/src/pages/contracts/ContractDetail.tsx | 12 +++++++----- frontend/src/pages/contracts/ContractForm.tsx | 8 +++++--- frontend/src/pages/contracts/ContractList.tsx | 7 ++++--- frontend/src/pages/customers/CustomerDetail.tsx | 10 ++++++---- frontend/src/pages/customers/CustomerForm.tsx | 6 ++++-- frontend/src/pages/customers/CustomerList.tsx | 14 ++++++++++---- 7 files changed, 38 insertions(+), 23 deletions(-) diff --git a/frontend/src/pages/contracts/ContractCockpit.tsx b/frontend/src/pages/contracts/ContractCockpit.tsx index eb72c7d6..c4787196 100644 --- a/frontend/src/pages/contracts/ContractCockpit.tsx +++ b/frontend/src/pages/contracts/ContractCockpit.tsx @@ -282,7 +282,7 @@ export default function ContractCockpit() {
e.stopPropagation()} > @@ -399,7 +399,7 @@ export default function ContractCockpit() { e.stopPropagation()} title="Zum Vertrag" diff --git a/frontend/src/pages/contracts/ContractDetail.tsx b/frontend/src/pages/contracts/ContractDetail.tsx index af41677d..5e4e34ef 100644 --- a/frontend/src/pages/contracts/ContractDetail.tsx +++ b/frontend/src/pages/contracts/ContractDetail.tsx @@ -1,5 +1,5 @@ import { useState, useEffect } from 'react'; -import { useParams, Link, useNavigate } from 'react-router-dom'; +import { useParams, Link, useNavigate, useLocation } from 'react-router-dom'; import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; import { contractApi, uploadApi, meterApi, contractTaskApi, appSettingsApi, gdprApi } from '../../services/api'; import { ContractEmailsSection } from '../../components/email'; @@ -1210,7 +1210,9 @@ function ContractTaskModal({ export default function ContractDetail() { const { id } = useParams(); const navigate = useNavigate(); + const location = useLocation(); const queryClient = useQueryClient(); + const backTo = (location.state as any)?.from as string | undefined; const { hasPermission, isCustomer, isCustomerPortal } = useAuth(); const contractId = parseInt(id!); @@ -1428,7 +1430,7 @@ export default function ContractDetail() { return (
-

Vertrag {c.contractNumber}

@@ -1463,7 +1465,7 @@ export default function ContractDetail() { @@ -1497,7 +1499,7 @@ export default function ContractDetail() { {c.customer && (

Kunde:{' '} - + {c.customer.companyName || `${c.customer.firstName} ${c.customer.lastName}`}

@@ -1532,7 +1534,7 @@ export default function ContractDetail() { )} {hasPermission('contracts:update') && ( - +

@@ -1407,7 +1409,7 @@ export default function ContractForm() {
- {hasPermission('contracts:update') && !isCustomer && ( - + diff --git a/frontend/src/pages/customers/CustomerDetail.tsx b/frontend/src/pages/customers/CustomerDetail.tsx index 65791de7..454fbdaf 100644 --- a/frontend/src/pages/customers/CustomerDetail.tsx +++ b/frontend/src/pages/customers/CustomerDetail.tsx @@ -1,5 +1,5 @@ import { useState, useEffect } from 'react'; -import { useParams, Link, useNavigate, useSearchParams } from 'react-router-dom'; +import { useParams, Link, useNavigate, useSearchParams, useLocation } from 'react-router-dom'; import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; import { customerApi, addressApi, bankCardApi, documentApi, meterApi, uploadApi, contractApi, stressfreiEmailApi, emailProviderApi, gdprApi, StressfreiEmail, ContractTreeNode } from '../../services/api'; import { EmailClientTab } from '../../components/email'; @@ -21,6 +21,8 @@ export default function CustomerDetail({ portalCustomerId }: { portalCustomerId? const navigate = useNavigate(); const queryClient = useQueryClient(); const { hasPermission, isCustomerPortal } = useAuth(); + const location = useLocation(); + const backTo = (location.state as any)?.from as string | undefined; const [searchParams, setSearchParams] = useSearchParams(); const customerId = portalCustomerId || parseInt(id!); const defaultTab = searchParams.get('tab') || 'addresses'; @@ -202,7 +204,7 @@ export default function CustomerDetail({ portalCustomerId }: { portalCustomerId?
-
@@ -219,7 +221,7 @@ export default function CustomerDetail({ portalCustomerId }: { portalCustomerId?
{hasPermission('customers:update') && ( - +