diff --git a/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupBL.php b/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupBL.php index c1d758e..bbdf925 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupBL.php +++ b/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupBL.php @@ -28,6 +28,7 @@ require_once("../../../../../config/dmsDefaults.php"); require_once("$default->fileSystemRoot/lib/visualpatterns/PatternListBox.inc"); require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCreate.inc"); +require_once("$default->fileSystemRoot/lib/groups/Group.inc"); require_once("$default->fileSystemRoot/lib/groups/GroupUnitLink.inc"); require_once("$default->fileSystemRoot/lib/security/Permission.inc"); require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); @@ -41,9 +42,28 @@ if (checkSession()) { require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); $oPatternCustom = & new PatternCustom(); - $oPatternCustom->setHtml(getPage()); + if (isset($fGroupName) && isset($fUnitID)) { + // add new group + $oGroup = new Group($fGroupName); + if($oGroup->create()) { + // now set the group's unit + $default->log->info("set group (id=" . $oGroup->getID() . ") to unit id=$fUnitID"); + $oGroupUnit = new GroupUnitLink($oGroup->getID(), $fUnitID); + if ($oGroupUnit->create()) { + // redirect to list page + controllerRedirect("listGroups"); + } else { + $oPatternCustom->setHtml(statusPage("Add A New Group", "Addition Unsuccessful!", "There was an error associating the new group with the specified unit.", "addGroup")); + } + } else { + $oPatternCustom->setHtml(statusPage("Add A New Group", "Addition Unsuccessful!", "There was an error creating the new group (Check that a group with this name doesn't already exist).", "addGroup")); + } + } else { + // display form + $oPatternCustom->setHtml(getPage()); + } $main->setCentralPayload($oPatternCustom); - $main->setFormAction("$default->rootUrl/presentation/lookAndFeel/knowledgeTree/create.php?fRedirectURL=".urlencode("$default->rootUrl/control.php?action=editGroup&fFromCreate=1&fGroupID=")); + $main->setFormAction($_SERVER["PHP_SELF"]); $main->setHasRequiredFields(true); $main->render(); } diff --git a/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupUI.inc index bc17e0e..b893bf4 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/administration/groupmanagement/addGroupUI.inc @@ -25,38 +25,46 @@ * @package administration.groupmanagement */ -// get add pages +/** + * Builds the group addition form + */ function getPage() { - global $default; - $aDisplayRowNames = array("Group Name:"); - $aParameterNumbers = array(0); - $aDisplayColumnTypes = array(1); - $aRequired = array(1); - - // create a text field that is required - $oPatternCreate = & new PatternCreate("Group", "groups/Group.inc", $aDisplayRowNames, $aParameterNumbers, $aDisplayColumnTypes, $aRequired); - $oPatternCreate->setUniqueName("group"); - - $sToRender .= renderHeading("Add Group"); - + $sToRender .= renderHeading("Add A New Group"); $sToRender .= "
| Add a New Group to the System | |
| " . $oPatternCreate->render() . " | \n"; - $sToRender .= "|
| Group Name: | \n"; + $sToRender .= "\n"; $sToRender .= " |
| Unit | " . getUnitListBox() . " | graphicsUrl/widgets/add.gif\" value=\"Submit\" border=\"0\"/>"; $sToRender .= getCancelButton("listGroups") . " | \n"; - $sToRender .= "