Index: typo3/mod/web/perm/class.sc_mod_web_perm_ajax.php
===================================================================
--- typo3/mod/web/perm/class.sc_mod_web_perm_ajax.php (Revision 4066)
+++ typo3/mod/web/perm/class.sc_mod_web_perm_ajax.php (Arbeitskopie)
@@ -318,11 +318,12 @@
* @param Integer $page: The TYPO3 page id
* @param Integer $ownerUid: The new page user uid
* @param String $username: The TYPO3 BE username (used to display in the element)
+ * @param Boolean $validUser: Must be set to FALSE, if the user has no name or is deleted
* @return String The new group wrapped in HTML
*/
- public function renderOwnername($page, $ownerUid, $username) {
+ public function renderOwnername($page, $ownerUid, $username, $validUser = true) {
$elementId = 'o_'.$page;
- $ret = ''.($username == '' ? '[not set]' : htmlspecialchars(t3lib_div::fixed_lgd_cs($username, 20))).'';
+ $ret = '' . ($validUser ? ($username == '' ? '[not set]' : htmlspecialchars(t3lib_div::fixed_lgd_cs($username, 20))) : ('' . htmlspecialchars(t3lib_div::fixed_lgd_cs($username, 20)) . '')) . '';
return $ret;
}
@@ -333,11 +334,12 @@
* @param Integer $page: The TYPO3 page id
* @param Integer $groupUid: The new page group uid
* @param String $groupname: The TYPO3 BE groupname (used to display in the element)
+ * @param Boolean $validGroup: Must be set to FALSE, if the group has no name or is deleted
* @return String The new group wrapped in HTML
*/
- public function renderGroupname($page, $groupUid, $groupname) {
+ public function renderGroupname($page, $groupUid, $groupname, $validGroup = true) {
$elementId = 'g_'.$page;
- $ret = ''.($groupname == '' ? '[not set]' : htmlspecialchars(t3lib_div::fixed_lgd_cs($groupname, 20))).'';
+ $ret = ''. ($validGroup ? ($groupname == '' ? '[not set]' : htmlspecialchars(t3lib_div::fixed_lgd_cs($groupname, 20))) : ('' . htmlspecialchars(t3lib_div::fixed_lgd_cs($groupname, 20)) . '')) . '';
return $ret;
}
Index: typo3/mod/web/perm/index.php
===================================================================
--- typo3/mod/web/perm/index.php (Revision 4066)
+++ typo3/mod/web/perm/index.php (Arbeitskopie)
@@ -623,13 +623,20 @@
$lE_bgCol = $bgCol;
// User/Group names:
- $userName = $beUserArray[$data['row']['perms_userid']] ? $beUserArray[$data['row']['perms_userid']]['username'] : ($data['row']['perms_userid'] ? '['.$data['row']['perms_userid'].']!' : '');
- $userName = SC_mod_web_perm_ajax::renderOwnername($pageId, $data['row']['perms_userid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($userName, 20)));
+ $userName = $beUserArray[$data['row']['perms_userid']] ? $beUserArray[$data['row']['perms_userid']]['username'] : ($data['row']['perms_userid'] ? '[' . $data['row']['perms_userid'] . ']!' : '');
+ if ($data['row']['perms_userid'] && (!$beUserArray[$data['row']['perms_userid']])) {
+ $userName = SC_mod_web_perm_ajax::renderOwnername($pageId, $data['row']['perms_userid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($userName, 20)), false);
+ } else {
+ $userName = SC_mod_web_perm_ajax::renderOwnername($pageId, $data['row']['perms_userid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($userName, 20)));
+ }
- $groupName = $beGroupArray[$data['row']['perms_groupid']] ? $beGroupArray[$data['row']['perms_groupid']]['title'] : ($data['row']['perms_groupid'] ? '['.$data['row']['perms_groupid'].']!' : '');
- $groupName = SC_mod_web_perm_ajax::renderGroupname($pageId, $data['row']['perms_groupid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($groupName, 20)));
+ $groupName = $beGroupArray[$data['row']['perms_groupid']] ? $beGroupArray[$data['row']['perms_groupid']]['title'] : ($data['row']['perms_groupid'] ? '[' . $data['row']['perms_groupid'] . ']!' : '');
+ if ($data['row']['perms_groupid'] && (!$beGroupArray[$data['row']['perms_groupid']])) {
+ $groupName = SC_mod_web_perm_ajax::renderGroupname($pageId, $data['row']['perms_groupid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($groupName, 20)), false);
+ } else {
+ $groupName = SC_mod_web_perm_ajax::renderGroupname($pageId, $data['row']['perms_groupid'], htmlspecialchars(t3lib_div::fixed_lgd_cs($groupName, 20)));
+ }
-
// Seeing if editing of permissions are allowed for that page:
$editPermsAllowed = ($data['row']['perms_userid'] == $BE_USER->user['uid'] || $BE_USER->isAdmin());