Archiwum - [beta] 1.12.7 - Ajax jQuery Shoutbox
simon231 - 25-02-2010, 15:41
lui754, z tym auto-odświeżaniem jest problem, kiedy jest ustawione na mniejszą ilość sec, niż długość sesji to nie wylogowuje z forum.
W ten sposób można sobie nabijać wielogodzinne sesje...
Co robić ?
lui754 - 25-02-2010, 16:01
Azen, Będzie to jako dodatek, czyli dodatkowa instrukcja.
Joy17, powinno być: var row = (res.d[x].i % 2) ? 'row1' : 'row2';
Przemo, Przecież podawałem Ci adres forum testowego na GG i to nie raz
Calvin, wyświetla dopiero w nowych shoutach.
nolag, Zapewne w weekend. Zainstaluj u siebie i testuj.
simon231, Powalczę z tym. Może wymyśle jakieś rozwiązanie tego problemu.
Dziś jeszcze raz wszystko sprawdzę (kod PHP, AJAX) + poprawka sesji i wydam wersje 1.0.3.
Znaleźliście jakieś poważne błędy? Pytajcie w tym temacie o wszystko.
Azen - 25-02-2010, 16:08
lui754, A mógł bym ją dostać ?
Czy będzie napisana w najbliższym czasie
Joy17 - 25-02-2010, 16:31
lui754 napisał/a: | var row = (res.d[x].i % 2) ? 'row1' : 'row2'; |
Dokładnie tak mam w pliku, jednak nie działa row. Możesz zobaczyć na moim forum.
Kod: | function handleReceivingMessages()
{
if (http_request.readyState == 4)
{
var oScroll = document.getElementById("scroll");
var scrollDown = (oScroll.scrollHeight - oScroll.scrollTop <= oScroll.offsetHeight );
var res = eval("("+http_request.responseText+")");
for(x=0; x < res.d.length; x++)
{
var htmlMessage = '';
var color = (res.d[x].c) ? 'style="'+res.d[x].c+'"' : '';
var row = (res.d[x].i % 2) ? 'row1' : 'row2';
htmlMessage += '<div id="'+res.d[x].i+'" class="'+row+' table0"> '
if (res.d[x].x == 1){
htmlMessage += '<a onclick="removeShout('+res.d[x].i+')" style="cursor: pointer;"><b>x</b></a> ';}
if (res.d[x].e == 1){
htmlMessage += '<a onclick="editShout('+res.d[x].i+')" style="cursor: pointer;"><b>e</b></a> ';}
htmlMessage += res.d[x].t;
if (res.d[x].l == 1){
htmlMessage += ' <a href="profile.php?mode=viewprofile&u='+res.d[x].u+'"'+color+'>'+res.d[x].n+'</a>: ';}
else{
htmlMessage += ' <span '+color+'>'+res.d[x].n+'</span>: ';}
htmlMessage += '<span id="edit_'+res.d[x].i+'">'+res.d[x].m+'</span></div>';
oScroll.innerHTML += htmlMessage;
oScroll.scrollTop = scrollDown ? oScroll.scrollHeight : oScroll.scrollTop;
lastMessageID = res.d[x].i;
}
indicator_switch(0);
mTimer = setTimeout("requestNewMessages();", updateInterval);
}
} |
Renger - 25-02-2010, 16:58
Proste pytanie...
Czy działa to na serwerach z wersją PHP 4? Bo z tego co czytałem funkcje JSON są dostępne dopiero od wersji PHP 5.2 Posiadam serwer który parsuje pliki domyślnie na php 4, oczywiście mam możliwość uruchomienia php5 co zresztą mam zrobione. Wiadomo że większość serwerów działa już na php 5 jednak nie należy zapominać że są również osoby które mogą posiadać jeszcze serwery z php 4 i nie mogą lub nie umieją odpalić php5.
Joy17 - 25-02-2010, 17:08
Poważniejszych błędów nie zauważyliśmy, natomiast postaram się skumulować w jednym miejscu drobne uwagi, które otrzymuję od userów:
- wspomniane wyżej cieniowanie wiadomości (row)
- szersze pole wysłanych wiadomości... Te linie oddzielające osobne wypowiedzi są bardzo ciasne i chyba bardziej przejrzyście byłoby gdyby je rozsunięto troszkę
- wspomniane wcześniej podkreślenie nicków - niepotrzebne
- usunięcie spacji w nawiasie z datą -> [ Dzisiaj 17:02 ] troszkę za szerokie to się wydaje
Myślę, że to są drobiazgi, jednak warte rozpatrzenia
//EDIT:
Od jednego użytkownika otrzymałem informację o dość problemowym ładowaniu się shoutboxa w jego przeglądarce FF. Skrypt odświeża się długo, wiadomości ładują powoli, za każdym razem wszystkie od nowa (od góry, jak on to opisał). Problem z SB występuje od samego początku, czyli od wczoraj, oraz bardzo utrudnia przeglądanie internetu, wiesza przeglądarkę. Trudno znaleźć przyczynę, na pewno nie leży ona po stronie łącza, bo ma je dość szybkie. W innych przeglądarkach działa bezproblemowo. Wszelkie dodatkowe pluginy są wyłączone, z opcji dodatkowych ma ustawione automatyczne czyszczenie cookies przy zamykaniu przeglądarki, ale wątpię, aby to miało jakikolwiek wpływ.
lui754 - 25-02-2010, 18:12
Renger, działa z PHP4 ponieważ nie użyłem funkcji json_encode();
Joy17,
ad1. Ta funkcja działa poprawnie. Usunąłeś z klasy .table0 background: #KOLOR; ?
ad2. Zmień sobie w tplakach tą szerokość
ad3. Przecież wystarczy edytować nazwaStylu.css i w klasie .table0 dodać text-decoration:none;
ad4. To już kwestia gustu, ale ok. Instrukcja:
shoutbox_view.php
Kod: | $time = ($shoutbox_config['date_on']) ? '[ '. create_date($shoutbox_config['date_format'], $row['timestamp'], $board_config['board_timezone']) .' ]' : ''; |
zmień na:
Kod: | $time = ($shoutbox_config['date_on']) ? '['. create_date($shoutbox_config['date_format'], $row['timestamp'], $board_config['board_timezone']) .']' : ''; |
ad5. Ustaw mniejszą ilość wyświetlanych wpisów w SB! optymalne rozwiązanie to 25.
Joy17 - 25-02-2010, 18:20
Ok dzięki
lui754 napisał/a: | ad1. Ta funkcja działa poprawnie. Usunąłeś z klasy .table0 background: #KOLOR; ? |
Tak, usunąłem... nie działa
lui754 napisał/a: | ad5. Ustaw mniejszą ilość wyświetlanych wpisów w SB! optymalne rozwiązanie to 25. |
Od kilku godzin miałem ustawione 100 wiadomości, ale przy 30 problem był identyczny
lui754 - 25-02-2010, 18:44
ehh, zapomniałem, że klasa jest poprzedzona td. Tak więc trzeba będzie edytować CSS.
styl.css
znajdź:
Kod: | td.row1 { background-color: #FFFFFF; }
td.row2 { background-color: #ECF0F4; } |
zmień na:
Kod: | .row1 { background-color: #FFFFFF; }
.row2 { background-color: #ECF0F4; } |
Joy17 napisał/a: | Od kilku godzin miałem ustawione 100 wiadomości, ale przy 30 problem był identyczny |
Masz ponad 55 000 wiadomości napisanych w SB, zapytania się wydłużają i dlatego wolno działa. Wyczyść tabele shoutbox.
Kod: | TRUNCATE TABLE phpbb_shoutbox; |
usunie wszystkie wpisy z SB.
Joy17 - 25-02-2010, 18:58
lui754 napisał/a: | Masz ponad 55 000 wiadomości napisanych w SB, zapytania się wydłużają i dlatego wolno działa. Wyczyść tabele shoutbox. |
Nie prawda, wiadomości mam usuwane po 3 dniach, a tylko ID idzie za kolejnością, stąd ponad 56. tysięczne wpisy. W sumie w tabeli mam niecałe 300 wpisów.
Cytat: | ad3. Przecież wystarczy edytować nazwaStylu.css i w klasie .table0 dodać text-decoration:none; |
Nie działa
Dzięki za poświęcenie czasu
lui754 - 25-02-2010, 19:06
Po wyczyszczeniu tabeli phpbb_shoutbox, ID idą od nowa. Wyczyść i się przekonaj.
Powinieneś zrobić przeczyszczenie tej tabeli od razu po zainstalowaniu SB.
ehh zobacz u siebie na forum ze każdy link bez klasy gensmall czy genmed ma podkreślenie.
Zmień w CSS: Kod: | a:link,a:active,a:visited { color : #19355F; text-decoration: none;} |
Joy17 - 25-02-2010, 19:15
dziękuję
lui754 napisał/a: | ad2. Zmień sobie w tplakach tą szerokość |
Nie potrafię poszerzyć rozmiaru okna wysłanej wiadomości
Don8 - 25-02-2010, 19:48
nie działa mi ten sb, cały czas jak by wczytywało i nic. czemu ???
lui754 - 25-02-2010, 20:00
Nic dziwnego skoro go nie zainstalowałeś
Don8 - 25-02-2010, 20:03
właśnie że zainstalowałem, tylko skoro nie działał to po co miał być włączony na forum... ?
|
|
|