"use strict"; class Frontend_Clients_View { static init() { if (!$(".Frontend_Clients_View").exists()) return; console_debug('CLIENT', 'Frontend_Clients_View initialized'); // Handle delete button $('#delete-client-btn').on('click', async function () { const $element = $(this); const client_id = $element.data('client-id'); const confirmed = await Modal.confirm('Delete Client', 'Are you sure you want to delete this client?\n\nThis action can be undone by restoring the client.', 'Delete', 'Cancel'); if (confirmed) { const result = await Frontend_Clients_Controller.delete({ id: client_id }); if (result.success) { // Reload the page to show deleted status location.reload(); } else { alert(result.message || 'Failed to delete client'); } } }); // Handle restore button $('#restore-client-btn').on('click', async function () { const $element = $(this); const client_id = $element.data('client-id'); const confirmed = await Modal.confirm('Restore Client', 'Are you sure you want to restore this client?', 'Restore', 'Cancel'); if (confirmed) { const result = await Frontend_Clients_Controller.restore({ id: client_id }); if (result.success) { // Reload the page to show restored status location.reload(); } else { alert(result.message || 'Failed to restore client'); } } }); } static on_app_ready() { Frontend_Clients_View.init(); } } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGcm9udGVuZF9DbGllbnRzX1ZpZXciLCJpbml0IiwiJCIsImV4aXN0cyIsImNvbnNvbGVfZGVidWciLCJvbiIsIiRlbGVtZW50IiwiY2xpZW50X2lkIiwiZGF0YSIsImNvbmZpcm1lZCIsIk1vZGFsIiwiY29uZmlybSIsInJlc3VsdCIsIkZyb250ZW5kX0NsaWVudHNfQ29udHJvbGxlciIsImRlbGV0ZSIsImlkIiwic3VjY2VzcyIsImxvY2F0aW9uIiwicmVsb2FkIiwiYWxlcnQiLCJtZXNzYWdlIiwicmVzdG9yZSIsIm9uX2FwcF9yZWFkeSJdLCJzb3VyY2VzIjpbInJzeC9hcHAvZnJvbnRlbmQvY2xpZW50cy92aWV3L2Zyb250ZW5kX2NsaWVudHNfdmlldy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjbGFzcyBGcm9udGVuZF9DbGllbnRzX1ZpZXcge1xuICAgIHN0YXRpYyBpbml0KCkge1xuICAgICAgICBpZiAoISQoXCIuRnJvbnRlbmRfQ2xpZW50c19WaWV3XCIpLmV4aXN0cygpKSByZXR1cm47XG5cbiAgICAgICAgY29uc29sZV9kZWJ1ZygnQ0xJRU5UJywgJ0Zyb250ZW5kX0NsaWVudHNfVmlldyBpbml0aWFsaXplZCcpO1xuXG4gICAgICAgIC8vIEhhbmRsZSBkZWxldGUgYnV0dG9uXG4gICAgICAgICQoJyNkZWxldGUtY2xpZW50LWJ0bicpLm9uKCdjbGljaycsIGFzeW5jIGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgY29uc3QgJGVsZW1lbnQgPSAkKHRoaXMpO1xuICAgICAgICAgICAgY29uc3QgY2xpZW50X2lkID0gJGVsZW1lbnQuZGF0YSgnY2xpZW50LWlkJyk7XG5cbiAgICAgICAgICAgIGNvbnN0IGNvbmZpcm1lZCA9IGF3YWl0IE1vZGFsLmNvbmZpcm0oXG4gICAgICAgICAgICAgICAgJ0RlbGV0ZSBDbGllbnQnLFxuICAgICAgICAgICAgICAgICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgY2xpZW50P1xcblxcblRoaXMgYWN0aW9uIGNhbiBiZSB1bmRvbmUgYnkgcmVzdG9yaW5nIHRoZSBjbGllbnQuJyxcbiAgICAgICAgICAgICAgICAnRGVsZXRlJyxcbiAgICAgICAgICAgICAgICAnQ2FuY2VsJ1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGNvbmZpcm1lZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IEZyb250ZW5kX0NsaWVudHNfQ29udHJvbGxlci5kZWxldGUoeyBpZDogY2xpZW50X2lkIH0pO1xuXG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlbG9hZCB0aGUgcGFnZSB0byBzaG93IGRlbGV0ZWQgc3RhdHVzXG4gICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uLnJlbG9hZCgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KHJlc3VsdC5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZGVsZXRlIGNsaWVudCcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gSGFuZGxlIHJlc3RvcmUgYnV0dG9uXG4gICAgICAgICQoJyNyZXN0b3JlLWNsaWVudC1idG4nKS5vbignY2xpY2snLCBhc3luYyBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGNvbnN0ICRlbGVtZW50ID0gJCh0aGlzKTtcbiAgICAgICAgICAgIGNvbnN0IGNsaWVudF9pZCA9ICRlbGVtZW50LmRhdGEoJ2NsaWVudC1pZCcpO1xuXG4gICAgICAgICAgICBjb25zdCBjb25maXJtZWQgPSBhd2FpdCBNb2RhbC5jb25maXJtKFxuICAgICAgICAgICAgICAgICdSZXN0b3JlIENsaWVudCcsXG4gICAgICAgICAgICAgICAgJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byByZXN0b3JlIHRoaXMgY2xpZW50PycsXG4gICAgICAgICAgICAgICAgJ1Jlc3RvcmUnLFxuICAgICAgICAgICAgICAgICdDYW5jZWwnXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoY29uZmlybWVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgRnJvbnRlbmRfQ2xpZW50c19Db250cm9sbGVyLnJlc3RvcmUoeyBpZDogY2xpZW50X2lkIH0pO1xuXG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdC5zdWNjZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlbG9hZCB0aGUgcGFnZSB0byBzaG93IHJlc3RvcmVkIHN0YXR1c1xuICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbi5yZWxvYWQoKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBhbGVydChyZXN1bHQubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHJlc3RvcmUgY2xpZW50Jyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgb25fYXBwX3JlYWR5KCkge1xuICAgICAgICBGcm9udGVuZF9DbGllbnRzX1ZpZXcuaW5pdCgpO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxNQUFNQSxxQkFBcUIsQ0FBQztFQUN4QixPQUFPQyxJQUFJQSxDQUFBLEVBQUc7SUFDVixJQUFJLENBQUNDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDQyxNQUFNLENBQUMsQ0FBQyxFQUFFO0lBRTNDQyxhQUFhLENBQUMsUUFBUSxFQUFFLG1DQUFtQyxDQUFDOztJQUU1RDtJQUNBRixDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQ0csRUFBRSxDQUFDLE9BQU8sRUFBRSxrQkFBaUI7TUFDakQsTUFBTUMsUUFBUSxHQUFHSixDQUFDLENBQUMsSUFBSSxDQUFDO01BQ3hCLE1BQU1LLFNBQVMsR0FBR0QsUUFBUSxDQUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDO01BRTVDLE1BQU1DLFNBQVMsR0FBRyxNQUFNQyxLQUFLLENBQUNDLE9BQU8sQ0FDakMsZUFBZSxFQUNmLG9HQUFvRyxFQUNwRyxRQUFRLEVBQ1IsUUFDSixDQUFDO01BRUQsSUFBSUYsU0FBUyxFQUFFO1FBQ1gsTUFBTUcsTUFBTSxHQUFHLE1BQU1DLDJCQUEyQixDQUFDQyxNQUFNLENBQUM7VUFBRUMsRUFBRSxFQUFFUjtRQUFVLENBQUMsQ0FBQztRQUUxRSxJQUFJSyxNQUFNLENBQUNJLE9BQU8sRUFBRTtVQUNoQjtVQUNBQyxRQUFRLENBQUNDLE1BQU0sQ0FBQyxDQUFDO1FBQ3JCLENBQUMsTUFBTTtVQUNIQyxLQUFLLENBQUNQLE1BQU0sQ0FBQ1EsT0FBTyxJQUFJLHlCQUF5QixDQUFDO1FBQ3REO01BQ0o7SUFDSixDQUFDLENBQUM7O0lBRUY7SUFDQWxCLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDRyxFQUFFLENBQUMsT0FBTyxFQUFFLGtCQUFpQjtNQUNsRCxNQUFNQyxRQUFRLEdBQUdKLENBQUMsQ0FBQyxJQUFJLENBQUM7TUFDeEIsTUFBTUssU0FBUyxHQUFHRCxRQUFRLENBQUNFLElBQUksQ0FBQyxXQUFXLENBQUM7TUFFNUMsTUFBTUMsU0FBUyxHQUFHLE1BQU1DLEtBQUssQ0FBQ0MsT0FBTyxDQUNqQyxnQkFBZ0IsRUFDaEIsK0NBQStDLEVBQy9DLFNBQVMsRUFDVCxRQUNKLENBQUM7TUFFRCxJQUFJRixTQUFTLEVBQUU7UUFDWCxNQUFNRyxNQUFNLEdBQUcsTUFBTUMsMkJBQTJCLENBQUNRLE9BQU8sQ0FBQztVQUFFTixFQUFFLEVBQUVSO1FBQVUsQ0FBQyxDQUFDO1FBRTNFLElBQUlLLE1BQU0sQ0FBQ0ksT0FBTyxFQUFFO1VBQ2hCO1VBQ0FDLFFBQVEsQ0FBQ0MsTUFBTSxDQUFDLENBQUM7UUFDckIsQ0FBQyxNQUFNO1VBQ0hDLEtBQUssQ0FBQ1AsTUFBTSxDQUFDUSxPQUFPLElBQUksMEJBQTBCLENBQUM7UUFDdkQ7TUFDSjtJQUNKLENBQUMsQ0FBQztFQUNOO0VBRUEsT0FBT0UsWUFBWUEsQ0FBQSxFQUFHO0lBQ2xCdEIscUJBQXFCLENBQUNDLElBQUksQ0FBQyxDQUFDO0VBQ2hDO0FBQ0oiLCJpZ25vcmVMaXN0IjpbXX0=