atarionline.pl Development ;) ATARIONLINE.PL! - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorzbyti
      • CommentTime9 Jan 2020 22:01 zmieniony
       
      Hahahaha!!!

      @MADRAFi szach i mat ;) To już jest nas 2 niepoważnych programistów :D Nie czytałem tego co wcześniej napisał @wieczor, dopiero teraz nadrobiłem :D Co za koincydecja!

      I teraz mam zagadkę bo w Internetach piszą:
      Great minds think alike

      Całe szczęście w kilku kwestiach się nie zgadzamy z Wieczorem ;) Ale co do obecnego forum...

      zbyti:

      (...) forum do którego warto użyć gotowca (chociaż to co jest dzisiaj to też jest do napisania w tydzień pewnie) (...) szacunkowo oceniam roboczo-godziny tego co dziś "robi" za forum.

      wieczor:

      Forum jako takie jest dość prostym kawałkiem oprogramowania, jeśli weźmiesz pod uwagą funkcjonalność. Ot tak w sam raz na tydzień roboty ;)

      Dla niezalogowanych post #38 ->link<-

      @MADRAFi oczywiście jajcuje ;) Ale spodobało mi się, że nie jestem sam w tej wycenie pracochłonności, którą raczyłeś wykpić ;D
      • 2: CommentAuthorastrofor
      • CommentTime9 Jan 2020 23:01
       
      Jak na serwerze jest jakas wersja mysqla to polecam mysqla, mysqlite to jednak troche zabawkowe jest, sporo projektow opartych glownie na ormach obsluguje sqllite , tak jak oracle na przyklad, jednak z doswiadczenia wiem ze nie zawsze to dziala, szczegolnie ze ormy daja mozliwosc wklepania bezposrednio sql query, a jak sa rozne dialekty sqla to moze byc roznie, no i nikt specjalnie tego nie testuje, bo bardzo malo developerow uzywa nietypowych baz danych. A w ogole jak mozna to postgres bo jest ostanio na topie. Jezeli chodzi o wydajnosc, to bym sie w ogole nie przejmowal, bo to wszystko i tak jest w cachu, a content nie zmienia sie co 3 minuty.
      • 3: CommentAuthorzbyti
      • CommentTime9 Jan 2020 23:01 zmieniony
       
      @astrofor ale ja mam @wieczora za świadomego programistę a nie "janusza", który miesza sql z orm.

      Po za tym zastanówmy się, czym się różni SQLite od MySQL?

      MySQL pokaże dopiero swoją wyższość nad SQLite jak będzie tak dużo zapytań, że będzie trzeba puścić to w klastrze. 13MB którymi są nowinki na ten moment (plus powiedzmy drugie tyle na komentarze) to można do pamięci w całości wciągnąć na raz.

      MySQL ostatecznie przecież też trzyma tabele w plikach, nie? ;P
      • 4: CommentAuthorastrofor
      • CommentTime9 Jan 2020 23:01
       
      A nie ja nie miałem na myśli nikogo z atarionline, bardziej przyszło mi na myśl gallery3 , które jest obecnie community edition, i używa jakiegoś dziwnego orma z kohany.
      Tak naprade wybor miedzy mysql i sqlite nie ma wiekszego znaczenia, natomiast nie uzywanie bazy danych w ogole , jak sugeruja co niektórzy uzytkownicy, to trochę jak rzucanie danych na wysypisko śmieci. Można to potem wydobyć, ale trzeba być niezłym hardcorem.
      • 5: CommentAuthorzbyti
      • CommentTime9 Jan 2020 23:01 zmieniony
       
      @astrofor poproś @Kaz o dostęp do drugiego serwera www. Po wczorajszej awaria OVH widać było, że subdomena adda jest podpięta pod inny serwer niż ten hostujący AOL i pewnie tam są stare dane.

      Jak się @Kaz nie będzie orientował co i jak to może da Ci dostęp do hostingu to sobie tę galerię ogarniesz? :]
      • 6: CommentAuthorastrofor
      • CommentTime10 Jan 2020 00:01
       
      No pewnie bym dal rade, ale jestem osoba niezlotowa, takze mozna mnie chyba uznac troche za firme krzak, za co oczywiscie nie mam zadnych ewentualnych pretensji. Jakbym dostal dump bazy sql to bylbym badzo kontent.
      Pozatym jest sporo niedomowien:
      1) główno dowodzący nie wydal opini o co ma byc oparta galeria.
      2) jeżeli chodzi o user managment to nie wiadomo jak bedzie to wygladac w głównym systemie, a miloby zeby to bylo jakos zintegrowane chyba.
      • 7:
         
        CommentAuthorKaz
      • CommentTime10 Jan 2020 01:01 zmieniony
       
      Panowie, jestem Wam bardzo wdzięczny za deklaracje pomocy, zainteresowanie, konkretne pytania! Jak tylko ogarniemy KazKompo i weekendowy KWAS to wrócę do tematu. W tej chwili prawie 100% czasu procesora pożera mi właśnie KK i KWAS. W międzyczasie spokojnie sobie dogryzajcie, prawcie złośliwości - żeby podtrzymać zwyczaj :D.
      • 8: CommentAuthorwieczor
      • CommentTime10 Jan 2020 10:01
       

      Kaz:

      W międzyczasie spokojnie sobie dogryzajcie, prawcie złośliwości - żeby podtrzymać zwyczaj


      Dla urozmaicenia zwyczaju, z dogryzaniem i złośliwościami przerzucimy się na ciebie :P
      • 9:
         
        CommentAuthorKaz
      • CommentTime10 Jan 2020 10:01
       
      A to akurat będzie standardowa procedura, nie żadne urozmaicenie :)
      • 10: CommentAuthorwieczor
      • CommentTime10 Jan 2020 11:01
       
      Zawsze myślałem, że standardową procedurą są złośliwości i dogryzanie tedecowi ;)
      • 11: CommentAuthorzbyti
      • CommentTime10 Jan 2020 23:01 zmieniony
       
      Jakby ktoś był zainteresowany to postanowiłem sobie przypomnieć trochę PHP i mam zamiar przywrócić archiwalne materiały oraz umożliwić przeszukiwanie treści ale nie w AOL tylko "obok". Chociaż jak będzie to sprawnie działało to można i pod AOL podpiąć ostatecznie.

      Na ten moment napisałem parę linijek by dokonać konwersji nowinek na UTF-8 i pozbyć się kodów HTML które przetrwały konwersję bo były bez ";" na końcu i pozostały w treści.

      Tak przygotowany plik wrzucę do SQLite3, które zadba by nie było ew. duplikatów przy wrzucaniu archiwów.

      Nie interesują mnie też komentarze do nowinek, przynajmniej nie na pierwszy rzut, ich teraz nie będę przenosił.

      Jak by komuś pracującemu teraz lub w przyszłości był potrzebny taki skrypt to zamieszczam.

      Oczywiście poniższy kod jest tylko do poprawnych plików nowinek. Do tych walniętych dokonam ewentualnych modyfikacji.

      <?php

      $ISO_CHARS_1 = array (
      //...
      );

      $ISO_CHARS_2 = array (
      //...
      );

      //------------------------------------------------------------------

      // tac news.txt > invert-news.txt
      $fn = fopen('invert-news.txt', 'r') or die('I can not open the file.');

      $myFile = fopen('news-utf8.txt', 'w') or die('I can not open the file.');

      while(!feof($fn)) {
      $rLine = fgets($fn);
      if ($rLine) {
      $rLine = mb_convert_encoding($rLine, 'UTF-8', 'ISO-8859-2');
      $rLine = strtr($rLine, $ISO_CHARS_1);
      $rLine = strtr($rLine, $ISO_CHARS_2);
      $arrNews = explode('|', $rLine);
      if ($arrNews[6] != '3'){
      $arrCategory = explode(',', $arrNews[6]);
      $category = $arrCategory[0];
      if (sizeof($arrCategory) == 2) {
      $category = $arrCategory[1];
      }
      $wLine = $arrNews[0] // id
      . '|' . $arrNews[1] // author
      . '|' . $arrNews[2] // title
      . '|' . $arrNews[3] // content
      . '|' . $category
      . PHP_EOL;
      fwrite($myFile, $wLine);
      } else {
      echo $arrNews[0] // id
      . '|' . $arrNews[1] // author
      . '|' . $arrNews[2] // title
      . '|' . $arrNews[6] // status
      . PHP_EOL;
      }
      }
      }

      fclose($fn);
      fclose($myFile);
      • 12: CommentAuthorzbyti
      • CommentTime10 Jan 2020 23:01 zmieniony
       
      @astrofor a może chesz się przyłączyć to dam Ci bazę SQLite3 nowinek ze statusem !"2" a ty zrobisz front? Pytam bo widzę, że się palisz do pracy nad AOL ;)

      Jeden pliczek w PHP obsługujący zapytania i bazę powinien styknąć, nie trzeba do tego żadnego frameworka.

      @Kaz chyba nie będzie miał nic przeciw bo to są jawne treści dostępne na AOL.

      Jak nie masz czasu / ochoty to sam ogarnę, luz :]
      • 13: CommentAuthorastrofor
      • CommentTime11 Jan 2020 00:01
       
      a front dowolny ? moge sprobowac
      • 14: CommentAuthorzbyti
      • CommentTime11 Jan 2020 00:01 zmieniony
       
      @astrofor jedynie by się materiał nie rozjechał to chyba musisz zastosować kolumnę takiej szerokości jak jest aktualnie, a po za tym dowolność bo to testowo. Jak się sprawdzi to może podepniemy pod AOL i się wtedy dostosuje.

      Ok, to jutro dam ci to wszystko co jest na dziś contentem AOL jako bazę SQLite3 (to będzie pewnie coś około 6MB).

      Jedyne co będziesz musiał zrobić to podmieniać sobie w locie linki do grafik w artykułach, tj. uzupełniać o atarionline.pl i powinno Ci wszystko śmigać.

      Zrób wyszukiwarkę po id, po tytule. Jak chcesz to tez możesz jakieś %like% po treści zapodać a jak się rozkręcisz to sortowania, zakresy po dacie - nie ograniczam Cię ;D

      Jak sobie będziesz dłubał front (no i backend w jednym) to ja w tym czasie będę nabijał tę bazę co Ci jutro podeślę tym co odzyskam z archiwów.

      @Kaz ostatnia szansa by nas zatrzymać! Jak się nie odezwiesz to robimy wyszukiwarkę i odzyskujemy stare dane :]
      • 15:
         
        CommentAuthorKaz
      • CommentTime11 Jan 2020 00:01
       
      Róbcie :) Ja uważam AOL za wspólne dobro. Jeżeli zyskujemy, a nie tracimy - to super.
      • 16: CommentAuthorzbyti
      • CommentTime11 Jan 2020 00:01 zmieniony
       
      @MADRAFi Tobie też, jeżeli chcesz, mogę udostępnić bazę danych AOL jako plik SQLite3 albo dump SQL. Jeżeli masz tak opanowane te narzędzie które proponowałeś (by nie pisać od zera) to mając te dane praktycznie jesteś w stanie postawić nowy AOL (a przynajmniej jego główną część) według swojej koncepcji.

      No to dla wszystkich chętnych dobre słowo na drogę ;D

      • 17:
         
        CommentAuthorpabloz1974
      • CommentTime11 Jan 2020 08:01
       
      Gdzie kucharek sześć ...
      • 18: CommentAuthorzbyti
      • CommentTime11 Jan 2020 10:01 zmieniony
       
      @pabloz1974 chyba masz problem z czytaniem tego co napisałem i dlatego komentujesz tak bez sensu.

      @MADRAFi che iść drogą którą nie chce iść @wieczor, więc może pokazać na co go stać.

      Ja proponuję @astrofor zrobienie obok głównego kodu wyszukiwarkę i osobiście chcę, zanim powstanie nowy AOL (termin nieznany), przywrócić stare artykuły do następnego weekendu.

      Jak na razie nad nowym AOL pracuje tylko @wieczor z nieznanymi ludźmi z nieokreślonym terminem.

      Reszta osób biorących udział w dyskusji jeszcze nie postawiła linii kodu związanej z przenosinami AOL na coś nowego.

      Więc na ten moment mamy takie kucharki:

      1. @wieczor nie wiadomo z kim, co i na kiedy zrobi a czasu od ostatniej zapowiedzi rozpoczęcia prac już trochę minęło, bo to się jeszcze datuje na 2018. Nie krytykują ale takie są realia.

      2. @MADRAFi chce uprawiać tayloring, więc chcę mu to umożliwić, może zadziwi nas wszystkich?

      3. Ja i @astrofor chcemy odzyskać utracone artykuły i umożliwić szukane po nich. Na ten moment kompletnie osobna sprawa.

      4. @bocianu zadeklarował wsparcie jeżeli się określimy co nie nastąpiło, w sensie nie wyłonił się zespół, specyfikacja etc. wiec @bocianu nie ma do czego się przyłączyć.

      Ergo: ja tu nie widzę tych "kucharek sześć" :P

      Chcesz pomóc? Jeżeli tak to mogę czytać teksty o kucharkach, nie chcesz / nie potrafisz pomóc - nie komentuj w wątku który Cię nie dotyczy.

      Ja w międzyczasie ogarnąłem w parę dni 404 które pojawiało się tu prawie od 1.5 roku, ty masz konto na forum o wiele dłużej niż występował ten błąd czy pojawiłem się tu ja. Masz konto od 31 Jan 2014 ja zaś od czerwca 2019, dlaczego nic z tym 404 nie zrobiłeś skoro komentujesz tak krytycznie w tym wątku?
      • 19: CommentAuthorzbyti
      • CommentTime11 Jan 2020 17:01 zmieniony
       
      OK.

      Po za "3" która jest kategorią roboczą to mamy:
      "nowinki" => 1,
      "opisy" => 2,
      "wynalazki" => 6,
      "biblioteka" => 8,
      "poczatki" => 7,
      "stragan" => 9,
      "wywiady" => 5

      Tylko zdarzyło się w aktualnych nowinkach, że w około 1500 wpisów dla 22 mam coś takiego:

      id: 1316284047 -> 1,5
      id: 1342989992 -> 1,5
      id: 1350293883 -> 1,6
      id: 1356810769 -> 1,7
      id: 1361447970 -> 1,7
      id: 1362337891 -> 1,7
      id: 1369770683 -> 1,7
      id: 1376243900 -> 1,7
      id: 1380024553 -> 1,5
      id: 1404057916 -> 1,5
      id: 1407530251 -> 1,7
      id: 1417449251 -> 1,6
      id: 1419102579 -> 1,7
      id: 1421968699 -> 1,6
      id: 1432833894 -> 1,11,13
      id: 1468443682 -> 1,7
      id: 1487543769 -> 1,5
      id: 1489249120 -> 1,7
      id: 1487543769 -> 1,5
      id: 1553550711 -> 1,7
      id: 1575243037 -> 1,5

      id: 1462985024 -> bez kategorii

      Może mi ktoś wyjaśnić dlaczego na ok 1500 nowinek 22 mają taką kategorię jak powyżej?

      Nie chce mi się analizować kodu, ani tworzyć konta w panelu admina, może redaktorzy mi napiszą o co chodzi z tymi kategoriami po przecinku?

      Na ten moment mam zamiar zignorować dla tych 22 "dziwnych" wpisów '1' i ustawić kategorię na tą po przecinki a dla wpisu bez kategorii i z potrójną ustawić '1'.

      Jest możliwość by wpis lądował do dwóch klocków bo ma "podwójną" kategorię? Po co, chciałbym z tego zrezygnować.
      • 20: CommentAuthorwieczor
      • CommentTime11 Jan 2020 18:01 zmieniony
       
      @zbyti termin jest znany - to jest koniec tego kwartału. Jeśli chcesz aby twoja praca była pomocna, to pliz spróbuj ogarnąć też komentarze :) Bo inaczej i tak trzeba będzie to robić od początku.

      Kategoria oznacza gdzie artykuł ma się pokazywać. Czasem jest tak że artykuł oprócz nowinek na głównej (kaategoria 1) ma się znaleźć też w innym dziale:

      1|nowinki||||
      2|opisy||||
      3|OFF||||
      5|rozmowy||||
      6|wynalazki||||
      7|poradniki||||
      8|biblioteka||||
      9|stragan||||
      10|archiwum||||
      11|galerie||||
      13|zloty||||
      14|zrodelka||||

      Także multiassignment musi być zachowany.
      • 21: CommentAuthorzbyti
      • CommentTime11 Jan 2020 19:01 zmieniony
       
      @wieczor no to fajnie, że jest termin. Moją ambicją było umożliwić przeglądanie archiwów gdyby prace nad nowym AOL miały potrwać dłużej.

      Jak osiągnę ten cel to może ogarnę też komentarze to sobie skorzystasz.

      Dopiero jakbym musiał zrobić relacyjną bazę to wtedy mogę to zaimplementować i wtedy wrzucić też komentarze.

      Za tydzień jeżeli by Ci się to przydało to mogę to zrobić.

      -------------------------------------------------------------

      Dzięki też za rozpiskę kategorii, do przeszukiwani archiwów multikategoria mi nie będzie potrzebna.

      Faktycznie, pokręciłem te "2" z "3". Dobrze, że to wkleiłeś, nie wiem dlaczego widziałem w tych plikach newsy o nazwie [ROBOCZE] z "2" na końcu...

      Ok to trójki wykluczę bo to oprócz wygaszonych, i roboczych także jakieś śmieci.

      Wyedytowałem posty gdzie było to "2".
      • 22: CommentAuthorzbyti
      • CommentTime11 Jan 2020 20:01 zmieniony
       
      OK @astrofor daj znać czy będziesz się bawił to Ci bazę wyślę na email.

      Po konwersji i uwzględnieniu wszystkich kategorii po za "3" z aktualnego pliku news.txt o wielkości: 12.2MB zrobiło się 8.5MB i docelowo SQLite3.db wielkości: 9.5MB.

      Nowinki są wrzucone od najstarszej do najnowszej.

      Prosty skrypt poniżej:

      <?php

      $fn = fopen('news-utf8.txt', 'r') or die('I can not open the file.');

      $db = new SQLite3('aol.db');
      $db->exec("CREATE TABLE IF NOT EXISTS news(id INTEGER PRIMARY KEY ASC, author TEXT, category INTEGER, title TEXT, content TEXT)");
      $stm = $db->prepare("INSERT or REPLACE INTO news(id, author, category, title, content) VALUES (?, ?, ?, ?, ?)");
      $stm->bindParam(1, $id);
      $stm->bindParam(2, $author);
      $stm->bindParam(3, $category);
      $stm->bindParam(4, $title);
      $stm->bindParam(5, $content);

      while(!feof($fn)) {
      $rLine = fgets($fn);
      if ($rLine) {
      $arrNews = explode('|', $rLine);

      $id = intval($arrNews[0]);
      $author = $arrNews[1];
      $category = intval($arrNews[4]);
      $title = $arrNews[2];
      $content = $arrNews[3];

      $stm->execute();
      }
      }

      fclose($fn);
      • 23: CommentAuthorzbyti
      • CommentTime11 Jan 2020 20:01 zmieniony
       
      @wieczor wyślę Ci bazę na email, może Ci się przyda może nie?

      Musiałem 2x puścić podmianę kodów bo razy były z ';' a raz nie także teraz mam komplet polskich znaków w aol.db i wygląda to OK jak na ten moment.

      Myślę, że jak jeszcze nie zrobiłeś konwersji nowinek do SQL/UTF-8 to Ci się to przyda, a z czasem schemat bazy poszerzy się o tabelę z komentarza etc.

      Oczywiście w tej bazie te 22 artykuły mają tylko drugą ze wskazanych kategorii, ale to można później zmienić.

      Same artykuły w UTF-8 są już do użycia.

      EDIT1: jeszcze mała zmiana bo muszę BOM usunąć, bo pierwsze id mam przez to zerowe.

      EDIT2: to zaczynam odbudowę bazy z archiwów :]
      • 24: CommentAuthorzbyti
      • CommentTime11 Jan 2020 21:01 zmieniony
       
      @mono mam już Twoje zaginione artykuły :]
      • 25: CommentAuthorzbyti
      • CommentTime11 Jan 2020 22:01 zmieniony
       
      Baza dzisiejszego AOL: 1388
      Baza po uzupełnieniu archiwalnymi nowinkami: 2310

      Odzyskano: 922

      Oczywiście w tych 1388 nie ma nowinek ze statusem "3", dlatego z archiwów mogłem dorzucić do dzisiejszej bazy te które kiedyś nie miały statusu "3" a dziś mają ale to pewnie marginalna spraw.

      Baza wraz z archiwami ma ten moment już jest, kilka wpisów podejrzanych jest o duplikat:

      SELECT id, author, count(title), title, category FROM news GROUP BY title ORDER BY count(title) DESC;

      "1577199960" "Kaz" "6" "Wesołych Świąt!" "1"
      "1509542396" "Xeen" "4" "Aktualności growe" "1"
      "1306269810" "Kaz" "4" "Nowy ASAP" "1"
      "1563855000" "Xeen" "3" "Aktualności scenowe" "1"
      "1434467902" "Kaz" "3" "Biblioteka Atarowca" "1"
      "1400528024" "Kaz" "3" "Dawne Komputery i Gry" "1"
      "1330295776" "Kaz" "3" "I po KWAS-ie" "1"
      "1325894575" "Kaz" "3" "Nowy ""Graph2Font""" "1"
      "1562498268" "Kaz" "3" "Nowy RECOIL" "1"
      "1334143443" "Kaz" "2" "Aktualizacja użytków" "1"
      "1401996635" "Xeen" "2" "Aktualności" "1"
      "1184150601" "Kaz" "2" "Atari w joysticku" "6"
      "1341797726" "Kaz" "2" "Biblioteczka puchnie" "1"
      "1266505357" "Kaz" "2" "Drobiazgownia" "1"
      "1184150921" "Kaz" "2" "Electron wymiata!" "6"
      "1530197439" "Kaz" "2" "Impreza retro w Okunince" "1"
      "1400876062" "Kaz" "2" "Komputery w PRL" "1"
      "1244373377" "Kaz" "2" "Muzycznie" "1"
      "1388441055" "ASMA Team" "2" "Nowa ASMA" "1"
      "1294652314" "Kaz" "2" "Nowsiejszy ""Graph2Font""" "1"
      "1257944582" "Kaz" "2" "Ogłoszenia parafialne" "1"
      "1344676119" "Kaz" "2" "Pamięci Jurgiego" "1"
      "1320139664" "Kaz" "2" "Pamiętamy" "1"
      "1386532311" "Kaz" "2" "Robbomania" "1"
      "1573398692" "Grey" "2" "Silly Venture 2k19 na pełnych obrotach!" "1"
      "1524255804" "Kaz" "2" "Wywiad z Wojciechem Zientarą" "1"
      "1228130365" "Kaz" "2" "Zapowiedź nowej gry" "1"
      • 26: CommentAuthorAdam
      • CommentTime11 Jan 2020 22:01
       

      zbyti:

      Ok to trójki wykluczę bo to oprócz wygaszonych, i roboczych także jakieś śmieci.

      Bardzo proszę o nieusuwanie "trójek", czyli OFF, niektóre materiały tam zgromadzone nie zostały nigdy opublikowane, ale to nie znaczy, że są do usunięcia, że są bezwartościowe.
      • 27: CommentAuthorzbyti
      • CommentTime11 Jan 2020 22:01 zmieniony
       
      @Adam ja ich nie usuwam, ja robią bazę do wyszukiwania po archiwach, poboczna sprawa.

      Jak @wieczor będzie potrzebował mojego rozwiązania to będę odzyskiwał z archiwum "trójki".

      Z resztą publikuję kod, @wieczor może go użyć.

      Ale może masz rację? W końcu wyszukiwarka po archiwach może pomijać "3".

      Po prostu nie chciałem udostępniać bazy innym z materiałami na "OFF".

      Zastanowię się.
      • 28: CommentAuthorAdam
      • CommentTime11 Jan 2020 23:01
       
      @zbyti: przepraszam, zerknąłem na fragment i nie załapałem kontekstu. W takim razie zgadzam się, że jeśli coś jest OFF, to nie powinno stanowić obiektu przeszukiwania :)
      • 29: CommentAuthorzbyti
      • CommentTime11 Jan 2020 23:01 zmieniony
       
      Ha! Nieźle z nowej bazy 2310 nowinek (czyli z odzyskanymi) tylko dwie nowinki są zdublowane

      "1087131939"	"Kaz"	"1"	"Atari w joysticku"	"Tym razem nie o zmianie w serwisie, (...)"
      "1184150601" "Kaz" "6" "Atari w joysticku" "Tym razem nie o zmianie w serwisie, (...)"
      "1141688773" "Kaz" "1" "Electron wymiata!" "Zapamiętajmy dzisiejszy dzień, (...)"
      "1184150921" "Kaz" "6" "Electron wymiata!" "Zapamiętajmy dzisiejszy dzień, (...)"

      Zostawię te z kategorią "6".

      DELETE FROM news WHERE id IN (1087131939, 1141688773)
      • 30: CommentAuthorzbyti
      • CommentTime11 Jan 2020 23:01 zmieniony
       
      Baza ma obecnie 2308 rekordy i 15,4MB.

      No to @astrofor pałeczka po Twojej stronie ;)
      • 31: CommentAuthorzbyti
      • CommentTime12 Jan 2020 00:01 zmieniony
       
      Po odzysku pierwszy wpis w bazie datuje się na:
      • 32: CommentAuthorzbyti
      • CommentTime12 Jan 2020 00:01 zmieniony
       
      @Kaz & @wieczor & @all_redaktorzy

      Mam propozycję by nie przenosić nowinek do nowego AOL tylko za pomocą bazy jaką stworzyłem stary AOL (system nowinek a nie platformę, platformę CuteNews można wywalić) pozostawić "do odczytu" oczywiście wyłuska się komentarze i podepnie pod tę starą bazę (chociaż nie chce mi się, oj jak nie chce :-).

      Oczywiście to co nazywam starą bazą powstanie jeszcze raz w momencie zamykania starego AOL.

      ZALETY:
      - mniej roboty dla @wieczor
      - można użyć gotowca lub napisać coś nowego co nie będzie miało ograniczeń starego systemu przy tworzeniu artykułów.
      - dowolnie nowy/modny system komentarzy

      WADY:
      - nie widzę

      Wyszukiwarkę w nowym AOL można tak zrobić by szukała treści po nowej bazie i po starej (czyli tej co teraz wytworzyłem) także nic się nie traci.
      • 33: CommentAuthorzbyti
      • CommentTime12 Jan 2020 01:01 zmieniony
       
      To jeszcze garść statystyk :] 2308 nowinki są autorstwa niżej wymienionych, kolejność od najpłodniejszych ;P

      SELECT count(author), author FROM news GROUP BY author ORDER BY count(author) DESC;

      "1349" "Kaz"
      "339" "Xeen"
      "252" "Adam Wachowski"
      "96" "TDC"
      "28" "Charlie Cherry"
      "28" "Grey"
      "17" "Piotr ""0xF"" Fusik"
      "15" "Urborg"
      "12" "Larek"
      "8" "Sikor"
      "6" """sOnar"""
      "6" "Krzysztof ""XXL"" Dudek"
      "6" "Paweł ""Sikor"" Sikorski"
      "5" "Nosty"
      "5" "Zaxon"
      "4" """Przemysław Wrona"""
      "4" "Adam Zalepa"
      "4" "Asal"
      "4" "Dracon"
      "4" "Organizatorzy"
      "4" "RetroBorsuk"
      "4" "scalak"
      "3" """Gorgh/Agenda"""
      "3" """bocianu"""
      "3" """lapusz"""
      "3" "0xF"
      "3" "Ilmenit"
      "3" "Jakub Husak"
      "3" "Jerzy ""Mono"" Kut"
      "3" "Krzysztof ""Kaz"" Ziembik"
      "3" "Mariusz ""Ramos"" Rozwadowski"
      "3" "Miker & Adam"
      "3" "Voy"
      "3" "Zenon"
      "3" "cpt. Misumaru Tenchi"
      "2" """Adam Zalepa"""
      "2" """Miker"""
      "2" """Sachy"""
      "2" """Wieczór/Lamers"""
      "2" "ASMA Team"
      "2" "Adv"
      "2" "Bartłomiej Kluska, Mariusz Rozwadowski"
      "2" "Lotharek"
      "2" "Marcin Kiendra"
      "2" "Piguła"
      "2" "Ramos"
      "2" "Rocky"
      "2" "Urborg/TDC"
      "2" "tbxx"
      "1" """Grzybson/SSG"""
      "1" """Ilmenit"""
      "1" """Koala"""
      "1" """Piotr Kruzycki"""
      "1" """anticSHOP"""
      "1" """innuendo"""
      "1" """mgr_inz_rafal"""
      "1" """wieczor"""
      "1" "Adam & XXL"
      "1" "Arno Weber"
      "1" "Bachoo"
      "1" "Decrunch i RetroGralnia"
      "1" "Dracon i Stryker"
      "1" "Emu"
      "1" "Farscape"
      "1" "GolemXIV"
      "1" "Iron"
      "1" "Jacques"
      "1" "Kaczor"
      "1" "MDW"
      "1" "Mac"
      "1" "Marcin ""Adv"" Głuch"
      "1" "Muffy"
      "1" "Muzeum Techniki i Przemysłu NOT"
      "1" "Paweł ""pavros"" Rosowski"
      "1" "QTZ"
      "1" "Rafał ""bob_er"" Ciepiela"
      "1" "Rafał ""bob_er"" Ciepiela & Cyprian Konador"
      "1" "Redakcja"
      "1" "Różyk"
      "1" "Szary"
      "1" "Vasco"
      "1" "XXL & Yerzmyey"
      "1" "Xoen"
      "1" "Yoohaas"
      "1" "Yosh"
      "1" "Zespół Derenegeracji"
      "1" "calypso2k/mscp"
      "1" "greblus"
      "1" "stRing/Agenda"
      "1" "szeryf/Lamers"
      • 34: CommentAuthorzbyti
      • CommentTime12 Jan 2020 02:01 zmieniony
       
      EDIT1:
      @Kaz & @wieczor na email otrzymaliście ostateczną wersję bazy z nowinkami (obecny AOL + archiwa) bez komentarzy o nazwie aol-final.db.

      EDIT2: LOL dopiero zauważyłem, że w skrypcie konwertowałem title i content a zapomniałem o author i stąd te ręczne poprawki. Mogłem się przyjrzeć a nie robić sobie robotę ;) Jak się prześpię wygeneruję bazę jeszcze raz i zobaczę czy spawa zrobiła się bezobsługowa :] powinienem uzyskać to samo co aol-final.db.

      EDIT3: wrzuciłem trzecią do konwertera konwersję (kolumna 'author') i wynikowa baza już nie wymaga ręcznych poprawek w kolumnie author.
      • 35: CommentAuthorzbyti
      • CommentTime12 Jan 2020 05:01 zmieniony
       
      Zrobiłem sobie ponownie aktualną bazę AOL jeszcze bez archiwów. Największe straty poniósł KAZ prawie 3x mniej nowinek. Na obecnej stronie AtariOnline.pl jest 1338 artykułów z czego ilość/autor:

      "471"	"Kaz"
      "339" "Xeen"
      "252" "Adam Wachowski"
      "92" "TDC"
      "28" "Grey"
      "20" "Charlie Cherry"
      "17" "Piotr ""0xF"" Fusik"
      "11" "Larek"
      "7" "Urborg"
      "6" """sOnar"""
      "6" "Krzysztof ""XXL"" Dudek"
      "6" "Paweł ""Sikor"" Sikorski"
      "5" "Zaxon"
      "4" """Przemysław Wrona"""
      "4" "Adam Zalepa"
      "4" "Dracon"
      "4" "Organizatorzy"
      "4" "RetroBorsuk"
      "4" "Sikor"
      "3" """Gorgh/Agenda"""
      "3" """bocianu"""
      "3" """lapusz"""
      "3" "0xF"
      "3" "Jakub Husak"
      "3" "Jerzy ""Mono"" Kut"
      "3" "Krzysztof ""Kaz"" Ziembik"
      "3" "Mariusz ""Ramos"" Rozwadowski"
      "3" "Miker & Adam"
      "3" "Voy"
      "3" "Zenon"
      "3" "cpt. Misumaru Tenchi"
      "3" "scalak"
      "2" """Adam Zalepa"""
      "2" """Miker"""
      "2" """Sachy"""
      "2" """Wieczór/Lamers"""
      "2" "ASMA Team"
      "2" "Adv"
      "2" "Asal"
      "2" "Bartłomiej Kluska, Mariusz Rozwadowski"
      "2" "Lotharek"
      "2" "Marcin Kiendra"
      "2" "Piguła"
      "2" "Ramos"
      "2" "Rocky"
      "2" "Urborg/TDC"
      "2" "tbxx"
      "1" """Grzybson/SSG"""
      "1" """Ilmenit"""
      "1" """Koala"""
      "1" """Piotr Kruzycki"""
      "1" """anticSHOP"""
      "1" """innuendo"""
      "1" """mgr_inz_rafal"""
      "1" """wieczor"""
      "1" "Adam & XXL"
      "1" "Arno Weber"
      "1" "Bachoo"
      "1" "Decrunch i RetroGralnia"
      "1" "Dracon i Stryker"
      "1" "Emu"
      "1" "Farscape"
      "1" "Iron"
      "1" "Kaczor"
      "1" "Marcin ""Adv"" Głuch"
      "1" "Muffy"
      "1" "Muzeum Techniki i Przemysłu NOT"
      "1" "Nosty"
      "1" "Paweł ""pavros"" Rosowski"
      "1" "Rafał ""bob_er"" Ciepiela"
      "1" "Rafał ""bob_er"" Ciepiela & Cyprian Konador"
      "1" "Redakcja"
      "1" "Różyk"
      "1" "Szary"
      "1" "Vasco"
      "1" "XXL & Yerzmyey"
      "1" "Yoohaas"
      "1" "Zespół Derenegeracji"
      "1" "calypso2k/mscp"
      "1" "greblus"
      "1" "stRing/Agenda"
      "1" "szeryf/Lamers"

      EDIT1: @Kaz & @wieczor na email otrzymaliście kolejną ;) ostateczną wersję bazy z nowinkami (obecny AOL + archiwa) bez komentarzy o nazwie aol-complete.db. Generalnie powinna być taka sama jak "final" ale ta jest już wygenerowana bez ręcznych poprawek (po za usunięciem duplikatów). Z ciekawości próbowałem dorzucić news.txt.damaged ale po tym, że nie wzrosła ilości rekordów wnioskuję, że nie było tam niczego czego by już nie było w archiwalnych plikach.

      EDIT2: komentarze wyglądają prosto, jutro zrobię i uzupełnię o nie bazę.
      • 36:
         
        CommentAuthorjhusak
      • CommentTime12 Jan 2020 12:01
       
      Brawo zbyti! Jestem pod wrażeniem twojego zaangażowania :) Jeszcze raz kłania się zasada: nie myśleć jak zrobić, tylko po prostu zrobić :)
      • 37: CommentAuthorzbyti
      • CommentTime12 Jan 2020 13:01 zmieniony
       
      @jhusak dzięki za miłe słowa :]

      Obecnie jest już prowizoryczna możliwość przeglądania archiwów (z bazy biorę tylko content), wystarczy podać w URI id zaginionego artykułu, np:

      atarionline.pl/wayback/index.php?id=1293373279

      wyświetli artykuł o który pytał @mono ->link<- itd.

      Podmieniając wartość po id= dokonujemy odczytu z bazy danych SQLite3 z 2308 artykułami a nie z flat files z 1388 jak to obecnie jest na AOL.

      Nie parsuję treści art. nie wyświetlam autora etc., nie podmieniam linków i innych "znaczków" jakie tworzy edytor CuteNews. To takie rozwiązanie na szybko by każdy mógł sobie odszukać brakujący artykuł.

      Resztę zostawiam @astrofor bo się zadeklarował ;)

      EDIT: usunąłem word-break: break-all; by było oryginalne formatowanie ale wtedy niesparsowane linki będą wystawać. Ale to testowo, robota czeka na @astrofor jak ją zrobi to wtedy będzie elegancko ;)
      • 38: CommentAuthorzbyti
      • CommentTime12 Jan 2020 19:01 zmieniony
       
      @Kaz może rozważ danie notki na głównej, że jest ten wayback.

      Chodzi o to, że użytkownicy ponoć mają pododawane w zakładkach jakieś dawne artykuły i im do tej pory nie działały. Może zechcą sprawdzić czy te arty są w bazie?

      @mono podał 4 takie linki i wszystkie 4 teraz są. Może ktoś też ma takie niedziałające?

      Wtedy poprosił bym o nazwę zakładki i link.

      Wystarczy w starym podmienić "v01" na "wayback" i powinno chwycić.

      Mam przeświadczenie, że zaimportowałem wszystkie backupy nowinek, ale może coś jeszcze ktoś znajdzie? Dało by to wskazówkę w których z tych "mniejszych" plików archiwów może coś jeszcze być.
      • 39: CommentAuthorzbyti
      • CommentTime12 Jan 2020 22:01
       
      • 40: CommentAuthorwieczor
      • CommentTime13 Jan 2020 03:01 zmieniony
       

      zbyti:

      Mam propozycję by nie przenosić nowinek do nowego AOL tylko za pomocą bazy jaką stworzyłem stary AOL (system nowinek a nie platformę, platformę CuteNews można wywalić) pozostawić "do odczytu" oczywiście wyłuska się komentarze i podepnie pod tę starą bazę (chociaż nie chce mi się, oj jak nie chce :-).

      Oczywiście to co nazywam starą bazą powstanie jeszcze raz w momencie zamykania starego AOL.


      W zasadzie plan jest nieco inny :) Nie będzie "starego" AOL-a - tylko v2 AOL-a która będzie zawierać wszystko od początku do końca. Stary AOL wyląduje może w jakimś zipie w repo dla pamięci (i ku przestrodze :))) )

      Aby jednak doszło to do skutku w chwili obecnej robię "wczepkę" do CN - wszystkie artykuły i komentarze oraz zmiany do nich, będą publikowane zarówno "po staremu" jak i będą lądować w nowej bazie (oczywiście już w UTF).

      Etapem drugim jest import tam tego czego brakuje - czyli to co odzyskiwałeś.

      Od tego momentu, praca nad nowym silnikiem serwisu może przebiegać spokojnie, bo dane będą zawsze up-to-date i jak zostanie skończony, będzie mógł być przetestowany (no bo będzie cały czas miał pełne aktualne dane), aż w pewnym momencie nastąpi switch :)

      To co zrobiłeś bardzo ułatwi ten odzysk.
      • 41: CommentAuthorzbyti
      • CommentTime13 Jan 2020 03:01 zmieniony
       
      No to tak jak obiecałem ogarnąłem komentarze, godzinka pracy :]

      Jest ich na ten moment (obecny AOL + odzyskane) 52648 :]

      Kod konwersji i importu komentarzy:

      <?php

      $ISO_CHARS_1 = array (
      //...
      );

      $ISO_CHARS_2 = array (
      //...
      );

      //------------------------------------------------------------------

      $fn = fopen('comments.txt', 'r') or die('I can not open the file.');

      $db = new SQLite3('aol.db');
      $db->exec("CREATE TABLE IF NOT EXISTS comments(id INTEGER PRIMARY KEY, news_id INTEGER, author TEXT, email TEXT, ip TEXT, content TEXT)");
      $stm = $db->prepare("INSERT or REPLACE INTO comments(id, news_id, author, email, ip, content) VALUES (?, ?, ?, ?, ?, ?)");
      $stm->bindParam(1, $id);
      $stm->bindParam(2, $newsId);
      $stm->bindParam(3, $author);
      $stm->bindParam(4, $email);
      $stm->bindParam(5, $ip);
      $stm->bindParam(6, $content);

      while(!feof($fn)) {
      $rLine = fgets($fn);
      if ($rLine) {
      $arrCommentsRow = explode('|>|', $rLine);
      if (strlen($arrCommentsRow[1]) > 1) {

      $row = $arrCommentsRow[1];
      $row = mb_convert_encoding($row, 'UTF-8', 'ISO-8859-2');
      $row = strtr($row, $ISO_CHARS_1);
      $row = strtr($row, $ISO_CHARS_2);
      $newsId = intval($arrCommentsRow[0]);

      $arrComments = explode('||', $row);
      foreach ($arrComments as $comment){
      if (strlen($comment) > 1) {
      $arrComment = explode('|', $comment);
      $id = intval($arrComment[0]);
      $author = $arrComment[1];
      $email = $arrComment[2];
      $ip = $arrComment[3];
      $content = $arrComment[4];
      $stm->execute();
      }
      }
      }
      }
      }

      fclose($fn);

      Baza urosła z 15,4MB do 35,1MB

      Baza wrzucona na serwer atarionline.pl do wayback.

      @wieczor to powodzenia, nie mieszam się w takim razie w te plany :] myślę, że pomogłem. Masz gotową bazę w UTF-8 i zawsze możesz zrobić na niej update :]
      • 42: CommentAuthorwieczor
      • CommentTime13 Jan 2020 03:01
       
      Kawał dobrej roboty

      @Kaz @all - czy możecie zweryfikować tę bazę pod kątem archiwalnych nowinek i komentarzy? Tzn mam na myśli to, co brakowało. Jeśli udało się odzyskać wszystko to jest to duży krok naprzód.
      • 43: CommentAuthorzbyti
      • CommentTime13 Jan 2020 03:01 zmieniony
       
      @wieczor nie musisz robić wczepki wystarczy ze podepniesz się pod moją bazę i będziesz jej robił update shedulerem. A jak skończysz AOL to się całkiem przepniesz. Ale rób jak chcesz skoro już pracujesz.

      Jeszcze raz powodzenia! :D

      EDIT0: ja sprawdzałem kilka starych i nowych nowinek i ich komentarze za pomocą zapytań SQL czy zgadza się z tym co pokazuje AOL, wszystko gra jak dla mnie.

      EDIT1: oczywiście z tej bazy co zrobiłem można teraz znów porobić kompletne flat files do obecnego systemu.

      EDIT2: baza którą zrobiłem jest na dzień: 10.01.2020 godzina "jakaś tam" ;)

      EDIT3: by się komenty wyświetlały razem z artykułem to albo to @wieczor dopiszesz do tego mojego rozwiązania "na szybko" albo @atrofor musi się wsiąść raźno do roboty :D

      EDIT4: skróciłem kod konwertera nowinek. Podmieniłem załącznik w odpowiednim poście.

      EDIT5: wrzuciłem jeszcze do wayback bazy. Current to obecny AOL na 10.01.2020 z komentarzami i bez. Do tego aol.db <=> aol-complete.db do 'current" + dorzucone archiwa. Na bazach wykonałem update.sql eliminujący duplikat.
      • 44: CommentAuthorzbyti
      • CommentTime13 Jan 2020 04:01 zmieniony
       
      Np. komentarze do tej nowinki ->link<- wyglądają tak:

      select * from comments where news_id=1122484638

      EDIT: usunąłem z pewnych względów.

      Oczywiście pobierając komentarze do nowinki warto robić "ord asc po id" komentarza chociaż wrzucone są w kolejności lepiej mieć pewność, że pójdą w kolejności.
      • 45:
         
        CommentAuthorKaz
      • CommentTime13 Jan 2020 06:01
       
      Zawsze jak człowiek na chwilę się odwróci to tu jakieś przełomowe rzeczy się dzieją :D.

      Zbyti - rewelacja, dzięki ogromne za tą całą robotę, którą wykonałeś i wykonujesz! Daj mi trochę czasu, aż ogarnę to wszystko co napisałeś, bo jest tego sporo. Przede wszystkim sprawdzę w archiwach, ile tam mamy artykułów. Do tego trzeba by jeszcze zrobić merge komentarzy z backupów (ale ja do nich nie mam chyba dostępu, tylko Zyga).
      • 46: CommentAuthorzbyti
      • CommentTime13 Jan 2020 10:01 zmieniony
       
      @Kaz merge było i nowinek i komentarzy, backaupów (są na serwerze) jest 6 (nie liczę "nieposortowane" - jest taki plik nic nie wnosi, "suxx" też odpuściłem na rzecz "cleanup") i wszystkie w kolejności wrzuciłem, to samo z komentarzami.

      Te pliki są przyrostowe.

      Na końcu wrzuciłem na to co odzyskałem to co jest obecną bazą AOL (nowinki i komentarze) więc powinno być wszystko OK.
      • 47: CommentAuthorzbyti
      • CommentTime13 Jan 2020 11:01 zmieniony
       
      Jak się @astrofor dziś nie odezwie to uznam, że się połamał na nartach w weekend i nie można na niego liczyć i jakąś prostą wyszukiwarkę machnę.

      EDIT1: wrzuciłem z CN funkcję podmieniając te różne znaczki edytora CuteNews na tagi html. Teraz już się nie rozjeżdża.
      • 48: CommentAuthorzbyti
      • CommentTime13 Jan 2020 12:01 zmieniony
       
      OK, widać też komentarze ->link<- ->link<-

      Dobra @astrofor masz 3 dni na odezwanie się, inaczej na złość babci zrobię to sam :>
      • 49: CommentAuthorMADRAFi
      • CommentTime13 Jan 2020 15:01
       
      @zbyti kawal dobrej roboty potrzebnej do zmigrowania danych!
      • 50: CommentAuthorzbyti
      • CommentTime13 Jan 2020 15:01 zmieniony
       
      Dziś jeszcze uruchomię wyszukiwarkę na stronie głównej atarionline.pl (podepnę się pod to w lewym górnym) będzie szukać w bazie wayback po tytule nowinki.

      Co to samej bazy wayback, może napiszę updater do niej uruchamiany raz na dzień aby wpadały do niej najnowsze artykuły i komentarze? Zobaczę czy będzie mi się chciało.

      Updater wrzucał by tylko to co na ten moment jest nowe, także ew. zmiany w treści nowinek czy edycja komentarzy by się nie uwzględniała. bo brałbym tylko te id których jeszcze nie mam aby operacja była szybka.

      Przy przepinaniu na nowy AOL po prostu wytworzy się bazę od zera raz jeszcze i zamknie temat.

      @wieczor ja na twoim miejscu nie wpinał bym się w obecny CN bo ten mechanizm zapewni Ci bazę w miarę up-to-date a do swoich prac masz już ode mnie bazę w UTF-8 aż do 10.1.2020. Robisz sobie według mnie zbędą pracę.

      Ale powtórzę się po raz 3 i ostatni: nie pytałeś mnie o zdanie, wziąłeś całą robotę na siebie to tylko mogę kibicować i nie mieszam się więcej :]

      Ewentualnie jak będziesz miał kod rozgrzebany to mogę w nowym AOL jakieś zgłoszone bugi łatać jak znajdę czas i będę potrafił.