Skip to content

Невозможно добавить участника, вышедшего из переписки в "Личных сообщений"

Доброго дня!

 

Столкнулся с такой проблемой, участник конференции в "Личных Сообщениях" случайно вышел из переписки.

Обратно добавить его уже не могу, пишет: "Невозможно кого-либо пригласить, либо потому что вы ввели неверные имена пользователей или эти пользователи уже приглашены".

 

Прошу помочь в данной проблеме добавления участника обратно в переписку.

Заранее благодарю!

Featured Replies

Обратите внимание

По указанному вами в профиле "Board url" находится не IP.Board, либо модифицированный пиратский скрипт с удаленными копирайтами. Если вы указали неверный URL, пожауйста, поправьте его, потому что он скорее всего потребуется при диагностике вашей проблемы. Нелицензионные скрипты не приветствуются, т.к. зачастую именно некорректное "нуление" и является причиной проблем в них.

Выполнить SQL запрос

 

UPDATE ibf_message_topic_user_map SET map_user_active=1 WHERE map_user_id=ид_пользователя AND map_topic_id=ид_темы_лс;
UPDATE ibf_message_topics SET mt_to_count=mt_to_count+1 WHERE mt_id=ид_темы_лс; 

 

ibf_ - префикс к таблице.

ид_пользователя - ид пользователя который "случайно вышел из переписки".

ид_темы_лс - ид темы личного сообщения. Можно узнать посмотрев topicID в адресе личного сообщения.

  • Author

благодарю!

однако другой вопрос, только таким образом каждый необходимый раз?

может можно настроить удаление/восстановление вышедших из переписки без SQL запросов вручную?

Наверное если подправить скрипт то можно. Пока же только так.

Собственно

 

\admin\applications\members\sources\classes\messaging\messengerFunctions.php

 

Найти

 

			unset( $invitedUsersData[ $id ] );

Заменить на

 

			if( $currentParticipants[ $id ]['map_user_active'] )
			{
				unset( $invitedUsersData[ $id ] );
			}

 

Найти

 

		$this->DB->insert( 'message_topic_user_map', array( 'map_user_id'      => $id,
															'map_topic_id'         => $topicID,
															'map_folder_id'        => 'myconvo',
															'map_user_active'      => 1,
															'map_has_unread'       => 1,
															'map_user_banned'	   => 0,
															'map_read_time'        => 0,
															'map_left_time'		   => 0,
															'map_ignore_notification' => 0,
															'map_last_topic_reply' => $topicData['mt_last_post_time'] ) );

Заменить на

 

		if( ! $currentParticipants[ $id ] )
		{
			$this->DB->insert( 'message_topic_user_map', array( 'map_user_id'      => $id,
															'map_topic_id'         => $topicID,
															'map_folder_id'        => 'myconvo',
															'map_user_active'      => 1,
															'map_has_unread'       => 1,
															'map_user_banned'	   => 0,
															'map_read_time'        => 0,
															'map_left_time'		   => 0,
															'map_ignore_notification' => 0,
															'map_last_topic_reply' => $topicData['mt_last_post_time'] ) );
		}
		else
		{
			$this->DB->update( 'message_topic_user_map', array('map_user_active' => 1), 'map_topic_id='.$topicID.' AND map_user_id='.$id );
		}

@siv1987, То есть:

One or more recipients are already participating in this conversation

@siv1987, То есть:

One or more recipients are already participating in this conversation

Да

One or more recipients are already participating in this conversation

Но существующие пользователи в конверсации естественно добавлять уже нельзя. Только те, которые были, но вышли (удалили) тему. Просто на самом деле в бд запись о них не удаляется, и при повторном добавлении они считаются участниками беседы, поэтому и появляется "... эти пользователи уже приглашены"

  • Author

благодарствую!

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.