Manual:Logging to Special:Log/pl

Poniżej znajduje się instrukcja jak umożliwić dodawanie własnych wpisów do rejestru poprzez własne rozszerzenia za pomocą klasy LogPage. Do pliku z kodem rozszerzenia (np. MyExtension.php) dodaj poniższy kod ("foo" zmień na własny tytuł):

// Wewnętrzna nazwa logu, używana jako adres w formie Special:Log/foo $wgLogTypes[] = 'foo'; // Nazwa identyfikacyjna komunikatu systemowego zawierająca prostą nazwę własnego rejestru. // Informacja będzie pokazywana w tytule strony i na liście rozwijalnej w Special:Log $wgLogNames['foo'] = 'foo-name'; // Nazwa identyfikacyjna komunikatu systemowego zawierający opis pokazywany w nagłówku na stronie rejestru $wgLogHeaders['foo'] = 'foo-header';

Utwórz komunikaty systemowe w pliku MyExtension.i18n.php:

$messages['en'] = array( ...                                                       'foo' => 'Foo',  'foo-name' => 'Foo log',  'foo-header' => 'These events track when Foo events happen in the system.',  'foo-message' => 'A Foo event happened to article $1',  ... ); $messages['pl'] = array( ...                                                       'foo' => 'Foo',  'foo-name' => 'log Foo',  'foo-header' => 'Poniżej znajduje się rejestr czynności wykonanych przez rozszerzenie Foo.',  'foo-message' => 'Wykonano jakąś akcję Foo na artykule $1',  ... ); ...

W pliku MyExtension_body.php, dodaj kod, który będzie dodawał wpisy zarówno na stronie Special:Log/foo jak i liście ostatnich zmian:

global $wgTitle, $wgUser; $log = new LogPage('foo');   // See alternative below $log->addEntry('foo',              $wgTitle,               wfMsg('foo-message', $wgTitle->getFullText),              array,               $wgUser);

Jeżeli nie chcesz pokazywać zdarzeń na liście ostatnich zmian, włącznie z powiadomieniami listy obserwowanych, zmień konstruktor na:

$log = new LogPage('foo', false); // Drugi argument = false