LINUX.ORG.RU

Давайте вместе напишем патч, хватит это терпеть

 , , ,


0

3

/src/main/java/ru/org/linux/topic/TopicService.java

Вроде бы этот кусок функции updateAndCommit занимается отправкой уведомлений о измененных тегах, которые в последнее время стали объектом бурных обсуждений:

 if (!newMsg.isDraft() && !newMsg.isExpired()) {
      Section section = sectionService.getSection(oldMsg.getSectionId());

      if (section.isPremoderated() && !oldMsg.isCommited() && !commit) {
        sendEvents(newText, oldMsg.getId(), ImmutableList.<String>of(), oldMsg.getUid());
      } else {
        sendEvents(newText, oldMsg.getId(), newTags, oldMsg.getUid());
      }
    }

А что, если добавить в начало такую строку (не отправлять уведомления об изменении тегов в темах, созданных более 30 суток назад)

if (!((new Timestamp(System.currentTimeMillis()).getTime() - oldMsg.postdate.getTime()) > 1000*60*60*24*30))

или, как вариант,

if (user.nick != "cetjs2")

На джаве я не писал сто лет и все забыл, но вот я нашел место в коде и предложил решение, если коллективный разум меня поддержит, то мы сможем сделать патч.

★★★

Последнее исправление: Pinkbyte (всего исправлений: 3)

if (user.nick != «cetjs2»)

этапять.

Он сменит ник и будет ждать слежующий «патч».

По теме - нужно разворачивать локальную версию лора, заводить своего cetjs2 и тестить разные варианты. В идеале завести виртуалку и там всё это делать. И дать к ней доступ заинтересованным лицам, быстрее пойдёт.

smilessss ★★★★★
()

Интересно. Во всех конструкторах lastModified инициализируется. Тем не менее

public Timestamp getLastModified() {
    if (lastModified == null) {
      return new Timestamp(0);
    }

    return lastModified;
  }

Причём остальные свойства такую проверку не проходят.

ziemin ★★
()

if (user.nick != «cetjs2»)

equals, блеать!

vurdalak ★★★★★
()
Ответ на: комментарий от smilessss

Он сменит ник и будет ждать слежующий «патч».

Это была, ну, типа, шутка.

По теме - нужно разворачивать локальную версию лора, заводить своего cetjs2 и тестить разные варианты. В идеале завести виртуалку и там всё это делать. И дать к ней доступ заинтересованным лицам, быстрее пойдёт.

Чтобы написать те полторы строки из оп-поста, мне понадобилось 15 минут. А чтобы развернуть копию ЛОРа, с виртуалкой, апачом и постгресом надо больше времени. Было бы обидно потратить его, если это окажется зря. Так что основной вопрос в том - придет ли maxcom патч (предположим, я изучу git и оформлю pull request как положено), чтобы уведомления не высылались при изменении тем старше 1 месяца?

amomymous ★★★
() автор топика
 if (!newMsg.isDraft() && !newMsg.isExpired()) {
      Section section = sectionService.getSection(oldMsg.getSectionId());

      if (section.isPremoderated() && !oldMsg.isCommited() && !commit) {
        sendEvents(newText, oldMsg.getId(), ImmutableList.<String>of(), oldMsg.getUid());
      } else {
        sendEvents(newText, oldMsg.getId(), newTags, oldMsg.getUid());
      }
    }

трындец, отчего все жабакодеры залипают на ctrl+c?

 if (!newMsg.isDraft() && !newMsg.isExpired()) {
      Section section = sectionService.getSection(oldMsg.getSectionId());
      List<String> tags = (section.isPremoderated() && !oldMsg.isCommited() && !commit)?  
        ImmutableList.<String>of(): newTags;
      sendEvents(newText, oldMsg.getId(), tags, oldMsg.getUid());
    }

Deleted
()

Да давайте уже. Пол лора жавакодеров и все видимо заняты серьёзным бизнесом.

ritsufag ★★★★★
()

Я бы наверное запилил патч, если его примут. Но вопрос не так прост, как кажется, нужно конкретное решение.

orm-i-auga ★★★★★
()
Ответ на: комментарий от orm-i-auga

нужно конкретное решение

хммм... а что если в настройки добавить галку "не получать уведомления при правке тега"?

teod0r ★★★★★
()
Ответ на: комментарий от orm-i-auga

самое конкретное решение - тонкая настройка уведомлений, не уведомлять о тухлых темах если они не отслеживаются, точно не уведомлять о темах в архве и тп.

Deleted
()
Ответ на: комментарий от hizel

это неравенство выполняется почти всегда, всё в порядке

stevejobs ★★★★☆
()

на говнокоде твой код оценят

dormeur86 ★★★★
()
Ответ на: комментарий от anon8

Править и тегировать давно протухший тупняк - бессмыслено

Это нужно ради более удобного поиска информации.

rskeyf
()

не трогайте ничего! я лишь благодаря разгребанию кучи доисторических уведомлений не сдох со скуки на курсах повышения квалификации

der_looser ★★
()

Есть ли статистика подписанных на теги? А то сегодня Ужу начал яростно гадить в тег «android», и я от него отписался. Тегами вообще кто-то пользуется после его изменений?

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Тегами вообще кто-то пользуется после его изменений?

Да, пользуюсь. Когда вижу пачку уведомлений, просто их игнорирую. Конечно, из-за этого есть вероятность среди всех этих правок упустить реально свежий и интересный тред.

observer ★★★
()
Ответ на: комментарий от observer

из-за этого есть вероятность среди всех этих правок упустить реально свежий и интересный тред.

Вот поэтому его срочно надо забанить.

Valkeru ★★★★
()
Ответ на: комментарий от Valkeru

Да лучше движок поправить. Ладно никто не хочет писать грамотный и красивый патч, но я не понимаю в чем проблема внести временный костыльный фикс.

observer ★★★
()
Ответ на: комментарий от observer

в чем проблема внести временный костыльный фикс.

Проблема в том, что нет ничего более постоянного, чем временное.

Valkeru ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.