projects
/
Pman.Core
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix #6889 - allow managing groups inside of dms
[Pman.Core]
/
DataObjects
/
Core_group.php
diff --git
a/DataObjects/Core_group.php
b/DataObjects/Core_group.php
index
a6b3757
..
f9b9156
100644
(file)
--- a/
DataObjects/Core_group.php
+++ b/
DataObjects/Core_group.php
@@
-119,7
+119,8
@@
class Pman_Core_DataObjects_Core_group extends DB_DataObject
$g->addMember($uid,$roo);
break;
case 'sub':
$g->addMember($uid,$roo);
break;
case 'sub':
- $g->removeMember($uid);
+
+ $g->removeMember($uid, $roo);
break;
default:
$roo->jerr('invalid action');
break;
default:
$roo->jerr('invalid action');
@@
-220,12
+221,16
@@
class Pman_Core_DataObjects_Core_group extends DB_DataObject
}
}
}
}
- function removeMember($person)
+ function removeMember($person
, $roo
)
{
$gm = DB_Dataobject::factory('core_group_member');
$gm->group_id = $this->id;
$gm->user_id = is_object($person) ? $person->id : $person;
{
$gm = DB_Dataobject::factory('core_group_member');
$gm->group_id = $this->id;
$gm->user_id = is_object($person) ? $person->id : $person;
-
+ $au = $roo->getAuthUser();
+ if ($gm->group()->name == 'Administrators' && $gm->user_id = $au->id) {
+ $roo->jerr("You can not remove yourself from the admin group");
+ }
+
if ($gm->find(true)) {
$gm->delete();
}
if ($gm->find(true)) {
$gm->delete();
}