From 3eb4eeb3ac830449a04fbd21c6b64c12f58e03eb Mon Sep 17 00:00:00 2001 From: omar Date: Wed, 28 May 2003 09:44:43 +0000 Subject: [PATCH] Changed User Management in Admin pages --- presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupBL.php | 11 ++++++----- presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupUI.inc | 24 +++++++++++++----------- presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsBL.php | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsUI.inc | 291 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserUI.inc | 6 +++--- presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersBL.php | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersUI.inc | 218 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupBL.php | 4 ++-- presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupUI.inc | 10 ++++------ presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserUI.inc | 8 ++++---- 10 files changed, 704 insertions(+), 31 deletions(-) create mode 100644 presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsBL.php create mode 100644 presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsUI.inc create mode 100644 presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersBL.php create mode 100644 presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersUI.inc diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupBL.php b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupBL.php index 8364c3a..29162fd 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupBL.php +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupBL.php @@ -29,23 +29,24 @@ if (checkSession()) { if(!isset($fUserSet)) { // build first page - $oPatternCustom->setHtml(getPage(null,null)); + $oPatternCustom->setHtml(getPage($fUserID,null)); $main->setFormAction($_SERVER["PHP_SELF"] . "?fUserSet=1"); } else { // do a check to see both drop downs selected - if($fUserID == -1 Or $fGroupID ==-1) { - $oPatternCustom->setHtml(getPageNotSelected()); + if($fUserID == -1 Or $fGroupID ==-1 OR $fUserID=="" Or $fGroupID == "") { + $oPatternCustom->setHtml(getPageNotSelected("&fUserID=$fUserID")); } else { $oPatternCustom->setHtml(getPage($fUserID,$fGroupID)); $main->setFormAction($_SERVER["PHP_SELF"] . "?fUserSet=1&fUserAssign=1"); - } + + } } if (isset($fUserAssign)) { // else add to db and then goto page succes $oUserGroup = new GroupUserLink($fGroupID,$fUserID); if($oUserGroup->create()) { - $oPatternCustom->setHtml(getPageSuccess()); + $oPatternCustom->setHtml(getPageSuccess("&fUserID=$fUserID")); } else { $oPatternCustom->setHtml(getPageFail()); } diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupUI.inc index c146de9..81306b6 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/addUserToGroupUI.inc @@ -15,21 +15,23 @@ function getPage($iUserID, $iGroupID) { $oGroup = null; if (isset($iUserID)) { - $oUser = User::get($iUserID); - $heading = "Are you Sure you wish to assign the User to the Group?\n"; + $heading = "Please Assign the User to a Group:\n"; + $oUser = User::get($iUserID); + //$heading = "Are you Sure you wish to assign the User to the Group?\n"; } else{ $heading = "Please Assign a User to a Group:\n"; } if (isset($iGroupID)) { $oGroup = Group::get($iGroupID); } - + $sQueryString = "&fUserID=$iUserID"; + $sToRender .= "" . renderHeading("Add User to Group") . "
"; $sToRender .= "\n"; $sToRender .= $heading; $sToRender .= "\n"; - $sToRender .= "\n"; - $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; @@ -40,7 +42,7 @@ function getPage($iUserID, $iGroupID) { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= ""; $sToRender .= "
User Name: " . getUserDisplay($oUser) . "
User Name: getID() . "\">" . $oUser->getName() . "
" . getAssignButton($oUser); - $sToRender .= getCancelButton($oUser); + $sToRender .= "rootUrl/control.php?action=editUserGroups$sQueryString\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />
\n"; @@ -49,17 +51,17 @@ function getPage($iUserID, $iGroupID) { // page that comes up when there is nothing selected -function getPageNotSelected() { +function getPageNotSelected($sQueryString) { global $default; $sToRender .= "" . renderHeading("Add User to Group") . "
"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "\n"; + $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "\n"; + $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "
Sorry, Selection Failed
Please select BOTH a User AND a Group
Please select Group
rootUrl/control.php?action=addUserToGroup\">graphicsUrl/widgets/back.gif\" border = \"0\" />rootUrl/control.php?action=addUserToGroup$sQueryString\">graphicsUrl/widgets/back.gif\" border = \"0\" />
\n"; @@ -68,7 +70,7 @@ function getPageNotSelected() { } //if addition successful -function getPageSuccess() { +function getPageSuccess($sQueryString) { global $default; $sToRender .= "" . renderHeading("Add User to Group") . "
"; @@ -78,7 +80,7 @@ function getPageSuccess() { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "rootUrl/control.php?action=addUserToGroup\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; + $sToRender .= "rootUrl/control.php?action=addUserToGroup$sQueryString\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; $sToRender .= "\n"; $sToRender .= "\n"; diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsBL.php b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsBL.php new file mode 100644 index 0000000..802d237 --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsBL.php @@ -0,0 +1,68 @@ +fileSystemRoot/lib/visualpatterns/PatternListBox.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCreate.inc"); + require_once("editUserGroupsUI.inc"); + require_once("../adminUI.inc"); + require_once("$default->fileSystemRoot/lib/groups/Group.inc"); + require_once("$default->fileSystemRoot/lib/users/User.inc"); + require_once("$default->fileSystemRoot/lib/groups/GroupUserLink.inc"); + require_once("$default->fileSystemRoot/lib/security/permission.inc"); + require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); + require_once("$default->fileSystemRoot/lib/foldermanagement/Folder.inc"); + require_once("$default->fileSystemRoot/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); + require_once("$default->fileSystemRoot/presentation/Html.inc"); + + $oPatternCustom = & new PatternCustom(); + + if(isset($fUserID)) { //isset($fUserSet)) { + // do a check to see both drop downs selected + if($fUserID == -1) { + $oPatternCustom->setHtml(getPageNotSelected()); + } else { + $faGroupID = GroupUserLink::getGroups($fUserID); + $oPatternCustom->setHtml(getGroupPage($fUserID,$faGroupID)); + $main->setFormAction($_SERVER["PHP_SELF"] . "?fUserSet=1&fGroupSet=1"); + } + } else { + // build first page + $oPatternCustom->setHtml(getPage(null,null)); + $main->setFormAction($_SERVER["PHP_SELF"] . "?fUserSet=1"); + } + + if(isset($fGroupSet)) { + if($fOtherGroupID) { + $oPatternCustom->setHtml("Add"); + } else { + $oPatternCustom->setHtml("Delete"); + $main->setFormAction($_SERVER["PHP_SELF"] . "?fDeleteConfirmed=1&fGroupID=$fGroupID"); + } + } + + if (isset($fDeleteConfirmed)) { + // else add to db and then goto page succes + $oUserGroup = new GroupUserLink($fGroupID, $fUserID); + $oUserGroup->setUserGroupID($fGroupID,$fUserID); + if($oUserGroup->delete()) { + $oPatternCustom->setHtml(getPageSuccess()); + } else { + $oPatternCustom->setHtml(getPageFail()); + } + } + + // render page + $main->setCentralPayload($oPatternCustom); + $main->render(); +} +?> diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsUI.inc new file mode 100644 index 0000000..a1f1e5c --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserGroupsUI.inc @@ -0,0 +1,291 @@ +Please select a User:\n"; + } + + $sToRender .= "" . renderHeading("Edit User Groups") . "
"; + $sToRender .= "\n"; + $sToRender .= $heading; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "
User Name: " . getUserDisplay($oUser) . "
\n"; + + return $sToRender; +} + + + +// get page for removal +function getGroupPage($iUserID, $aGroup) { + global $default; + $oUser = null; + $oGroup = null; + + // change headings if User selected + if (isset($iUserID)) { + $oUser = User::get($iUserID); + } + + // change headings if User selected + if (isset($fGroupID)) { + $oGroup = Group::get($fGroupID); + echo "what: " . $oGroup->getName(); + } + + // when Groupid is gotten show the name + if (!isset($oGroup)) { + $Groupdisplay = " Current Groups " . getGroupDisplay($aGroup) . "\n"; + } else { + $Groupdisplay = "Group Name: " . $oGroup->getName() . "\n"; + + } + $OtherGroupdisplay = "  Group Name: " . getOtherGroupDisplay($oGroup) . "\n"; + $sFontTag .= ""; + $sTableTag .= ""; + $sBgColor = "#F5F6EE"; + + + + $sToRender .= "
"; + $sToRender .= renderHeading("Edit User Groups"); + $sToRender .= "
"; + + $sToRender .= ""; + $sToRender .= "\n"; + $sToRender .= "
User Name: " . getUserDisplay($oUser) . ""; + $sToRender .= "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/back.gif\" border = \"0\" />"; + $sToRender .= "
"; + + $sToRender .= ""; + $sToRender .= "
"; + $sToRender .= ""; + + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "
" . $Groupdisplay . "

"; + + $sToRender .= "
\n"; + + $sToRender .= "\n"; + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= "
Options
"; + $sToRender .= "
  Add user to a group

"; + $sToRender .= "
"; + $sToRender .= "rootUrl/control.php?action=addUserToGroup&fUserID=$iUserID\">graphicsUrl/widgets/select.gif\">"; + $sToRender .= "
"; + $sToRender .= "
  Remove user from a group

"; + $sToRender .= "
"; + $sToRender .= "rootUrl/control.php?action=removeUserFromGroup&fUserID=$iUserID\">graphicsUrl/widgets/select.gif\">"; + $sToRender .= "
\n"; + + $sToRender .= "
\n"; + + return $sToRender; +} + +// get page for removal +function getDeleteConfirmedPage($iUserID,$fGroupID) { + global $default; + $oUser = null; + $oGroup = null; + + // change headings if User selected + if (isset($iUserID)) { + $oUser = User::get($iUserID); + $heading = "Are you sure you wish to remove this user from the Group?"; + } + + // change headings if User selected + if (isset($fGroupID)) { + $oGroup = Group::get($fGroupID); + $Groupdisplay = "Group Name: " . $oGroup->getName() . "\n"; + } + + $sToRender .= "" . renderHeading("Edit User Groups") . "
"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= $heading; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= $Groupdisplay; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "
User Name: " . getUserDisplay($oUser) . "
" . getDeleteButton($oUser); + $sToRender .= "" . getCancelButton($oUser); + $sToRender .= "
\n"; + + + return $sToRender; +} + +// show paig if deletion fails +function getPageFail() { + global $default; + + $sToRender .= "" . renderHeading("Edit User Groups") . "
"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + + $sToRender .= "
Sorry, Removal Failed
rootUrl/control.php?action=removeUserFromGroup\">graphicsUrl/widgets/back.gif\" border = \"0\" />
\n"; + + + return $sToRender; +} + +// show success page if removed from Group successfully +function getPageSuccess() { + global $default; + + $sToRender .= "" . renderHeading("Edit User Groups") . "
"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "
Success!
The User was successfully removed from the Group
rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/back.gif\" border = \"0\" />
\n"; + + + return $sToRender; +} +// show listbox of Users belonging to Users_Groups_link table +function getUserDisplay($oUser) { + global $default; + if (!isset($oUser)) { + $oPatternListBox = & new PatternListBox($default->owl_users_table, "username", "id", "fUserID"); + if (Permission::userIsUnitAdministrator()) { + $oPatternListBox->setFromClause("INNER JOIN $default->owl_users_groups_table UGL on ST.id=UGL.user_id " . + "INNER JOIN $default->owl_groups_units_table GUL on UGL.group_id=GUL.group_id"); + $oPatternListBox->setWhereClause("GUL.unit_id=" . User::getUnitID($_SESSION["userID"])); + } + $oPatternListBox->setPostBackOnChange(true); + return $oPatternListBox->render(); + } else { + return "iId . "\">\n" . + $oUser->getUserName(); + } +} + +// display the listbox initially ..then just display the text +function getOtherGroupDisplay($oGroup) { + global $default; + if (!isset($oGroup)) { + if (Permission::userIsSystemAdministrator()) { + // if this is the system administrator, prepend group names with unit name + $oPatternListBox = & new PatternListBox($default->owl_groups_table, "name", "id", "fOtherGroupID"); + $oPatternListBox->setFromClause("LEFT OUTER JOIN groups_units_link GUL on ST.id=GUL.group_id " . + "LEFT OUTER JOIN units_lookup UL on GUL.unit_id=UL.id"); + $oPatternListBox->setCompositeDisplayName("DISTINCT COALESCE(CONCAT(CONCAT(UL.name, '-'),ST.name),ST.name)"); + } else if (Permission::userIsUnitAdministrator()) { + // else if this is a unit administrator, only display the groups in your unit + $oPatternListBox = & new PatternListBox($default->owl_groups_table, "name", "id", "fOtherGroupID"); + $oPatternListBox->setFromClause("INNER JOIN $default->owl_groups_units_table GUL on ST.id=GUL.group_id"); + $oPatternListBox->setWhereClause("GUL.unit_id=" . User::getUnitID($_SESSION["userID"])); + } + return $oPatternListBox->render(); + } else { + return "iId . "\">\n" . + $oGroup->getName(); + } +} +// show Group details on confirm deletion page +function getGroupDisplay($aGroup) { + global $default; + + $sBgColor = "#F5F6EE"; + $oGroup= null; + $sGroup = ""; + for ($i=0;$i < count($aGroup);$i++) { + $oGroup= Group::get($aGroup[$i]); + $Options .= "\n"; + } + $sGroup .= $Options . "
" . ($i+1) . "". $oGroup->getName() ."
"; + return $sGroup; + + /*$oGroup= null; + $sGroup = ""; + return $sGroup;*/ +} + + +// show delete button or select button +function getDeleteButton($oUser) { + global $default; + if (!isset($oUser)) { + return "graphicsUrl/widgets/select.gif\" value=\"submit\" border=\"0\"/>\n"; + } else { + return "graphicsUrl/widgets/delete.gif\" value=\"submit\" border=\"0\"/>\n"; + } +} + + +// show delete button or select button +function getSelectButton($oUser) { + global $default; + if (!isset($oUser)) { + return "graphicsUrl/widgets/select.gif\" value=\"submit\" border=\"0\"/>\n"; + } else { + return "graphicsUrl/widgets/select.gif\" value=\"submit\" border=\"0\"/>\n"; + } +} +// show cancel button +function getCancelButton($oUser) { + global $default; + if (!isset($oUser)) { + //return "rootUrl/control.php?action=UserManagement\">graphicsUrl/widgets/cancel.gif\" value=\"cancel\" />\n"; + } + else { + return "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; + } +} + + +?> \ No newline at end of file diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserUI.inc index b1259c8..df54cba 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/editUserUI.inc @@ -76,7 +76,7 @@ function getEditPageSuccess() { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "rootUrl/control.php?action=editUser\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; + $sToRender .= "rootUrl/control.php?action=listUsers&\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; $sToRender .= "\n"; $sToRender .= "\n"; @@ -134,8 +134,8 @@ function getCancelButton($oUser) { global $default; if (!isset($oUser)) { return "rootUrl/control.php?action=userManagement\">graphicsUrl/widgets/cancel.gif\" value=\"cancel\" border=\"0\"/>\n"; - } else { - return "rootUrl/control.php?action=editUser\">graphicsUrl/widgets/cancel.gif\" border=\"0\" />\n"; + } else { + return "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/cancel.gif\" border=\"0\" />\n"; } } ?> \ No newline at end of file diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersBL.php b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersBL.php new file mode 100644 index 0000000..8d13fa6 --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersBL.php @@ -0,0 +1,95 @@ +fileSystemRoot/lib/visualpatterns/PatternCreate.inc"); + require_once("ListUsersUI.inc"); + require_once("../adminUI.inc"); + require_once("$default->fileSystemRoot/presentation/lookAndFeel/knowledgeTree/foldermanagement/folderUI.inc"); + require_once("$default->fileSystemRoot/lib/documentmanagement/Document.inc"); + require_once("$default->fileSystemRoot/lib/foldermanagement/Folder.inc"); + require_once("$default->fileSystemRoot/lib/users/User.inc"); + require_once("$default->fileSystemRoot/lib/security/permission.inc"); + require_once("$default->fileSystemRoot/presentation/webpageTemplate.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternCustom.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternTableSqlQuery.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternBrowsableSearchResults.inc"); + require_once("$default->fileSystemRoot/lib/visualpatterns/PatternListBox.inc"); + require_once("$default->fileSystemRoot/lib/discussions/DiscussionThread.inc"); + require_once("$default->fileSystemRoot/lib/discussions/DiscussionComment.inc"); + require_once("$default->fileSystemRoot/presentation/Html.inc"); + + + $oPatternCustom = & new PatternCustom(); + +if(checkSession()) { + + $oPatternCustom->addHtml(""); // Create the Heading + $oPatternCustom->addHtml(renderHeading("Current System Users")); // Create the Heading + $oPatternCustom->addHtml("
"); // Create the Heading + + $oPatternCustom->addHtml("
Filter by group "); // + if (isset($fGroupID)) { // Check if should use the query string OR ... + $sFilterOptions = getFilterOptions($fGroupID); + $oPatternCustom->addHtml($sFilterOptions . "
\n"); // Get Groups Dropdown for filter option + } else { // ... should use session variable + $sFilterOptions = getFilterOptions($_SESSION['UserGroupFilter'][0]->iSessionGroupID); + $oPatternCustom->addHtml(getFilterOptions($sFilterOptions) . ""); // Get Groups Dropdown for filter option + } + $oPatternCustom->addHtml(getSubmit()); + $oPatternCustom->addHtml("


"); + $main->setFormAction($_SERVER['PHP_SELF']); + + + if($fGroupID == "") { // Used when user wants to filter by group + $sQuery = "SELECT users.id as userID, users.name as name, username, " . + "'Edit' , 'Delete', 'Edit Groups' " . + "FROM users " . + "ORDER BY users.name"; + $_SESSION['UserGroupFilter'][0]->iSessionGroupID = ""; + + } else { // List all users on the system + if (isset($fGroupID)) { + $_SESSION['UserGroupFilter'][0]->iSessionGroupID = $fGroupID ; + } else { + $fGroupID = $_SESSION['UserGroupFilter'][0]->iSessionGroupID; + } + $sQuery = "SELECT users.id as userID, users.name as name, username, " . + "'Edit' , 'Delete', 'Edit Groups' , users_groups_link.group_id " . + "FROM users inner JOIN users_groups_link ON users.id = users_groups_link.user_id " . + "WHERE users_groups_link.group_id = $fGroupID " . + "ORDER BY users.name"; + } + + $aColumns = array("name", "username", "Edit", "Delete", "Edit Groups"); + $aColumnNames = array("Name", "Username", "Edit", "Delete", "Edit Groups"); + $aColumnTypes = array(1,1,3,3,3); + $aDBColumnArray = array("userID"); + $aQueryStringVariableNames = array("fUserID"); + + $aHyperLinkURL = array( 2=> "$default->rootUrl/control.php?action=editUser", + 3=> "$default->rootUrl/control.php?action=removeUser", + 4=> "$default->rootUrl/control.php?action=editUserGroups"); //"$default->rootUrl/control.php?action=removeUserFromGroup"); + + $oSearchResults = & new PatternTableSqlQuery($sQuery, $aColumns, $aColumnTypes, $aColumnNames, "100%", $aHyperLinkURL,$aDBColumnArray,$aQueryStringVariableNames); + + $oSearchResults->setDisplayColumnHeadings(true); + $htmlTables = $oSearchResults->render() ; + + $oPatternCustom->addHtml($htmlTables); + + } // end of if checksession + + $main->setCentralPayload($oPatternCustom); + $main->render(); +} +?> diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersUI.inc new file mode 100644 index 0000000..8e8563c --- /dev/null +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/listUsersUI.inc @@ -0,0 +1,218 @@ +graphicsUrl/widgets/select.gif\" value=\"submit\" border=\"0\"/>\n"; + return $sToRender; +} + +// display the listbox initially ..then just display the text +function getGroupDisplay($oGroup, $iSelectedValue = 0) { + global $default; + if (!isset($oGroup)) { + if (Permission::userIsSystemAdministrator()) { + // if this is the system administrator, prepend group names with unit name + $oPatternListBox = & new PatternListBox($default->owl_groups_table, "name", "id", "fGroupID"); + $oPatternListBox->setFromClause("LEFT OUTER JOIN groups_units_link GUL on ST.id=GUL.group_id " . + "LEFT OUTER JOIN units_lookup UL on GUL.unit_id=UL.id"); + $oPatternListBox->setCompositeDisplayName("DISTINCT COALESCE(CONCAT(CONCAT(UL.name, '-'),ST.name),ST.name)"); + } else if (Permission::userIsUnitAdministrator()) { + // else if this is a unit administrator, only display the groups in your unit + $oPatternListBox = & new PatternListBox($default->owl_groups_table, "name", "id", "fGroupID"); + $oPatternListBox->setFromClause("INNER JOIN $default->owl_groups_units_table GUL on ST.id=GUL.group_id"); + $oPatternListBox->setWhereClause("GUL.unit_id=" . User::getUnitID($_SESSION["userID"])); + } + if ($iSelectedValue != 0) { + $oPatternListBox->setSelectedValue($iSelectedValue); + } + + return $oPatternListBox->render(); + } else { + return "iId . "\">\n" . + $oGroup->getName(); + } + +} + + +function getFilterOptions($fGroupID = 0){ + global $default; + $sToRender .= getGroupDisplay($aGroups, $fGroupID); + /* + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + + $sToRender .= "
graphicsUrl/widgets/addcomment.gif\" border=\"0\" />graphicsUrl/widgets/back.gif\" onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript: history.go(-1);\" />
\n";*/ + return $sToRender ; +} + +function getPageButtons($oThread){ + global $default; + + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + + $sToRender .= "
graphicsUrl/widgets/addcomment.gif\" border=\"0\" />graphicsUrl/widgets/back.gif\" onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript: history.go(-1);\" />
\n"; + //$sToRender .= "graphicsUrl/widgets/addcomment.gif\" border=\"0\" />\n"; + //$sToRender .= "graphicsUrl/widgets/back.gif\" onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript: history.go(-1);\" />\n"; + + return $sToRender ; +} + +// If there are no threads to view for a document +function getViewFailPage($sMessage) +{ + global $default; + + if (strlen($sMessage)>0){ + $sToRender = $sMessage; + } + else $sToRender = "Current document has no discussion. Press the ADD button to start a discussion."; + + return $sToRender; +} + +/** + * Page to create a new thread + * + * @param $fDocumentID -> a valid document ID + */ +function getNewThreadOption($fDocumentID) { + global $default; + + $sToRender .= "Would you like to create a new Discussion thread for this document?"; + $sToRender .= "   "; + $sToRender .= "graphicsUrl/widgets/new.gif\" border=\"0\">"; + $sToRender .= "graphicsUrl/widgets/cancel.gif\" border=\"0\">"; + + return $sToRender; +} + +/** + * Renders the heading for the page + * + * @param $sHeading -> text heading for the page + */ +function renderHeading1($sHeading) { + global $default; + + $sSectionName = $default->siteMap->getSectionName(substr($_SERVER["PHP_SELF"], strlen($default->rootUrl), strlen($_SERVER["PHP_SELF"]))); + $sColor = $default->siteMap->getSectionColour($sSectionName, "th"); + $sToRender = "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "
$sHeading
\n"; + return $sToRender; +} + +/** + * Renders the path for the document + * + * @param $fDocumentID -> a valid document ID + */ +function renderDocumentPath($iDocumentID) { + global $default; + + $oDocument = & Document::get($iDocumentID); + $sSectionName = $default->siteMap->getSectionName(substr($_SERVER["PHP_SELF"], strlen($default->rootUrl), strlen($_SERVER["PHP_SELF"]))); + $sTDBGColour = $default->siteMap->getSectionColour($sSectionName, "td"); + $sDocumentPath = displayFolderPathLink(Folder::getFolderPathAsArray($oDocument->getFolderID()), Folder::getFolderPathNamesAsArray($oDocument->getFolderID()), "$default->rootUrl/control.php?action=browse") . " > "; + $sDocumentPath .= "rootUrl/presentation/lookAndFeel/knowledgeTree/documentmanagement/viewBL.php?fDocumentID=" . $oDocument->getID() . "&fForInlineView=1\">" . $oDocument->getName() . ""; + return "
$sDocumentPath
\n"; +} + +/** + * Views the list of comments for a document + * Prints out 1 comment + * User needs to call this function many times to list all comments + * + * @param $iNum -> its the iterative index of the current comment + * @param $iThread -> a valid Thread Object + * @param $oComment -> a valid Comment Object + * @param $oUser -> a valid User Object (Logged in user) + */ +function getViewComment($iNum,$oThread,$oComment,$oUser) { + global $default; + + $iSubjectChars = 59; + // If iNum is odd then highlight it + if (($iNum%2) == 1) $BGcolor = "#F5F6EE"; + if (($iNum%2) == 0) $UserBGcolor = "#F5F6EE"; + + // If the Subject string is too long + if (strlen($oComment->getSubject())>$iSubjectChars ) $dotdot = " ..."; + if (strlen($oUser->getUserName())> 13 ) $Userdotdot = " ..."; + + // If this is the first Subject line then create a table + if ($iNum == 1) { + $sHeading = "Document Discussion Comments"; + + $sToRender .= renderHeading($sHeading ); + $sToRender .= renderDocumentPath($oThread->getDocumentID()); + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= ""; + $sToRender .= "
Views: " . $oThread->getNumberOfViews() . "Replies: " . $oThread->getNumberOfReplies() . "graphicsUrl/widgets/addcomment.gif\" border=\"0\" />"; + $sToRender .= "graphicsUrl/widgets/back.gif\" onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript: history.go(-1);\" >

\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + } + + $sToRender .= "\n"; + $sToRender .= "\n"; + $sToRender .= "\n"; + + // If this is the last subject line then close the table + if ($iNum == ($oThread->getNumberOfReplies())) { $sToRender .= "\n
SubjectAuthorDate
$iNum getID() . "&iDocumentID=" . $oThread->getDocumentID() . "\" title=\"" . $oComment->getSubject() . "\">" . substr($oComment->getSubject(),0,$iSubjectChars ) . $dotdot . "getUserName()\">" . substr($oUser->getUserName(),0,10) . $Userdotdot . "" . $oComment->getDate() . "
\n\n";} + return $sToRender; +} + +/** + * Views a single thread comment with its text body + * + * @param $iDocumentID -> a valid Document ID + * @param $oComment -> a valid Comment Object + * @param $oUser -> a valid User Object (Logged in user) + */ +function getCommentBody($oComment, $iDocumentID, $oUser) { + global $default; + + $sHeading = "Document Comment"; + + $sToRender .= renderHeading($sHeading); + $sToRender .= renderDocumentPath($iDocumentID); + + $sToRender .= "
\n"; + $sToRender .= "\n"; + $sToRender .= ""; + + $sToRender .= "
Author: " . $oUser->getUserName() . "\n"; + $sToRender .= "getID()) . "\">graphicsUrl/widgets/reply.gif\" border=\"0\" />"; + $sToRender .= "graphicsUrl/widgets/back.gif\" onmouseover=\"this.style.cursor='hand'\" onclick=\"javascript: history.go(-1);\" >
Subject: "; + $sToRender .= "" . $oComment->getSubject() . ""; + $sToRender .= "Date: " . $oComment->getDate() . "   
"; + $sToRender .= "
"; + $sToRender .= urldecode(str_replace("%0D%0A","
",str_replace("+", " ",$oComment->getBody()))); // Div Views as HTML + $sToRender .= "
"; + + return $sToRender; +} + +?> \ No newline at end of file diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupBL.php b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupBL.php index 764f46c..630bec0 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupBL.php +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupBL.php @@ -26,7 +26,7 @@ if (checkSession()) { $oPatternCustom = & new PatternCustom(); - if(isset($fUserSet)) { + if(isset($fUserID)) { //isset($fUserSet)) { // do a check to see both drop downs selected if($fUserID == -1) { $oPatternCustom->setHtml(getPageNotSelected()); @@ -51,7 +51,7 @@ if (checkSession()) { $oUserGroup = new GroupUserLink($fGroupID, $fUserID); $oUserGroup->setUserGroupID($fGroupID,$fUserID); if($oUserGroup->delete()) { - $oPatternCustom->setHtml(getPageSuccess()); + $oPatternCustom->setHtml(getPageSuccess($fUserID)); } else { $oPatternCustom->setHtml(getPageFail()); } diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupUI.inc index 66a004f..15ec2ac 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserFromGroupUI.inc @@ -33,11 +33,9 @@ function getPage($iUserID) { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - //$sToRender .= "" . getDeleteButton($oUser); - //$sToRender .= "" . getCancelButton($oUser); + $sToRender .= "\n"; - return $sToRender; } @@ -154,7 +152,7 @@ function getPageFail() { } // show success page if removed from Group successfully -function getPageSuccess() { +function getPageSuccess($fUserID) { global $default; $sToRender .= "" . renderHeading("Remove User From Group") . "
"; @@ -165,7 +163,7 @@ function getPageSuccess() { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "rootUrl/control.php?action=removeUserFromGroup\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; + $sToRender .= "rootUrl/control.php?action=editUserGroups&fUserID=$fUserID\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; $sToRender .= "\n"; $sToRender .= "\n"; @@ -233,7 +231,7 @@ function getCancelButton($oUser) { //return "rootUrl/control.php?action=UserManagement\">graphicsUrl/widgets/cancel.gif\" value=\"cancel\" />\n"; } else { - return "rootUrl/control.php?action=removeUserFromGroup\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; + return "rootUrl/control.php?action=editUserGroups&fUserID=" . $oUser->getID() . "\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; } } diff --git a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserUI.inc b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserUI.inc index afea68b..bb1f69e 100644 --- a/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserUI.inc +++ b/presentation/lookAndFeel/knowledgeTree/administration/usermanagement/removeUserUI.inc @@ -52,7 +52,7 @@ function getDeleteSuccessPage() { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "rootUrl/control.php?action=removeUser\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; + $sToRender .= "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; $sToRender .= "\n"; $sToRender .= "\n"; @@ -71,7 +71,7 @@ function getDeleteFailPage() { $sToRender .= "\n"; $sToRender .= "\n"; $sToRender .= "\n"; - $sToRender .= "rootUrl/control.php?action=removeUser\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; + $sToRender .= "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/back.gif\" border = \"0\" />\n"; $sToRender .= "\n"; return $sToRender; @@ -147,7 +147,7 @@ function getUserDetails($oUser) { function getDeleteButton($oUser) { global $default; return "graphicsUrl/widgets/delete.gif\" value=\"submit\" border=\"0\"/>\n". - "rootUrl/control.php?action=removeUser\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; + "rootUrl/control.php?action=listUsers\">graphicsUrl/widgets/cancel.gif\" border=\"0\" />\n"; } @@ -158,7 +158,7 @@ function getCancelButton($oUser) { return "rootUrl/control.php?action=userAdministration\">graphicsUrl/widgets/cancel.gif\" value=\"cancel\" />\n"; } else { - return "rootUrl/control.php?action=removeUser\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; + return "rootUrl/control.php?action=removeUser\">graphicsUrl/widgets/cancel.gif\" border = \"0\" />\n"; } } -- libgit2 0.21.4