mirror of
https://github.com/Oreolek/ifhub.club.git
synced 2024-07-08 01:14:24 +03:00
385 lines
9.2 KiB
PHP
385 lines
9.2 KiB
PHP
<?php
|
|
/*-------------------------------------------------------
|
|
*
|
|
* LiveStreet Engine Social Networking
|
|
* Copyright © 2008 Mzhelskiy Maxim
|
|
*
|
|
*--------------------------------------------------------
|
|
*
|
|
* Official site: www.livestreet.ru
|
|
* Contact e-mail: rus.engine@gmail.com
|
|
*
|
|
* GNU General Public License, version 2:
|
|
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
*
|
|
---------------------------------------------------------
|
|
*/
|
|
|
|
/**
|
|
* Сущность блога
|
|
*
|
|
* @package modules.blog
|
|
* @since 1.0
|
|
*/
|
|
class ModuleBlog_EntityBlog extends Entity {
|
|
/**
|
|
* Возвращает ID блога
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getId() {
|
|
return $this->_getDataOne('blog_id');
|
|
}
|
|
/**
|
|
* Возвращает ID хозяина блога
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getOwnerId() {
|
|
return $this->_getDataOne('user_owner_id');
|
|
}
|
|
/**
|
|
* Возвращает ID категории
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getCategoryId() {
|
|
return $this->_getDataOne('category_id');
|
|
}
|
|
/**
|
|
* Возвращает название блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getTitle() {
|
|
return $this->_getDataOne('blog_title');
|
|
}
|
|
/**
|
|
* Возвращает описание блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getDescription() {
|
|
return $this->_getDataOne('blog_description');
|
|
}
|
|
/**
|
|
* Возвращает тип блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getType() {
|
|
return $this->_getDataOne('blog_type');
|
|
}
|
|
/**
|
|
* Возвращает дату создания блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getDateAdd() {
|
|
return $this->_getDataOne('blog_date_add');
|
|
}
|
|
/**
|
|
* Возвращает дату редактирования блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getDateEdit() {
|
|
return $this->_getDataOne('blog_date_edit');
|
|
}
|
|
/**
|
|
* Возвращает рейтинг блога
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getRating() {
|
|
return number_format(round($this->_getDataOne('blog_rating'),2), 2, '.', '');
|
|
}
|
|
/**
|
|
* Возврщает количество проголосовавших за блог
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getCountVote() {
|
|
return $this->_getDataOne('blog_count_vote');
|
|
}
|
|
/**
|
|
* Возвращает количество пользователей в блоге
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getCountUser() {
|
|
return $this->_getDataOne('blog_count_user');
|
|
}
|
|
/**
|
|
* Возвращает количество топиков в блоге
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getCountTopic() {
|
|
return $this->_getDataOne('blog_count_topic');
|
|
}
|
|
/**
|
|
* Возвращает ограничение по рейтингу для постинга в блог
|
|
*
|
|
* @return int|null
|
|
*/
|
|
public function getLimitRatingTopic() {
|
|
return $this->_getDataOne('blog_limit_rating_topic');
|
|
}
|
|
/**
|
|
* Возвращает URL блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getUrl() {
|
|
return $this->_getDataOne('blog_url');
|
|
}
|
|
/**
|
|
* Возвращает полный серверный путь до аватара блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getAvatar() {
|
|
return $this->_getDataOne('blog_avatar');
|
|
}
|
|
/**
|
|
* Возвращает расширения аватра блога
|
|
*
|
|
* @return string|null
|
|
*/
|
|
public function getAvatarType() {
|
|
return ($sPath=$this->getAvatarPath()) ? pathinfo($sPath,PATHINFO_EXTENSION) : null;
|
|
}
|
|
|
|
|
|
/**
|
|
* Возвращает объект пользователя хозяина блога
|
|
*
|
|
* @return ModuleUser_EntityUser|null
|
|
*/
|
|
public function getOwner() {
|
|
return $this->_getDataOne('owner');
|
|
}
|
|
/**
|
|
* Возвращает объект голосования за блог
|
|
*
|
|
* @return ModuleVote_EntityVote|null
|
|
*/
|
|
public function getVote() {
|
|
return $this->_getDataOne('vote');
|
|
}
|
|
/**
|
|
* Возвращает полный серверный путь до аватара блога определенного размера
|
|
*
|
|
* @param int $iSize Размер аватара
|
|
* @return string
|
|
*/
|
|
public function getAvatarPath($iSize=48) {
|
|
if ($sPath=$this->getAvatar()) {
|
|
if (is_numeric($iSize)) {
|
|
$iSize.='crop';
|
|
}
|
|
return $this->Media_GetImageWebPath($sPath,$iSize);
|
|
} else {
|
|
return Config::Get('path.skin.assets.web').'/images/avatars/avatar_blog_'.$iSize.'x'.$iSize.'.png';
|
|
}
|
|
}
|
|
/**
|
|
* Возвращает факт присоединения пользователя к блогу
|
|
*
|
|
* @return bool|null
|
|
*/
|
|
public function getUserIsJoin() {
|
|
return $this->_getDataOne('user_is_join');
|
|
}
|
|
/**
|
|
* Проверяет является ли пользователь администратором блога
|
|
*
|
|
* @return bool|null
|
|
*/
|
|
public function getUserIsAdministrator() {
|
|
return $this->_getDataOne('user_is_administrator');
|
|
}
|
|
/**
|
|
* Проверяет является ли пользователь модератором блога
|
|
*
|
|
* @return bool|null
|
|
*/
|
|
public function getUserIsModerator() {
|
|
return $this->_getDataOne('user_is_moderator');
|
|
}
|
|
/**
|
|
* Возвращает полный URL блога
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getUrlFull() {
|
|
if ($this->getType()=='personal') {
|
|
return $this->getOwner()->getUserWebPath().'created/topics/';
|
|
} else {
|
|
return Router::GetPath('blog').$this->getUrl().'/';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Устанавливает ID блога
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setId($data) {
|
|
$this->_aData['blog_id']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает ID хозяина блога
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setOwnerId($data) {
|
|
$this->_aData['user_owner_id']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает ID категории блога
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setCategoryId($data) {
|
|
$this->_aData['category_id']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает заголовок блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setTitle($data) {
|
|
$this->_aData['blog_title']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает описание блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setDescription($data) {
|
|
$this->_aData['blog_description']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает тип блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setType($data) {
|
|
$this->_aData['blog_type']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает дату создания блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setDateAdd($data) {
|
|
$this->_aData['blog_date_add']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает дату редактирования топика
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setDateEdit($data) {
|
|
$this->_aData['blog_date_edit']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает рейтинг блога
|
|
*
|
|
* @param float $data
|
|
*/
|
|
public function setRating($data) {
|
|
$this->_aData['blog_rating']=$data;
|
|
}
|
|
/**
|
|
* Устаналивает количество проголосовавших
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setCountVote($data) {
|
|
$this->_aData['blog_count_vote']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает количество пользователей блога
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setCountUser($data) {
|
|
$this->_aData['blog_count_user']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает количество топиков в блоге
|
|
*
|
|
* @param int $data
|
|
*/
|
|
public function setCountTopic($data) {
|
|
$this->_aData['blog_count_topic']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает ограничение на постинг в блог
|
|
*
|
|
* @param float $data
|
|
*/
|
|
public function setLimitRatingTopic($data) {
|
|
$this->_aData['blog_limit_rating_topic']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает URL блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setUrl($data) {
|
|
$this->_aData['blog_url']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает полный серверный путь до аватара блога
|
|
*
|
|
* @param string $data
|
|
*/
|
|
public function setAvatar($data) {
|
|
$this->_aData['blog_avatar']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает автора блога
|
|
*
|
|
* @param ModuleUser_EntityUser $data
|
|
*/
|
|
public function setOwner($data) {
|
|
$this->_aData['owner']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает статус администратора блога для текущего пользователя
|
|
*
|
|
* @param bool $data
|
|
*/
|
|
public function setUserIsAdministrator($data) {
|
|
$this->_aData['user_is_administrator']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает статус модератора блога для текущего пользователя
|
|
*
|
|
* @param bool $data
|
|
*/
|
|
public function setUserIsModerator($data) {
|
|
$this->_aData['user_is_moderator']=$data;
|
|
}
|
|
/**
|
|
* Устаналивает статус присоединения польователя к блогу
|
|
*
|
|
* @param bool $data
|
|
*/
|
|
public function setUserIsJoin($data) {
|
|
$this->_aData['user_is_join']=$data;
|
|
}
|
|
/**
|
|
* Устанавливает объект голосования за блог
|
|
*
|
|
* @param ModuleVote_EntityVote $data
|
|
*/
|
|
public function setVote($data) {
|
|
$this->_aData['vote']=$data;
|
|
}
|
|
}
|
|
?>
|