Пример #1
0
 public static function save(\Rebond\Core\ModelInterface $model)
 {
     $db = new Util\Data();
     if ($model->getId() === 0) {
         $query = 'INSERT INTO cms_module (`title`, `summary`, `workflow`, `has_filter`, `has_content`, `status`, `created_date`, `modified_date`) VALUES (?,?,?,?,?,?,?,?)';
         $params = [$model->getTitle(), $model->getSummary(), $model->getWorkflow(), $model->getHasFilter(), $model->getHasContent(), $model->getStatus(), $model->getCreatedDate('sqlDatetime'), Util\Format::date(time(), 'sqlDatetime')];
         $id = $db->execute($query, $params);
         $model->setId($id);
         return $id;
     } else {
         $query = 'UPDATE cms_module SET ';
         $params = [];
         if ($model->getTitle() !== null) {
             $query .= '`title` = ?, ';
             $params[] = $model->getTitle();
         }
         if ($model->getSummary() !== null) {
             $query .= '`summary` = ?, ';
             $params[] = $model->getSummary();
         }
         if ($model->getWorkflow() !== null) {
             $query .= '`workflow` = ?, ';
             $params[] = $model->getWorkflow();
         }
         if ($model->getHasFilter() !== null) {
             $query .= '`has_filter` = ?, ';
             $params[] = $model->getHasFilter();
         }
         if ($model->getHasContent() !== null) {
             $query .= '`has_content` = ?, ';
             $params[] = $model->getHasContent();
         }
         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);
     }
 }