isPublic() || ($link->_userID == $user->getID()) || $user->isAdmin()) array_push($tmp, $link); return $tmp; } /* }}} */ if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id")); } $documentid = $_GET["documentid"]; $document = $dms->getDocument($documentid); if (!is_object($document)) { UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id")); } $folder = $document->getFolder(); $docPathHTML = getFolderPathHTML($folder, true). " / ".$document->getName(); if ($document->getAccessMode($user) < M_READ) { UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied")); } if ($document->verifyLastestContentExpriry()){ header("Location:../out/out.ViewDocument.php?documentid=".$documentid); } $versions = $document->getContent(); $latestContent = $document->getLatestContent(); $status = $latestContent->getStatus(); $reviewStatus = $latestContent->getReviewStatus(); $approvalStatus = $latestContent->getApprovalStatus(); // verify if file exists $file_exists=file_exists($dms->contentDir . $latestContent->getPath()); UI::htmlStartPage(getMLText("document_title", array("documentname" => $document->getName()))); UI::globalNavigation($folder); UI::pageNavigation($docPathHTML, "view_document"); UI::contentHeading(getMLText("document_infos")); UI::contentContainerStart(); ?> isLocked()) { $lockingUser = $document->getLockingUser(); ?>
$lockingUser->getEmail(), "username" => $lockingUser->getFullName()));?>
: getOwner(); print "getEmail()."\">".$owner->getFullName().""; ?>
: getComment();?>
: getDate()); ?>
: getKeywords();?>
: getCategories(); $ct = array(); foreach($cats as $cat) $ct[] = $cat->getName(); echo implode(', ', $ct); ?>
"; print "\n\n"; print "\n"; print "".getMLText("version")."\n"; print "".getMLText("file")."\n"; print "".getMLText("comment")."\n"; print "".getMLText("status")."\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "".$latestContent->getVersion()."\n"; print "\n"; print "".$latestContent->getComment().""; print "".getOverallStatusText($status["status"]); if ( $status["status"]==S_DRAFT_REV || $status["status"]==S_DRAFT_APP || $status["status"]==S_EXPIRED ){ print "
hasExpired()?" class=\"warning\" ":"").">".(!$document->getExpires() ? getMLText("does_not_expire") : getMLText("expires").": ".getReadableDate($document->getExpires())).""; } print ""; print ""; print ""; echo ""; print "\n\n"; // // retrieve if the user is a reviewer or approver for this document. // $userRStat = $user->getReviewStatus($documentid, $latestContent->getVersion()); $userAStat = $user->getApprovalStatus($documentid, $latestContent->getVersion()); $is_reviewer = false; $is_approver = false; if (!is_bool($userRStat)) { if (count($userRStat["indstatus"])>0) { if ($userRStat["indstatus"][0]["status"]==0) { $is_reviewer = true; } } else { foreach ($userRStat["grpstatus"] as $grpstatus) { if ($grpstatus["status"]==0) { $is_reviewer = true; break; } } } } if (!is_bool($userAStat)) { if (count($userAStat["indstatus"])>0) { if ($userAStat["indstatus"][0]["status"]==0) { $is_approver = true; } } else { foreach ($userAStat["grpstatus"] as $grpstatus) { if ($grpstatus["status"]==0) { $is_approver = true; break; } } } } print "\n"; if (is_array($reviewStatus) && count($reviewStatus)>0) { print ""; print "\n"; print "\n"; print "\n"; print ""; print "\n"; print "\n"; print "\n"; foreach ($reviewStatus as $r) { $required = null; switch ($r["type"]) { case 0: // Reviewer is an individual. $required = $dms->getUser($r["required"]); if (!is_object($required)) { $reqName = getMLText("unknown_user")." '".$r["required"]."'"; } else { $reqName = $required->getFullName(); } break; case 1: // Reviewer is a group. $required = $dms->getGroup($r["required"]); if (!is_object($required)) { $reqName = getMLText("unknown_group")." '".$r["required"]."'"; } else { $reqName = "".$required->getName().""; } break; } print "\n"; print "\n"; print ""; print "\n"; print "\n"; print "\n"; print "\n\n"; } } if (is_array($approvalStatus) && count($approvalStatus)>0) { print ""; print "\n"; print "\n"; print "\n"; print ""; print "\n"; print "\n"; print "\n"; foreach ($approvalStatus as $a) { $required = null; switch ($a["type"]) { case 0: // Approver is an individual. $required = $dms->getUser($a["required"]); if (!is_object($required)) { $reqName = getMLText("unknown_user")." '".$r["required"]."'"; } else { $reqName = $required->getFullName(); } break; case 1: // Approver is a group. $required = $dms->getGroup($a["required"]); if (!is_object($required)) { $reqName = getMLText("unknown_group")." '".$r["required"]."'"; } else { $reqName = "".$required->getName().""; } break; } print "\n"; print "\n"; print ""; print "\n"; print "\n"; print "\n"; print "\n\n"; } } print "
\n"; UI::contentSubHeading(getMLText("reviewers")); print "
".getMLText("name")."".getMLText("last_update")."".getMLText("comment")."".getMLText("status")."
".$reqName."
  • ".$r["date"]."
  • "; $updateUser = $dms->getUser($r["userID"]); print "
  • ".(is_object($updateUser) ? $updateUser->getFullName() : "unknown user id '".$r["userID"]."'")."
".$r["comment"]."".getReviewStatusText($r["status"])."
\n"; UI::contentSubHeading(getMLText("approvers")); print "
".getMLText("name")."".getMLText("last_update")."".getMLText("comment")."".getMLText("status")."
".$reqName."
  • ".$a["date"]."
  • "; $updateUser = $dms->getUser($a["userID"]); print "
  • ".(is_object($updateUser) ? $updateUser->getFullName() : "unknown user id '".$a["userID"]."'")."
".$a["comment"]."".getApprovalStatusText($a["status"])."
\n"; UI::contentContainerEnd(); UI::contentHeading(getMLText("previous_versions")); UI::contentContainerStart(); if (count($versions)>1) { print ""; print "\n\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n\n\n"; for ($i = count($versions)-2; $i >= 0; $i--) { $version = $versions[$i]; $vstat = $version->getStatus(); $comment = $version->getComment(); // verify if file exists $file_exists=file_exists($dms->contentDir . $version->getPath()); print "\n"; print "\n"; print "\n"; print ""; print ""; print "\n\n"; } print "\n
".getMLText("version")."".getMLText("file")."".getMLText("comment")."".getMLText("status")."
".$version->getVersion()."
    \n"; print "
  • ".$version->getOriginalFileName()."
  • \n"; if ($file_exists) print "
  • ". formatted_size(filesize($dms->contentDir . $version->getPath())) ." ".$version->getMimeType()."
  • "; else print "
  • ".getMLText("document_deleted")."
  • "; $updatingUser = $version->getUser(); print "
  • ".getMLText("uploaded_by")." getEmail()."\">".$updatingUser->getFullName()."
  • "; print "
  • ".getLongReadableDate($version->getDate())."
  • "; print "
\n"; print "
".$version->getComment()."".getOverallStatusText($vstat["status"]).""; print ""; print "
\n"; } else printMLText("no_previous_versions"); UI::contentContainerEnd(); UI::contentHeading(getMLText("linked_files")); UI::contentContainerStart(); $files = $document->getDocumentFiles(); if (count($files) > 0) { print ""; print "\n\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n\n\n"; foreach($files as $file) { $file_exists=file_exists($dms->contentDir . $file->getPath()); $responsibleUser = $file->getUser(); print ""; print ""; print ""; print ""; print ""; } print "\n
".getMLText("file")."".getMLText("comment")."
    \n"; print "
  • ".$file->getOriginalFileName() ."
  • \n"; if ($file_exists) print "
  • ". filesize($dms->contentDir . $file->getPath()) ." bytes ".$file->getMimeType()."
  • "; else print "
  • ".$file->getMimeType()." - ".getMLText("document_deleted")."
  • "; print "
  • ".getMLText("uploaded_by")." getEmail()."\">".$responsibleUser->getFullName()."
  • "; print "
  • ".getLongReadableDate($file->getDate())."
  • "; print "
".$file->getComment().""; if (($document->getAccessMode($user) == M_ALL)||($file->getUserID()==$user->getID())) print "getID()."\">".getMLText("delete").""; print "
\n"; } else printMLText("no_attached_files"); if ($document->getAccessMode($user) >= M_READWRITE){ print "
"; print "\n"; } UI::contentContainerEnd(); UI::contentHeading(getMLText("linked_documents")); UI::contentContainerStart(); $links = $document->getDocumentLinks(); $links = filterDocumentLinks($user, $links); if (count($links) > 0) { print ""; print "\n\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n\n\n"; foreach($links as $link) { $responsibleUser = $link->getUser(); $targetDoc = $link->getTarget(); print ""; print ""; print ""; print ""; print ""; print ""; } print "\n
".getMLText("comment")."".getMLText("document_link_by")."
getID()."\" class=\"linklist\">".$targetDoc->getName()."".$targetDoc->getComment()."".$responsibleUser->getFullName(); if (($user->getID() == $responsibleUser->getID()) || ($document->getAccessMode($user) == M_ALL )) print "
".getMLText("document_link_public").":".(($link->isPublic()) ? getMLText("yes") : getMLText("no")); print "
"; if (($user->getID() == $responsibleUser->getID()) || ($document->getAccessMode($user) == M_ALL )) print "getID()."\">".getMLText("delete").""; print "
\n"; } else printMLText("no_linked_files"); if (!$user->isGuest()){ ?>
getAccessMode($user) >= M_READWRITE) { print ""; print ""; } ?>
:
".getMLText("document_link_public")."
    "; print "
  • " . getMLText("yes")."
  • "; print "
  • " . getMLText("no")."
  • "; print "
">