LINUXTALKS.CO

История изменений

Исправление metalbeaver, (текущая версия) :

Я сейчас глянул исходники. А подскажите, разве это не буквально то самое, о чём я говорил?

/* кастовать только тех, кто добавился. Существующие ранее не кастуются */

Включите, блядь, лоркод.

/**

  • Редактирование комментария.
  • @param oldComment данные старого комментария
  • @param newComment данные нового комментария
  • @param commentBody текст нового комментария
  • @param remoteAddress IP-адрес, с которого был добавлен комментарий
  • @param xForwardedFor IP-адрес через шлюз, с которого был добавлен комментарий
    */
    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
    public void edit(Comment oldComment, Comment newComment, String commentBody, String remoteAddress,
    String xForwardedFor, User editor, MessageText originalMessageText) {
    commentDao.changeTitle(oldComment, newComment.getTitle());
    msgbaseDao.updateMessage(oldComment.getId(), commentBody);
/* кастование пользователей */
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, :

Я сейчас глянул исходники. А подскажите, разве это не буквально то самое, о чём я говорил? Включите, блядь, лоркод.

/**

  • Редактирование комментария.
  • @param oldComment данные старого комментария
  • @param newComment данные нового комментария
  • @param commentBody текст нового комментария
  • @param remoteAddress IP-адрес, с которого был добавлен комментарий
  • @param xForwardedFor IP-адрес через шлюз, с которого был добавлен комментарий
    */
    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
    public void edit(Comment oldComment, Comment newComment, String commentBody, String remoteAddress,
    String xForwardedFor, User editor, MessageText originalMessageText) {
    commentDao.changeTitle(oldComment, newComment.getTitle());
    msgbaseDao.updateMessage(oldComment.getId(), commentBody);
/* кастование пользователей */
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);

}