Пример #1
0
 public static function save(\Rebond\Core\ModelInterface $model)
 {
     $db = new Util\Data();
     if ($model->getId() === 0) {
         $query = 'INSERT INTO core_media (folder_id, `title`, `tags`, `upload`, `original_filename`, `path`, `extension`, `mime_type`, `file_size`, `width`, `height`, `alt`, `is_selectable`, `status`, `created_date`, `modified_date`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)';
         $params = [$model->getFolderId(), $model->getTitle(), $model->getTags(), $model->getUpload(), $model->getOriginalFilename(), $model->getPath(), $model->getExtension(), $model->getMimeType(), $model->getFileSize(), $model->getWidth(), $model->getHeight(), $model->getAlt(), $model->getIsSelectable(), $model->getStatus(), $model->getCreatedDate('sqlDatetime'), Util\Format::date(time(), 'sqlDatetime')];
         $id = $db->execute($query, $params);
         $model->setId($id);
         return $id;
     } else {
         $query = 'UPDATE core_media SET ';
         $params = [];
         if ($model->getFolderId() !== null) {
             $query .= 'folder_id = ?, ';
             $params[] = $model->getFolderId();
         }
         if ($model->getTitle() !== null) {
             $query .= '`title` = ?, ';
             $params[] = $model->getTitle();
         }
         if ($model->getTags() !== null) {
             $query .= '`tags` = ?, ';
             $params[] = $model->getTags();
         }
         if ($model->getUpload() !== null) {
             $query .= '`upload` = ?, ';
             $params[] = $model->getUpload();
         }
         if ($model->getOriginalFilename() !== null) {
             $query .= '`original_filename` = ?, ';
             $params[] = $model->getOriginalFilename();
         }
         if ($model->getPath() !== null) {
             $query .= '`path` = ?, ';
             $params[] = $model->getPath();
         }
         if ($model->getExtension() !== null) {
             $query .= '`extension` = ?, ';
             $params[] = $model->getExtension();
         }
         if ($model->getMimeType() !== null) {
             $query .= '`mime_type` = ?, ';
             $params[] = $model->getMimeType();
         }
         if ($model->getFileSize() !== null) {
             $query .= '`file_size` = ?, ';
             $params[] = $model->getFileSize();
         }
         if ($model->getWidth() !== null) {
             $query .= '`width` = ?, ';
             $params[] = $model->getWidth();
         }
         if ($model->getHeight() !== null) {
             $query .= '`height` = ?, ';
             $params[] = $model->getHeight();
         }
         if ($model->getAlt() !== null) {
             $query .= '`alt` = ?, ';
             $params[] = $model->getAlt();
         }
         if ($model->getIsSelectable() !== null) {
             $query .= '`is_selectable` = ?, ';
             $params[] = $model->getIsSelectable();
         }
         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);
     }
 }