From 4102c4b9a91a25e376e9e5f6905767222ed2bf21 Mon Sep 17 00:00:00 2001 From: michael Date: Tue, 29 Jul 2003 10:55:41 +0000 Subject: [PATCH] reinstated browsing when adding a dependant document --- presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentBL.php | 2 +- presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentUI.inc | 58 ++++++++++++++++++++++++++++++++++++++++++++-------------- 2 files changed, 45 insertions(+), 15 deletions(-) diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentBL.php b/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentBL.php index b1b799e..6a3465c 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentBL.php +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentBL.php @@ -166,7 +166,7 @@ if (checkSession()) { //so don't display add button require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getStatusPage($fFolderID, "You do not have permission to add a document to this folderrootUrl/control.php?action=browse&fFolderID=$fFolderID\">graphicsUrl/widgets/cancel.gif\" border=\"0\">")); + $oPatternCustom->setHtml(getPage($fFolderID, $fDocumentTypeID, $fDependantDocumentID, "You do not have permission to add a document to this folderrootUrl/control.php?action=browse&fFolderID=$fFolderID\">graphicsUrl/widgets/cancel.gif\" border=\"0\">")); $main->setCentralPayload($oPatternCustom); $main->render(); } diff --git a/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentUI.inc b/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentUI.inc index 3f12a7a..030f8cd 100644 --- a/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/documentmanagement/addDocumentUI.inc @@ -8,7 +8,7 @@ * */ -function getDocumentType($iFolderID, $iDocumentTypeID) { +function getDocumentType($iFolderID, $iDocumentTypeID, $iDependantDocumentID = null) { global $default; $sWhereClause = "FDL.folder_id = $iFolderID"; @@ -16,7 +16,7 @@ function getDocumentType($iFolderID, $iDocumentTypeID) { $oPatternListBox->setIncludeDefaultValue(true); $oPatternListBox->setFromClause("INNER JOIN $default->owl_folder_doctypes_table AS FDL ON ST.id = FDL.document_type_id"); $oPatternListBox->setPostBackOnChange(true); - $oPatternListBox->setOnChangeAction("setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fFolderID=$iFolderID')"); + $oPatternListBox->setOnChangeAction("setActionAndSubmit('" . $_SERVER["PHP_SELF"] . "?fFolderID=$iFolderID" . (isset($iDependantDocumentID) ? "&fDependantDocumentID=$iDependantDocumentID" : "") . "')"); if ($iDocumentTypeID) { $oPatternListBox->setSelectedValue($iDocumentTypeID); @@ -123,11 +123,24 @@ function getMetaDataForm($iFolderID, $iDocumentTypeID) { return $sToRender; } -function getPage($iFolderID, $iDocumentTypeID, $iDependantDocumentID = null) { +function getPage($iFolderID, $iDocumentTypeID, $iDependantDocumentID = null, $sMessage = "") { global $default; - $sToRender .= renderHeading("Add Document"); - $sToRender .= renderFolderPath($iFolderID, "", false); + if (isset($iDependantDocumentID)) { + $sQueryString = "&fDependantDocumentID=$iDependantDocumentID"; + } + + $sToRender .= renderHeading("Add " . (isset($iDependantDocumentID) ? "Dependant " : "") . "Document"); + + $sToRender .= renderFolderPath($iFolderID, "/control.php?action=addDocument" . $sQueryString, (isset($iDependantDocumentID) ? true : false)); + + if ($sMessage) { + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\t\n"; + $sToRender .= "\n"; + $sToRender .= "
$sMessage
\n"; + } if ($iDocumentTypeID) { $sToRender .= "
Document Type
" . lookupName($default->owl_document_types_table, $iDocumentTypeID) . "
"; @@ -135,17 +148,34 @@ function getPage($iFolderID, $iDocumentTypeID, $iDependantDocumentID = null) { $sToRender .= getMetaDataForm($iFolderID, $iDocumentTypeID); $sActionButtons = "graphicsUrl/widgets/add.gif\" border=\"0\"/>"; $sToRender .= ""; - $sActionButtons .= generateControllerLink("addDocument", "fFolderID=$iFolderID", "graphicsUrl/widgets/back.gif\" border=\"0\"/>") . - generateControllerLink("browse", "fFolderID=$iFolderID", "graphicsUrl/widgets/cancel.gif\" border=\"0\"/>"); + $sActionButtons .= generateControllerLink("addDocument", "fFolderID=$iFolderID" . $sQueryString , "graphicsUrl/widgets/back.gif\" border=\"0\"/>") . + generateControllerLink("browse", "fFolderID=$iFolderID", "graphicsUrl/widgets/cancel.gif\" border=\"0\"/>"); + + $sToRender .= "\n"; + $sToRender .= ""; + $sToRender .= "
$sActionButtons
"; + } else { - $sToRender .= getDocumentType($iFolderID, $iDocumentTypeID); - $sActionButtons .= generateControllerLink("browse", "fFolderID=$iFolderID", "graphicsUrl/widgets/cancel.gif\" border=\"0\"/>"); - } + // only allow document type choosing if the user has write permission + if (Permission::userHasFolderWritePermission($iFolderID)) { + $sToRender .= getDocumentType($iFolderID, $iDocumentTypeID, $iDependantDocumentID); + $sActionButtons .= generateControllerLink("browse", "fFolderID=$iFolderID", "graphicsUrl/widgets/cancel.gif\" border=\"0\"/>"); + } + + $sToRender .= "\n"; + $sToRender .= ""; + $sToRender .= "
$sActionButtons
"; + + // display folders for browsing + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\t\n"; + $sToRender .= "\n"; + $sToRender .= ""; + $sToRender .= "
" . renderFolderList($iFolderID, "/control.php?action=addDocument" . $sQueryString) . "\n"; + $sToRender .= "

\n"; + } - $sToRender .= "\n"; - $sToRender .= ""; - $sToRender .= "
$sActionButtons
"; - return $sToRender; } -- libgit2 0.21.4