fileSystemRoot/lib/documentmanagement/Document.inc");
require_once(KT_LIB_DIR . '/documentmanagement/DocumentType.inc');
function getFolderPath($iFolderID) {
global $default;
global $default;
$sSectionName = $default->siteMap->getSectionName(substr($_SERVER["PHP_SELF"], strlen($default->rootUrl), strlen($_SERVER["PHP_SELF"])));
$sTDBGColour = $default->siteMap->getSectionColour($sSectionName, "td");
return "
| " . displayFolderPathLink(Folder::getFolderPathAsArray($iFolderID), Folder::getFolderPathNamesAsArray($iFolderID), "$default->rootUrl/control.php?action=browse") . " |
\n";
}
function getFolderData($iFolderID, $sDivName, $sStatusMessage = "") {
global $default;
$sSectionName = $default->siteMap->getSectionName(substr($_SERVER["PHP_SELF"], strlen($default->rootUrl), strlen($_SERVER["PHP_SELF"])));
$sTDBGColour = $default->siteMap->getSectionColour($sSectionName, "td");
/*ok*/ $sQuery = array("SELECT F.id, F.name, F.description, F.is_public " .
"FROM $default->folders_table AS F " .
"WHERE F.id = ?", $iFolderID);
$aColumns = array("name", "description", "is_public");
$aColumnHeaders = array(_("Name"), _("Description"), _("Public"));
$aColumnTypes = array(1,1,2);
$oPatternListFromQuery = & new PatternListFromQuery($sQuery, $aColumns, $aColumnHeaders, $aColumnTypes);
$oPatternListFromQuery->setTableHeading(_("Folder Data"));
$oPatternListFromQuery->setTableWidth("610");
$sToRender .= "";;
if ($sStatusMessage) {
return $sToRender;
} else {
return renderSectionDiv($sDivName, $sToRender);
}
}
function getFolderDocTypes($iFolderID, $sDivName) {
$sTable = KTUtil::getTableName('folder_doctypes');
$aQuery = array(
"SELECT document_type_id FROM $sTable WHERE folder_id = ?",
array($iFolderID),
);
$aSelectedIds = DBUtil::getResultArrayKey($aQuery, 'document_type_id');
$sToRender = 'Document Types
';
$oFolder =& Folder::get($iFolderID);
if ($oFolder->getRestrictDocumentTypes()) {
$sToRender .= 'Document types are restricted to the following:
';
$sToRender .= '';
foreach ($aSelectedIds as $iId) {
$oDocumentType =& DocumentType::get($iId);
$sToRender .= '- ' . $oDocumentType->getName() . '
';
}
$sToRender .= '
';
} else {
$sToRender .= 'Document types are not restricted on this folder
';
}
$sToRender .= sprintf(
'
',
$default->rootUrl, $iFolderID, KTHtml::getEditButton());
return renderSectionDiv($sDivName, $sToRender);
}
function renderSectionDiv($sDivName, $sHtml) {
global $default;
if ($default->bNN4) {
return "" . $sHtml . "
";
} else {
return "$sHtml
";
}
}
function renderFolderSection($sSectionName, $sHeadingText, $bDisplayLink, $iFolderID) {
if ($bDisplayLink) {
$sLink = generateControllerLink("editFolder", "fFolderID=$iFolderID&fShowSection=$sSectionName", $sHeadingText);
} else {
$sLink = "$sHeadingText";
}
return "| $sLink |
\n";
}
function getPage($iFolderID, $sStatusMessage) {
global $default;
$sToRender = "";
$sToRender .= renderHeading(_("Modify Folder Properties"));
$sToRender .= getFolderPath($iFolderID);
$sToRender .= "
";
$sToRender .= "";
$sToRender .= "";
// if we have a status message, then make the section links refresh to viewDocument with the fShowSection variable
// ie. effectively removes statusMessage on next click
$bDisplayLink = ($sStatusMessage) ? true : false;
$sToRender .= renderFolderSection("folderData", _("Folder Data"), $bDisplayLink, $iFolderID);
$sToRender .= renderFolderSection("documentTypes", _("Document Types"), $bDisplayLink, $iFolderID);
$sToRender .= " ";
$sToRender .= " | |
";
$sToRender .= "
";
// ugly netscape hacks
if (!$default->bNN4) {
$sToRender .= "";
}
$sToRender .= getFolderData($iFolderID, "folderData");
$sToRender .= getFolderDocTypes($iFolderID, "documentTypes");
if (!$default->bNN4) {
$sToRender .= "
";
}
return $sToRender;
}
function getStatusPage($iFolderID, $sStatusMessage) {
global $default;
$sToRender = "";
$sToRender .= renderHeading(_("Modify Folder Properties"));
$sToRender .= getFolderPath($iFolderID);
$sToRender .= "
";
// if we have a status message, then make the section links refresh to viewDocument with the fShowSection variable
// ie. effectively removes statusMessage on next click
$bDisplayLink = ($sStatusMessage) ? true : false;
$sToRender .= renderFolderSection("folderData", _("Folder Data"), $bDisplayLink, $iFolderID);
$sToRender .= renderFolderSection("documentTypes", _("Document Types"), $bDisplayLink, $iFolderID);
$sToRender .= renderFolderSection("folderPermissions", _("Folder Permissions"), $bDisplayLink, $iFolderID);
$sToRender .= "
";
$sToRender .= "
";
$sToRender .= getFolderData($iFolderID, "folderData", $sStatusMessage);
return $sToRender;
}
?>