Перейти к контенту

"Сообщение отредактировано" - сделать более интеллектуальным


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

Сижу вот и думаю.

 

Часто, что происходит так - написал что-нибудь, отправил, перечитаешь - нашёл пару опечаток, исправляешь => появляется пометка о редактировании сообщения, хотя как такового - его не было, а пометка о редактировании - у многих вызывает различные мысли, которых в данном случае вообще быть не должно.

 

Я думаю, может кто-нибудь напишет мод, чтобы при изменении сообщения в течении N секунд не добавлялась отметка, и если изменений там меньше 5% скажем.

 

По-первому пункту - всё просто, по-второму - на самом деле тоже не сложно, text_diff у нас не просто так идёт в дистрибутиве -)

 

Собственно пишите, если кому интересно -) Мне лень.

Ссылка на комментарий
Поделиться на других сайтах

А чего писать-то тут? :D

Это для 1.3

 

// jAx was here :D

$vremya = time() - 2*60;

if (($ibforums->member['g_append_edit']) && ($this->post['post_date'] < $vremya))
	{
		$this->post['post'] .= "\n\n<br><br><!--EDIT|".$ibforums->member['name']."|".$time."-->";
	}

 

А для 2.1, наверное надо копать здесь:

		//-----------------------------------------
	// Update the database (ib_forum_post)
	//-----------------------------------------

	$this->post['append_edit'] = 1;

	if ( $this->ipsclass->member['g_append_edit'] )
	{
		if ( $this->ipsclass->input['add_edit'] != 1 )
		{
			$this->post['append_edit'] = 0;
		}
	}

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

Если кто подскажет еще =)

 

Думаю, когда я домой вернусь, тут уже все напишут... =)

Ссылка на комментарий
Поделиться на других сайтах

Идея замечательная. Но я вот о чем подумал. Когда используются модераторские теги
[ex][/ex] и [mod][/mod]

код будет пологать, что пост почти не редактировался и соответственно добавки о том, что он отредактирован не будет. Но мне например как админу нужна отчетность о том, КТО добавил этот модераторский тег-кирпичик. Как сие профиксить не подскажите? :D

Ссылка на комментарий
Поделиться на других сайтах

А я знаю, что идея хорошая -)

 

Пишите, пишите -)

 

Спасибо за быструю реакцию. Не забудьте в скрипте отметить чья идея -)

 

PS: Лично мне - это задаром не нужно, просто поделился идеей.

Изменено пользователем Destruction
Ссылка на комментарий
Поделиться на других сайтах

2Xeim.net

Вряд ли модератор отредактирут сообщение в пределах 2-х минут.

 

но проверка обыкновенна:

если (прошло_времени_больше_х_минут либо есть модераторский тег ) { выводить }

Ссылка на комментарий
Поделиться на других сайтах

Song, как раз в том-то и дело, что бывают те, кто на ходу нарушают правило за правилом. У нас такие появляются во время "каникул". вот за ними буквально сразу надо подчищать.

 

если (прошло_времени_больше_х_минут либо есть модераторский тег ) { выводить }

Михаил, поясни пожалуйста подробнее, как должен выглядеть красный фрагмент кода. Я не знаю как можно определить имеется ли в посте что-либо или тем более модераторский тег. Научи :D

Ссылка на комментарий
Поделиться на других сайтах

модераторский тег пришёл к тебе с каким-то модом. Вот там и посмотри/спроси в теме поддержки. Я ж не знаю, что у тебя за мод теги
Ссылка на комментарий
Поделиться на других сайтах

Э, не хочется.. Для 2.1 мог бы написать, раз уж моя идея -)

 

Вернее так, буду благодарен, за версию для 2.1.

 

Кстате...

 

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

Изменено пользователем Destruction
Ссылка на комментарий
Поделиться на других сайтах

У меня есть идея получше, но ее будет куда тяжелее выполнить....за то если она будет реализована...

 

 

 

 

if (изменено текст > 30% от всей длины сообщения)

{

выводить пометку

}

 

но как выполнить...даже не догадываюсь

Ссылка на комментарий
Поделиться на других сайтах

Я об этом говорил в первом посте.

 

Повторюсь, а нафига у нас идёт в комплекте class diff ? :-)

Ссылка на комментарий
Поделиться на других сайтах

Точно не я - своих делов хватает.

 

Я могу по-пунктам даже расписать реализацию, если буду уверен, что кто-то возьмётся.

Ссылка на комментарий
Поделиться на других сайтах

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

эт ещё зачем?

Ссылка на комментарий
Поделиться на других сайтах

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

эт ещё зачем?

Очень просто.

 

Смотри, я пишу какую-нибудь лабуду. Ты отвечаешь (не процитировав), отвечаешь чуть-ли не матом, т.к. я пишу конкретную лабуду, я это увидев - быстренько редактирую пост и говорю, что так и было.

 

Шанс попасть в такую ситуацию не велик, но есть.

Ссылка на комментарий
Поделиться на других сайтах

Ну это уже узкое место этого варианта.

Вряд ли в пределах 2-х минут такое может случиться :D

 

А как помогут "новые" сообщения? Все сообщения когда-то были новыми.

Ссылка на комментарий
Поделиться на других сайтах

По-моему нужно помнить, о том, что если предыдущее редактирование поста вызвало добавление надписи "Отредактировано", то последущее может убрать эту надпись. Не лучше ли будет выводить еще хотя бы колличество раз редактирования?

 

И кстати Destruction верно говорит. Я часто думаю о том, что надо исправлять свои ошибки. И обычно я об этом задумываюсь, когда вижу модератора в теме, где я написал подозрительный пост :D Тут - так вобще пост лучше не редактировать, не то штраф уберется.

Ссылка на комментарий
Поделиться на других сайтах

Во-первых, это не твоя идея, у меня она реализована была еще полтора года назад :D Это еще спорный момент ;)

 

Во-вторых, Destruction, для 2.х писать - как два пальца, я код не смотрел, но не думаю, что будет очень сложно разобраться. Зачем тут флуд разводить, когда сам можешь? %)

Ссылка на комментарий
Поделиться на других сайтах

2Jax, запатентовал? Думаю нет - я до этого сам додумался, написал - так, что в ЭТОЙ теме это моя идея. Давай не будем этот тут обсуждать.

 

2. А зачем мне ? Мне не надо.

Ссылка на комментарий
Поделиться на других сайтах

Да мне все равно если честно, чья идея :) пусть твоя будет.

 

Ну если тебе это не нужно, зачем тогда тему создал? :D Идеей поделиться? Я написал решение, оно работает, что не так? ;)

Ссылка на комментарий
Поделиться на других сайтах

1. Я ж говорю, что не запатентовал :D

 

2. Да, именно идеей поделится.

 

3. Ага, для 1.3 -) Jax, просто мне редко в голову приходят хорошие идеи, раз уж пришло - почему бы не поделится ? Как написать - я и сам знаю, сколько модов понаписал, проблем не возникало.

Ссылка на комментарий
Поделиться на других сайтах

Поставил на свой форум.

На самом деле там всего одну строку добавить надо. И в Topics.php.

				if ( $row['edit_time'] - $row['old_post_date'] > $ibforums->vars['edit_minutes_valid'] * 60 )
			{
				$e_time 	= $std->get_date($row['edit_time'] , "LONG");

				$row['post'] 	.= "<br><br><span class='edit'>".sprintf($ibforums->lang['edited_by'], $row['edit_name'], $e_time)."</span>";
			}

первая - это то что надо добавить.

 

old_post_date - это аналог post_date но до прогона этого post_date через $std->get_date

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.