Главная Главная  Форум Форум  Мини чат Мини чат  Файлы Файлы  Новости Новости  Сайты Сайты  Статьи Статьи  Документация
История мини чата Написать
[ Нояб 26, 22:13 ] xeon: Да движок умер жалко хотя давно им не пользуюсь мои проекты доживают на нем пока так готовлю свой движок :)
[ Сент 30, 13:59 ] Eps: Проект умер походу....
[ Февр 04, 15:56 ] M@XIM: Есть кто?)
[ Июнь 12, 12:16 ] wsok: проект умер чтоль? интеграции с ксеном не ждать?
[ Нояб 25, 20:30 ] Jade: Вот и я тут появилась. ))

Партнёры

Перейти к содержимому


Категория файлового архива только для определенной группы пользователей


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 11

#1 Гостья

Гостья

    Активный участник

  • Пользователи
  • PipPipPip
  • 423 сообщений
  • Пол:Женщина
  • Форум:Нет
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 18 September 2013 - 14:20

Здравствуйте. Подскажите плиз как реализовать, чтоб одна категория файлового архива была доступна пользователям только одной определенной группы? MkPortal 1.2 + IPB 2.3.6

#2 xeon

xeon

    Активный участник

  • Пользователи
  • PipPipPip
  • 496 сообщений
  • Пол:Мужчина
  • Город:MSK
  • Интересы:PHP, MySQL, CSS, XML, HTML, JavaScript
  • Форум:IPB 3.2, IPB 3.1
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 18 September 2013 - 14:26

немного править придётся исходники и втыкать правило вида
if($mkportals->member['g_access_cp'] || $mkportals->member['mgroup'] =='1'){ тут что должна видеть группа}
где цыфра 1 это ид группы

#3 Гостья

Гостья

    Активный участник

  • Пользователи
  • PipPipPip
  • 423 сообщений
  • Пол:Женщина
  • Форум:Нет
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 18 September 2013 - 16:23

еще бы знать что куда втыкать.... полагаю, это надо делать в modules/downloads/index.php , но там такой здоровый файл и что куда прописывать... ссылка на папку, короую хочу закрыть такая : index.php?ind=downloads&op=section_view&idev=3

Сообщение отредактировал Гостья: 18 September 2013 - 16:25


#4 xeon

xeon

    Активный участник

  • Пользователи
  • PipPipPip
  • 496 сообщений
  • Пол:Мужчина
  • Город:MSK
  • Интересы:PHP, MySQL, CSS, XML, HTML, JavaScript
  • Форум:IPB 3.2, IPB 3.1
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 19 September 2013 - 12:00

Просмотр сообщенияГостья (18 September 2013 - 16:23) писал:

еще бы знать что куда втыкать.... полагаю, это надо делать в modules/downloads/index.php , но там такой здоровый файл и что куда прописывать... ссылка на папку, короую хочу закрыть такая : index.php?ind=downloads&op=section_view&idev=3

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

(сегодня после работы гляну как это можно сделать)

#5 xeon

xeon

    Активный участник

  • Пользователи
  • PipPipPip
  • 496 сообщений
  • Пол:Мужчина
  • Город:MSK
  • Интересы:PHP, MySQL, CSS, XML, HTML, JavaScript
  • Форум:IPB 3.2, IPB 3.1
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 21 September 2013 - 17:41

посидел попробовал не предстовляю как в списке делать ограничения в тех плане в теории есть представления (мнебы тоже хотелось бы узнать решение этой проблеммы )

#6 BMG

BMG

    Активный участник

  • Пользователи
  • PipPipPip
  • 419 сообщений
  • Пол:Мужчина
  • Интересы:http://www.mokro.us
    http://www.chih-pih.ru
  • Форум:PHPBB3
  • Версия MKP:C1.2.2

Отправлено 24 September 2013 - 23:24

Если есть желание поковыряться: http://www.mokrousov...try_view&iden=5 - реализация для галереи.

#7 Legion Leonhart

Legion Leonhart

    Активный участник

  • Пользователи
  • PipPipPip
  • 234 сообщений
  • Пол:Мужчина
  • Форум:IPB 1.x
  • Версия MKP:M1.1.2b

Отправлено 26 September 2013 - 19:35

Самый простой вариант, чтобы не сильно заморачиваться:
в файле modules/downloads/index.php
найти
function section_view() {
  global $mkportals, $DB, $mklib, $Skin, $mklib_board;
  $content = "";
  $idev = $mkportals->input['idev'];
добавить после
  if($idev=='ID_категории' && !$mkportals->member['g_access_cp'] && $mkportals->member['mgroup'] =='ID_группы' ) { \\ не забываем указать нужные ID, если нужно скрыть для всех кроме одной группы, то меняем =='ID_группы' на !='ID_группы'
			  $message = "{$mklib->lang['error_404']}";
			  $mklib->error_page($message);
			  exit;
  }
найти
function entry_view() {
  global $mkportals, $DB, $mklib, $Skin, $mklib_board;
  $iden = $mkportals->input['iden'];
  $query = $DB->query( "SELECT id, idcategoria, name, description, file, click, trate, rate, screen1, screen2, demo, autore, idauth, peso FROM mkp_download where id = '$iden' AND validate = '1'");
  $row = $DB->fetch_row($query);
добавить после
  if($row['idcategoria']=='ID_категории' && !$mkportals->member['g_access_cp'] && $mkportals->member['mgroup'] =='ID_группы' ) { \\ не забываем указать нужные ID, если нужно скрыть для всех кроме одной группы, то меняем =='ID_группы' на !='ID_группы'
			  $message = "{$mklib->lang['error_404']}";
			  $mklib->error_page($message);
			  exit;
  }


#8 Гостья

Гостья

    Активный участник

  • Пользователи
  • PipPipPip
  • 423 сообщений
  • Пол:Женщина
  • Форум:Нет
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 28 September 2013 - 20:31

что-то у меня ошибочка
Parse error: syntax error, unexpected T_STRING in /home/mkportal/modules/downloads/index.php on line 270
строка 270 это

if($idev=='11' && !$mkportals->member['g_access_cp'] && $mkportals->member['mgroup'] !='9' ) { \\ не забываем указать нужные ID, если нужно скрыть для всех кроме одной группы, то меняем =='ID_группы' на !='ID_группы'
11 - у меня ид категории, 9 ид группы, для которой хочу создать скрытую категорию

#9 xeon

xeon

    Активный участник

  • Пользователи
  • PipPipPip
  • 496 сообщений
  • Пол:Мужчина
  • Город:MSK
  • Интересы:PHP, MySQL, CSS, XML, HTML, JavaScript
  • Форум:IPB 3.2, IPB 3.1
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 29 September 2013 - 02:32

Просмотр сообщенияГостья (28 September 2013 - 20:31) писал:

что-то у меня ошибочка
Parse error: syntax error, unexpected T_STRING in /home/mkportal/modules/downloads/index.php on line 270
строка 270 это

if($idev=='11' && !$mkportals->member['g_access_cp'] && $mkportals->member['mgroup'] !='9' ) { \\ не забываем указать нужные ID, если нужно скрыть для всех кроме одной группы, то меняем =='ID_группы' на !='ID_группы'
11 - у меня ид категории, 9 ид группы, для которой хочу создать скрытую категорию

сотрите оттуда коментарий

\\ не забываем указать нужные ID, если нужно скрыть для всех кроме одной группы, то меняем =='ID_группы' на !='ID_группы'

если не поможет то исправте на это
if($idev=='11' || !$mkportals->member['g_access_cp'] || $mkportals->member['mgroup']=='9' ) {
						 $message = "{$mklib->lang['error_404']}";
						 $mklib->error_page($message);
						 exit;
}

Сообщение отредактировал xeon: 29 September 2013 - 02:34


#10 Гостья

Гостья

    Активный участник

  • Пользователи
  • PipPipPip
  • 423 сообщений
  • Пол:Женщина
  • Форум:Нет
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 29 September 2013 - 09:58

да, коммент убрала и заменила в обоих случаях lang['error_404'] на свой текст. для простых юзеров (не из группы 9) категория не видна , но модераторы туда могут зайти. это правильно?

#11 xeon

xeon

    Активный участник

  • Пользователи
  • PipPipPip
  • 496 сообщений
  • Пол:Мужчина
  • Город:MSK
  • Интересы:PHP, MySQL, CSS, XML, HTML, JavaScript
  • Форум:IPB 3.2, IPB 3.1
  • Версия MKP:R1.0.2, R1.0.1

Отправлено 01 October 2013 - 12:02

Просмотр сообщенияГостья (29 September 2013 - 09:58) писал:

да, коммент убрала и заменила в обоих случаях lang['error_404'] на свой текст. для простых юзеров (не из группы 9) категория не видна , но модераторы туда могут зайти. это правильно?

значит увас только коментарий мешал исправте это
if($idev=='11' || !$mkportals->member['g_access_cp'] || $mkportals->member['mgroup']=='9' ) {
												 $message = "{$mklib->lang['error_404']}";
												 $mklib->error_page($message);
												 exit;
}

на это
if($idev=='11' && !$mkportals->member['g_access_cp'] && $mkportals->member['mgroup']=='9' ) {
												 $message = "{$mklib->lang['error_404']}";
												 $mklib->error_page($message);
												 exit;
}

Сообщение отредактировал xeon: 01 October 2013 - 12:02


#12 Legion Leonhart

Legion Leonhart

    Активный участник

  • Пользователи
  • PipPipPip
  • 234 сообщений
  • Пол:Мужчина
  • Форум:IPB 1.x
  • Версия MKP:M1.1.2b

Отправлено 01 October 2013 - 18:49

Можно и комментарии оставить, просто слэши не в ту сторону повернуты, поэтому ошибка выскочила. Если что в моем коде поменяйте просто \\ на // и всё.




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных


MKPortal R1.0.2©2003-2008 mkportal.it
Logan ©2007-2011 RusMKPortal
Время: 0.00776 сек Память: 5.69MB Запросов к БД: 8