DataObjects/Core_company.php
[Pman.Core] / DataObjects / Core_group.php
index 7832486..16d12c0 100644 (file)
@@ -12,7 +12,7 @@
  *  NOTE - used to be called Groups ....
  * 
  */
-require_once 'DB/DataObject.php';
+class_exists('DB_DataObject') ? '' : require_once 'DB/DataObject.php';
 
 class Pman_Core_DataObjects_Core_group extends DB_DataObject 
 {
@@ -143,11 +143,11 @@ class Pman_Core_DataObjects_Core_group extends DB_DataObject
         return $gm->fetchAll('user_id');
         
     }
-    function isMember($uid)
+    function isMember($person)
     {
         $gm = DB_Dataobject::factory('core_group_member');
         $gm->group_id = $this->id;
-        $gm->user_id = $uid;
+        $gm->user_id = is_object($person) ? $person->id : $person;
         return $gm->count();
     }
     
@@ -229,7 +229,7 @@ class Pman_Core_DataObjects_Core_group extends DB_DataObject
     
     function postListFilter($ar, $au, $req)
     {      
-        if(!empty($req['_direct_return'])){
+        if(empty($req['_add_everyone'])){
             return $ar;
         }
         
@@ -246,11 +246,23 @@ class Pman_Core_DataObjects_Core_group extends DB_DataObject
         $g->type = 0;
         $g->name = 'Administrators';
         if ($g->count()) {
-            return;
+            $g->find(true);;
+        } else {
+            $g->insert();
+            $gr = DB_DataObject::factory('core_group_right');
+            $gr->genDefault();
+        }
+        $m = $g->members();
+        if (empty($m)) {
+            $p = DB_DAtaObject::factory('core_person');
+            $p->orderBy('id ASC');
+            $p->limit(1);
+            if ($p->find(true)) {
+                $g->addMember($p);
+            }
+            
+            
         }
-        $g->insert();
-        $gr = DB_DataObject::factory('core_group_right');
-        $gr->genDefault();
     }
     
     function initDatabase($roo, $data)