Помогите pls с ошибкой

При публикации топика появилась такая ошибка:
Catchable fatal error: Argument 1 passed to ModuleNotify::SendTopicNewToSubscribeBlog() must be an instance of ModuleUser_EntityUser, null given in \home\XXXXX\public_html\classes\modules\notify\Notify.class.php on line 125
При этом топик добавляется…

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

avatar
а что там в 125 строке?
avatar
public function SendTopicNewToSubscribeBlog(ModuleUser_EntityUser $oUserTo, ModuleTopic_EntityTopic $oTopic, ModuleBlog_EntityBlog $oBlog, ModuleUser_EntityUser $oUserTopic) {
		/**
		 * Проверяем можно ли юзеру рассылать уведомление
		 */
		if (!$oUserTo->getSettingsNoticeNewTopic()) {
			return false;
		}
		$this->Send(
			$oUserTo,
			'notify.topic_new.tpl',
			$this->Lang_Get('notify_subject_topic_new').' «'.htmlspecialchars($oBlog->getTitle()).'»',
			array(
				'oUserTo' => $oUserTo,
				'oTopic' => $oTopic,
				'oBlog' => $oBlog,
				'oUserTopic' => $oUserTopic,
			)
		);
		return true;
	}
avatar
удаляли пользователей, да не выудалили…
avatar
)) То, что кто-то знает решение уже радует…
avatar
вам нужно удалить из таблицы blog_user записи несуществующих пользователей.

select * from prefix_blog_user where user_id not in (select user_id from prefix_user)
avatar
Спасибо! Буду пробовать
avatar
Еще раз спасибо, все нормализовалось.
Как избежать этого в будущем? Пользователя удалял через админпанель.
avatar
на лсг есть статья об этом.
avatar
Она? Нельзя ли такую проверку включить дампом в настройке какого-нибудь плагина, напр. в config engine?
avatar
Да, она.

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