Пропустить

Логическая доработка мода disallow editing replied posts mod

Форум для авторов модов для phpBB 2.0.x.

Сообщение dnk » 27.11.2006 13:55

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

Открыть viewtopic.php
Найти:

if ($userdata['user_id'] == $poster_id && $is_auth['auth_delete'] && $forum_topic_data['topic_last_post_id'] == $postrow[$i]['post_id'])


Заменить на:

if ($userdata['user_id'] == $poster_id && $is_auth['auth_delete'])


Открыть posting.php
Найти и удалить:

else if ( !$post_data['edit_poll'] && !$is_auth['auth_mod'] && ( $mode == 'poll_delete' || $poll_delete ))
		{
			message_die(GENERAL_MESSAGE, $lang['Cannot_delete_poll']);
		}



Соответственно, привязывая к моду disallow editing posts

должно быть так:
viewtopic.php

if ( time() <= $limit_time && $userdata['user_id'] == $poster_id && $is_auth['auth_delete'])


В posting.php
соотвественно удалить только кусок:

else if ( !$post_data['edit_poll'] && !$is_auth['auth_mod'] && ( $mode == 'poll_delete' || $poll_delete ))
		{
			message_die(GENERAL_MESSAGE, $lang['Cannot_delete_poll']);
		}

dnk
phpBB 2.0.10
 
Сообщения: 350
Зарегистрирован: 23.08.2006 18:34
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Alexalexis » 25.03.2007 12:19

Версия мода Disallow editing replied posts 1.1.0 последняя?
С phpbb.com он не скачивается, но я нашёл. А вот в обсуждении на phpbb.com в последнем сообщении http://www.phpbb.com/community/viewtopic.php?f=15&t=225379&start=45#p2737176 написано о проблемах с цитированием после его установки. Я не силён в английском, но понял это так. Кто ставил такой мод на последнюю версию форума и решил ли эту проблему? И нет ли какого альтернативного мода с такой же направленностью?

Alexalexis
phpBB 2.0.3
 
Сообщения: 183
Зарегистрирован: 03.01.2007 3:01
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение VVVas » 30.03.2007 9:05

Alexalexis писал(а):Кто ставил такой мод на последнюю версию форума и решил ли эту проблему?

Я ставил и у меня стоит, проблем нет.
Аватара пользователя
VVVas
Former team member
 
Сообщения: 4469
Зарегистрирован: 12.11.2004 0:20
Благодарил (а): 0 раз.
Поблагодарили: 10 раз.

Сообщение dnk » 28.06.2007 13:45

Подправил свою личную доработку по этому моду.
http://www.phpbbguru.net/community/view ... 766#110766

Теперь админ может устанавливать в админке отдельно - лимит времени правки сообщения и отдельно - лимит времени удаления сообщения.

dnk
phpBB 2.0.10
 
Сообщения: 350
Зарегистрирован: 23.08.2006 18:34
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение TheHawk » 12.08.2007 18:32

dnk, хотелось бы отдельно ещё сделать, чтобы можно было было автору править свой первый пост. Это часто бывает нужно для внесения изменения или выкладывания новой версии чего-то.
Изображение
Аватара пользователя
TheHawk
phpBB 2.0.1
 
Сообщения: 130
Зарегистрирован: 21.02.2007 18:04
Откуда: Беларусь, Гомель
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение dnk » 12.08.2007 18:42

TheHawk
А что сейчас юзер не может править первый пост, после которого идут ответы?
Откройте posting.php и посмотрите, нигде у вас не стоит подобный код:

$post_data['poster_id'] = $post_info['poster_id'];
		//+MOD: Disallow editing replied posts
		if( $userdata['user_level'] != ADMIN && $userdata['user_level'] != MOD )
		{
			if( $post_id == $post_data['first_post'] && $post_id != $post_data['last_post'])
			{
				message_die(GENERAL_MESSAGE, $lang['Cannot_edit_replied']);
			}
		}
//-MOD: Disallow editing replied posts

dnk
phpBB 2.0.10
 
Сообщения: 350
Зарегистрирован: 23.08.2006 18:34
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение TheHawk » 12.08.2007 19:00

dnk, я проверил, если стоит допустим время правки 60 минут, то через это время он уже не может править ни 1 поста, включая 1-й.
Я бы хотел чтобы этот юзер мог править свой первый пост в теме и по прошествии данного времени.
Кстати после
$post_data['poster_id'] = $post_info['poster_id'];

таких строк нету

Добавлено спустя 1 минуту 20 секунд:

Да и не только после этой, их вообще нету в этом файле.
Изображение
Аватара пользователя
TheHawk
phpBB 2.0.1
 
Сообщения: 130
Зарегистрирован: 21.02.2007 18:04
Откуда: Беларусь, Гомель
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Yan » 22.01.2008 10:29

dnk писал(а):А еще лучше сделать так:
Чтобы пользователь мог править/удалять первое сообщение темы, если после него никто не ответил и не мог править его, если за его первым сообщением есть ответы других участников.Это делается для того, чтобы запретить править заголовок темы после получения ответов от других.
В скрипте posting.php
Найти:
$post_data['poster_id'] = $post_info['poster_id'];

Ниже добавить:
$post_data['poster_id'] = $post_info['poster_id'];
		//+MOD: Disallow editing replied posts
		if( $userdata['user_level'] != ADMIN && $userdata['user_level'] != MOD )
		{
			if( $post_id == $post_data['first_post'] && $post_id != $post_data['last_post'])
			{
				message_die(GENERAL_MESSAGE, $lang['Cannot_edit_replied']);
			}
		}
//-MOD: Disallow editing replied posts

Ну и в языковых файлах:
lang_main.php (en)
После:
$lang['Cannot_delete_replied'] = 'Sorry, but you may not delete posts that have been replied to.';

Добавить:
//+MOD: Disallow editing replied posts
$lang['Cannot_edit_replied'] = "Sorry, but you may not edit first post that has been replied to.";
//-MOD: Disallow editing replied posts

Для русского:
//+MOD: Disallow editing replied posts
$lang['Cannot_edit_replied'] = "Извините, но вы не можете править первое сообщение, на которое были получены ответы";
//-MOD: Disallow editing replied posts


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

Yan
phpBB 1.2.1
 
Сообщения: 23
Зарегистрирован: 15.11.2005 13:08
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Палыч » 22.01.2008 10:39

Yan писал(а):Как сделать, чтобы любое сообщение, даже если оно не первое в теме, нельзя было редактировать его автору, если в последующем были даны ответы на него?
Что вы имеете ввиду под "в последующем"? Мод как раз и позволяет редактировать только последний ("не отвеченный") пост в теме.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Палыч
Просто Палыч
Просто Палыч
 
Сообщения: 9257
Зарегистрирован: 24.05.2006 22:20
Откуда: Питер
Благодарил (а): 3 раз.
Поблагодарили: 283 раз.

Сообщение Yan » 22.01.2008 12:26

У меня получается такая ситуация:
- пользователь №1 открыл тему;
- пользователь №2 написал ответ - польз. №1 уже не может редактировать своё первое сообщение;
- пользователь №Х написал ещё один ответ - польз. №2 может (!)редактировать своё сообщение, хотя оно было последним в теме перед тем, как был дан ответ.
И т.д., т.е. все последующие сообщения почему-то редактируются, только первое - нет.
Хотя в коде и написано $post_id != $post_data['last_post'])

Yan
phpBB 1.2.1
 
Сообщения: 23
Зарегистрирован: 15.11.2005 13:08
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Палыч » 22.01.2008 14:50

Yan
Так а зачем вы вносили изменения в оригинальный МОД?
Просто внимательно перечитайте тему.
Оригинальный МОД работает так, как вы хотите.
А в теме обсуждаются различного рода его доработки до хотелок других пользователей.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Палыч
Просто Палыч
Просто Палыч
 
Сообщения: 9257
Зарегистрирован: 24.05.2006 22:20
Откуда: Питер
Благодарил (а): 3 раз.
Поблагодарили: 283 раз.

Сообщение Yan » 27.01.2008 20:04

Виноват. :oops:

Yan
phpBB 1.2.1
 
Сообщения: 23
Зарегистрирован: 15.11.2005 13:08
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Логическая доработка мода disallow editing replied posts mod

Сообщение Miracle » 27.10.2009 13:41

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

Спасибо.

Miracle
phpBB 2.0.0
 
Сообщения: 102
Зарегистрирован: 04.01.2007 5:29
Благодарил (а): 0 раз.
Поблагодарили: 1 раз.

Пред.

Вернуться в Для авторов (phpBB 2.0.x)

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы