RooTrait.php
[Pman.Core] / RooTrait.php
index 741b8f6..23973a6 100644 (file)
@@ -2,6 +2,14 @@
 
 trait Pman_Core_RooTrait {
     
+    var $validTables = false; 
+    
+    var $key;
+    
+    var $transObj = false;
+    
+    var $debugEnabled = true;
+    
     function init() 
     {
         if (isset($this->_hasInit)) {
@@ -60,15 +68,6 @@ trait Pman_Core_RooTrait {
         
     }
     
-    function checkDebugPost()
-    {
-        return (!empty($_GET['_post']) || !empty($_GET['_debug_post'])) && 
-                    $this->authUser && 
-                    method_exists($this->authUser,'groups') &&
-                    in_array('Administrators', $this->authUser->groups('name')); 
-        
-    }
-    
     function dataObject($tab)
     {
         if (is_array($this->validTables) &&  !in_array($tab, $this->validTables)) {
@@ -84,9 +83,9 @@ trait Pman_Core_RooTrait {
         }
     
         return $x;
-        
     }
     
+    
     /*
      * From Pman.php
      */
@@ -127,4 +126,46 @@ trait Pman_Core_RooTrait {
         $this->jerr($out);
         
     }
+    
+    function addEvent($act, $obj = false, $remarks = '') 
+    {
+        if (!empty(HTML_FlexyFramework::get()->Pman['disable_events'])) {
+            return;
+        }
+        
+        $e = DB_DataObject::factory('Events');
+        $e->init($act,$obj,$remarks); 
+         
+        $e->event_when = date('Y-m-d H:i:s');
+        
+        $eid = $e->insert();
+        
+        // fixme - this should be in onInsert..
+        $wa = DB_DataObject::factory('core_watch');
+        if (method_exists($wa,'notifyEvent')) {
+            $wa->notifyEvent($e); // trigger any actions..
+        }
+        
+        $e->onInsert(isset($_REQUEST) ? $_REQUEST : array() , $this);
+        
+        return $e;
+        
+    }
+    
+    function checkPerm($obj, $lvl, $req= null)
+    {
+        if (!method_exists($obj, 'checkPerm')) {
+            return true;
+        }
+        if ($obj->checkPerm($lvl, $this->getAuthUser(), $req))  {
+            return true;
+        }
+        
+        return false;
+    }
+    
+    function getAuthUser()
+    {
+        die('Get auth user is not implement.');
+    }
 }