fix(admin-web): correct 4 more broken API calls in organizations + marketplace
Organizations fixes: - B13: GET /orgs/:id/members → GET /orgs/:id/memberships (match backend) - B14: DELETE /orgs/:id/delete → DELETE /orgs/:id (no suffix needed) Marketplace fixes: - B16: GET /marketplace/listings → GET /marketplace/admin/pending (admin view) - B17: POST /marketplace/listings/:id/approve → POST /marketplace/admin/:id/approve - B17: POST /marketplace/listings/:id/reject → POST /marketplace/admin/:id/reject
This commit is contained in:
parent
a1fd1d2e37
commit
587d22e107
@ -65,7 +65,7 @@ export default function MarketplacePage() {
|
|||||||
if (statusFilter !== 'all') params.set('status', statusFilter);
|
if (statusFilter !== 'all') params.set('status', statusFilter);
|
||||||
if (search) params.set('search', search);
|
if (search) params.set('search', search);
|
||||||
const qs = params.toString() ? `?${params.toString()}` : '';
|
const qs = params.toString() ? `?${params.toString()}` : '';
|
||||||
const data = await apiFetch(`listings${qs}`);
|
const data = await apiFetch(`admin/pending${qs}`);
|
||||||
setListings(Array.isArray(data?.listings) ? data.listings : Array.isArray(data) ? data : []);
|
setListings(Array.isArray(data?.listings) ? data.listings : Array.isArray(data) ? data : []);
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
}, [statusFilter, search]);
|
}, [statusFilter, search]);
|
||||||
@ -75,12 +75,12 @@ export default function MarketplacePage() {
|
|||||||
}, [loadData]);
|
}, [loadData]);
|
||||||
|
|
||||||
async function handleApprove(id: string) {
|
async function handleApprove(id: string) {
|
||||||
await apiFetch(`listings/${id}/approve`, { method: 'POST' });
|
await apiFetch(`admin/${id}/approve`, { method: 'POST' });
|
||||||
loadData();
|
loadData();
|
||||||
}
|
}
|
||||||
|
|
||||||
async function handleReject(id: string) {
|
async function handleReject(id: string) {
|
||||||
await apiFetch(`listings/${id}/reject`, { method: 'POST' });
|
await apiFetch(`admin/${id}/reject`, { method: 'POST' });
|
||||||
loadData();
|
loadData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -124,7 +124,7 @@ export default function OrganizationsPage() {
|
|||||||
|
|
||||||
async function handleDelete(id: string) {
|
async function handleDelete(id: string) {
|
||||||
if (!confirm('Delete this organization? This cannot be undone.')) return;
|
if (!confirm('Delete this organization? This cannot be undone.')) return;
|
||||||
await apiFetch(`${id}/delete`, { method: 'DELETE' });
|
await apiFetch(`${id}`, { method: 'DELETE' });
|
||||||
loadOrgs();
|
loadOrgs();
|
||||||
if (selectedOrg?.id === id) setSelectedOrg(null);
|
if (selectedOrg?.id === id) setSelectedOrg(null);
|
||||||
}
|
}
|
||||||
@ -133,7 +133,7 @@ export default function OrganizationsPage() {
|
|||||||
setSelectedOrg(org);
|
setSelectedOrg(org);
|
||||||
setDetailLoading(true);
|
setDetailLoading(true);
|
||||||
const [membersData, wsData] = await Promise.all([
|
const [membersData, wsData] = await Promise.all([
|
||||||
apiFetch(`${org.id}/members`),
|
apiFetch(`${org.id}/memberships`),
|
||||||
apiFetch(`${org.id}/workspaces`),
|
apiFetch(`${org.id}/workspaces`),
|
||||||
]);
|
]);
|
||||||
setMembers(
|
setMembers(
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user