public function saveStatusChanges($req) { if (!array_key_exists('action', $req)) { return false; } if ($req['action'] != 'saveStatus') { return false; } if ($this->readOnly) { return false; } $statusMessage = $req['textfieldStatus']; $statusRow = new Status(); $statusRow = $statusRow->find($this->uid); if (is_object($statusRow)) { $fields['uid'] = $this->uid; $fields['status'] = $statusRow->status; $fields['created'] = $statusRow->modified; $fields['cleared'] = strftime('%Y-%m-%d %H:%M:%S', time()); $fields['aid'] = -1; //Copy current status to history. $statusHistory = new StatusHistory($fields); $statusHistory->save(); } else { // Declare a new status row $statusRow = new Status(); } $fields['uid'] = $this->uid; $fields['status'] = $statusMessage; $fields['modified'] = strftime('%Y-%m-%d %H:%M:%S', time()); $fields['aid'] = -1; $statusRow->save($fields); return true; }