diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/collaborationBL.php b/presentation/lookAndFeel/knowledgeTree/foldermanagement/collaborationBL.php index 4557c3c..2b0171d 100644 --- a/presentation/lookAndFeel/knowledgeTree/foldermanagement/collaborationBL.php +++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/collaborationBL.php @@ -46,29 +46,21 @@ if (checkSession()) { $oFolderCollaboration->setSequenceNumber($fSequenceNumber); $oFolderCollaboration->update(); redirect("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID"); - } else { - //we are editing an existing entry - require_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getEditPage($fFolderCollaborationID, $fFolderID)); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID")); - $main->render(); - } - /*if (isset($fForAdd)) { - require_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getEditPage($fFolderCollaborationID, $fFolderID)); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fForCreate=1"); - $main->render(); - } else { - require_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getEditPage($fFolderCollaborationID, $fFolderID)); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=editFolder&fFolderID$fFolderID")); - $main->render(); - }*/ + } else { + $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); + if ($oFolderCollaboration->hasDocumentInProcess()) { + //you cannot alter collaboration process at the folder level if a document is currently + //going through the process + redirect("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID&fCollaborationEdit=0"); + } else { + //we are editing an existing entry + require_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); + $oPatternCustom = & new PatternCustom(); + $oPatternCustom->setHtml(getEditPage($fFolderCollaborationID, $fFolderID)); + $main->setCentralPayload($oPatternCustom); + $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID")); + $main->render(); + } + } } ?> diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderCollaborationBL.php b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderCollaborationBL.php index 5d57686..a39d168 100644 --- a/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderCollaborationBL.php +++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderCollaborationBL.php @@ -23,85 +23,72 @@ if (checkSession()) { include_once("$default->owl_fs_root/lib/groups/Group.inc"); include_once("$default->owl_fs_root/lib/roles/Role.inc"); if (Permission::userHasFolderWritePermission($fFolderID)) { - //can only create new collaboration steps if the user has folder write permission - if (isset($fForDelete)) { - //attempt to delete the new folder collaboration entry - $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); + //can only delete new collaboration steps if the user has folder write permission + if (isset($fForDelete)) { + if ($oFolderCollaboration->delete()) { + //on successful deletion, redirect to the folder edit page + include_once("$default->owl_fs_root/presentation/Html.inc"); + redirect("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID"); + } else { + //otherwise display an error message + include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); + include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); + + include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); + include_once("$default->owl_fs_root/presentation/Html.inc"); + include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); + include_once("deleteFolderCollaborationUI.inc"); + + $oPatternCustom = & new PatternCustom(); + $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); + $oPatternCustom->setHtml(getPage($oFolderCollaboration->getFolderID(), $oFolderCollaboration->getGroupID(), $oFolderCollaboration->getRoleID(), $oFolderCollaboration->getSequenceNumber())); + $main->setErrorMessage("The folder collaboration entry could not be deleted from the database"); + $main->setCentralPayload($oPatternCustom); + $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); + $main->setHasRequiredFields(true); + $main->render(); + } + } else { + $oFolderCollaboration = & FolderCollaboration::get($fFolderCollaborationID); if ($oFolderCollaboration->hasDocumentInProcess()) { + //can't delete a step in the folder collaboration process if there is a document + //currently undergoing the process + redirect("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID&fCollaborationDelete=0"); + } else { + //display the browse page include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); include_once("$default->owl_fs_root/presentation/Html.inc"); include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); include_once("deleteFolderCollaborationUI.inc"); - + $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(""); + $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); + $oPatternCustom->setHtml(getPage($oFolderCollaboration->getFolderID(), $oFolderCollaboration->getGroupID(), $oFolderCollaboration->getRoleID(), $oFolderCollaboration->getSequenceNumber())); $main->setCentralPayload($oPatternCustom); - $main->setErrorMessage("You cannot delete this step as there is a "); $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); $main->setHasRequiredFields(true); $main->render(); - } else { - if ($oFolderCollaboration->delete()) { - //on successful deletion, redirect to the folder edit page - include_once("$default->owl_fs_root/presentation/Html.inc"); - redirect("$default->owl_root_url/control.php?action=editFolder&fFolderID=$fFolderID"); - } else { - //otherwise display an error message - include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); - include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); - - include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); - include_once("$default->owl_fs_root/presentation/Html.inc"); - include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - include_once("deleteFolderCollaborationUI.inc"); - - $oPatternCustom = & new PatternCustom(); - $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); - $oPatternCustom->setHtml(getPage($oFolderCollaboration->getFolderID(), $oFolderCollaboration->getGroupID(), $oFolderCollaboration->getRoleID(), $oFolderCollaboration->getSequenceNumber())); - $main->setErrorMessage("The folder collaboration entry could not be deleted from the database"); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); - $main->setHasRequiredFields(true); - $main->render(); - - } } - } else { - //display the browse page - include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); - include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); - include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); - include_once("$default->owl_fs_root/presentation/Html.inc"); - include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - include_once("deleteFolderCollaborationUI.inc"); - - $oPatternCustom = & new PatternCustom(); - $oFolderCollaboration = FolderCollaboration::get($fFolderCollaborationID); - $oPatternCustom->setHtml(getPage($oFolderCollaboration->getFolderID(), $oFolderCollaboration->getGroupID(), $oFolderCollaboration->getRoleID(), $oFolderCollaboration->getSequenceNumber())); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); - $main->setHasRequiredFields(true); - $main->render(); } + } else { + //display an error message + include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); + include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); + include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); + include_once("$default->owl_fs_root/presentation/Html.inc"); + include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); + include_once("deleteFolderCollaborationUI.inc"); + + $oPatternCustom = & new PatternCustom(); + $oPatternCustom->setHtml(""); + $main->setCentralPayload($oPatternCustom); + $main->setErrorMessage("No folder currently selected"); + $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); + $main->setHasRequiredFields(true); + $main->render(); } - } else { - //display an error message - include_once("$default->owl_fs_root/lib/visualpatterns/PatternListBox.inc"); - include_once("$default->owl_fs_root/lib/visualpatterns/PatternCustom.inc"); - include_once("$default->owl_fs_root/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); - include_once("$default->owl_fs_root/presentation/Html.inc"); - include_once("$default->owl_fs_root/presentation/webpageTemplate.inc"); - include_once("deleteFolderCollaborationUI.inc"); - - $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(""); - $main->setCentralPayload($oPatternCustom); - $main->setErrorMessage("No folder currently selected"); - $main->setFormAction($_SERVER["PHP_SELF"] . "?fFolderID=$fFolderID&fFolderCollaborationID=$fFolderCollaborationID&fForDelete=1"); - $main->setHasRequiredFields(true); - $main->render(); } } ?> diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/editBL.php b/presentation/lookAndFeel/knowledgeTree/foldermanagement/editBL.php index 16fe897..5142e4e 100644 --- a/presentation/lookAndFeel/knowledgeTree/foldermanagement/editBL.php +++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/editBL.php @@ -25,13 +25,33 @@ if (checkSession()) { require_once("$default->owl_fs_root/presentation/Html.inc"); if (Permission::userHasFolderWritePermission($fFolderID)) { - //if the user can edit the folder + //if the user can edit the folder if (isset($fFolderID)) { - $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getPage($fFolderID)); - $main->setCentralPayload($oPatternCustom); - $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=browse&fFolderID=$fFolderID")); - $main->render(); + if (isset($fCollaborationEdit)) { + //user attempted to edit the folder collaboration process but could not because there is + //a document currently in this process + $oPatternCustom = & new PatternCustom(); + $oPatternCustom->setHtml(getPage($fFolderID)); + $main->setErrorMessage("You cannot edit this folder collaboration process as a document is currently undergoing this collaboration process"); + $main->setCentralPayload($oPatternCustom); + $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=browse&fFolderID=$fFolderID")); + $main->render(); + } else if (isset($fCollaborationDelete)) { + //user attempted to delete the folder collaboration process but could not because there is + //a document currently in this process + $oPatternCustom = & new PatternCustom(); + $oPatternCustom->setHtml(getPage($fFolderID)); + $main->setErrorMessage("You cannot delete this folder collaboration process as a document is currently undergoing this collaboration process"); + $main->setCentralPayload($oPatternCustom); + $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=browse&fFolderID=$fFolderID")); + $main->render(); + } else { + $oPatternCustom = & new PatternCustom(); + $oPatternCustom->setHtml(getPage($fFolderID)); + $main->setCentralPayload($oPatternCustom); + $main->setFormAction("../store.php?fReturnURL=" . urlencode("$default->owl_root_url/control.php?action=browse&fFolderID=$fFolderID")); + $main->render(); + } } else { //else display an error message $oPatternCustom = & new PatternCustom();