Browse Source

Bug 12031: Task Scheduler not sending mail

At some stage the cronjob was changed to accept longopts, but the scheduler script wasn't changed along with it. This patch fixes the mismatch.

To test:

1. make sure that your user is not in at.deny, and (if applicable/necessary) is in at.allow

1.5 test this on a package install, sending mails will still not work for git installs, even with this patch.

Useful, but not required step: make sure email can be sent from your server, also helpful is access to the Koha user's mail box (to see the bounce messages)

2. create a saved sql report to run

3. Go to Tools -> Task Scheduler and schedule a job to be run, and results emailed to you

4. note that you do not (without the patch) get an email. Make a note of the command it reports it is going to run.

5. apply the patch

6. schedule another job, you will notice that the command to run the scheduled job is slightly changed compared to the one in step 4.

7. Receiving an email when your job runs means the patch worked. Seeing --format= and --to= in the command also means the patch worked, as this is the command that is expecting.

8. Run the koha QA test tool.

Signed-off-by: Mark Tompsett <>

NOTE: The line that changes is visible in the bottom section,
      "Jobs already entered", with the corrected parameters and
      path used. If you do not have the <supportdir> config
      parameter set up in koha-conf.xml, it defaults to the
      typical package path. If you have the parameter set up,
      the path given matches what you tell it. Only tested in

Signed-off-by: Paola Rossi <>
Signed-off-by: Mark Tompsett <>
Signed-off-by: Marcel de Rooy <>
Signed-off-by: Tomas Cohen Arazi <>
Liz Rea 9 years ago
committed by Tomas Cohen Arazi
  1. 13


@ -34,8 +34,15 @@ BEGIN {
my $input = new CGI;
my $base;
if ( C4::Context->config('supportdir') ) {
$base = C4::Context->config('supportdir');
else {
$base = "/usr/share/koha/bin";
my $base = C4::Context->config('intranetdir');
my ( $template, $borrowernumber, $cookie ) = get_template_and_user(
@ -68,8 +75,8 @@ if ( $mode eq 'job_add' ) {
my $format = $input->param('format');
my $email = $input->param('email');
my $command =
. "/tools/ $report $format $email";
"export KOHA_CONF=\"$CONFIG_NAME\"; " . $base
. "/cronjobs/ $report --format=$format --to=$email";
if ($recurring) {
my $frequency = $input->param('frequency');