Archive for lipiec, 2010

devise i testy funkcjonalne

Właśnie spędziłem zdecydowanie za dużo czasu próbując dojść, czemu właściwie nie chcą mi przechodzić testy funkcjonalne dla kontrolerów wymagających autoryzacji. Problemem było devise, które jakby nie chciało tworzyć pseudo sesji i wszystko przestawało działać. Dopiero po dłuuuższej chwili walczenia przypomniało mi się, że model, który próbowałem autoryzować miał dodaną flagę :confirmable. W ramach rozwiązania wystarczyło do fixtures dodać dwie kolumny: confirmed_at i confirmation_sent_at (nawet nie jestem pewien, czy ta druga jest konieczna…). Poniżej przykład działający.

1
2
3
4
5
tas:
  username: tas
  email: tas@zrobimydobrze.com
  confirmed_at: <%= 1.days.ago.to_s :db %>
  confirmation_sent_at: <%= 2.days.ago.to_s :db %>

tiny_mce i setContent

tiny_mce niewątpliwie dobrym edytorem jest. Ale jak każdy co bardziej skomplikowany kawałek i zlepek kodu, potrafi sprawiać problemy. Ostatnio mieliśmy kłopot z funkcją setContent wstawiającą do edytora określoną treść. Poniższy fragment kody, który działał dobrze w każdej właściwej przeglądarce, odmawiał posłuszeństwa w tej właściwszej (czyt IE).

?View Code JAVASCRIPT
1
tinyMCE.activeEditor.selection.setContent(tresc);

Problem polega na tym, że w IE powyższe wstawia daną treść na górze strony, zamiast w aktywnym miejscu edytora. Rozwiązanie, choć proste, nie jest jasno wskazane na wiki tiny_mce:

?View Code JAVASCRIPT
1
tinyMCE.activeEditor.execCommand("mceInsertContent", false, tresc);

I magii stało się zadość :)