DataObjects/core.sql
[Pman.Core] / DataObjects / Person.php
index 25a2d59..898a5f1 100644 (file)
@@ -45,6 +45,7 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
     
     public $phone_mobile; // varchar(32)  NOT NULL  DEFAULT '';
     public $phone_direct; // varchar(32)  NOT NULL  DEFAULT '';
+    public $countries; // VARCHAR(128) NULL;
     
     /* the code above is auto generated do not remove the tag below */
     ###END_AUTOCODE
@@ -217,6 +218,9 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
     
     function getEmailFrom()
     {
+        if (empty($this->name)) {
+            return $this->email;
+        }
         return '"' . addslashes($this->name) . '" <' . $this->email . '>';
     }
     function toEventString() 
@@ -280,12 +284,15 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
             ($_SERVER['SERVER_ADDR'] == '127.0.0.1') &&
             ($_SERVER['REMOTE_ADDR'] == '127.0.0.1')
         ) {
-            print_r('run');
             $group = DB_DataObject::factory('Groups');
             $group->get('name', 'Administrators');
             
             $member = DB_DataObject::factory('group_members');
+            $member->autoJoin();
             $member->group_id = $group->id;
+            $member->whereAdd("
+                join_user_id_id.id IS NOT NULL
+            ");
             if($member->find(true)){
                 $default_admin = DB_DataObject::factory('Person');
                 if(!$default_admin->get($member->user_id)){
@@ -660,7 +667,6 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
             $this->whereAdd(" join_company_id_id.isOwner = 0 ");
         }
         
-        
         if (!empty($q['query']['person_internal_only_all'])) {
             
             
@@ -732,6 +738,13 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
             
         }
         
+        // #2307 Search Country!!
+        if (!empty($q['query']['in_country'])) {
+            // DB_DataObject::debugLevel(1);
+            $inc = $q['query']['in_country'];
+            $this->whereAdd("$tn_p.countries LIKE '%{$inc}%'");
+        }
+        
         if (!empty($q['query']['not_in_directory'])) { 
             // it's a Person list..
             // DB_DATaobjecT::debugLevel(1);
@@ -789,6 +802,12 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
             
         }
         
+        if(!empty($q['query']['name'])){
+            $this->whereAdd("
+                Person.name LIKE '%{$this->escape($q['query']['name'])}%'
+            ");
+        }
+        
         if (!empty($q['query']['search'])) {
             
             // use our magic search builder...
@@ -827,7 +846,6 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
                     ");*/
         }
         
-        //
     }
     function setFromRoo($ar, $roo)
     {
@@ -935,7 +953,8 @@ class Pman_Core_DataObjects_Person extends DB_DataObject
         }
         return false;
     }
-    function onInsert($req, $roo)  
+    
+    function onInsert($req, $roo)
     {
          
         $p = DB_DataObject::factory('person');