orty nie działają, potrzebuję pomocy

Odpowiedz Nowy wątek
2006-09-24 07:10
0

Jest problem

Poprawiłem 3 bugi ale dopiero teraz zauważyłem, że przez to orty [te automatyczne z bazy] przestały działać :/
Siedzę, dumam.. i amba.. dlatego potrzeba mi pomocy w tej kwestii.

proszę zajrzeć do pliku viewtopic.php, linia 948
mamy tam

$row['post_post'] = $parser->parse();

funkcja parse między innymi zamienia <ort... na czerwony wyraz ort!
jednak otoczenie blednych wyrazow tym tagiem nastepuje PO wykonaniu tej funkcji, pare linijek nizej [955]
dzieki takiej kolejnosci oraz funkcji

$parser->extract('a', 'tag');

naprawiony zostal bug #218 (oraz na tej samej zasadzie nizej bug #58)

dlatego w kodzie html zostaja niesparsowane znaczniki <ort

kombinuje od paru godzin i nie potrafie tego naprawic, a zaraz mi lokal zamykaja ;)
dlatego prosze o pomoc w przywroceniu ortow a zarazem zachowaniu naprawionych bugow #58 i #218

skumałem to przy okazji prac nad bugiem #261, który jest w miarę istotny


Pozostało 580 znaków

2006-09-24 12:09
0

Nie po - bo są właśnie takie błędy i nie przed, bo wychodzą inne - trzeba w trakcie parsowania zamieniać.

Do metody parse() w /include/parser.php dodałem parametr $replacement_arrays domyślnie ustawiony na false i dopisałem taki kod w linii 365:

          // jesli mamy cos do zastapienia...
          if ( $replacement_arrays )
          {
              $anchors = $this->extract('a', 'tag');
              foreach ( $replacement_arrays as $repl_ary )
              {
                  if (count($repl_ary))
                      $this->text = preg_replace($repl_ary['pattern'], $repl_ary['replacement'], $this->text);
              }
              if ( $anchors )
              {
                  $this->retract($anchors);
              }
          }

// kod poprawiony i wytestowany - J. J. J.

I oczywiście wywaliłem odpowiednie linijki z viewtopic.php, a 948 zamieniłem na:

      $row['post_post'] = $parser->parse(array($word, $highlight_match));
<btw>Jeśli w poście znajduje się wulgaryzm, a ten post wyedytuję przy pomocy szybkiej edycji i zapiszę - znika cenzura. Po odświeżeniu cenzura ponownie się pojawia.</btw>

//Zdawało mi sie, że to zrobilem - ale poprawię. Poza tym, skoro user wpisał wulgaryzm, to i tak go widział :P Inni go nie zobaczą - nav
// zgadza się, ale jak cenzura to konsekwentna (chociaż osobiście jestem przeciwnikiem cenzury) - J. J. J.


php if ($crazy) sqrt() or die;

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0