function cmsInsertTags($tagstr, $target, $item_id){ cmsClearTags($target, $item_id); $tagstr = strip_tags(mb_strtolower(preg_replace('/\s+/u', ' ', trim($tagstr)))); if (!$tagstr){ return true; } // формируем массив слов по запятой $tags = explode(',', $tagstr); foreach ($tags as $tag){ $tag = mb_substr(trim($tag), 0, 240); if(mb_strlen($tag)>=3){ $tag = cmsCore::c('db')->escape_string($tag); cmsCore::c('db')->query("INSERT INTO cms_tags (tag, target, item_id) VALUES ('". $tag ."', '". $target ."', ". $item_id .")"); } } return true; }
function dbDeleteList($table, $list) { $inDB = cmsDatabase::getInstance(); if (is_array($list)) { $sql = "DELETE FROM {$table} WHERE "; $item = 0; foreach ($list as $key => $value) { $item++; $value = (int) $value; $sql .= 'id = ' . $value; if ($item < sizeof($list)) { $sql .= ' OR '; } if ($table == 'cms_content') { cmsClearTags('content', $value); $inDB->query("DELETE FROM cms_comments WHERE target='article' AND target_id={$value}"); $inDB->query("DELETE FROM cms_ratings WHERE target='content' AND item_id={$value}"); $inDB->query("DELETE FROM cms_tags WHERE target='content' AND item_id={$value}"); } if ($table == 'cms_modules') { $inDB->query("DELETE FROM cms_modules_bind WHERE module_id={$value}"); } } $sql .= ' LIMIT ' . sizeof($list); $inDB->query($sql); } }
/** * Удаляет пост в блоге * @param int $post_id * @return bool */ public function deletePost($post_id) { cmsCore::callEvent('DELETE_POST', $post_id); $post = $this->getPost($post_id); if (!$post) { return false; } // пересчитываем рейтинг блога $this->inDB->query("UPDATE cms_blogs SET rating = rating - ({$post['rating']}) WHERE id = '{$post['blog_id']}'"); $this->inDB->delete('cms_blog_posts', "id = '{$post_id}'", 1); cmsCore::deleteRatings($this->getTarget('rating'), $post_id); cmsCore::deleteComments($this->getTarget('comments'), $post_id); cmsClearTags($this->getTarget('tags'), $post_id); cmsCore::deleteUploadImages($post_id, 'blog_post'); cmsActions::removeObjectLog($this->getTarget('actions_post'), $post_id); return true; }
/** * Удаляет фото * @param array $photo * @param obj $inUploadPhoto * @return bool */ public function deletePhoto($photo, $inUploadPhoto){ $photo = cmsCore::callEvent('DELETE_PHOTO', $photo); if(!$this->deletePhotoFile($photo['file'], $inUploadPhoto)){ return false; } cmsCore::deleteComments($this->getTarget('comments_photo'), $photo['id']); cmsCore::deleteRatings($this->getTarget('rating'), $photo['id']); cmsClearTags($this->getTarget('tags'), $photo['id']); cmsActions::removeObjectLog($this->getTarget('actions_photo'), $photo['id']); cmsCore::c('db')->query("DELETE FROM cms_photo_files WHERE id = '{$photo['id']}' LIMIT 1"); return true; }
public function deletePhoto($photo_id) { cmsCore::loadLib('tags'); $sql = "SELECT imageurl FROM cms_user_photos WHERE id = '{$photo_id}'"; $result = $this->inDB->query($sql); if ($this->inDB->num_rows($result)){ $photo = $this->inDB->fetch_assoc($result); @unlink(PATH.'/images/users/photos/'.$photo['imageurl']); @unlink(PATH.'/images/users/photos/small/'.$photo['imageurl']); @unlink(PATH.'/images/users/photos/medium/'.$photo['imageurl']); $this->inDB->query("DELETE FROM cms_user_photos WHERE id = $photo_id") ; cmsCore::deleteComments('userphoto', $photo_id); cmsActions::removeObjectLog('add_user_photo', $photo_id); cmsClearTags('userphoto', $photo_id); } return true; }
function dbDeleteList($table, $list) { if (is_array($list)) { $sql = "DELETE FROM " . $table . " WHERE "; $item = 0; foreach ($list as $key => $value) { $item++; $value = (int) $value; $sql .= 'id = ' . $value; if ($item < sizeof($list)) { $sql .= ' OR '; } if ($table == 'cms_content') { cmsClearTags('content', $value); cmsCore::c('db')->delete('cms_comments', "target='article' AND target_id=" . $value); cmsCore::c('db')->delete('cms_ratings', "target='content' AND item_id=" . $value); cmsCore::c('db')->delete('cms_tags', "target='content' AND item_id=" . $value); } if ($table == 'cms_modules') { cmsCore::c('db')->delete('cms_modules_bind', "module_id=" . $value); } } $sql .= ' LIMIT ' . sizeof($list); cmsCore::c('db')->query($sql); } }