diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeBL.php b/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeBL.php
new file mode 100644
index 0000000..645dbac
--- /dev/null
+++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeBL.php
@@ -0,0 +1,66 @@
+fileSystemRoot/lib/visualpatterns/PatternCustom.inc");
+ require_once("$default->fileSystemRoot/lib/foldermanagement/Folder.inc");
+ require_once("$default->fileSystemRoot/lib/visualpatterns/PatternListBox.inc");
+ require_once("$default->fileSystemRoot/lib/foldermanagement/FolderDocTypeLink.inc");
+ require_once("$default->fileSystemRoot/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc");
+ require_once("$default->fileSystemRoot/presentation/Html.inc");
+ require_once("addFolderDocTypeUI.inc");
+
+ $oPatternCustom = & new PatternCustom();
+
+ if (Permission::userHasFolderWritePermission($fFolderID)) {
+ if (isset($fForAdd)) {
+ //user has selected a document type
+ if (Folder::folderIsLinkedToDocType($fFolderID, $fDocumentTypeID)) {
+ //if the folder is already assigned this document type
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID, $fDocumentTypeID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("The folder has already been assigned this document type");
+ $main->setFormAction("addFolderDocTypeBL.php?fForAdd=1&fFolderID=$fFolderID");
+ $main->render();
+
+ } else {
+ $oFolderDocType = & new FolderDocTypeLink($fFolderID,$fDocumentTypeID);
+ if ($oFolderDocType->create()) {
+ redirect("$default->rootUrl/control.php?action=editFolder&fFolderID=$fFolderID");
+ } else {
+ //error creating document in the db
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID, $fDocumentTypeID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("A database error occured while attempting to assig the document type to the folder");
+ $main->setFormAction("addFolderDocTypeBL.php?fForAdd=1&fFolderID=$fFolderID");
+ $main->render();
+ }
+ }
+ } else {
+ //show the user the page to assign document types
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID, $fDocumentTypeID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setFormAction("addFolderDocTypeBL.php?fForAdd=1&fFolderID=$fFolderID");
+ $main->render();
+ }
+ } else {
+ //user does not have write permission for this folder
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml("");
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("You do not have permission to assign a document type to this folder");
+ $main->render();
+ }
+}
+
+?>
diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeUI.inc b/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeUI.inc
new file mode 100644
index 0000000..2dc56ac
--- /dev/null
+++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/addFolderDocTypeUI.inc
@@ -0,0 +1,40 @@
+\n";
+ $sToRender .= "
\n";
+ $sToRender .= "\t| " . renderFolderPath($iFolderID, "$default->uiUrl/foldermanagement/addFolderBL.php") . " | \n";
+ $sToRender .= "
\n";
+ $sToRender .= "\n";
+ $sToRender .= "\n";
+ $sToRender .= "\n";
+ $sToRender .= "| Document type: | \n";
+ $sToRender .= "" . getDocumentTypeDropDown($iDocumentTypeID) . " | \n";
+ $sToRender .= "
\n";
+ $sToRender .= "\n";
+ $sToRender .= " |   | \n";
+ $sToRender .= "
\n";
+ $sToRender .= "
\n";
+
+ return $sToRender;
+}
+
+function getDocumentTypeDropDown($iDocumentTypeID) {
+ global $default;
+ $oPatternListBox = & new PatternListBox("$default->owl_document_types_table", "name", "id", "fDocumentTypeID");
+ $oPatternListBox->setIncludeDefaultValue(false);
+ if (isset($iDocumentTypeID)) {
+ $oPatternListBox->setSelectedValue($iDocumentTypeID);
+ }
+ return $oPatternListBox->render();
+}
+
+?>
diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeBL.php b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeBL.php
new file mode 100644
index 0000000..5ea0205
--- /dev/null
+++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeBL.php
@@ -0,0 +1,59 @@
+fileSystemRoot/lib/visualpatterns/PatternCustom.inc");
+ require_once("$default->fileSystemRoot/lib/foldermanagement/Folder.inc");
+ require_once("$default->fileSystemRoot/lib/documentmanagement/Document.inc");
+ require_once("$default->fileSystemRoot/lib/visualpatterns/PatternListBox.inc");
+ require_once("$default->fileSystemRoot/lib/foldermanagement/FolderDocTypeLink.inc");
+ require_once("$default->fileSystemRoot/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc");
+ require_once("$default->fileSystemRoot/presentation/Html.inc");
+ require_once("deleteFolderDocTypeUI.inc");
+
+ $oPatternCustom = & new PatternCustom();
+
+ if (Permission::userHasFolderWritePermission($fFolderID)) {
+ //user has permission to delete
+ if (isset($fFolderDocTypeID)) {
+ //the required variables exist
+ if (Document::documentIsAssignedDocTypeInFolder($fFolderID, $fFolderDocTypeID)) {
+ //there is a document in the folder assigned this type, so
+ //it may not be deleted
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("A document in this folder is currently assigned this type. You may not delete it.");
+ $main->render();
+ } else {
+ //go ahead and delete
+ $oFolderDocTypeLink = FolderDocTypeLink::get($fFolderDocTypeID);
+ if ($oFolderDocTypeLink->delete()) {
+ redirect("$default->rootUrl/control.php?action=editFolder&fFolderID=$fFolderID");
+ } else {
+ //there was a problem deleting from the database
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("An error was encountered while attempting to delete this link from the database");
+ $main->render();
+ }
+ }
+ }
+ } else {
+ //user does not have permission to delete this document type
+ require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc");
+ $oPatternCustom->setHtml(getPage($fFolderID));
+ $main->setCentralPayload($oPatternCustom);
+ $main->setErrorMessage("You do not have permission to remove this document type from this folder");
+ $main->render();
+ }
+}
+?>
diff --git a/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeUI.inc b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeUI.inc
new file mode 100644
index 0000000..8c979fc
--- /dev/null
+++ b/presentation/lookAndFeel/knowledgeTree/foldermanagement/deleteFolderDocTypeUI.inc
@@ -0,0 +1,27 @@
+\n";
+ $sToRender .= "\n";
+ $sToRender .= "\t| " . renderFolderPath($iFolderID, "$default->uiUrl/control.php?action=editFolder&fFolderID=$iFolderID") . " | \n";
+ $sToRender .= "
\n";
+ $sToRender .= "\n";
+ $sToRender .= "
\n";
+
+ return $sToRender;
+}
+
+?>