X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=DataObjects%2FCore_group_member.php;h=ecbb2db6aa152ca389cd4339d7f27e03e9c15fa8;hp=bde8d37bd7f62d760d1b6f39d8ea0d71b31bc157;hb=HEAD;hpb=6cdaa68f9f345a657be12d770eed2f1f282f675b diff --git a/DataObjects/Core_group_member.php b/DataObjects/Core_group_member.php index bde8d37b..a652273f 100755 --- a/DataObjects/Core_group_member.php +++ b/DataObjects/Core_group_member.php @@ -42,6 +42,14 @@ class Pman_Core_DataObjects_Core_group_member extends DB_DataObject } + function group() + { + $grp = DB_DataObject::factory('core_group'); + $grp->get($this->group_id); + return $grp; + + } + /** * Get a list of memberships for a person * @param Pman_Core_DataObjects_Person $person who @@ -88,51 +96,9 @@ class Pman_Core_DataObjects_Core_group_member extends DB_DataObject function checkPerm($lvl, $au) { - return false; - } + // not sure if this is correct - but we need it on texon + return $au->hasPerm("Core.Staff", $lvl); - function beforeInsert($q, $roo) - { - if(!empty($q['_persons']) && !empty($q['group_id'])){ - $this->bulkAddToGroup($q, $roo); - } } - function bulkAddToGroup($q, $roo) - { - $core_group = DB_DataObject::factory('core_group'); - - if(!$core_group->get($q['group_id'])){ - $roo->jerr('Invalid URL'); - } - - $persons = array_unique(array_filter(explode(',', $q['_persons']))); - - foreach ($persons as $p){ - - $core_person = DB_DataObject::factory('core_person'); - - if(!$core_person->get($p)){ - continue; - } - - $core_group_member = DB_DataObject::factory('core_group_member'); - $core_group_member->setFrom(array( - 'group_id' => $core_group->id, - 'user_id' => $core_person->id - )); - - if($core_group_member->find(true)){ - continue; - } - - $core_group_member->insert(); - - } - - $roo->jok('OK'); - - } - - }