updateSite

This commit is contained in:
headlesdev 2025-05-20 01:00:09 +02:00
parent 76ec9dad93
commit cd014f7de0
2 changed files with 17 additions and 6 deletions

View File

@ -6,7 +6,7 @@ import { Network } from "@/app/types"
import Loading from "@/components/Loading" import Loading from "@/components/Loading"
import { EditModeToggle } from "@/components/EditModeToggle" import { EditModeToggle } from "@/components/EditModeToggle"
import AddNetwork from "@/components/dialogues/AddNetwork" import AddNetwork from "@/components/dialogues/AddNetwork"
import { Plus, Pencil, Trash, Info, Building2, Network as NetworkIcon, Globe, Cpu } from "lucide-react" import { Plus, Pencil, Trash, Info, Cpu } from "lucide-react"
import EditNetwork from "@/components/dialogues/EditNetwork" import EditNetwork from "@/components/dialogues/EditNetwork"
import DeleteNetwork from "@/components/dialogues/DeleteNetwork" import DeleteNetwork from "@/components/dialogues/DeleteNetwork"
import EditSite from "@/components/dialogues/EditSite" import EditSite from "@/components/dialogues/EditSite"
@ -19,7 +19,7 @@ interface SitesPageProps {
} }
export default function SitesPage({ username, name, siteId }: SitesPageProps) { export default function SitesPage({ username, name, siteId }: SitesPageProps) {
const { site, loadSite, setSiteId, loading } = useSite() const { site, loadSite, updateSite, setSiteId, loading } = useSite()
const [isEditMode, setIsEditMode] = useState(false) const [isEditMode, setIsEditMode] = useState(false)
const [selectedNetwork, setSelectedNetwork] = useState<Network | null>(null) const [selectedNetwork, setSelectedNetwork] = useState<Network | null>(null)
@ -166,20 +166,20 @@ export default function SitesPage({ username, name, siteId }: SitesPageProps) {
</div> </div>
)} )}
<AddNetwork siteId={site.id} onNetworkAdded={loadSite}/> <AddNetwork siteId={site.id} onNetworkAdded={updateSite}/>
<EditSite site={site} onSiteEdited={loadSite} /> <EditSite site={site} onSiteEdited={updateSite} />
<DeleteSite siteId={site.id} /> <DeleteSite siteId={site.id} />
{selectedNetwork && ( {selectedNetwork && (
<EditNetwork <EditNetwork
siteId={site.id} siteId={site.id}
network={selectedNetwork} network={selectedNetwork}
onNetworkEdited={loadSite} onNetworkEdited={updateSite}
/> />
)} )}
{selectedNetworkId && ( {selectedNetworkId && (
<DeleteNetwork <DeleteNetwork
networkId={selectedNetworkId} networkId={selectedNetworkId}
onNetworkDeleted={loadSite} onNetworkDeleted={updateSite}
/> />
)} )}
</main> </main>

View File

@ -23,6 +23,16 @@ const useSite = () => {
}); });
}, [siteId]); }, [siteId]);
const updateSite = useCallback(() => {
if (!siteId) return;
axios.get('/api/sites/get', {
params: { siteId }
}).then((response) => {
setSite(response.data.site);
});
}, [siteId]);
useEffect(() => { useEffect(() => {
loadSite(); loadSite();
}, [loadSite]); }, [loadSite]);
@ -73,6 +83,7 @@ const useSite = () => {
site, site,
loadSite, loadSite,
setSiteId, setSiteId,
updateSite,
editSite, editSite,
addSite, addSite,
deleteSite, deleteSite,