Page 153 of 176

Rails, Cookies (ciasteczka) oraz przecinki

Kilka dni temu, potrzebowałem odczytywać na potrzeby analizy, zawartość ciastka odpowiedzialnego za GUI interfejsu do Susanoo. Jakież było moje zdziwienie gdy zamiast oczekiwanego:

0,1,3,4,2,5,7,6,8||||280||||1200

Railsy widziały samo 0, a dokładniej to wartości do pierwszego przecinka.

Po chwili googlania, znalazłem taką oto wiadomość:

According to RFC 2109, commas aren't allowed in the cookie value and should be encoded.

Jak się później okazało, Railsy po prostu zachowują się poprawnie ;) więc musiałem nie ładować do ciastka przecinków.

Okazało się to bardzo proste, ponieważ między ciastkiem a warstwą aplikacji mam jeszcze warstwę abstrakcji, w której dzięki niewielkiej zmianie, zamieniam wszystkie przecinki na pauzy w taki sposób:

value = (String(value)).replace(/\,/gi,'-');

Następnie przy odczycie, robię to samo tylko w drugą stronę:

ret = ret.replace(/\-/gi,',');

Dodam tylko, że w zawartości ciastka, nie powinno być także poniższych znaków:

()<>@;:\"/[]?={}

oraz spacji i tabulatorów.

Fckeditor + Autogrow vs Google Chrome

Dzisiaj zupełnie przypadkiem zauważyłem, że (kolejny raz) autogrow szwankuje. Tym razem wysypał się przy odpalaniu Fckeditora na Chromie. Autogrow automatycznie ustawiał wysokość pola na max, zamiast ustawić na wybraną wartość i dopiero w razie potrzeby je powiększać.

Rozwiązanie tego problemu okazało się całkiem proste.

W pliku fckeditor/editor/plugins/autogrow/fckplugin.js wystarczy zakomentować linijki od 45 do 48 (fragment poniżej):

if ( typeof window.onresize == 'function' )
{
    window.onresize();
}

Copyright © 2026 Closer to Code

Theme by Anders NorenUp ↑