Веб-интерфейс: фото альбом (галерея).

Гость18 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
08.06.2011

Техническое задание на разработку веб-интерфейса.

(предварительный вариант, основное).

--------------------------------------------------------------------------------------

1 Общее описание задачи.

Веб-интерфейс предназначен для легкого и удобного просмотра каталога фотографий.

Наиболее близкие по функциям приложения - альбомы или галереи фотографий.

Наиболее близкое по интерфейсу и функционалу программа - Shotwell http://yorba.org/shotwell/

(с исключёнными функциями по обработке фотографий).

Приложение: графическая схема расположения элементов веб-интерфейса.

Веб-интерфейс должен обеспечивать:

- работу с количеством картинок (строк в базе) до 500 000

с макс. временем задержки действий 3 сек. (при локальном доступе);

- полный обход "дерева событий" и/или непрерывный просмотр 1000 картинок

без ухудшения "отзывчивости" и существенных memleak браузера.

Информация о фотографиях (номер камеры, время, путь в ФС, разрешение,

размер, флаг и т.п.) находится в базе данных.

По запуску веб-интерфейса (открытие или обновление страницы) необходимо

выполнить запрос к базе данных и построить "ДЕРЕВО СОБЫТИЙ".

При начальном (автоматически, после запуска) или ручном (пользователем)

выборе конкретного временного диапазона (ВСЕ, ГОД, МЕСЯЦ, ДЕНЬ, ЧАС)

необходимо выполнить асинхронных запрос к базе с ограничением по размеру записей

и построить "МАТРИЦУ" PREVIEW-картинок, а также заполнить/обновить "СТАТИСТИКУ".

В рамках выбранного временного диапазона обеспечить смену PREVIEW-картинок в матрице

посредством элементов "ПРЕД.СЛЕД." и скроллбара #2.

Все выборки из базе ограничивать значениями элементов в областях "РАЗМЕР"

и "СПИСОК КАМЕР".

Клик по PREVIEW должен увеличивать изображение в размерах

МАТРИЦЫ и (возможную) смену управляющих элементов ТУЛБАРА

(например, добавление кнопки "распечатать").

Дополнительно, необходимо будет обеспечить возможность формирования

плейлистов (M3U,XSPF) из отмеченных фото.

Все доступные пользователю настройки интерфейса (состояние элементов управления,

относит. размеры областей страницы - см. РАЗД.1,2) сохранять в куках браузера

в сжатом виде.

MVC приветствуется, если только накладные расходы (скорость, память, доп. модули и т.п.)

на её реализацию невелики.

-------------------------------------------------------------------------------------

2 Технические условия.

2.2 Сервер.

ОС: *nix (linux/bsd/...)

База данных: mysql5

HTTP-сервер: apache2

Языки и технологии: php5(register_global=off),

javascript (можно исп. jQuery или обосновать и согласовать другое),

ajax (запросы к базе), DHTML,

HTML5 DOM Storage (кэширование запросов к базе с ограничением размера кэша)

Кодировка: UTF-8 (все компоненты: код, база и html)

2.2 Клиент.

Веб-браузеры: IE >= 6, браузеры на движках Gecko и Webkit, Opera

Разрешения экрана: [ 1366х768 - 1600х1400 ], ориентир на широкоформатные соотношения,

как более распространённые