Исправление metalbeaver, (текущая версия) :
Я сейчас глянул исходники. А подскажите, разве это не буквально то самое, о чём я говорил?
/* кастовать только тех, кто добавился. Существующие ранее не кастуются */
Включите, блядь, лоркод.
/**
/* кастование пользователей */
Set<User> newUserRefs = textService.mentions(MessageText.apply(commentBody, originalMessageText.markup()));
MessageText messageText = msgbaseDao.getMessageText(oldComment.getId());
Set<User> oldUserRefs = textService.mentions(messageText);
Set<User> userRefs = new HashSet<>();
/* кастовать только тех, кто добавился. Существующие ранее не кастуются */
for (User user :newUserRefs) {
if (!oldUserRefs.contains(user)) {
userRefs.add(user);
}
}
if (permissionService.isUserCastAllowed(editor)) {
userEventService.addUserRefEvent(userRefs, oldComment.getTopicId(), oldComment.getId());
}
/* Обновление времени последнего изменения топика для того, чтобы данные в кеше автоматически обновились */
topicDao.updateLastmod(oldComment.getTopicId(), false);
addEditHistoryItem(editor, oldComment, originalMessageText.text(), newComment, commentBody);
updateLatestEditorInfo(editor, oldComment, newComment);
String logMessage = makeLogString("Изменён комментарий " + oldComment.getId(), remoteAddress, xForwardedFor);
logger.info(logMessage);
}
Исходная версия metalbeaver, :
Я сейчас глянул исходники. А подскажите, разве это не буквально то самое, о чём я говорил? Включите, блядь, лоркод.
/**
/* кастование пользователей */
Set<User> newUserRefs = textService.mentions(MessageText.apply(commentBody, originalMessageText.markup()));
MessageText messageText = msgbaseDao.getMessageText(oldComment.getId());
Set<User> oldUserRefs = textService.mentions(messageText);
Set<User> userRefs = new HashSet<>();
/* кастовать только тех, кто добавился. Существующие ранее не кастуются */
for (User user :newUserRefs) {
if (!oldUserRefs.contains(user)) {
userRefs.add(user);
}
}
if (permissionService.isUserCastAllowed(editor)) {
userEventService.addUserRefEvent(userRefs, oldComment.getTopicId(), oldComment.getId());
}
/* Обновление времени последнего изменения топика для того, чтобы данные в кеше автоматически обновились */
topicDao.updateLastmod(oldComment.getTopicId(), false);
addEditHistoryItem(editor, oldComment, originalMessageText.text(), newComment, commentBody);
updateLatestEditorInfo(editor, oldComment, newComment);
String logMessage = makeLogString("Изменён комментарий " + oldComment.getId(), remoteAddress, xForwardedFor);
logger.info(logMessage);
}