X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FEvents.php;h=0725ab145fa9c0413cd93f61ce30d54045912358;hb=4bbe19a7c332c53c2991bc12c9fb7bf151bf6708;hp=9c8f216d5b8d2d441cc7be54117d04d114af7166;hpb=fba5e03f2d03d96c13bc8cbe9529a2edf9f2e6d1;p=Pman.Core diff --git a/DataObjects/Events.php b/DataObjects/Events.php index 9c8f216d..0725ab14 100644 --- a/DataObjects/Events.php +++ b/DataObjects/Events.php @@ -41,16 +41,14 @@ class Pman_Core_DataObjects_Events extends DB_DataObject if(!empty($q['person_table'])){ $jt = DB_DataObject::factory($q['person_table']); - $et = DB_DataObject::factory($tn); - //$this->selectAdd("(select count(*) from Events where Events.dup_id = evet.id) as cnt "); - //$this->selectAs($et,'%s','evet'); + if(!array_key_exists("{$jt->tableName()}_id", $this->tableColumns())){ // coz we have triiger on mysql... $keys = $jt->keys(); $this->_join = "LEFT JOIN {$jt->tableName()} AS join_person_id_id ON (join_person_id_id.{$keys[0]}=Events.person_id)"; - //$this->_join = "LEFT JOIN {$jt->tableName()} AS join_person_id_id ON (join_person_id_id.{$keys[0]}=Events.person_id)"; + $this->selectAdd(); $this->selectAs(); @@ -92,6 +90,15 @@ class Pman_Core_DataObjects_Events extends DB_DataObject $dt = date('Y-m-d' , strtotime($q['query']['to'])); $this->whereAdd(" {$tn}.event_when <= '$dt' "); } + + if(!empty($q['dup_check'])){ + $et = DB_DataObject::factory($tn); + $this->_join .= "LEFT JOIN {$et->tableName()} AS evet ON (evet.id=Events.id)"; + $this->selectAdd("(select count(*)+1 from Events where Events.dup_id = evet.id) as cnt "); + $this->selectAs($et,'%s','evet'); + //$this->having('Events.dup_id = 0 '); + + } /* if (!empty($q['query']['grouped']) && $q['query']['grouped'] == 'gr') { // grouped.. @@ -120,7 +127,7 @@ class Pman_Core_DataObjects_Events extends DB_DataObject if (isset($q['on_table']) && !strlen($q['on_table'])) { // empty ontable queries.. these are valid.. - $this->whereAdd("{$tn}.on_table = ''"); + $this->whereAdd("$tn.on_table = ''"); } if (isset($q['query']['person_sum'])) {