Hi,
we set up the approval scheme here, but found that the automatic sending of notifications generated way too much mail traffic. I then enabled the users to manually send reminders (via $reminders_enabled=TRUE) to the room admins disabling all other notifications configured via $mail_settings[], so that they can send a notification when e.g. they are finished entering their bookings.
I found out that no notification mails were sent using the "Remind administrator" button. It turns out, that the approve_entry_handler only sends emails, when the function "need_to_send_mail()" in functions_mail.inc returns TRUE, i.e. when any of the notification settings via $mail_settings are are set to true. The same seems to be true for the "More info" button, which seems to have no function unless any of the notification settings in $mail_settings[] are set to TRUE.
Since the settings below control an automatic behavior but the "remind administrator" and "request more info" are manual actions, I really do not see, why the latter should depend on the settings below.
$mail_settings['admin_on_bookings'] = false; // the addresses defined by $mail_settings['recipients'] below
$mail_settings['area_admin_on_bookings'] = false; // the area administrator
$mail_settings['room_admin_on_bookings'] = false; // the room administrator
$mail_settings['booker'] = false; // the person making the booking
$mail_settings['book_admin_on_approval'] = false; // the booking administrator when booking approval is enabled
My first idea was to modify need_to_send_mail() so that it also returns true when $reminders_enabled is true. It worked, but I worry a bit, that it could trigger side-effects. Besides that, it is no option for the "more info" button (which is not controlled by a configuration variable). For that $action needs to be a parameter for need_to_send_mail(), with other possible implications, but that nevertheless could be an idea how to better decide when to send an email.
Best regards
Stefan
Attached is patch for my go at modifying need_to_send_mail()