Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
egorea1999

как скрыть аттачи от гостей?

Рекомендованные сообщения

как скрыть аттачи от гостей?

проблема в том, что у меня показываются прикреплённые файлы в аттачах, как их скрыть от гостей?

Поделиться сообщением


Ссылка на сообщение

Запретить группе гости просматривать аттачи.

Поделиться сообщением


Ссылка на сообщение

Запретить группе гости просматривать аттачи.

в админке не нашёл...мб плохо искал?

Поделиться сообщением


Ссылка на сообщение

В масках доступах форумов - "Скачивание файлов"

Поделиться сообщением


Ссылка на сообщение

В масках доступах форумов - "Скачивание файлов"

вы меня не так поняли, скачивать они не могут, а сами прикрепленные файлы видны

Поделиться сообщением


Ссылка на сообщение

Тогда никак.

Поделиться сообщением


Ссылка на сообщение

Тогда никак.

даже в шаблонах?

Поделиться сообщением


Ссылка на сообщение

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

Поделиться сообщением


Ссылка на сообщение

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

у меня есть модуль хайда для ipb, я там нашёл код и заменид всё как на инструкции

2. /admin/applications/forums/extensions/attachments/plugin_post.php
Проверяем права на просмотр аттача при прямом обращении к ним. Если вы ДЕЙСТВИТЕЛЬНО хотите скрывать файлы.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ВНИМАНИЕ !!!

Найти:

	//-----------------------------------------
	// Grab 'em
	//-----------------------------------------

Найти чуть ниже:

	//-----------------------------------------
	// Check..
	//-----------------------------------------

Весь код МЕЖДУ этими блоками ЗАМЕНИТЬ на:

	$this->DB->build( array( 
								'select'   => 'a.*',
								'from'     => array( 'attachments' => 'a' ),
								'where'    => "a.attach_rel_module='{$this->module}' AND a.attach_id={$attach_id}",
								'add_join' => array( 
													array( 
															#WR
															//'select' => 'p.pid, p.topic_id, p.queued',
															'select' => 'p.*',
															'from'   => array( 'posts' => 'p' ),
															'where'  => "p.pid=a.attach_rel_id",
															'type'   => 'left' 
														),
													array( 
															'select' => 't.forum_id',
															'from'   => array( 'topics' => 't' ),
															'where'  => "t.tid=p.topic_id",
															'type'   => 'left' 
														),
													#WR
													array(
															'select' => 'r.rep_rating as has_given_rep',
															'from'	 => array('reputation_index' => 'r'),
															'where'  => "r.type='pid' AND r.type_id=p.pid AND r.member_id=".$this->memberData['member_id'],
															'type'	 => 'left',
														),
												)
									)	);

	$attach_sql = $this->DB->execute();

	$attach     = $this->DB->fetch( $attach_sql );

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Найти:

	//-----------------------------------------
	// Ok?
	//-----------------------------------------

	if ( $_ok )
	{
		return $attach;
	}

Добавить ПЕРЕД:

	//-----------------------------------------
	// #WR - скрытый аттач?
	//-----------------------------------------

	if( $attach['attach_pd_conditions'] )
	{
		$classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH    . 'sources/classes/class_private_data.php', 'classPrivateData' );
		$pd_func = new $classToLoad( $this->registry );

		if( ! $pd_func->checkAttachment($attach) )
		{
			$_ok = 0;
		}
	}

 

АТТАЧИ СКРЫВАЕТ, но их не скачать, мб в этом коде ошибка?

Спасибо за поддержку :)

Поделиться сообщением


Ссылка на сообщение

Я не знаю что в этом коде, но если нужно скрыть аттачи из сообщений то

 

В этом же файле найти

 

	return $rows;

заменить на

 

	if( IPSMember::isInGroup($this->memberData, array(1,2)) )
	{
		return array();
	}
	else
	{
		return $rows;
	}

 

1,2 - группы которым не будут показываться аттачи.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Я не знаю что в этом коде, но если нужно скрыть аттачи из сообщений то

 

В этом же файле найти

 

	return $rows;

заменить на

 

	if( IPSMember::isInGroup($this->memberData, array(1,2)) )
	{
		return array();
	}
	else
	{
		return $rows;
	}

 

1,2 - группы которым не будут показываться аттачи.

РАБОТАЕТ!

Можно я вам скину этот хук, у меня копка в быстром редактировании не отображается, спасибо :)

Поделиться сообщением


Ссылка на сообщение

up)

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...