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 (!isset($_GET["version"]) || !is_numeric($_GET["version"]) || intval($_GET["version"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version"));
}
$version = $_GET["version"];
$version = $document->getContentByVersion($version);
if (!is_object($version)) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version"));
}
// if version is last got out.ViewDocument
$latestContent = $document->getLatestContent();
if ($latestContent->getVersion()==$version->getVersion()) {
header("Location:../out/out.ViewDocument.php?documentid=".$documentid);
}
$status = $version->getStatus();
$reviewStatus = $version->getReviewStatus();
$approvalStatus = $version->getApprovalStatus();
UI::htmlStartPage(getMLText("document_title", array("documentname" => $document->getName())));
UI::globalNavigation($folder);
UI::pageNavigation($docPathHTML, "view_document");
UI::contentHeading(getMLText("document_infos"));
UI::contentContainerStart();
?>
: |
getOwner();
print "getEmail()."\">".htmlspecialchars($owner->getFullName())."";
?>
|
: |
getComment());?> |
: |
getDate()); ?> |
: |
getKeywords());?> |
isLocked()) {
$lockingUser = $document->getLockingUser();
?>
: |
$lockingUser->getEmail(), "username" => htmlspecialchars($lockingUser->getFullName())));?> |
contentDir . $version->getPath());
UI::contentHeading(getMLText("details_version", array ("version" => $version->getVersion())));
UI::contentContainerStart();
print "";
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\n\n";
print "\n";
print " | \n";
print "".$version->getVersion()." | \n";
print "\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()."\">".htmlspecialchars($updatingUser->getFullName())."
";
print "- ".getLongReadableDate($version->getDate())."
";
print " | \n";
print "".htmlspecialchars($version->getComment())." | ";
print "".getOverallStatusText($status["status"])." | ";
print "";
if (($document->getAccessMode($user) >= M_READWRITE)) {
print "";
}
else {
print " ";
}
echo " | ";
print "
\n
\n";
print "\n";
if (is_array($reviewStatus) && count($reviewStatus)>0) {
print "\n";
UI::contentSubHeading(getMLText("reviewers"));
print " |
\n";
print "\n";
print "".getMLText("name")." | \n";
print "".getMLText("last_update")." | \n";
print "".getMLText("comment")." | ";
print "".getMLText("status")." | \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 = htmlspecialchars($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 = htmlspecialchars($required->getName());
}
break;
}
print "\n";
print "".$reqName." | \n";
print "- ".$r["date"]."
";
$updateUser = $dms->getUser($r["userID"]);
print "- ".(is_object($updateUser) ? $updateUser->getFullName() : "unknown user id '".$r["userID"]."'")."
| ";
print "".$r["comment"]." | \n";
print "".getReviewStatusText($r["status"])." | \n";
print "
\n";
}
}
if (is_array($approvalStatus) && count($approvalStatus)>0) {
print "\n";
UI::contentSubHeading(getMLText("approvers"));
print " |
\n";
print "\n";
print "".getMLText("name")." | \n";
print "".getMLText("last_update")." | \n";
print "".getMLText("comment")." | ";
print "".getMLText("status")." | \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 = htmlspecialchars($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 = htmlspecialchars($required->getName());
}
break;
}
print "\n";
print "".$reqName." | \n";
print "- ".$a["date"]."
";
$updateUser = $dms->getUser($a["userID"]);
print "- ".(is_object($updateUser) ? htmlspecialchars($updateUser->getFullName()) : "unknown user id '".$a["userID"]."'")."
| ";
print "".$a["comment"]." | \n";
print "".getApprovalStatusText($a["status"])." | \n";
print "
\n";
}
}
print "
\n";
UI::contentContainerEnd();
UI::htmlEndPage();
?>