Ejemplo n.º 1
0
 public static function save(\Rebond\Core\ModelInterface $model)
 {
     $db = new Util\Data();
     if ($model->getId() === 0) {
         $query = 'INSERT INTO core_log (`code`, user_id, `ip`, `request_uri`, `referer`, `message`, `trace`, `file`, `line`, `status`, `created_date`, `modified_date`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)';
         $params = [$model->getCode(), $model->getUserId(), $model->getIp(), $model->getRequestUri(), $model->getReferer(), $model->getMessage(), $model->getTrace(), $model->getFile(), $model->getLine(), $model->getStatus(), $model->getCreatedDate('sqlDatetime'), Util\Format::date(time(), 'sqlDatetime')];
         $id = $db->execute($query, $params);
         $model->setId($id);
         return $id;
     } else {
         $query = 'UPDATE core_log SET ';
         $params = [];
         if ($model->getCode() !== null) {
             $query .= '`code` = ?, ';
             $params[] = $model->getCode();
         }
         if ($model->getUserId() !== null) {
             $query .= 'user_id = ?, ';
             $params[] = $model->getUserId();
         }
         if ($model->getIp() !== null) {
             $query .= '`ip` = ?, ';
             $params[] = $model->getIp();
         }
         if ($model->getRequestUri() !== null) {
             $query .= '`request_uri` = ?, ';
             $params[] = $model->getRequestUri();
         }
         if ($model->getReferer() !== null) {
             $query .= '`referer` = ?, ';
             $params[] = $model->getReferer();
         }
         if ($model->getMessage() !== null) {
             $query .= '`message` = ?, ';
             $params[] = $model->getMessage();
         }
         if ($model->getTrace() !== null) {
             $query .= '`trace` = ?, ';
             $params[] = $model->getTrace();
         }
         if ($model->getFile() !== null) {
             $query .= '`file` = ?, ';
             $params[] = $model->getFile();
         }
         if ($model->getLine() !== null) {
             $query .= '`line` = ?, ';
             $params[] = $model->getLine();
         }
         if ($model->getStatus() !== null) {
             $query .= '`status` = ?, ';
             $params[] = $model->getStatus();
         }
         $query .= '`modified_date` = ?, ';
         $params[] = Util\Format::date(time(), 'sqlDatetime');
         $query = rtrim(trim($query), ',');
         $query .= ' WHERE id = ?';
         $params[] = $model->getId();
         return $db->execute($query, $params);
     }
 }