1
0
Fork 0
mirror of https://github.com/Oreolek/ifhub.club.git synced 2024-07-01 05:55:02 +03:00

Возможность забанить пользователя блога.

This commit is contained in:
Alexey Kachayev 2009-09-26 20:32:33 +00:00
parent 62e27bc420
commit a4d7c21450
4 changed files with 35 additions and 6 deletions

View file

@ -384,9 +384,14 @@ class ActionBlog extends Action {
case 'moderator':
$oBlogUser->setUserRole(LsBlog::BLOG_USER_ROLE_MODERATOR);
break;
default:
case 'reader':
$oBlogUser->setUserRole(LsBlog::BLOG_USER_ROLE_USER);
break;
case 'ban':
$oBlogUser->setUserRole(LsBlog::BLOG_USER_ROLE_BAN);
break;
default:
$oBlogUser->setUserRole(LsBlog::BLOG_USER_ROLE_GUEST);
}
$this->Blog_UpdateRelationBlogUser($oBlogUser);
$this->Message_AddNoticeSingle($this->Lang_Get('blog_admin_users_submit_ok'));
@ -395,7 +400,15 @@ class ActionBlog extends Action {
/**
* Получаем список подписчиков блога
*/
$aBlogUsers=$this->Blog_GetBlogUsersByBlogId($oBlog->getId());
$aBlogUsers=$this->Blog_GetBlogUsersByBlogId(
$oBlog->getId(),
array(
LsBlog::BLOG_USER_ROLE_BAN,
LsBlog::BLOG_USER_ROLE_USER,
LsBlog::BLOG_USER_ROLE_MODERATOR,
LsBlog::BLOG_USER_ROLE_ADMINISTRATOR
)
);
$this->Viewer_AddHtmlTitle($oBlog->getTitle());
$this->Viewer_AddHtmlTitle($this->Lang_Get('blog_admin'));
@ -931,6 +944,7 @@ class ActionBlog extends Action {
$aBlogUsers = $this->Blog_GetBlogUsersByBlogId(
$oBlog->getId(),
array(
LsBlog::BLOG_USER_ROLE_BAN,
LsBlog::BLOG_USER_ROLE_REJECT,
LsBlog::BLOG_USER_ROLE_INVITE,
LsBlog::BLOG_USER_ROLE_USER,
@ -1165,6 +1179,14 @@ class ActionBlog extends Action {
$this->Viewer_Assign('iCountTopicsPersonalNew',$this->iCountTopicsPersonalNew);
$this->Viewer_Assign('iCountTopicsBlogNew',$this->iCountTopicsBlogNew);
$this->Viewer_Assign('iCountTopicsNew',$this->iCountTopicsNew);
$this->Viewer_Assign('BLOG_USER_ROLE_GUEST', LsBlog::BLOG_USER_ROLE_GUEST);
$this->Viewer_Assign('BLOG_USER_ROLE_USER', LsBlog::BLOG_USER_ROLE_USER);
$this->Viewer_Assign('BLOG_USER_ROLE_MODERATOR', LsBlog::BLOG_USER_ROLE_MODERATOR);
$this->Viewer_Assign('BLOG_USER_ROLE_ADMINISTRATOR', LsBlog::BLOG_USER_ROLE_ADMINISTRATOR);
$this->Viewer_Assign('BLOG_USER_ROLE_INVITE', LsBlog::BLOG_USER_ROLE_INVITE);
$this->Viewer_Assign('BLOG_USER_ROLE_REJECT', LsBlog::BLOG_USER_ROLE_REJECT);
$this->Viewer_Assign('BLOG_USER_ROLE_BAN', LsBlog::BLOG_USER_ROLE_BAN);
}
}
?>

View file

@ -38,6 +38,10 @@ class LsBlog extends Module {
* Пользователь, отклонивший приглашение админа
*/
const BLOG_USER_ROLE_REJECT = -2;
/**
* Забаненный в блоге пользователь
*/
const BLOG_USER_ROLE_BAN = -4;
protected $oMapperBlog;
protected $oUserCurrent=null;
@ -303,7 +307,7 @@ class LsBlog extends Module {
$res=$this->oMapperBlog->UpdateBlog($oBlog);
if ($res) {
//чистим зависимые кеши
$this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG,array('blog_update',"blog_update_{$oBlog->getId()}"));
$this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG,array('blog_update',"blog_update_{$oBlog->getId()}","topic_update"));
$this->Cache_Delete("blog_{$oBlog->getId()}");
return true;
}

View file

@ -137,6 +137,7 @@ return array(
'blog_admin_users_administrator' => 'администратор',
'blog_admin_users_moderator' => 'модератор',
'blog_admin_users_reader' => 'читатель',
'blog_admin_users_bun' => 'забаненный',
'blog_admin_users_current_administrator' => 'это вы — настоящий администратор!',
'blog_admin_users_empty' => 'в блоге никто не состоит',
'blog_admin_users_submit' => 'сохранить',

View file

@ -13,6 +13,7 @@
<td width="10%">{$aLang.blog_admin_users_administrator}</td>
<td width="10%">{$aLang.blog_admin_users_moderator}</td>
<td width="10%">{$aLang.blog_admin_users_reader}</td>
<td width="10%">{$aLang.blog_admin_users_bun}</td>
</tr>
</thead>
<tbody>
@ -23,9 +24,10 @@
{if $oUser->getId()==$oUserCurrent->getId()}
<td colspan="3" align="center">{$aLang.blog_admin_users_current_administrator}</td>
{else}
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="administrator" {if $oBlogUser->getIsAdministrator()}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="moderator" {if $oBlogUser->getIsModerator()}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="reader" {if !$oBlogUser->getIsAdministrator() and !$oBlogUser->getIsModerator()}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="administrator" {if $oBlogUser->getIsAdministrator()}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="moderator" {if $oBlogUser->getIsModerator()}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="reader" {if $oBlogUser->getUserRole()==$BLOG_USER_ROLE_USER}checked{/if}/></td>
<td><input type="radio" name="user_rank[{$oUser->getId()}]" value="ban" {if $oBlogUser->getUserRole()==$BLOG_USER_ROLE_BAN}checked{/if}/></td>
{/if}
</tr>
{/foreach}