[Za długa sygnaturka] O ile za długa?

0

Proponuję, aby przy komunikacie błędu "za długa sygnaturka" pisał zdanie:

Wpisana sygnaturka jest za długa - ma N znaków. Powinna być krótsza niż 256 znaków.

Zamiast:

Sygnaturka jest za długa. Prawidłowa długość to <=255 znaków

Co wy na to?

0

za
chce Ci się zmienić źródełka? ;-)

0

Może by tak w JS dorobić pod sygnaturką "Pozostało N z 256 znaków" ?

0

jak na bramce eraomnix? good idea

0

OK. Zmiany biorę na siebie.

0

Mozesz przy okazji poprawic http://4programmers.net/coyote/bug.php?id=388 i http://4programmers.net/coyote/bug.php?id=386 ?

Jest tam rozwiazanie. Ja poki co nie mam dostepu do cvs.

0

Myślę, że mogę ;)

DOPISANE:

Zrobione: zarówno pokazuje podczas pisania (JavaScript; blokuje też klawisz zatwierdzenia przy zbyt długiej), jak i podczas wysyłania, gdyby ktoś miał wyłączone skrypty.

Bug #386 i #388 poprawione.

Wszystko już na CVS. Powinno być OK. Jak ktoś przetestuje (mi wszystko wydaje się działać poprawnie - tak na FF jak i IE, nie ma w tym wielkiej filozofii chyba), dać znać.

0

Przypomnę o temacie, bo zrealizowałem, wysłałem na CVS, minęły 3 miesiące (co do dnia), a wprowadzonych zmian jak nie było, tak nie ma.

0

hm, myślałem, że wrzucałem na ftp... ale kurczę - jest paru ludzi z dostępem do ftp - mogliby czasem pomóc...

hmm, a które to pliki? bo templates/, lang/ i include/* są uaktualnione

0

Opis zmiany z tamtego dnia jest ChangeLog na CVS:

10.02.2007 <[email protected]>

  * include/parser.php: Bug #388: ochrona przed SQL Injection/XSS przez sql_escape, htmlspecialchars.
  * include/ucp/ucp_main.php: Bug #386: ochrona przed XSS przez htmlspecialchars.
  * install/install.php: w kwerendzie SQL argument AUTO_INCREMENT z "" zmieniono na DEFAULT.  
  * templates/NewAge/ucp_main.tpl: przy wpisywaniu sygnaturki JavaScript (jesli obslugiwana) pokazuje aktualna dlugosc.
  * lang/pl/lang.php, account/account_edit.php, include/ucp/ucp_main.php, include/ucp/ucp_sig.php: komunikat o zbyt dlugiej sygnaturce uzupelniono o aktualna, wpisana dlugosc.
0

Wszystkie wymienione pliki na CVS i FTP są takie same.
w ucp_main.tpl jest taki kod w komentarzu:

//setTimeout("CheckSigLength();", 250);

ale nie sądzę, że timer to dobry pomysł - pewnie stąd komentarz. Lepiej skorzystać ze zdarzeń onkey*

0

Chodzi o to, że nie da się w OnKey - spędziłem wtedy na tym chyba ze 2 godziny, by dojść do wniosku, że OnKey nie zareaguje na przeciąganie tekstu z innych okien, wklejanie z menu myszy itp.

Jedynym działającym na wszystkich przeglądarkach rozwiązaniem, bez względu na to, jak wstawiany jest tekst, jest właśnie timer.

Rzeczywiście zmiany są, ale zakomentowane przez nav'a :/

Temat zamykam na razie - do czasu konsultacji z nav'em

0

Hm, chyba zakomentowałem tymczasowo jak robiłem podgląd stopki, coś się psuło gdy współdziałały oba skrypty, musiałem zapomnieć odkomentować [wstyd]

A też się zastanawiałem, czemu wcięło tą opcję.

A czy zdarzenie OnChange by nie pasowało?

0

najlepiej przypisać do kilku zdarzeń
a nic się nie stanie jak stan licznika będzie chwile nie aktualny, przecież to nie jest zabezpieczenie przed za długą sygnaturką tylko informacja dla użytkownika że to i tak nie przejdzie

0

OnChange nie zmienia się w trakcie pisania. Łatwo to przetestować:

<html><body><textarea onChange="alert('!');"></textarea></body></html>

Niestety nie działa to jak byśmy chcieli.

@Adamo - właśnie w tym problem, że są sposoby dodania tekstu, które nie posiadają stosownych zdarzeń - w ogóle.

Timer 4 razy na sekundę jest prosty, i tak nic nie obciąża, jest skuteczny. Więc czemu nie?

0

Dobra, dajcie ten timer na CVS i tyle :)

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