// Transactions page JavaScript let currentPage = 1; let filters = { category_id: '', start_date: '', end_date: '', search: '' }; // Load user profile to get currency async function loadUserCurrency() { try { const profile = await apiCall('/api/settings/profile'); window.userCurrency = profile.profile.currency || 'RON'; } catch (error) { console.error('Failed to load user currency:', error); window.userCurrency = 'RON'; } } // Load transactions async function loadTransactions() { try { const params = new URLSearchParams({ page: currentPage, ...filters }); const data = await apiCall(`/api/expenses/?${params}`); displayTransactions(data.expenses); displayPagination(data.pages, data.current_page, data.total || data.expenses.length); } catch (error) { console.error('Failed to load transactions:', error); } } // Display transactions function displayTransactions(transactions) { const container = document.getElementById('transactions-list'); if (transactions.length === 0) { const noTransactionsText = window.getTranslation ? window.getTranslation('transactions.noTransactions', 'No transactions found') : 'No transactions found'; container.innerHTML = `
${noTransactionsText}
Preview not available
${window.getTranslation ? window.getTranslation('transactions.downloadReceipt', 'Download Receipt') : 'Download Receipt'}