X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FEvents.php;h=f803fa67e1e212fd46c8721cccf83bcbe8fe2224;hb=4cb93dc15a755a4602cedabe6c1210770d828cf2;hp=d573e4ed35eca445a5274e08bbbd8792557c464d;hpb=9e9ddc4a06d04c6ef7b387f316c6bf0ac0c002d2;p=Pman.Core diff --git a/DataObjects/Events.php b/DataObjects/Events.php index d573e4ed..f803fa67 100644 --- a/DataObjects/Events.php +++ b/DataObjects/Events.php @@ -37,19 +37,20 @@ class Pman_Core_DataObjects_Events extends DB_DataObject { $tn = $this->tableName(); // if not empty on_table - echo $this->tableName(); + if(!empty($q['person_table'])){ $jt = DB_DataObject::factory($q['person_table']); - $et = DB_DataObject::factory($tn); + 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->selectAdd("(select count(*) from Events where Events.dup_id = evet.id) as cnt "); - $this->selectAs($et,'%s','evet'); + + $this->selectAdd(); + $this->selectAs(); $this->selectAs($jt, 'person_id_%s', 'join_person_id_id'); @@ -89,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.evet_id=Events.id)"; + $this->selectAdd("(select count(*)+1 from Events where Events.dup_id = evet.evet_id) as cnt "); + $this->selectAs($et,'evet_%s','evet'); + $this->having('Events.dup_id = 0 '); + + } /* if (!empty($q['query']['grouped']) && $q['query']['grouped'] == 'gr') { // grouped..