2008-09-21 09:36:57 +03:00
|
|
|
|
<?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
|
|
|
|
|
*
|
|
|
|
|
---------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Подлючение/отключение от блога
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
set_include_path(get_include_path().PATH_SEPARATOR.dirname(dirname(dirname(__FILE__))));
|
|
|
|
|
chdir(dirname(dirname(dirname(__FILE__))));
|
|
|
|
|
require_once("./config/config.ajax.php");
|
|
|
|
|
|
|
|
|
|
$idBlog=@$_REQUEST['idBlog'];
|
|
|
|
|
$bStateError=true;
|
|
|
|
|
$sMsg='';
|
|
|
|
|
$sMsgTitle='';
|
2009-01-18 17:57:48 +02:00
|
|
|
|
$bState='';
|
2008-09-21 09:36:57 +03:00
|
|
|
|
$iCountUser=0;
|
|
|
|
|
if ($oEngine->User_IsAuthorization()) {
|
2009-01-18 17:57:48 +02:00
|
|
|
|
|
2008-09-21 09:36:57 +03:00
|
|
|
|
if ($oBlog=$oEngine->Blog_GetBlogById($idBlog)) {
|
|
|
|
|
/**
|
|
|
|
|
* Как только заработают другие виды блогов(кроме open) тут нужно внести коррективы, чтоб можно было покинуть блог по приглашениям
|
|
|
|
|
*/
|
|
|
|
|
$oUserCurrent=$oEngine->User_GetUserCurrent();
|
|
|
|
|
if ($oBlog->getType()=='open') {
|
|
|
|
|
$oBlogUser=$oEngine->Blog_GetRelationBlogUserByBlogIdAndUserId($oBlog->getId(),$oUserCurrent->getId());
|
2009-01-18 17:57:48 +02:00
|
|
|
|
if (!$oBlogUser) {
|
2008-09-21 09:36:57 +03:00
|
|
|
|
if ($oBlog->getOwnerId()!=$oUserCurrent->getId()) {
|
|
|
|
|
/**
|
|
|
|
|
* Присоединяем юзера к блогу
|
|
|
|
|
*/
|
|
|
|
|
$oBlogUserNew=new BlogEntity_BlogUser();
|
|
|
|
|
$oBlogUserNew->setBlogId($oBlog->getId());
|
|
|
|
|
$oBlogUserNew->setUserId($oUserCurrent->getId());
|
|
|
|
|
if ($oEngine->Blog_AddRelationBlogUser($oBlogUserNew)) {
|
|
|
|
|
$bStateError=false;
|
|
|
|
|
$sMsgTitle='Поздравляем!';
|
|
|
|
|
$sMsg='Вы вступили в блог';
|
2009-01-18 17:57:48 +02:00
|
|
|
|
$bState=true;
|
2008-09-21 09:36:57 +03:00
|
|
|
|
/**
|
|
|
|
|
* Увеличиваем число читателей блога
|
|
|
|
|
*/
|
|
|
|
|
$oBlog->setCountUser($oBlog->getCountUser()+1);
|
|
|
|
|
$oEngine->Blog_UpdateBlog($oBlog);
|
|
|
|
|
$iCountUser=$oBlog->getCountUser();
|
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Ошибка!';
|
|
|
|
|
$sMsg='Внутреняя ошибка, попробуйте позже';
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Внимание!';
|
|
|
|
|
$sMsg='Зачем вы хотите вступить в этот блог? Вы и так его хозяин!';
|
|
|
|
|
}
|
2009-01-18 17:57:48 +02:00
|
|
|
|
}
|
|
|
|
|
if ($oBlogUser) {
|
2008-09-21 09:36:57 +03:00
|
|
|
|
/**
|
|
|
|
|
* Покидаем блог
|
|
|
|
|
*/
|
|
|
|
|
if ($oEngine->Blog_DeleteRelationBlogUser($oBlogUser)) {
|
|
|
|
|
$bStateError=false;
|
|
|
|
|
$sMsgTitle='Внимание!';
|
|
|
|
|
$sMsg='Вы покинули в блог';
|
2009-01-18 17:57:48 +02:00
|
|
|
|
$bState=false;
|
2008-09-21 09:36:57 +03:00
|
|
|
|
/**
|
|
|
|
|
* Уменьшаем число читателей блога
|
|
|
|
|
*/
|
|
|
|
|
$oBlog->setCountUser($oBlog->getCountUser()-1);
|
|
|
|
|
$oEngine->Blog_UpdateBlog($oBlog);
|
|
|
|
|
$iCountUser=$oBlog->getCountUser();
|
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Ошибка!';
|
|
|
|
|
$sMsg='Внутреняя ошибка, попробуйте позже';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Ошибка!';
|
|
|
|
|
$sMsg='Присоедениться к этому блогу можно только по приглашению!';
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Ошибка!';
|
|
|
|
|
$sMsg='Блог не найден!';
|
|
|
|
|
}
|
2009-01-18 17:57:48 +02:00
|
|
|
|
|
2008-09-21 09:36:57 +03:00
|
|
|
|
} else {
|
|
|
|
|
$sMsgTitle='Ошибка!';
|
|
|
|
|
$sMsg='Для подключения/отключения от блога необходимо авторизоваться!';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$GLOBALS['_RESULT'] = array(
|
|
|
|
|
"bStateError" => $bStateError,
|
2009-01-18 17:57:48 +02:00
|
|
|
|
"bState" => $bState,
|
2008-09-21 09:36:57 +03:00
|
|
|
|
"iCountUser" => $iCountUser,
|
|
|
|
|
"sMsgTitle" => $sMsgTitle,
|
|
|
|
|
"sMsg" => $sMsg,
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
?>
|
|
|
|
|
<pre>
|
|
|
|
|
<b>Request method:</b> <?=$_SERVER['REQUEST_METHOD'] . "\n"?>
|
|
|
|
|
<b>Loader used:</b> <?=$JsHttpRequest->LOADER . "\n"?>
|
|
|
|
|
<b>_REQUEST:</b> <?=print_r($_REQUEST, 1)?>
|
|
|
|
|
</pre>
|