А каст у всех работает нормально или через раз?

  • Bóbr kurwa
    link
    fedilink
    arrow-up
    0
    ·
    3 years ago

    Как не идёт, если идёт? Пользователь при редактировании может добавить новый каст или уже существующий каст, или удалить каст, или добавить вновь каст, который был удалён ранее. Всё это легко разруливается при помощи связанной таблицы кастов.

    • Bóbr kurwa
      link
      fedilink
      arrow-up
      0
      ·
      3 years ago

      @cocucka а где исходники вашего говна лежат? Что-то я в глаза долблюсь.

      • cocucka
        link
        fedilink
        arrow-up
        0
        ·
        3 years ago

        Оно спрятано от макскома, а то он фичи ворует

        • Bóbr kurwa
          link
          fedilink
          arrow-up
          0
          ·
          3 years ago

          Опенсорс, который мы заслужили.

          • cocucka
            link
            fedilink
            arrow-up
            0
            ·
            3 years ago

            Ага, сначала они банят/замораживают за любое упоминание о ЛТ, а потом у нас фичи берут.

            • crypt
              link
              fedilink
              arrow-up
              0
              ·
              3 years ago

              @metalbeaver ты можешь оригинальные исходники глянуть и сделать патч, либо, я думаю, соиска тебя к исходникам пустит, если ты захочешь в этом копаться.

              • Bóbr kurwa
                link
                fedilink
                arrow-up
                0
                ·
                3 years ago

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

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

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

                /**

                • Редактирование комментария.
                • @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);
                

                }