- {
- template_name => "tools/scheduler.tmpl",
- query => $input,
- type => "intranet",
- authnotrequired => 0,
- flagsrequired => { tools => 'schedule_tasks' },
- debug => 1,
- }
- );
-
-my $mode=$input->param('mode');
-
-if ($mode eq 'job_add') {
- my $startday = $input->param('startday');
- my $startmonth = $input->param('startmonth');
- my $startyear = $input->param('startyear');
- my $starttime = $input->param('starttime');
- my $recurring = $input->param('recurring');
- $starttime =~ s/\://g;
- my $start = $startyear . $startmonth . $startday . $starttime;
- my $report=$input->param('report');
- my $format=$input->param('format');
- my $email=$input->param('email');
- my $command = "EXPORT KOHA_CONF=\"$CONFIG_NAME\"; ".$base."/tools/runreport.pl $report $format $email";
- if ($recurring){
- my $frequency = $input->param('frequency');
- add_cron_job($start,$command);
- }
- else {
- add_at_job($start,$command);
- }
+ {
+ template_name => "tools/scheduler.tmpl",
+ query => $input,
+ type => "intranet",
+ authnotrequired => 0,
+ flagsrequired => { tools => 'schedule_tasks' },
+ debug => 1,
+ }
+);
+
+my $mode = $input->param('mode');
+my $id = $input->param('id');
+
+if ( $mode eq 'job_add' ) {
+
+ # Retrieving the date according to the dateformat syspref
+ my $c4date = C4::Dates->new($input->param('startdate'));
+
+ # Formatting it for Schedule::At
+ my $startdate = join('', (split /-/, $c4date->output("iso")));
+
+ my $starttime = $input->param('starttime');
+ my $recurring = $input->param('recurring');
+ $starttime =~ s/\://g;
+ my $start = $startdate . $starttime;
+ my $report = $input->param('report');
+ my $format = $input->param('format');
+ my $email = $input->param('email');
+ my $command =
+ "EXPORT KOHA_CONF=\"$CONFIG_NAME\"; " . $base
+ . "/tools/runreport.pl $report $format $email";
+
+ if ($recurring) {
+ my $frequency = $input->param('frequency');
+ add_cron_job( $start, $command );
+ }
+ else {
+ unless ( add_at_job( $start, $command ) ) {
+ $template->param( job_add_failed => 1 );
+ }
+ }