Forum Książki Strona Główna Forum Książki
Witamy w Księgogrodzie!

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  Chat  DownloadDownload

Poprzedni temat «» Następny temat
Spoilery
Autor Wiadomość
Nieznany 
Carrot Monster



Wiek: 44
Dołączył: 13 Gru 2008
Posty: 3438
Skąd: inąd
Wysłany: 2011-11-29, 21:25   Spoilery

Ponieważ wynikła we wątku o książkach Martina taka sytuacja, że pojawił się spoiler i może się to pojawiać jeszcze często, to proponowałbym dodać do skryptu forum opcję dodawania do postu okienka ze spoilerem, które byłoby zakryte a odkrywało by się je po kliknięciu w przycisk "spoiler". Sprawdza się to jak najbardziej na KGB.

kod do zmian:

plik:
/includes/bbcode.php

znajdź:
Kod:
// [b] and [/b] for bolding text.
$text = preg_replace("#\[b\](.*?)\[/b\]#si", "[b:$uid]\\1[/b:$uid]", $text);

po nim wstaw:
Kod:
// [spoiler][/spoiler]
$text = preg_replace("#\[spoiler\](.*?)\[/spoiler\]#si", "[spoiler:$uid]\\1[/spoiler:$uid]", $text);

znajdź:
Kod:
// [b] and [/b] for bolding text.
$text = ($board_config['button_b']) ? str_replace("[b:$uid]", $bbcode_tpl['b_open'], $text) : str_replace("[b:$uid]", '', $text);
$text = ($board_config['button_b']) ? str_replace("[/b:$uid]", $bbcode_tpl['b_close'], $text) : str_replace("[/b:$uid]", '', $text);

po nim wstaw:
Kod:
// [spoiler][/spoiler]   
$text = str_replace("[spoiler:$uid]", $bbcode_tpl['spoiler_open'], $text);
$text = str_replace("[/spoiler:$uid]", $bbcode_tpl['spoiler_close'], $text);


plik:
/templates/Twój_styl/bbcode.tpl
znajdź:
Kod:
<!-- BEGIN b_open --><span style="font-weight: bold"><!-- END b_open -->
<!-- BEGIN b_close --></span><!-- END b_close -->

po nim wstaw :
Kod:
<!-- BEGIN spoiler_open --><div style="margin:20px; margin-top:5px"> <div class="smallfont" style="margin-bottom:2px"><b>Spoiler</b>: <input type="button" value="Pokaż" style="width:45px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Ukryj'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Pokaż'; }"> </div> <div class="alt2" style="margin: 0px; padding: 6px; border: 1px inset;"> <div style="display: none;"><!-- END spoiler_open --><!-- BEGIN spoiler_close --><br /> </div> </div> </div><!-- END spoiler_close -->


zapisac zmiany i upnąć na serwa :) Pamiętaj tylko Uczniu o zmienieniu pliku .tpl we wszystkich trzech stylach. :)

Jak to działa i że się sprawdza można zobaczyć np. we wątku ze spoilerami na temat właśnie Gry o tron: http://ebooki.linuxpl.com/viewtopic.php?t=9106
_________________
Nenek, jesteś mistrzem, uwielbiam Cię!
Obi
Jesteś moim bohaterem!
Caroline*
 
 
     
Uczeń Czarnoksiężnika 



Wiek: 35
Dołączył: 01 Lis 2008
Posty: 3877
Wysłany: 2012-02-03, 10:17   

Ok powinno działać, ale pytanko jeszcze - jak dodać przycisk Spoiler? :)

Spoiler:
To jest próba działania kodu ukrywania spoilerów
_________________
Zamek Czarnoksiężnika
:arrow: Czas Imperium - nr 33 - 12.04.2009
:arrow: Czas Imperium - nr 35 - 20.09.2009
 
     
Kamil 



Wiek: 31
Dołączył: 05 Maj 2011
Posty: 3807
Wysłany: 2012-02-03, 10:49   

Spoiler:
Przetestowac sobie musze :)

Działa :D no tylko ręcznie musiałem wpisać, ale pewnie nawet jak dodasz przycisk to będzie pod przyciskiem "Odpowiedz", a nie tam gdzie jest "Szybka odpowiedź"?
 
 
     
Uczeń Czarnoksiężnika 



Wiek: 35
Dołączył: 01 Lis 2008
Posty: 3877
Wysłany: 2012-02-03, 10:54   

Muszę poszukać w necie albo podpytać Na, może się da :)
_________________
Zamek Czarnoksiężnika
:arrow: Czas Imperium - nr 33 - 12.04.2009
:arrow: Czas Imperium - nr 35 - 20.09.2009
 
     
Panna Jeż 



Dołączyła: 08 Lip 2009
Posty: 2422
Skąd: z mchu i paproci
Wysłany: 2012-02-03, 13:17   

Spoiler:
Udało się! :D


Świetnie. ^^
_________________
Niepamięć doda Ci skrzydeł...
 
     
Nieznany 
Carrot Monster



Wiek: 44
Dołączył: 13 Gru 2008
Posty: 3438
Skąd: inąd
Wysłany: 2012-02-03, 14:58   

Żeby wstawić do "odpowiedz" przycisk "Spoiler" trzeba we wszystkich trzech stylach w plikach posting_body.tpl znaleźć ten kawałek:

Kod:
{BUTTON_CE}{BUTTON_F}{BUTTON_S}{BUTTON_ST}{BUTTON_HI}

i w dowolnym miejscu, ja mam na końcu, czyli po {BUTTON_HI}, dodać kod wstawiający przycisk:

Kod:
&nbsp;<input type="button" class="button" value="Spoiler" style="width: 50px; text-indent: -3px;" onclick="wrapSelection(document.post.message,'[spoiler]', '[/spoiler]')" />


Ostatecznie ma to wyglądać tak:

Kod:
{BUTTON_CE}{BUTTON_F}{BUTTON_S}{BUTTON_ST}{BUTTON_HI}&nbsp;<input type="button" class="button" value="Spoiler" style="width: 50px; text-indent: -3px;" onclick="wrapSelection(document.post.message,'[spoiler]', '[/spoiler]')" /></span></td>


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

A dla szybkiej odpowiedzi (to w sumie powinno wystarczyć większości ;-) ) musisz wykonać podobną robotę, ale w plikach quick reply.tpl. Masz tam pookreślane kolejne przyciski, ostatni jest "quote".

Kod:
<!-- BEGIN button_q -->
<tr>
    <td>&nbsp;<input type="button" class="button" value="Quote" style="width: 38px; text-indent: -3px;" onclick="bbcode('[quote]', '[/quote]')" /></td>
</tr>
<!-- END button_q -->


no i musisz tam dodać przycisk Spoiler, najlepiej, żeby był obok "quote". Zamień więc powyższe na:

Kod:
<!-- BEGIN button_q -->
<tr>
    <td>&nbsp;<input type="button" class="button" value="Quote" style="width: 38px; text-indent: -3px;" onclick="bbcode('[quote]', '[/quote]')" /></td> <td>&nbsp;<input type="button" class="button" value="Spoiler" style="width: 50px; text-indent: -3px;" onclick="wrapSelection(document.post.message,'[spoiler]', '[/spoiler]')" /></td>
</tr>
<!-- END button_q -->


I to musi być we wszystkich stylach, żeby każdy to widział. :)

Swoją drogą ja do niemal wszystkiego dochodziłem sam, bo choć kiedyś miałem kurs HTMLa, to w pehapie jest więcej zabawy, bo są te wszystkie zmienne... w każdym razie zazwyczaj wystarczy popatrzeć, jak rozwiązane zostało to wcześniej, w gotowym skrypcie albo podobnej modyfikacji (zawsze szukam ich na forum przemo) i skopiować dla własnych celów. :) Często jest to metoda prób i błędów, ale tylko raz udało mi się zrypać trochę forum, a właściwie forum było OK tylko kolory w stylu poszły się... gonić. :-P Zamiast normalnych wyskoczyły jakieś seledyny, żółcie itp... okazało się, że kiedy chce się zmienić jakąś wartość w edycji stylu w PA, np. zmienić kolor nicku admina czy moda, to trzeba najpierw ściągnąć na dysk plik css stylu, dokonać zmiany a potem podmienić nowy plik css starym, wtedy wszystko "zagra". :) Z moich doświadczeń wiem, że nie jest to konieczne przy subSilverze, ale przy nowych, dodawanych stylach, trzeba tak robić, bo się mogą rozsypać ustawienia. :)
_________________
Nenek, jesteś mistrzem, uwielbiam Cię!
Obi
Jesteś moim bohaterem!
Caroline*
 
 
     
motylek727 
Nakmîktrân



Wiek: 28
Dołączyła: 23 Lis 2011
Posty: 1739
Skąd: Poznań
Wysłany: 2012-02-03, 15:17   

A ja nie umiem :-(
_________________
Nothing is true. Everything is permitted.
 
 
     
Panna Jeż 



Dołączyła: 08 Lip 2009
Posty: 2422
Skąd: z mchu i paproci
Wysłany: 2012-02-03, 15:20   

Wstawiasz tag [ spoiler ]tu wpisujesz tekst, który chcesz ukryć i a potem wstawiasz[ /spoiler ]
Tylko bez tych spacji w nawiasach kwadratowych ^^
_________________
Niepamięć doda Ci skrzydeł...
 
     
motylek727 
Nakmîktrân



Wiek: 28
Dołączyła: 23 Lis 2011
Posty: 1739
Skąd: Poznań
Wysłany: 2012-02-03, 15:22   

Czyli tak jak cytat czy coś innego? xD Aaa... Myślałam, że to bardziej skomplikowane :-P
_________________
Nothing is true. Everything is permitted.
 
 
     
Nieznany 
Carrot Monster



Wiek: 44
Dołączył: 13 Gru 2008
Posty: 3438
Skąd: inąd
Wysłany: 2012-02-03, 15:33   

Motylku...
Spoiler:
Ależ to jest bardzo proste. :D Spróbuj sama. :mg:
_________________
Nenek, jesteś mistrzem, uwielbiam Cię!
Obi
Jesteś moim bohaterem!
Caroline*
 
 
     
Panna Jeż 



Dołączyła: 08 Lip 2009
Posty: 2422
Skąd: z mchu i paproci
Wysłany: 2012-02-03, 15:38   

Rav, Córko, to teraz możecie poukrywać spoilery w temacie o Atwood. ^^
_________________
Niepamięć doda Ci skrzydeł...
 
     
motylek727 
Nakmîktrân



Wiek: 28
Dołączyła: 23 Lis 2011
Posty: 1739
Skąd: Poznań
Wysłany: 2012-02-03, 15:39   

Spoiler:
Zobaczymy, czy się uda
_________________
Nothing is true. Everything is permitted.
 
 
     
Ravena 
Wiedźma Dyplomowana



Wiek: 37
Dołączyła: 01 Lis 2008
Posty: 6442
Skąd: Wiedźmowy Las
Wysłany: 2012-02-03, 16:00   

Cytat:
Rav, Córko, to teraz możecie poukrywać spoilery w temacie o Atwood. ^^

Ukryłam w moich postach, ale nie mam uprawnień do edycji Córki w tym dziale, więc musisz poczekać na nią sama, jeszcze tam nie zaglądaj :)
_________________
Without coffee, 'Good Morning' is an oxymoron

Lektury Kawoholiczki
 
 
     
Panna Jeż 



Dołączyła: 08 Lip 2009
Posty: 2422
Skąd: z mchu i paproci
Wysłany: 2012-02-03, 17:05   

Ok, poczekam tę chwilę :D
_________________
Niepamięć doda Ci skrzydeł...
 
     
Uczeń Czarnoksiężnika 



Wiek: 35
Dołączył: 01 Lis 2008
Posty: 3877
Wysłany: 2012-02-03, 20:21   

N, serdecznie dziękuję Ci za wskazówki na wagę złota. Wydaje się, że wszystko działa ok. Zrobiłem dokładnie jak napisałeś. Wielkie dzięki.

Teraz wszyscy mogą spoilerować do woli. :)
_________________
Zamek Czarnoksiężnika
:arrow: Czas Imperium - nr 33 - 12.04.2009
:arrow: Czas Imperium - nr 35 - 20.09.2009
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  


Forum KGB

Powered by phpBB modified by Przemo © 2003 phpBB Group
Strona wygenerowana w 0,09 sekundy. Zapytań do SQL: 12