add ticketing system
Deploy Nexus Portal to HestiaCP (FTP) / build-and-deploy (push) Failing after 8s

This commit is contained in:
maximus
2026-06-24 21:38:36 +02:00
parent aa07d2ddaa
commit 12f855b328
2 changed files with 34 additions and 1 deletions
+2
View File
@@ -19,6 +19,7 @@ import Dashboard from './pages/app/Dashboard';
import Store from './pages/app/Store'; import Store from './pages/app/Store';
import Checkout from './pages/app/Checkout'; import Checkout from './pages/app/Checkout';
import Services from './pages/app/Services'; import Services from './pages/app/Services';
import Support from './pages/app/Support';
export default function App() { export default function App() {
return ( return (
@@ -47,6 +48,7 @@ export default function App() {
<Route path="/store" element={<Store />} /> <Route path="/store" element={<Store />} />
<Route path="/checkout/:productId" element={<Checkout />} /> <Route path="/checkout/:productId" element={<Checkout />} />
<Route path="/services" element={<Services />} /> <Route path="/services" element={<Services />} />
<Route path="/support" element={<Support />} />
</Route> </Route>
</Route> </Route>
+32 -1
View File
@@ -189,4 +189,35 @@ export const launchSSOGateway = (username, password) => {
document.body.appendChild(form); document.body.appendChild(form);
form.submit(); form.submit();
document.body.removeChild(form); document.body.removeChild(form);
}; };
// ==========================================
// ROUTES SUPPORT FOSSBILLING (NATIVES)
// ==========================================
// Récupère la liste de tous les tickets du client
export const getClientTickets = () =>
apiCall(`${BASE_URL}/api/client/support/ticket_get_list`, 'GET');
// Récupère le contenu et les messages d'un ticket spécifique
export const getTicketDetails = (ticketId) =>
apiCall(`${BASE_URL}/api/client/support/ticket_get`, 'POST', { id: ticketId });
// Crée un nouveau ticket de support
export const createTicket = (subject, message, helpdesk_id) =>
apiCall(`${BASE_URL}/api/client/support/ticket_create`, 'POST', {
support_helpdesk_id: helpdesk_id,
subject: subject,
content: message
});
// Répond à un ticket existant
export const replyTicket = (ticketId, message) =>
apiCall(`${BASE_URL}/api/client/support/ticket_reply`, 'POST', {
id: ticketId,
content: message
});
// Récupère la liste dynamique des départements (Helpdesks) configurés sur FOSSBilling
export const getHelpdesks = () =>
apiCall(`${BASE_URL}/api/client/support/helpdesk_get_pairs`, 'GET');