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

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


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

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

 

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

 

Я думаю, может кто-нибудь напишет мод, чтобы при изменении сообщения в течении 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

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

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

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

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

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

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

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

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