diff --git a/op/op.CheckInDocument.php b/op/op.CheckInDocument.php index 977352acf..94bf8d768 100644 --- a/op/op.CheckInDocument.php +++ b/op/op.CheckInDocument.php @@ -133,45 +133,15 @@ else } // add mandatory reviewers/approvers - $docAccess = $folder->getReadAccessList($settings->_enableAdminRevApp, $settings->_enableOwnerRevApp); if($settings->_workflowMode == 'traditional') { - $res=$user->getMandatoryReviewers(); - foreach ($res as $r){ - - if ($r['reviewerUserID']!=0){ - foreach ($docAccess["users"] as $usr) - if ($usr->getID()==$r['reviewerUserID']){ - $reviewers["i"][] = $r['reviewerUserID']; - break; - } - } - else if ($r['reviewerGroupID']!=0){ - foreach ($docAccess["groups"] as $grp) - if ($grp->getID()==$r['reviewerGroupID']){ - $reviewers["g"][] = $r['reviewerGroupID']; - break; - } - } - } + $mreviewers = getMandatoryReviewers($folder, $user); + if($mreviewers['i']) + $reviewers['i'] = array_merge($reviewers['i'], $mreviewers['i']); } - $res=$user->getMandatoryApprovers(); - foreach ($res as $r){ + $mapprovers = getMandatoryApprovers($folder, $user); + if($mapprovers['i']) + $approvers['i'] = array_merge($approvers['i'], $mapprovers['i']); - if ($r['approverUserID']!=0){ - foreach ($docAccess["users"] as $usr) - if ($usr->getID()==$r['approverUserID']){ - $approvers["i"][] = $r['approverUserID']; - break; - } - } - else if ($r['approverGroupID']!=0){ - foreach ($docAccess["groups"] as $grp) - if ($grp->getID()==$r['approverGroupID']){ - $approvers["g"][] = $r['approverGroupID']; - break; - } - } - } if($settings->_workflowMode == 'traditional' && !$settings->_allowReviewerOnly) { /* Check if reviewers are send but no approvers */ if(($reviewers["i"] || $reviewers["g"]) && !$approvers["i"] && !$approvers["g"]) {