URL: http://apps.facebook.com/​photofive/​
Статус: завершен
Дата начала: 03.06.2010
Дата завершения: 16.07.2010

Теги: photo505.com, PHP, MZZ, jQuery, Ajax, Facebook, ImageMagick, Mercurial

Photo505.com (release 3)

Photo505.com — развлекательный сайт с помощью которого можно создавать коллажи из загружаемых фотографий, применять различные эффекты и делать другие забавные и красивые преобразования, на создание которых обычному пользователю потребовалось бы немало времени.

Это третья версия данного сайта. Весь проект был обновлен и переведен на самую последнюю доступную версию MZZ 1.0.

Главным нововведением этой версии стало приложение photofive для социальной сети Facebook, созданное на основе сайта проекта. В этом приложении пользователи Facebook могут, наряду с обычным функционалом проекта, использовать фотографии из своих альбомов и сохранять полученные результаты себе в альбом.

Разработка

Перед началом разработки приложения для Facebook было принято решение переписать проект для совместимости с самой последней версией MZZ 1.0, что не только упростило дальнейшую разработку, но и ускорило работу самого проекта.

Было решено делать IFrame-приложение, которое работало бы на основе основной версии сайта и было реализовано как модуль к нему. При разработке приложения для Facebook я напоролся на половину багов, которые были открыты на тот момент в их баг-трекере. Особенно всех больше возни было с предоставлением вменяемой авторизации в приложении, которая бы нормально работала во всех популярных браузерах. Причиной проблемы оказались third-party cookies и политика безопасности браузеров IE и Safari. В IE это дело фиксится с помощью добавления специального P3P хедера в респонз, а с Safari пришлось повозиться.

Также в этом проекте, по наводке моего друга zerkms'а, я опробовал систему контроля версий Mercurial. После SVN въехать может и тяжеловато, но оно того стоило, очень удобно, сервер репозитория поднимается за пять секунд.

Скриншоты