Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Zero108

Как разрешить администратору управление всеми записями блогов

Recommended Posts

Подскажите, что изменить в коде, чтобы группа Администраторы могла управлять любыми записями любых блогов, в том числе созданных другими администраторами?

Share this post


Link to post
Share on other sites

Что значит "управлять"?

Запись можно удалить/отредактировать/скрыть/закрепить и т.д.

 

Что сейчас нельзя делать?

Share this post


Link to post
Share on other sites

В основном нужно перемещать записи между блогами. Что сейчас возможно только в пределах одного пользователя. А нужно, чтобы можно было переместить другому пользователю. Так точнее будет, что я хотел.

Share this post


Link to post
Share on other sites

\applications\blog\sources\Blog\Blog.php

В методе can найти

		if ( $club = $this->club() )
	{
		if ( !$member->member_id )

Выше добавить

		if ($permission === 'add' and $member->isAdmin())
	{
		return TRUE;
	}

  • Upvote 1

Share this post


Link to post
Share on other sites

Ничего не изменилось. По-прежнему, администратор не может переместить запись блога другого администратора (или любой другой группы) в любой другой блог, либо создать запись блога в любом блоге, кроме своего.

 

	public function can( $permission, $member=NULL )
{		
	/* Load member */
	if ( $member === NULL )
	{
		$member = \IPS\Member::loggedIn();
	}

	if ($permission === 'add' and $member->isAdmin())
	{
		return TRUE;
	}			

	if ( $club = $this->club() )
	{
		switch ( $permission )
		{
			case 'add':
				return $club->isModerator( $member );

			case 'view':
			case 'read':
			default:
				return $club->canRead( $member );
		}

	}

Edited by Zero108

Share this post


Link to post
Share on other sites

Ничего не изменилось. По-прежнему, администратор не может переместить запись блога другого администратора (или любой другой группы) в любой другой блог, либо создать запись блога в любом блоге, кроме своего.

 

Администратор - ?

В коде мы проверяем, что юзер имеет доступ в АЦ.

Я после данной правки создал запись под простым пользователем и после под админом смог ее переместить в блог администратора.

Share this post


Link to post
Share on other sites

Два администратора имеют два блога. После внесения правки в код, администратор не может создать запись в блоге другого администратора, либо перенести запись из блога администратора в свой блог. IPS 4.2.8.

Edited by Zero108

Share this post


Link to post
Share on other sites

А при чем тут создать?

Если речь шла о переносе записей.

 

Чтобы создавать, нужно изменить \applications\blog\sources\Entry\Entry.php

До

		if ( $showError and !$return )

Добавить

		if ($member->isAdmin())
	{
		$return = true;
	}

 

Перемещение проверьте с таким условием

        if ($permission === 'add' and $member->member_id == X)

X замените на ID админа, под которым будете перемещать записи.

Share this post


Link to post
Share on other sites

Добавление заработало. Столкнулся с такой ситуацией: добавил запись в чужой блог с выключенной кнопкой публикации. Запись сохранилась как черновик (иконка с карандашом). Но после того, как я покинул страницу записи, я не смог её найти. В панели управления модератора её нет. Я смог увидеть черновик только после того, как авторизовался как автор блога. Можно как-то видеть свои скрытые черновики в чужих блогах? Что поменять в коде?

 

tz6DTAV.png

Edited by Zero108

Share this post


Link to post
Share on other sites

А при перемещении записи блог другого администратора просто не высвечивается в выпадающем списке куда перемещать.

Share this post


Link to post
Share on other sites

В панели управления модератора её нет. Я смог увидеть черновик только после того, как авторизовался как автор блога. Можно как-то видеть свои скрытые черновики в чужих блогах? Что поменять в коде?

Вообще ни какие правки не должны влиять на просмотр скрытых записей, если есть права на это.

Создал неопубликованную запись. Перешел на страницу блога, и она там отображается.

 

А при перемещении записи блог другого администратора просто не высвечивается в выпадающем списке куда перемещать.

У меня недоступные блоги неактивны, т.е. есть, но выбрать нельзя.

Share this post


Link to post
Share on other sites

Ну, а как перемещать, если выбрать нельзя?

 

Черновик публикуется в чужом блоге. Его там потом видно только когда авторизован как автор блога, а не как автор черновика.

Edited by Zero108

Share this post


Link to post
Share on other sites
Ну, а как перемещать, если выбрать нельзя?

Так это без правок. С правками перемещается без проблем.

Черновик публикуется в чужом блоге. Его там потом видно только когда авторизован как автор блога, а не как автор черновика.

Может каких-либо прав не хватает. Я как админ вижу черновик, созданный в чужом блоге.

  • Upvote 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...