~vcs-imports/helix/helix

« back to all changes in this revision

Viewing changes to trunk/modules/Contact/Generated/Objects/ContactTable.php

  • Committer: damianobrien
  • Date: 2015-06-12 05:13:06 UTC
  • Revision ID: svn-v4:05b9009a-c606-4cef-bdc0-1359a4facf5f::417

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
        public $cdate;
28
28
        public $deleted;
29
29
 
30
 
        public function __construct($id=null, $ssn=null, $abbreviation=null) {
 
30
        public function __construct($id=null, $ssn=null, $email=null, $abbreviation=null) {
31
31
                $db = Database::getInstance();
32
32
                $this->id = $id;
33
33
                $this->description = null;
37
37
                $this->lastName = null;
38
38
                $this->suffix = null;
39
39
                $this->ssn = $ssn;
 
40
                $this->email = $email;
40
41
                $this->nickname = null;
41
42
                $this->initials = null;
 
43
                $this->birthdate = null;
 
44
                $this->deathdate = null;
42
45
                $this->personTypeId = null;
 
46
                $this->createdById = null;
43
47
                $this->abbreviation = $abbreviation;
44
48
                $this->prefix = null;
45
49
                $this->title = null;
53
57
                        $condition = "{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->queryValue($id)}";
54
58
                } else if (isset($ssn)) {
55
59
                        $condition = "{$db->le}person{$db->re}.{$db->le}ssn{$db->re}={$db->queryValue($ssn)}";
 
60
                } else if (isset($email)) {
 
61
                        $condition = "{$db->le}person{$db->re}.{$db->le}email{$db->re}={$db->queryValue($email)}";
56
62
                } else if (isset($abbreviation)) {
57
63
                        $condition = "{$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}={$db->queryValue($abbreviation)}";
58
64
                }
59
65
 
60
66
                if (isset($condition)) {
61
67
                        $query = implode(NL, array(
62
 
                                "SELECT {$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}",
 
68
                                "SELECT {$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}email{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}birthdate{$db->re}, {$db->le}person{$db->re}.{$db->le}deathdate{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}created_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}",
63
69
                                "FROM {$db->le}contact{$db->re}",
64
70
                        "INNER JOIN {$db->le}person{$db->re} ON {$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->le}person{$db->re}.{$db->le}entity_id{$db->re}",
65
71
                        "INNER JOIN {$db->le}entity{$db->re} ON {$db->le}person{$db->re}.{$db->le}entity_id{$db->re}={$db->le}entity{$db->re}.{$db->le}id{$db->re} AND {$condition}"
76
82
                                $this->lastName = $db->record["last_name"];
77
83
                                $this->suffix = $db->record["suffix"];
78
84
                                $this->ssn = $db->record["ssn"];
 
85
                                $this->email = $db->record["email"];
79
86
                                $this->nickname = $db->record["nickname"];
80
87
                                $this->initials = $db->record["initials"];
 
88
                                $this->birthdate = is_null(($db->record["birthdate"]))?null:new Date($db->record["birthdate"]);
 
89
                                $this->deathdate = is_null(($db->record["deathdate"]))?null:new Date($db->record["deathdate"]);
81
90
                                $this->personTypeId = $db->record["person_type_id"];
 
91
                                $this->createdById = $db->record["created_by_id"];
82
92
                                $this->abbreviation = $db->record["abbreviation"];
83
93
                                $this->prefix = $db->record["prefix"];
84
94
                                $this->title = $db->record["title"];
100
110
                $this->_initial["lastName"] = $this->lastName;
101
111
                $this->_initial["suffix"] = $this->suffix;
102
112
                $this->_initial["ssn"] = $this->ssn;
 
113
                $this->_initial["email"] = $this->email;
103
114
                $this->_initial["nickname"] = $this->nickname;
104
115
                $this->_initial["initials"] = $this->initials;
 
116
                $this->_initial["birthdate"] = $this->birthdate;
 
117
                $this->_initial["deathdate"] = $this->deathdate;
105
118
                $this->_initial["personTypeId"] = $this->personTypeId;
 
119
                $this->_initial["createdById"] = $this->createdById;
106
120
                $this->_initial["abbreviation"] = $this->abbreviation;
107
121
                $this->_initial["prefix"] = $this->prefix;
108
122
                $this->_initial["title"] = $this->title;
110
124
                $this->_initial["deleted"] = $this->deleted;
111
125
        }
112
126
 
113
 
        public static function snapshot($date, $id=null, $ssn=null, $abbreviation=null) {
 
127
        public static function snapshot($date, $id=null, $ssn=null, $email=null, $abbreviation=null) {
114
128
                $object = new Contact();
115
129
                $object->_snapshot = $date;
116
130
                $db = Database::getInstance();
117
 
                $db->changeDatabase($db->getDatabase() . "_log");
 
131
                $database = $db->getDatabase();
 
132
                $db->changeDatabase($database . "_log");
118
133
 
119
134
                if (isset($id)) {
120
135
                        $condition = "{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->queryValue($id)}";
121
136
                } else if (isset($ssn)) {
122
137
                        $condition = "{$db->le}person{$db->re}.{$db->le}ssn{$db->re}={$db->queryValue($ssn)}";
 
138
                } else if (isset($email)) {
 
139
                        $condition = "{$db->le}person{$db->re}.{$db->le}email{$db->re}={$db->queryValue($email)}";
123
140
                } else if (isset($abbreviation)) {
124
141
                        $condition = "{$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}={$db->queryValue($abbreviation)}";
125
142
                }
129
146
                        $condition .= " AND ({$db->le}person{$db->re}.{$db->le}tdate{$db->re} IS NOT NULL AND {$db->le}person{$db->re}.{$db->le}fdate{$db->re}<={$db->queryValue($date)} AND {$db->queryValue($date)}<={$db->le}person{$db->re}.{$db->le}tdate{$db->re}) ";
130
147
                        $condition .= " AND ({$db->le}entity{$db->re}.{$db->le}tdate{$db->re} IS NOT NULL AND {$db->le}entity{$db->re}.{$db->le}fdate{$db->re}<={$db->queryValue($date)} AND {$db->queryValue($date)}<={$db->le}entity{$db->re}.{$db->le}tdate{$db->re}) ";
131
148
                        $query = implode(NL, array(
132
 
                                "SELECT {$db->le}contact{$db->re}.{$db->le}log_sequence{$db->re}, {$db->le}contact{$db->re}.{$db->le}fdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}tdate{$db->re}, {$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}",
 
149
                                "SELECT {$db->le}contact{$db->re}.{$db->le}log_sequence{$db->re}, {$db->le}contact{$db->re}.{$db->le}fdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}tdate{$db->re}, {$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}email{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}birthdate{$db->re}, {$db->le}person{$db->re}.{$db->le}deathdate{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}created_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}",
133
150
                                "FROM {$db->le}contact{$db->re}",
134
151
                        "INNER JOIN {$db->le}person{$db->re} ON {$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->le}person{$db->re}.{$db->le}entity_id{$db->re}",
135
152
                        "INNER JOIN {$db->le}entity{$db->re} ON {$db->le}person{$db->re}.{$db->le}entity_id{$db->re}={$db->le}entity{$db->re}.{$db->le}id{$db->re} AND {$condition}"
136
153
                        ));
137
154
 
 
155
                        $query .= "ORDER BY {$db->le}contact{$db->re}.log_sequence desc limit 1";
138
156
                        $db->query($query);
139
157
 
140
158
                        if ($db->getRecord() && $db->getNumRows()===1) {
149
167
                                $object->lastName = $db->record["last_name"];
150
168
                                $object->suffix = $db->record["suffix"];
151
169
                                $object->ssn = $db->record["ssn"];
 
170
                                $object->email = $db->record["email"];
152
171
                                $object->nickname = $db->record["nickname"];
153
172
                                $object->initials = $db->record["initials"];
 
173
                                $object->birthdate = is_null(($db->record["birthdate"]))?null:new Date($db->record["birthdate"]);
 
174
                                $object->deathdate = is_null(($db->record["deathdate"]))?null:new Date($db->record["deathdate"]);
154
175
                                $object->personTypeId = $db->record["person_type_id"];
 
176
                                $object->createdById = $db->record["created_by_id"];
155
177
                                $object->abbreviation = $db->record["abbreviation"];
156
178
                                $object->prefix = $db->record["prefix"];
157
179
                                $object->title = $db->record["title"];
165
187
                        }
166
188
                }
167
189
                
 
190
                $db->changeDatabase($database);
168
191
                return $object;
169
192
        }
170
193
 
211
234
                $isDirty = $isDirty || ((string)$this->lastName !== (string)$this->_initial["lastName"]);
212
235
                $isDirty = $isDirty || ((string)$this->suffix !== (string)$this->_initial["suffix"]);
213
236
                $isDirty = $isDirty || ((string)$this->ssn !== (string)$this->_initial["ssn"]);
 
237
                $isDirty = $isDirty || ((string)$this->email !== (string)$this->_initial["email"]);
214
238
                $isDirty = $isDirty || ((string)$this->nickname !== (string)$this->_initial["nickname"]);
215
239
                $isDirty = $isDirty || ((string)$this->initials !== (string)$this->_initial["initials"]);
 
240
                $isDirty = $isDirty || ((string)$this->birthdate != (string)$this->_initial["birthdate"]);
 
241
                $isDirty = $isDirty || ((string)$this->deathdate != (string)$this->_initial["deathdate"]);
216
242
                $isDirty = $isDirty || ((int)$this->personTypeId !== (int)$this->_initial["personTypeId"]);
 
243
                $isDirty = $isDirty || ((int)$this->createdById !== (int)$this->_initial["createdById"]);
217
244
                $isDirty = $isDirty || ((string)$this->abbreviation !== (string)$this->_initial["abbreviation"]);
218
245
                $isDirty = $isDirty || ((string)$this->prefix !== (string)$this->_initial["prefix"]);
219
246
                $isDirty = $isDirty || ((string)$this->title !== (string)$this->_initial["title"]);
302
329
 
303
330
        protected function log() {
304
331
                if (isset($this->_snapshot)) {return false;}
 
332
                parent::log();
305
333
                $db = Database::getInstance();
306
334
                $database = $db->getDatabase();
 
335
                $record = Contact::select($db->encapsulate("contact") . ".mdate as fdate,null as tdate,{$db->encapsulate("contact")}.*",null,$db->encapsulate("contact").".person_entity_id={$this->id}")->first();
307
336
                $log = "{$database}_log";
308
 
                $db->changeDatabase($log);
 
337
                $dbLog = Database::getInstance(null,null,null,null,$log);
 
338
                foreach($record as $k=>$v){
 
339
                    if(!is_int($v)){
 
340
                        $record[$k] = $dbLog->queryValue($v);
 
341
                    }
 
342
                }
 
343
                $insertColumns = $dbLog->le.implode("{$dbLog->le},{$dbLog->re}",array_keys($record)).$dbLog->re;
 
344
                $insertValues = implode(",",$record);
309
345
                $query = implode(NL, array(
310
 
                        "INSERT INTO {$db->le}{$log}{$db->re}.{$db->le}contact{$db->re} (",
311
 
                        "SELECT",
312
 
                        "       NULL,",
313
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}mdate{$db->re},",
314
 
                        "       NULL,",
315
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}_id{$db->re},",
316
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re},",
317
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re},",
318
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}prefix{$db->re},",
319
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}title{$db->re},",
320
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}long_title{$db->re},",
321
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re},",
322
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}mdate{$db->re},",
323
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}cdate{$db->re},",
324
 
                        "       {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}deleted{$db->re}",
325
 
                        "FROM {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}",
326
 
                        "WHERE {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->queryValue($this->id)}",
 
346
                        "INSERT INTO {$dbLog->le}contact{$dbLog->re} (",
 
347
                        $insertColumns,
 
348
                        ") VALUES (",
 
349
                        $insertValues,
327
350
                        ")"
328
351
                ));
329
 
                $status = $db->query($query);
330
 
 
331
 
                $logSequence = $db->getInsertedId();
332
 
 
333
 
                $query = implode(NL, array(
334
 
                        "SELECT {$db->le}log_sequence{$db->re}",
335
 
                        "FROM {$db->le}contact{$db->re}",
336
 
                        "WHERE {$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->queryValue($this->id)}",
337
 
                        "       AND {$db->le}log_sequence{$db->re}<'{$logSequence}'",
338
 
                        "ORDER BY {$db->le}log_sequence{$db->re} DESC",
339
 
                        "LIMIT 0,1"
340
 
                ));
341
 
                $db->query($query);
342
 
 
343
 
                if ($db->getRecord()) {
344
 
                        $updateSequence = (int)$db->record["log_sequence"];
 
352
                $status = $dbLog->query($query);
 
353
 
 
354
                $logSequence = $dbLog->getInsertedId();
 
355
 
 
356
                if ($logSequence){
345
357
                        $query = implode(NL, array(
346
 
                                "UPDATE {$db->le}{$log}{$db->re}.{$db->le}contact{$db->re}",
347
 
                                "INNER JOIN {$db->le}{$database}{$db->re}.{$db->le}contact{$db->re} ON {$db->le}{$log}{$db->re}.{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}={$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}person_entity_id{$db->re}",
348
 
                                "       AND {$db->le}{$log}{$db->re}.{$db->le}contact{$db->re}.{$db->le}log_sequence{$db->re}={$db->queryValue($updateSequence)}",
349
 
                                "SET {$db->le}{$log}{$db->re}.{$db->le}contact{$db->re}.{$db->le}tdate{$db->re}={$db->le}{$database}{$db->re}.{$db->le}contact{$db->re}.{$db->le}mdate{$db->re}"
 
358
                                "SELECT {$dbLog->le}log_sequence{$dbLog->re}",
 
359
                                "FROM {$dbLog->le}contact{$dbLog->re}",
 
360
                                "WHERE {$dbLog->le}contact{$dbLog->re}.{$dbLog->le}person_entity_id{$dbLog->re}={$this->id}",
 
361
                                "       AND {$dbLog->le}log_sequence{$dbLog->re}<{$logSequence}",
 
362
                                "ORDER BY {$dbLog->le}log_sequence{$dbLog->re} DESC",
 
363
                                $dbLog::limitOffsetString(1,0)
350
364
                        ));
351
 
                        $db->query($query);
 
365
                        $dbLog->query($query);
 
366
 
 
367
                        if ($dbLog->getRecord()) {
 
368
                                $updateSequence = (int)$dbLog->record["log_sequence"];
 
369
                                $query = implode(NL, array(
 
370
                                        "UPDATE {$dbLog->le}contact{$dbLog->re}",
 
371
                                        "SET {$dbLog->le}tdate{$dbLog->re}={$record["mdate"]}",
 
372
                                        "where log_sequence={$updateSequence}"
 
373
                                ));
 
374
                                $dbLog->query($query);
 
375
                        }
352
376
                }
353
377
                $db->changeDatabase($database);
354
378
                return $status;
425
449
        public static function objects($order=null, $where=null, $limit=null, $offset=0) {
426
450
                $db = Database::getInstance();
427
451
                $objects = array();
428
 
                foreach (Contact::select("{$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}", $order, $where, $limit, $offset) as $record) {
 
452
                foreach (Contact::select("{$db->le}entity{$db->re}.{$db->le}id{$db->re}, {$db->le}entity{$db->re}.{$db->le}description{$db->re}, {$db->le}entity{$db->re}.{$db->le}entity_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}first_name{$db->re}, {$db->le}person{$db->re}.{$db->le}middle_name{$db->re}, {$db->le}person{$db->re}.{$db->le}last_name{$db->re}, {$db->le}person{$db->re}.{$db->le}suffix{$db->re}, {$db->le}person{$db->re}.{$db->le}ssn{$db->re}, {$db->le}person{$db->re}.{$db->le}email{$db->re}, {$db->le}person{$db->re}.{$db->le}nickname{$db->re}, {$db->le}person{$db->re}.{$db->le}initials{$db->re}, {$db->le}person{$db->re}.{$db->le}birthdate{$db->re}, {$db->le}person{$db->re}.{$db->le}deathdate{$db->re}, {$db->le}person{$db->re}.{$db->le}person_type_id{$db->re}, {$db->le}person{$db->re}.{$db->le}created_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}abbreviation{$db->re}, {$db->le}contact{$db->re}.{$db->le}prefix{$db->re}, {$db->le}contact{$db->re}.{$db->le}title{$db->re}, {$db->le}contact{$db->re}.{$db->le}long_title{$db->re}, {$db->le}contact{$db->re}.{$db->le}updated_by_id{$db->re}, {$db->le}contact{$db->re}.{$db->le}mdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}cdate{$db->re}, {$db->le}contact{$db->re}.{$db->le}deleted{$db->re}", $order, $where, $limit, $offset) as $record) {
429
453
                        $object = new Contact();
430
454
                                $object->id = $record["id"];
431
455
                                $object->description = $record["description"];
435
459
                                $object->lastName = $record["last_name"];
436
460
                                $object->suffix = $record["suffix"];
437
461
                                $object->ssn = $record["ssn"];
 
462
                                $object->email = $record["email"];
438
463
                                $object->nickname = $record["nickname"];
439
464
                                $object->initials = $record["initials"];
 
465
                                $object->birthdate = is_null(($record["birthdate"]))?null:new Date($record["birthdate"]);
 
466
                                $object->deathdate = is_null(($record["deathdate"]))?null:new Date($record["deathdate"]);
440
467
                                $object->personTypeId = $record["person_type_id"];
 
468
                                $object->createdById = $record["created_by_id"];
441
469
                                $object->abbreviation = $record["abbreviation"];
442
470
                                $object->prefix = $record["prefix"];
443
471
                                $object->title = $record["title"];
466
494
                }
467
495
 
468
496
                foreach ($keywords as $keyword) {
469
 
                        $clauses[] = "entity.description LIKE '%{$keyword}%' OR person.first_name LIKE '%{$keyword}%' OR person.middle_name LIKE '%{$keyword}%' OR person.last_name LIKE '%{$keyword}%' OR person.suffix LIKE '%{$keyword}%' OR person.ssn LIKE '%{$keyword}%' OR person.nickname LIKE '%{$keyword}%' OR person.initials LIKE '%{$keyword}%' OR contact.abbreviation LIKE '%{$keyword}%' OR contact.prefix LIKE '%{$keyword}%' OR contact.title LIKE '%{$keyword}%' OR contact.long_title LIKE '%{$keyword}%'";
 
497
                        $clauses[] = "entity.description LIKE '%{$keyword}%' OR person.first_name LIKE '%{$keyword}%' OR person.middle_name LIKE '%{$keyword}%' OR person.last_name LIKE '%{$keyword}%' OR person.suffix LIKE '%{$keyword}%' OR person.ssn LIKE '%{$keyword}%' OR person.email LIKE '%{$keyword}%' OR person.nickname LIKE '%{$keyword}%' OR person.initials LIKE '%{$keyword}%' OR contact.abbreviation LIKE '%{$keyword}%' OR contact.prefix LIKE '%{$keyword}%' OR contact.title LIKE '%{$keyword}%' OR contact.long_title LIKE '%{$keyword}%'";
470
498
                }
471
499
 
472
500
                $search = implode(" AND ", $clauses);