To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

1.12.7 i starsze - Zaawansowane Archiwum Shoutboxa

Mateusz61 - 20-04-2011, 23:28

NineX a przydało by się możliwość zakazu niezalogowanym wchodzenia tam
teraz działa

wcześniejszy nie wiem czemu mi nie działał ale tylko na chrome

NineX - 20-04-2011, 23:32

Kod:
$sort = 5; // ilość wpisów na stronę.

Sterujecie tą zmienną, bo po 5 wpisów, to trochę mało.

Mateusz61 napisał/a:
NineX a przydało by się możliwość zakazu niezalogowanym wchodzenia tam

kombinujcie

Mateusz61 - 20-04-2011, 23:47

NineX ja dałem tak i mi wystarczy:
przed
Kod:
$width=25;
$height=25;

wstawiłem
Kod:
if ($userdata['session_logged_in'] ){


oraz po
Kod:
$template->pparse('body');

dałem
Kod:
}
else{
echo "<center>Jeste nie zalogowany !!</center>";
}


tylko coś czuję że w if'ie powinna być jakiś warunek ale nie wiem co wstawić...

Anonymous - 21-04-2011, 09:13

NineX napisał/a:
kooza, kod php pisany od nowa + paginacja, która powinna działać, jeśli będzie inaczej, dajcie znać.


No i to jest coś a nie jakaś fuszerka. Wszystko ładnie działa, nawet na ajaxowym + paginacja. Super.

Jest tylko jedno "ale". Źle pokazuje najaktywniejszych shoutboxowiczów + kal ustalić ile najaktywniejszych użytkowników ma być wyświetlanych? Aktualnie pokazuje mi 165 a chciałbym około 30.

HardROoZi - 21-04-2011, 19:49

potwierdzam, lista krzykaczy nie sortuje sie wg wpisów oraz emoty sie nie pokazuja tylko ich skroty
NineX - 22-04-2011, 01:00

HardROoZi napisał/a:
potwierdzam, lista krzykaczy nie sortuje sie wg wpisów oraz emoty sie nie pokazuja tylko ich skroty

poprawka

Joy17 - 22-04-2011, 01:01

HardROoZi napisał/a:
emoty sie nie pokazuja tylko ich skroty

W pliku arch_sb.php

Znajdź:
Kod:
if ( $shoutbox_config['allow_bbcode'] )


Dodaj przed:
Kod:
if ( $shoutbox_config['allow_smilies'] && $userdata['show_smiles'] )
                {
                    $msg = smilies_pass($msg);
                    $msg = preg_replace('/images\/smiles/', 'images/smiles', $msg);
                }


Aby linki stały się klikalne

Znajdź:
Kod:
else
    {
        $msg = str_replace(array('[u]', '[b]', '[i]', '[/i]', '[/b]', '[/u]'), array('', '', '', '', '', ''), $msg);
    }


Dodaj po:
Kod:
$msg = ($shoutbox_config['make_links']) ? make_clickable($msg) : $msg;

Mateusz61 - 22-04-2011, 01:09

Scoobany proste:

znajdź:
Kod:
$nr=1;
while($row = $db->sql_fetchrow($result))


zamień na
Kod:
$nr=1;
while(($row = $db->sql_fetchrow($result)) && ($nr <= 30))

Joy17 - 22-04-2011, 01:54

1. Czy ktoś wie, jak zrobić zmienność klas row1 i row2 (czy innych) tak jak to jest w shoutbox.js ? Innymi słowy, czy da się sprawić tak, aby tło w co drugiej wiadomości było w innym kolorze?

2. W jaki sposób wyłączyć archiwum dla gości?

Anonymous - 22-04-2011, 07:31

Mateusz61 napisał/a:
Scoobany proste:

znajdź:
Kod:
$nr=1;
while($row = $db->sql_fetchrow($result))


zamień na
Kod:
$nr=1;
while(($row = $db->sql_fetchrow($result)) && ($nr <= 30))


dzięki : )

kooza - 22-04-2011, 10:23

Cytat:
1. Czy ktoś wie, jak zrobić zmienność klas row1 i row2 (czy innych) tak jak to jest w shoutbox.js ? Innymi słowy, czy da się sprawić tak, aby tło w co drugiej wiadomości było w innym kolorze?

Trzeba było użyć tego:
Kod:
'ROW_CLASS' => (!($i % 2)) ? $theme['td_class1'] : $theme['td_class2'],

zobacz czy zadziała ;)

AKTUALIZACJA W PIERWSZYM POŚCIE.

Joy17 - 22-04-2011, 12:00

kooza napisał/a:
Cytat:
1. Czy ktoś wie, jak zrobić zmienność klas row1 i row2 (czy innych) tak jak to jest w shoutbox.js ? Innymi słowy, czy da się sprawić tak, aby tło w co drugiej wiadomości było w innym kolorze?

Trzeba było użyć tego:
Kod:
'ROW_CLASS' => (!($i % 2)) ? $theme['td_class1'] : $theme['td_class2'],

zobacz czy zadziała ;)

AKTUALIZACJA W PIERWSZYM POŚCIE.


Nie działa

Zamiast twardych spacji i tego znaczka w komórce wiadomości, polecam w stylach ustawić lewy margines oraz odstęp między liniami tekstu.
style="padding-left: 10px; padding-right: 4px; line-height: 20px;"
Efekt nieporównywalnie lepszy od pierwotnego
U mnie ostatecznie wygląda to tak: http://i53.tinypic.com/2vtoe3d.jpg

kevin_ - 22-04-2011, 12:11

Dlaczego aby wyświetlić np. top30 spamerów to robicie coś w stylu:
Kod:

($nr <= 30)


zastosujcie polecenie LIMIT dla zapytania

Paginacja w modzie też spaliłeś, użyj gotowej funkcji z phpBB zamiast tworzyć coś własnego.
Pomijam już fakt, że w ogóle nie sprawdzasz czy zapytanie poprawnie się wykonało czy nie - później są błędy związane z brakiem danych przesyłanych do pętli.

Jest jeszcze parę drobnostek w tym modzie, które warto poprawić np. po co stała SHOUTBOX (nigdzie nie widzę jej użytej) albo literówka w switchu ~ 102 linijka, bądź zbędna tablica "$tablica = array();"

a no i oczywiście:
Kod:

'ROW_CLASS' => (!($i % 2)) ? $theme['td_class1'] : $theme['td_class2'],


jak to ma zadziałać, skoro nigdzie nie zdefiniowałeś w paczce ten zmiennej $i aby zwiększała się wraz z nowym rekordem.

kooza - 22-04-2011, 12:37

a tO?
Kod:
    for($i=0; $total > $i; $i++)

kevin_ - 22-04-2011, 12:59

ja to nawet tego fragmentu nie widzę w tym pliku,ale to pętla z 84 linijki wyświetla wiadomości i tam ma się pojawiać zmiana koloru background, zgadza się? A więc tam nie ma nigdzie zdefiniowanej zmiennej $i, o której wspominałem wcześniej.


Powered by phpBB modified by Przemo © 2003 phpBB Group