Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Скрыть от пользователей добавленные не ими новости

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


     03.07.2012    добавлие новостей    Все вопросы » Общие вопросы по PHP    3346

вопрос
Добрый день!
Ребята, как можно реализовать такой функционал?
Любой человек добавляет новость на сайт, и эту новость видит только он и админы с главными редакторами, остальные ее не видят. Если ты добавлял новости на сайт — видишь только свои, не добавлял — сайт пустой.
Делать для каждого пользователя свою категорию новостей — не выход, в принципе категории вообще не планируется использовать.

Ответа пока нет


7 комментариев

nowheremany
Эксперт

nowheremany - 4 июля 2012 10:15 -

Эм - прощай кэш?

Благодарность принимаю тут Связь

Конкордия
Юзер

Конкордия - 4 июля 2012 11:12 -

Ну вообще ситуация какая... Допустим некоммерческий центр оказывает бесплатную консультационную и психологическую поддержку пострадавшим от насилия в семье взрослым и детям. Разумеется, писать туда будут такое, что не для паблик. Читать никто посторонний не должен — только автор и сотрудники центра — психологи, юристы и т.д.
e-mail плохо подходит для таких целей. От этой существующей уже на сайте схемы решено отказаться и перевести ее в форму диалога на основе комментариев.
Вот и кумекаю, как это организовать. Не к спеху — просто попросили помочь что-нибудь придумать. Сайт у них на голом html из 10 страниц. Единственное что приходит на ум — поставить на поддомен DLE, разрешить пользователям добавлять новости и каким-то макаром скрыть их от ID 4 и 5 групп (кроме автора). То есть получается не категорию скрывать нужно, а сами новости.

ПафНутиЙ
Админ

ПафНутиЙ - 4 июля 2012 11:34 -

ДЛЕ однозначно не для этого. Нужна система тиккетов, это единственно возможный в данном случаи функционал. По сути ведь и получается тиккеты.

Каков вопрос - таков и ответ. Просто помните об этом.

Конкордия
Юзер

Конкордия - 4 июля 2012 21:34 -

Какая-то тикет-система у них действует. Как я поняла со слов, она работает на основе электронной почты. Но не устраивает их именно потому, что по сути является общением пользователя и саппорта. Они же хотят не этого, а чтобы одновременный доступ и возмсожность комментирования имели где-то например 2-3 десятка (не знаю сколько точно) специалистов и вроде бы даже с разных городов. То есть по сути это получаются не тикеты, а разграничение прав доступа к создаваемым темам (новостям) между группами пользователей. А это нормально реализовано только на DLE и на форумных движках. И тут только одна единственная загвоздка — скрыть от группы "пользователи" созданные не ими новости, весь остальной функционал в DLE имеется изначально.

Mr. Hyde
Юзер

Mr. Hyde - 4 июля 2012 22:03 -

В engine/modules/show.short.php находим:

if( $allow_active_news ) {


и заменяем на:

if( $allow_active_news OR $row['autor']==$member_id['user_id'] OR $member_id['user_group']=='1' OR $member_id['user_group']=='2') {


Но как сказал nowheremany, прощай кеш....

nowheremany
Эксперт

nowheremany - 5 июля 2012 10:29 -

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

А вообще, я бы посоветовал в engine запрос подправить, а не таким жестким методом работать

Благодарность принимаю тут Связь

Конкордия
Юзер

Конкордия - 5 июля 2012 00:13 -

Mr. Hyde, спасибо большое! Вроде то что нужно. На днях попробую потестить.
А насчет кэша.. это ведь не основной сайт будет, а лишь отдельный сервис, которым реально пользоваться будут единицы. Так что насчет нагрузки на сервер думаю особо беспокоится смысла нет.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх