Problem

Nie działa funkcjonalność porównywania dwóch wersji artykułu (tj. w Kompendium). Zamiast różnicy wersji pokazuje się pusty element <code>. Dokładnie wygląda on tak: <code id="diff"></code>.

Choć ta funkcjonalność nie działa już od dłuższego czasu, to z tego, jak patrzę, to jest pierwszy wątek, który zdecydowałem się założyć. Zachowania aktualne i oczekiwane opisałem w sekcjach niżej.

@TomRiddle po pobieżnej analizie kodu zwrócił uwagę, że ta funkcjonalność jest (była) umożliwiana przez plugin do jQuery o nazwie prettyTextDiff. Ponieważ jQuery już u nas nie ma, zaproponował również, że można by wykorzystać następujący plugin do Vue w miejsce tegoż pluginu do jQuery: https://www.npmjs.com/package/vue-diff

Pytanie teraz: po co w ogóle to naprawiać? Czy taka funkcjonalność jest potrzebna w Kompendium? Moim zdaniem, dopóki tej funkcjonalności brakuje, to artykułu nie może edytować więcej niż jeden użytkownik "naraz". Tak można opisać obecny flow edycji:

  1. Użytkownik wprowadza zmiany w danym artykule – powiedzmy, 2KB nowego tekstu.
  2. Następnego dnia inny użytkownik też chce wprowadzić zmiany w tym artykule, ale widzi, że wczoraj ktoś dodał 2KB nowego tekstu. Nie chce przypadkiem usunąć całej pracy poprzednika, więc pyta go w wiadomości prywatnej, co usunął.
  3. Jeśli sytuacja z punktu nr 2 pojawia się często, powiedzmy: co drugi dzień, to pierwszemu użytkownikowi odechciewa się edytować Kompendium (z uwagi na liczbę pytań).
  4. Wniosek: artykuł może edytować jeden użytkownik "naraz".

A taki flow byłby po naprawie tej funkcjonalności:

  1. Użytkownik wprowadza zmiany w danym artykule – powiedzmy, 2KB nowego tekstu.
  2. Następnego dnia inny użytkownik też chce wprowadzić zmiany w tym artykule, ale widzi, że wczoraj ktoś dodał 2KB nowego tekstu. Nie chce przypadkiem usunąć całej pracy poprzednika, więc generuje różnicę wersji.
  3. Jeśli sytuacja z punktu 2 pojawia się często, powiedzmy: co drugi dzień, to nie ma to większego znaczenia. Pierwszy użytkownik w ogóle nie wie, że ktoś inny chciał coś zmienić, dopóki sam nie wygeneruje różnicy wersji albo nie przeczyta powiadomień o edycji.
  4. Wniosek: artykuł może edytować wielu użytkowników "naraz".

A jeśli zmieni się flow, to dochodzi druga zaleta naprawy tej funkcjonalności: będzie bardziej efektywna edycja treści w "Pomocy". O co konkretnie mi chodzi? Przykład: obecnie @TomRiddle jest odpowiedzialny za edytor. Jeśli wypuszcza nową jego wersję, dodawane są nowe funkcje, skróty itp., to należy zaktualizować odpowiedni artykuł w "Pomocy". Ponieważ Tomek wie najlepiej, jakie zmiany zaszły, to mógłby sam to zrobić, a ja (jako Moderator Wiki) jedynie uspójniłbym jego zmiany z resztą artykułu (a i to niekoniecznie, jeśli wszystko będzie cacy). Obecnie zaś:

  1. albo ja go muszę pytać, co zmienił w edytorze lub w artykule (jeśli mimo wszystko sam go zedytuje),
  2. albo on mi musi pisać, co zmienił w edytorze lub w artykule,
  3. albo ja muszę śledzić jego mikroblog (o ile opisze tam changelog nowej wersji edytora, bo przecież nie musi, to jego prywatny mikroblog),
  4. w związku z punktami 1-3 zmiany w "Pomocy" są wprowadzane później, niż mogłyby (ja nie zawsze mam czas, Tomek nie zawsze ma czas).

Przy okazji: Tomek, powyższe oczywiście nie znaczy, że będziesz musiał sam edytować "Pomoc". ;) Chodzi o to, że gdybyś chciał, będziesz mieć możliwość.

I, @Adam Boduch, mimo tych dwóch zalet pamiętam, że ogólnie Kompendium nie jest na Twojej (naszej) liście priorytetów. Natomiast sama taka funkcjonalność przydałaby się. Może jej naprawa nie będzie wymagać dużo pracy?

(By the way: ja jeszcze będę myślał o rozruszaniu Kompendium, jak w końcu znajdę czas na przemyślenie tego tematu. Pisałem Ci kiedyś na forum czy w prywatnej wiadomości, że chciałbym to zrobić).

Zachowanie aktualne

Po naciśnięciu przycisku z etykietą "Porównaj wersje" w formularzu w widoku historii artykułu, po wybraniu takich dwóch takich wersji artykułu, że różnica ich rozmiarów jest więsza niż 0B, pod nagłówkiem "Różnica wersji" wyświetla się puste jasnożółte pole.

Zachowanie oczekiwane

Po naciśnięciu przycisku z etykietą "Porównaj wersje" w formularzu w widoku historii artykułu, po wybraniu takich dwóch takich wersji artykułu, że różnica ich rozmiarów jest więsza niż 0B, pod nagłówkiem "Różnica wersji" wyświetla się różnica tych wersji.