DataObjects/Core_group.php
[Pman.Core] / DataObjects / Core_person.php
index d6aefb0..a8505fe 100644 (file)
@@ -1043,6 +1043,7 @@ class Pman_Core_DataObjects_Core_person extends DB_DataObject
             ");
         }
         
+        
     }
     
     function setFromRoo($ar, $roo)
@@ -1101,18 +1102,28 @@ class Pman_Core_DataObjects_Core_person extends DB_DataObject
         $e->whereAdd('person_id = ' . $this->id);
         
         $g = DB_DataObject::Factory('core_group');
-        $g->get('name', 'Administrators');
+        $g->get('name', 'Administrators');  // select * from core_group where name = 'Administrators'
+        
         $p = DB_DataObject::Factory('core_group_member');
+        $p->setFrom(array(
+            'user_id' => $this->id,
+            'group_id' => $g->id
+        ));
 
-        $p->get('user_id', $this->id); 
+        if ($p->count()) {
+           $roo->jerr();
+        }
  
          
-        if ($p->group_id != $g->id) {
-            $e->delete(true);
-        }
-        else{
-            $roo->jerr("Can not delete admin user");
-        }
+        $p = DB_DataObject::Factory('core_group_member');
+        $p->user_id = $this->id;
+        $mem = $p->fetchAll();  // fetch all the rows and set the $mem variable to the rows data, just like mysqli_fetch_assoc
+   
+        $e->logDeletedRecord($p);
+        
+        foreach($mem as $p) { 
+            $p->delete();
+        }  
         
         
         
@@ -1351,7 +1362,6 @@ class Pman_Core_DataObjects_Core_person extends DB_DataObject
     
     function beforeUpdate($old, $q, $roo)
     {
-        print_r($q);exit;
         if(!empty($q['_generate_oath_key'])){
             $o = clone($this);
             $this->generateOathKey();
@@ -1368,6 +1378,13 @@ class Pman_Core_DataObjects_Core_person extends DB_DataObject
             
             $roo->jok($qrcode);
         }
+        // handle group_id here..
+        if(!empty($q['group_id'])){
+            
+            // insert data into core_person_member...
+            
+            
+        }
     }
     
     function generateOathKey()