mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-03-12 17:05:46 +00:00
optimize counting tasks
This commit is contained in:
parent
9573d473e9
commit
bbfd144906
|
@ -112,6 +112,38 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
|||
return $tasks;
|
||||
} /* }}} */
|
||||
|
||||
/**
|
||||
* Returns the number of tasks
|
||||
*
|
||||
* @return array list of tasks an its number
|
||||
*/
|
||||
function countTasks() { /* {{{ */
|
||||
$dms = $this->params['dms'];
|
||||
$user = $this->params['user'];
|
||||
$enablereceiptworkflow = $this->params['enablereceiptworkflow'];
|
||||
$enablerevisionworkflow = $this->params['enablerevisionworkflow'];
|
||||
$workflowmode = $this->params['workflowmode'];
|
||||
$tasksinmenu = $this->params['tasksinmenu'];
|
||||
|
||||
$startts = microtime(true);
|
||||
$tasks = array();
|
||||
if($workflowmode == 'traditional' || $workflowmode == 'traditional_only_approval')
|
||||
if(!$tasksinmenu || in_array('approval', $tasksinmenu)) {
|
||||
$tasks['approval'] = $dms->countTasks('ApproveByMe', $user);
|
||||
}
|
||||
if($workflowmode == 'traditional')
|
||||
if(!$tasksinmenu || in_array('review', $tasksinmenu)) {
|
||||
$tasks['review'] = $dms->countTasks('ReviewByMe', $user);
|
||||
}
|
||||
if($workflowmode == 'advanced')
|
||||
if(!$tasksinmenu || in_array('workflow', $tasksinmenu)) {
|
||||
$tasks['workflow'] = $dms->countTasks('WorkflowByMe', $user);
|
||||
}
|
||||
|
||||
header('Content-Type: application/json');
|
||||
echo json_encode(array('error'=>0, 'data'=>$tasks, 'processing_time'=>microtime(true)-$startts));
|
||||
} /* }}} */
|
||||
|
||||
/**
|
||||
* Returns the html needed for the task list in the menu
|
||||
*
|
||||
|
|
|
@ -1618,17 +1618,17 @@ $(document).ready(function() { /* {{{ */
|
|||
$.ajax({url: seeddms_webroot+'out/out.Tasks.php',
|
||||
type: 'GET',
|
||||
dataType: "json",
|
||||
data: {action: 'mytasks'},
|
||||
data: {action: 'counttasks'},
|
||||
success: function(data) {
|
||||
if(data) {
|
||||
if((typeof data.data.approval != 'undefined' && approval_count != data.data.approval.length) ||
|
||||
(typeof data.data.review != 'undefined' && review_count != data.data.review.length) ||
|
||||
(typeof data.data.workflow != 'undefined' && workflow_count != data.data.workflow.length)) {
|
||||
if((typeof data.data.approval != 'undefined' && approval_count != data.data.approval) ||
|
||||
(typeof data.data.review != 'undefined' && review_count != data.data.review) ||
|
||||
(typeof data.data.workflow != 'undefined' && workflow_count != data.data.workflow)) {
|
||||
// $("#menu-tasks").html('Loading').hide().load('../out/out.Tasks.php?action=menutasks').fadeIn('500')
|
||||
$('#menu-tasks > div.ajax').trigger('update', {folderid: seeddms_folder});
|
||||
approval_count = typeof data.data.approval != 'undefined' ? data.data.approval.length : 0;
|
||||
review_count = typeof data.data.review != 'undefined' ? data.data.review.length : 0;
|
||||
workflow_count = typeof data.data.workflow != 'undefined' ? data.data.workflow.length : 0;
|
||||
approval_count = typeof data.data.approval != 'undefined' ? data.data.approval : 0;
|
||||
review_count = typeof data.data.review != 'undefined' ? data.data.review : 0;
|
||||
workflow_count = typeof data.data.workflow != 'undefined' ? data.data.workflow : 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1697,17 +1697,17 @@ $(document).ready(function() { /* {{{ */
|
|||
$.ajax({url: seeddms_webroot+'out/out.Tasks.php',
|
||||
type: 'GET',
|
||||
dataType: "json",
|
||||
data: {action: 'mytasks'},
|
||||
data: {action: 'counttasks'},
|
||||
success: function(data) {
|
||||
if(data) {
|
||||
if((typeof data.data.approval != 'undefined' && approval_count != data.data.approval.length) ||
|
||||
(typeof data.data.review != 'undefined' && review_count != data.data.review.length) ||
|
||||
(typeof data.data.workflow != 'undefined' && workflow_count != data.data.workflow.length)) {
|
||||
if((typeof data.data.approval != 'undefined' && approval_count != data.data.approval) ||
|
||||
(typeof data.data.review != 'undefined' && review_count != data.data.review) ||
|
||||
(typeof data.data.workflow != 'undefined' && workflow_count != data.data.workflow)) {
|
||||
// $("#menu-tasks").html('Loading').hide().load('../out/out.Tasks.php?action=menutasks').fadeIn('500')
|
||||
$('#menu-tasks > div.ajax').trigger('update', {folderid: seeddms_folder});
|
||||
approval_count = typeof data.data.approval != 'undefined' ? data.data.approval.length : 0;
|
||||
review_count = typeof data.data.review != 'undefined' ? data.data.review.length : 0;
|
||||
workflow_count = typeof data.data.workflow != 'undefined' ? data.data.workflow.length : 0;
|
||||
approval_count = typeof data.data.approval != 'undefined' ? data.data.approval : 0;
|
||||
review_count = typeof data.data.review != 'undefined' ? data.data.review : 0;
|
||||
workflow_count = typeof data.data.workflow != 'undefined' ? data.data.workflow : 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue
Block a user