diff --git a/include/cronjob.class.php b/include/cronjob.class.php
index 7848e07dd..e892e55a0 100644
--- a/include/cronjob.class.php
+++ b/include/cronjob.class.php
@@ -364,6 +364,11 @@ class cronjob extends basis_db
public function execute()
{
$return = true;
+ if($this->running)
+ {
+ $this->errormsg = 'Job kann nicht ausgefuehrt werden, da er bereits laeuft';
+ return false;
+ }
if($this->standalone && $this->isJobRunning())
{
$this->errormsg = 'Job kann nicht ausgefuehrt werden, da noch ein anderer Job laeuft';
diff --git a/vilesci/cronjobs/cronjob.php b/vilesci/cronjobs/cronjob.php
index ccfeda4ce..a952bc965 100644
--- a/vilesci/cronjobs/cronjob.php
+++ b/vilesci/cronjobs/cronjob.php
@@ -40,15 +40,19 @@ foreach ($cj->result as $cronjob)
$timestamp = $cronjob->getNextExecutionTime();
if($timestamp && time()>=$timestamp)
{
- //Starten des Jobs
- if($cronjob->execute())
+ if(!$cronjob->running)
{
- echo "\n".date('d.m.Y H:i:s').' '.$cronjob->titel.'('.$cronjob->cronjob_id.') executed
'."\n";
- echo implode($cronjob->output,"\n");
- }
- else
- {
- echo "\n".date('d.m.Y H:i:s').' '.$cronjob->titel.'('.$cronjob->cronjob_id.') failed
'."\n";
+ echo "\n".date('d.m.Y H:i:s').' '.$cronjob->titel.'('.$cronjob->cronjob_id.') execute...
'."\n";
+ //Starten des Jobs
+ if($cronjob->execute())
+ {
+ echo "\n".date('d.m.Y H:i:s').' '.$cronjob->titel.'('.$cronjob->cronjob_id.') executed
'."\n";
+ echo implode($cronjob->output,"\n");
+ }
+ else
+ {
+ echo "\n".date('d.m.Y H:i:s').' '.$cronjob->titel.'('.$cronjob->cronjob_id.') failed:'.$cronjob->errormsg.'
'."\n";
+ }
}
}
}