Jump to content
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

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

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

Featured Replies

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

  • Author

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

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

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

  • Author

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

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

  • Author

Тогда никак.

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

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

  • Author

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

у меня есть модуль хайда для 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 - группы которым не будут показываться аттачи.

  • Author

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

 

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

 

	return $rows;

заменить на

 

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

 

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

РАБОТАЕТ!

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

  • Author

up)

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.