diff --git a/api/sendPic.php b/api/sendPic.php index 6cbaf1110..0333b5498 100644 --- a/api/sendPic.php +++ b/api/sendPic.php @@ -48,14 +48,16 @@ exit(); } -if ($config['mail']['send_all_later']) { +if ($config['mail']['send_all_later'] || isset($_POST['addToDb'])) { $mailService = MailService::getInstance(); // Save each recipient to the database foreach ($recipients as $recipient) { $mailService->addRecipientToDatabase($recipient); } - echo json_encode(['success' => true, 'saved' => true]); - exit(); + if ($config['mail']['send_all_later']) { + echo json_encode(['success' => true, 'saved' => true]); + exit(); + } } if (empty($_POST['image'])) { diff --git a/assets/js/core.js b/assets/js/core.js index 0fada6424..ea601a54a 100644 --- a/assets/js/core.js +++ b/assets/js/core.js @@ -1070,6 +1070,26 @@ const photoBooth = (function () { virtualKeyboard.initialize(config.mail.keyboardLayout, '#send-mail-recipient', '#send-mail-form'); } + // add to database on send + if (!config.mail.send_all_later) { + const dbCheckboxWrapper = document.createElement('div'); + dbCheckboxWrapper.classList.add('form-db-checkbox-wrapper'); + + const dbCheckbox = document.createElement('input'); + dbCheckbox.type = 'checkbox'; + dbCheckbox.id = 'send-mail-db-checkbox'; + dbCheckbox.name = 'addToDb'; + dbCheckbox.classList.add('form-db-checkbox'); + + const dbCheckboxLabel = document.createElement('label'); + dbCheckboxLabel.htmlFor = 'send-mail-db-checkbox'; + dbCheckboxLabel.textContent = ' ' + photoboothTools.getTranslation('add_to_mail_database'); + + dbCheckboxWrapper.appendChild(dbCheckbox); + dbCheckboxWrapper.appendChild(dbCheckboxLabel); + form.appendChild(dbCheckboxWrapper); + } + // Submit const submitLabel = config.mail.send_all_later ? photoboothTools.getTranslation('add') diff --git a/resources/lang/en.json b/resources/lang/en.json index e973137be..5d730446a 100644 --- a/resources/lang/en.json +++ b/resources/lang/en.json @@ -3,6 +3,7 @@ "add": "Add", "add_entry": "Add entry", "add_image": "Add image", + "add_to_mail_database": "save email address(es)", "admin_panel": "Admin panel", "adminpanel_back": "Back", "adminpanel_toggletextOFF": "Off",