mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-09 13:06:14 +00:00
use new method resolveTask()
This commit is contained in:
parent
af9dc81ba4
commit
b44a368d6d
|
@ -32,13 +32,13 @@ $scheduler = new SeedDMS_Scheduler($db);
|
||||||
$tasks = $scheduler->getTasks();
|
$tasks = $scheduler->getTasks();
|
||||||
|
|
||||||
foreach($tasks as $task) {
|
foreach($tasks as $task) {
|
||||||
if(isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()]) && is_object($taskobj = $GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()])) {
|
if(isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()]) && is_object($taskobj = resolveTask($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()]))) {
|
||||||
switch($mode) {
|
switch($mode) {
|
||||||
case "run":
|
case "run":
|
||||||
if(method_exists($taskobj, 'execute')) {
|
if(method_exists($taskobj, 'execute')) {
|
||||||
if(!$task->getDisabled() && $task->isDue()) {
|
if(!$task->getDisabled() && $task->isDue()) {
|
||||||
if($user = $dms->getUserByLogin('cli_scheduler')) {
|
if($user = $dms->getUserByLogin('cli_scheduler')) {
|
||||||
if($taskobj->execute($task, $dms, $user, $settings)) {
|
if($taskobj->execute($task)) {
|
||||||
add_log_line("Execution of task ".$task->getExtension()."::".$task->getTask()." successful.");
|
add_log_line("Execution of task ".$task->getExtension()."::".$task->getTask()." successful.");
|
||||||
$task->updateLastNextRun();
|
$task->updateLastNextRun();
|
||||||
} else {
|
} else {
|
||||||
|
@ -54,8 +54,8 @@ foreach($tasks as $task) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,14 +37,14 @@ class SeedDMS_SchedulerTaskBase {
|
||||||
|
|
||||||
var $logger;
|
var $logger;
|
||||||
|
|
||||||
public function ____construct($dms, $user, $settings, $logger) { /* {{{ */
|
public function __construct($dms=null, $user=null, $settings=null, $logger=null) { /* {{{ */
|
||||||
$this->dms = $dms;
|
$this->dms = $dms;
|
||||||
$this->user = $user;
|
$this->user = $user;
|
||||||
$this->settings = $settings;
|
$this->settings = $settings;
|
||||||
$this->logger = $logger;
|
$this->logger = $logger;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
public function execute($task, $dms, $user, $settings) { /* {{{ */
|
public function execute($task) { /* {{{ */
|
||||||
return true;
|
return true;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
|
|
@ -18,9 +18,13 @@ class SeedDMS_ExpiredDocumentsTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
* @param $dms dms
|
* @param $dms dms
|
||||||
* @return boolean true if task was executed succesfully, otherwise false
|
* @return boolean true if task was executed succesfully, otherwise false
|
||||||
*/
|
*/
|
||||||
public function execute($task, $dms, $user, $settings) {
|
public function execute($task) {
|
||||||
|
$dms = $this->dms;
|
||||||
$taskparams = $task->getParameter();
|
$taskparams = $task->getParameter();
|
||||||
$dms->getDocumentsExpired(intval($taskparams['days']));
|
$docs = $dms->getDocumentsExpired(intval($taskparams['days']));
|
||||||
|
foreach($docs as $doc) {
|
||||||
|
echo $doc->getName()."\n";
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -39,4 +43,4 @@ class SeedDMS_ExpiredDocumentsTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
}
|
}
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
$GLOBALS['SEEDDMS_SCHEDULER']['tasks']['core']['expireddocs'] = new SeedDMS_ExpiredDocumentsTask;
|
$GLOBALS['SEEDDMS_SCHEDULER']['tasks']['core']['expireddocs'] = 'SeedDMS_ExpiredDocumentsTask';
|
||||||
|
|
|
@ -68,7 +68,7 @@ $scheduler = new SeedDMS_Scheduler($db);
|
||||||
$tasks = $scheduler->getTasks();
|
$tasks = $scheduler->getTasks();
|
||||||
|
|
||||||
foreach($tasks as $task) {
|
foreach($tasks as $task) {
|
||||||
if(isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()]) && is_object($taskobj = $GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()])) {
|
if(isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()]) && is_object($taskobj = resolveTask($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()]))) {
|
||||||
switch($mode) {
|
switch($mode) {
|
||||||
case "run":
|
case "run":
|
||||||
case "dryrun":
|
case "dryrun":
|
||||||
|
@ -76,7 +76,7 @@ foreach($tasks as $task) {
|
||||||
if(!$task->getDisabled() && $task->isDue()) {
|
if(!$task->getDisabled() && $task->isDue()) {
|
||||||
if($user = $dms->getUserByLogin('cli_scheduler')) {
|
if($user = $dms->getUserByLogin('cli_scheduler')) {
|
||||||
if($mode == 'run') {
|
if($mode == 'run') {
|
||||||
if($taskobj->execute($task, $dms, $user, $settings)) {
|
if($taskobj->execute($task)) {
|
||||||
add_log_line("Execution of task ".$task->getExtension()."::".$task->getTask()." successful.");
|
add_log_line("Execution of task ".$task->getExtension()."::".$task->getTask()." successful.");
|
||||||
$task->updateLastNextRun();
|
$task->updateLastNextRun();
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -99,8 +99,7 @@ $(document).ready( function() {
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
$extname = $this->params['extname'];
|
$extname = $this->params['extname'];
|
||||||
$taskname = $this->params['taskname'];
|
$taskname = $this->params['taskname'];
|
||||||
if($extname && $taskname) {
|
if($extname && $taskname && is_object($taskobj = resolveTask($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$extname][$taskname]))) {
|
||||||
$taskobj = $GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$extname][$taskname];
|
|
||||||
if(method_exists($taskobj, 'getAdditionalParams'))
|
if(method_exists($taskobj, 'getAdditionalParams'))
|
||||||
$additionalparams = $taskobj->getAdditionalParams();
|
$additionalparams = $taskobj->getAdditionalParams();
|
||||||
else
|
else
|
||||||
|
@ -204,6 +203,11 @@ $(document).ready( function() {
|
||||||
}
|
}
|
||||||
|
|
||||||
$taskobj = $GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()];
|
$taskobj = $GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()];
|
||||||
|
$taskobj = resolveTask($taskobj);
|
||||||
|
if(!is_object($taskobj)) {
|
||||||
|
$this->errorMsg(getMLText('task_class_not_callable'));
|
||||||
|
return;
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
<form action="../op/op.SchedulerTaskMgr.php" method="post" class="form-horizontal">
|
<form action="../op/op.SchedulerTaskMgr.php" method="post" class="form-horizontal">
|
||||||
<?= createHiddenFieldWithKey('edittask') ?>
|
<?= createHiddenFieldWithKey('edittask') ?>
|
||||||
|
@ -324,7 +328,7 @@ $(document).ready( function() {
|
||||||
print "<th></th>\n";
|
print "<th></th>\n";
|
||||||
print "</tr></thead><tbody>\n";
|
print "</tr></thead><tbody>\n";
|
||||||
foreach($tasks as $task) {
|
foreach($tasks as $task) {
|
||||||
if(!isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()]))
|
if(!isset($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()]) || !is_object(resolveTask($GLOBALS['SEEDDMS_SCHEDULER']['tasks'][$task->getExtension()][$task->getTask()])))
|
||||||
$class = 'error';
|
$class = 'error';
|
||||||
else
|
else
|
||||||
$class = 'success';
|
$class = 'success';
|
||||||
|
@ -387,6 +391,9 @@ $(document).ready( function() {
|
||||||
$errmsgs = array();
|
$errmsgs = array();
|
||||||
foreach($GLOBALS['SEEDDMS_SCHEDULER']['tasks'] as $extname=>$tasks) {
|
foreach($GLOBALS['SEEDDMS_SCHEDULER']['tasks'] as $extname=>$tasks) {
|
||||||
foreach($tasks as $taskname=>$task) {
|
foreach($tasks as $taskname=>$task) {
|
||||||
|
$task = resolveTask($task);
|
||||||
|
if(!is_object($task))
|
||||||
|
continue;
|
||||||
echo "<tr>";
|
echo "<tr>";
|
||||||
echo "<td>";
|
echo "<td>";
|
||||||
echo $extname."::".$taskname;
|
echo $extname."::".$taskname;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user