/** * Display list of metadata versions to compare with the selected version * * @return unknown */ function do_startComparison() { $comparison_version = KTUtil::arrayGet($_REQUEST, 'fComparisonVersion'); $oDocument =& Document::get($this->oDocument->getId(), $comparison_version); if (PEAR::isError($oDocument)) { return $this->redirectToMain(_kt('The document you selected was invalid')); } if (!Permission::userHasDocumentReadPermission($oDocument)) { return $this->errorRedirectToMain(_kt('You are not allowed to view this document')); } $this->oDocument =& $oDocument; $this->oPage->setSecondaryTitle($oDocument->getName()); $this->oPage->setBreadcrumbDetails(_kt('Select Document Version to compare against')); $aMetadataVersions = KTDocumentMetadataVersion::getByDocument($oDocument); $aVersions = array(); foreach ($aMetadataVersions as $oVersion) { $aVersions[] = Document::get($oDocument->getId(), $oVersion->getId()); } $oTemplating =& KTTemplating::getSingleton(); $oTemplate = $oTemplating->loadTemplate('ktcore/document/comparison_version_select'); $aTemplateData = array('context' => $this, 'document_id' => $this->oDocument->getId(), 'document' => $oDocument, 'versions' => $aVersions, 'downloadaction' => $oAction); return $oTemplate->render($aTemplateData); }
/** * This returns the version history on the document. * * @author KnowledgeTree Team * @access public * @return array The version history */ function get_version_history() { $metadata_versions = KTDocumentMetadataVersion::getByDocument($this->document); $config = KTConfig::getSingleton(); $wsversion = $config->get('webservice/version', LATEST_WEBSERVICE_VERSION); $versions = array(); foreach ($metadata_versions as $version) { $document =& Document::get($this->documentid, $version->getId()); $version = array(); $userid = $document->getModifiedUserId(); $user = User::get($userid); $username = '******'; if (!PEAR::isError($user)) { $username = is_null($user) ? 'n/a' : $user->getName(); } $version['user'] = $username; $version['metadata_version'] = $document->getMetadataVersion(); $version['content_version'] = $document->getVersion(); if ($wsversion >= 2) { $version['metadata_version'] = (int) $version['metadata_version']; $version['content_version'] = (double) $version['content_version']; } $versions[] = $version; } return $versions; }