David Tereshchuk jest dziennikarzem pisującym dla takich gazet jak New York, New York Times, The Guardian i Observer.
Moim zadaniem było dokończenie projektu strony, swoistego bloga, rozpoczętego przez kolegę Sławka. Większość zawartości witryny stanowią teksty, więc podobnie jak w przypadku Centrum Praw Kobiet moje zadanie sprowadzało się do pobrania i zaprezentowania artykułów. Dorobiłem prostą wyszukiwarkę artykułów archiwalnych i zastosowałem bibliotekę PEAR::CacheLite, by zwiększyć wydajność. Zdecydowałem sie trzymać wyniki funkcji zwracających wyniki z bazy danych, a nie całe strony HTML. Wykorzystałem też mechanizm wyszukiwania zrobiony na potrzeby Centrum Praw kobiet.
Ciekawym wyzwaniem okazała się sekcja Video. Na początku funkcjonowała ona jako lista miniatur zdjęć i odnośników do filmów do pobrania. W pewnym momencie klient zażyczył sobie, by filmy były odtwarzane bezpośrednio na stronie. Pogrzebałem po sieci i znalazłem przyjemną bibliotekę do osadzania filmów QT. Na początku kombinowałem z dwoma warstwami: jedną z miniaturką i drugą z filmem. Miałem jednak problemy z tym pod IE. W końcu wpadłem na pomysł, by na stronie umieszczać tylko miniaturki ze zdarzeniem onclick, które wywołuje metodą podmieniającą obrazek na film. Na koniec przeszukałem sieć i znalazłem, jak kontrolować odtwarzanie pliku przy pomocy JavaScript. Można naprawdę sporo w ten sposób osiągnąć – ja zrobiłem postęp ładowania. Trzeba tylko pamiętać o ustawieniu parametru EnableJavaScript na true.
Pojawił się jeszcze kłopot, bo trzeba było długo czekać, aż film się załaduje. Przyznam się, że coś źle zrozumiałem szukając informacji o tym w sieci, bo sądziłem, że da się to tylko zrobić przy pomocy jakiegoś serwera streamingu. Dominik odkrył, że wystarczy przekonwertować pliki *.mov w odpowiedni sposób i wtedy odtwarzacz jest w stanie rozpocząć odtwarzanie jeszcze przed załadowaniem całego filmu.
Na koniec dodałem moduł rozsyłania biuletynów, który stworzyłem na potrzeby Centrum Praw Kobiet wprowadzając tylko drobne modyfikacje.
Użyte technologie: PHP5, MySQL 4.1, PEAR, Smarty, JavaScript



