13 553
правки
Изменения
Массовая правка: замена Категория:Разработка на Категория:Архив, замена Category:Разработка на Категория:Архив
[[Vitaphoto]] — система управления фотогалереями, обладающая некоторыми уникальными отличительными особенностями, самая главная из которых — заливка фотографий в галерею не через веб-интерфейс, а ''обычным копированием файла в заданную директорию на сервере''. Т.е.То есть, ФС-ориентированность.
На данной странице вы можете узнать об истории и преимуществах системы Vitaphoto над прочими аналогичными. Среди них — удобство использования, гибкость, безопасность и возможность управления множеством галерей на одном сервере.
Посмотреть на [[Vitaphoto]] '''V3 / 1.4''' в лице моей фотогалереи можно по следующей ссылке: [http://vmx.yourcmc.ru/vitaphoto vitaphotov3 http://vmx.yourcmc.ru/vitaphotovitaphotov3].Гламурная… Ух!
Старая версия (1.3 / V2) находится по адресу [http://vmx.yourcmc.ru/vitaphoto-legacy http://vmx.yourcmc.ru/vitaphoto-legacy]. Посмотреть исходные коды [[Vitaphoto]] и выросшего из [[Vitaphoto]] фреймворка [[Sway Solstice]] можно здесь: [{{SVN|vitaphoto/headsolstice/lib-vitaphoto}} (oldV3) lib-vitaphoto], [{{SVN|vitaphoto/headsolstice/lib-sway}} (oldV3) lib-swaySolstice] . Исходники старой версии: [{{SVN|vitaphoto/branch/solsticehead/lib-vitaphoto}} (unstablelegacy) lib-vitaphoto], [{{SVN|vitaphoto/branch/solsticehead/lib-sway}} (unstablelegacy) lib-sway Solstice].
== История создания [[Vitaphoto]] ==
* некоторые сервисы стараются даже запретить выкладывать фотографии в блог без вставки ссылки на сам сервис.
И наоборот, на преимущества вроде кластеризатора фотографий (Flickr), или возможности «отправить ссылку на этот альбом» (Picasa), или возможности онлайн-заказа печати фото (ФотоФайл, НетПринт) мне откровенно наплевать. Иногда, возможно, и было бы интересно поиграться, но не более того. «Социальные сети… Облачность… Интеграция с тем… Интеграция с этим… Интеграция с интеграцией… Теперь другу можно отправить фотку одним кликом сидя в туалете, но нельзя выключить компьютер!» (лор).
Возможно, вы и сами уже прочувствовали на себе некоторые из этих недостатков. Обо мне и говорить нечего, меня они просто достали :-)
Потому я и создал [[Vitaphoto]]. Преимущества [[Vitaphoto]] с моей точки зрения:
* добавление Добавление фотографий и альбомов видеороликов представляет собой обычное копирование файлов, которое можно осуществлять по FTP и в любых объёмах, пока не закончится место на диске. Все скопированные фотографии добавляются в базу данных автоматически. Кстати, это будет легко и для непродвинутых пользователей, ибо даже виндовый Проводник может работать с FTP серверами;.* все метаданные Название и теги фотографии (название, теги) сохраняются в именах файлов, при этом, благодаря созданию символических ссылок на файлы, отсутствуют проблемы при запросе файлов с именами в русских кодировках;время создания извлекается из EXIF-метаданных и метаданных видео.* резервное Резервное копирование просто до безумия — достаточно зайти на сервер по FTP и слить к себе все файлы;.* точно Точно так же просто дать доступ на скачивание всех фотографий кому-либо, заведя отдельную учётную запись FTP;.* и И точно так же просто дать доступ на добавление фотографий кому-либо, не ставя под угрозу собственную безопасность — необходимо завести отдельную учётную запись FTP для подкаталога домашней директории фотогалереи, а в название самой директории включить теги, которыми будет автоматически помечено всё содержимое, и положить в него недоступный на запись через FTP файл «dirinfo» с заданием (по желанию) название кодировки имён файлов и/или автоматически проставляемых на все фотографии подкаталога тегов;* фотографии Фотографии масштабируются по алгоритму Lanczos с использованием программы ImageMagick — это означает качество;* система рассчитана на любое количество галерейImageMagick / GraphicsMagick — иными словами, управляемых одним приложением;* в описании альбома можно пользоваться простым wikiобразным синтаксисом для форматирования текста;«качественные миниатюры»!* Лично мне гораздо удобнее держать мою фотогалерею расположена расположенной на моём сайтесвоём сервере, а не на некотором неизвестном стороннем фотохостинге.* Стабильное по датам разбиение всей фотогалереи на страницы, идентификация фотографий по именам, гламурненький дизайн, несколько размеров фото на выбор.
Система управления фотогалереями [[Vitaphoto]] написана на языке [[Perl]] 5 с использованием 5 и может запускаться в разных конфигурациях — как простой отдельный HTTP-сервер, под CGI/FastCGI, под управлением запатченного модуля [http://nginx.ru/ nginx] ngx_http_perl_module и модулей Apache 2 .x [[http://perl.apache.org/ mod_perl]] 2.x] или Apache 1.x [http://perl.apache.org/docs/1.0/guide/index.html mod_perl 1.x]. Я старался создать простую и удобную систему со вменяемым исходным кодом. Вменяемым, кстати, исходный код стал не сразу, а только в версии 1.2, написанной в районе конца февраля — начале марта 2008 года. <s>И то не сталА может, только в 1.</s> 4 (2010 год). :-) Кроме того, мне очень близки идеи Лэрри Уолла, в частности TMTOWTDI (There’s More Than One Way To Do It — «Это можно сделать по-разному»), а также «приятно быть важным, но куда важнее быть приятным». Возможно, они тоже наложили свой отпечаток на систему.
<tab sep=tab class=simpletable head=top>
Есть комменты. {{handy}}
… Но в В них есть разметка-"виласипет" (самодельная), можно сказать её нет никакой разметки. {{handy|no}} Использовать Wiki-разметку, опять-таки, из MediaWiki.… Комменты хранятся отдельно, сбоку, в базе. {{handy|no}} Неплохо бы как-то приспособить к этому страницы обсуждения [[{{SITENAME}}]].
Текстовые части дизайна выглядят очень грустно, «нетипографично». {{handy|no}} Тексты форматировать через [[{{SITENAME}}]].
Голосование («+» и «-» отдельно). {{handy}} {{ok}}Лог голосования хранится в базе. {{handy|no}} Хранить его в файле. Это будет и бэкап.{{ok}}Своя Отдельная база пользователей , и нет регистрации. {{handy|no}} {{ok}} Авторизоваться по базе [[{{SITENAME}}]]. Для прозрачной глобальной аутентификации также нужно можно создать расширение MediawikiMediaWiki.Нет сортировки по дате, извлекаемой из EXIF. {{handy|no}} {{ok}} Добавить её.Нет RSS-лент. {{handy|no}} Добавить их — на каждый альбом.Код веб-приложения так себе организован. {{handy|no}} Перетащить все альбомы, желательно также на [[Sway Solstice]]обсуждения фотографий.… Sway::TagAlbum и Sway::TagEntry — ужосНет выборки по дате. {{handy|no}} Перетащить на [[Funq]].Приложение не расширяемое. {{handy|no}} Добавить hook’ов на манер MediaWiki, так как MediaWiki доказывает, что подход работает.Нет выборки по дате. {{handy|nook}} Добавить её. Как для отдельной фотографии, так и для множества.Язык булевых запросов по тегам, реализованный в базе на PL/SQL. {{handy|no}} Изврат кошмарный. Избавиться. Перетащить либо на софтовую реализацию, либо на join’ы.Нет ссылок на предыдущую/следующую страницу в альбоме. {{handy|no}} {{ok}} Добавить их, а текущие <nowiki>"<" и ">" переименовать в "<<" и ">>"</nowiki>.При обновлении меняются ВСЕ страницы, так как разбиение — по числу фотографий. {{handy|no}} Сделать навигацию по датам, а не страницам. Если внутри даты окажется много фотографий — в идеале разбивать их на временные интервалы. В неидеале — забить.Есть «альбомы», нет «облаков тегов». {{handy|no}} {{ok}} Сделать удобную навигацию по тегам и вложенным тегам, про отдельные «альбомы» забыть: '''[[Vitaphoto: Облака тегов]]'''.Ссылки на альбомы «нечеловекопонятны». {{handy|no}} Убрать сущность «альбом» вообще к чёртовой матери. Оставить теги + наборы тегов. '''[[Vitaphoto: Ссылки]]'''.Навигация альбомов в альбомах по страницам. {{handy|no}} Лучше ; при обновлении меняются ВСЕ страницы, так как разбиение — по дате и если внутри даты очень много фотографий — по времени.Масса галерей в одной БД усложняет кодчислу фотографий. {{handy|no}} Для дополнительной галереи гораздо проще создавать дополнительную БД.Возможность сменить кодировку имён файлов для подпапки. {{handyok}} Возможность автоматического теггирования файлов в подпапкеСледуя общей идеологии («скажи синтетическим ключам НЕТ») — лучше по дате. {{handy}} Необходимость задавать эти 2 свойства в файле <tt>dirinfo</tt>В модном виде — такой скроллер, типа. {{handy|no}} Брать их из имени папкиВажный момент: «Имя_Папки в ссылке на диапазон дат (АвтоТеги, KOI8-Rесли на страницу влезают несколько дат)».Невозможность жестоко ликвидировать файл должна присутствовать минимальная из базы — этих дат, чтобы при удалении только ставится флагвозможном добавлении новых дат на ту же страницу ссылка не менялась. {{handy|no}} УчитываяЕщё важный момент: на главной странице чуть другой механизм выбора фотографий (не от начала по датам, что симлинки — в жопу, флаг «удалён» — тоже в жопуа от конца по датам). Просто удалять и всё…… Но тогда придётся заново масштабировать переименованные файлыСтатистика просмотров собирается, но не отображается. {{handy|no}} Ждать окончания очередной цепочки событийОтображать (по фотографии, и удалять только в её конце, так как при переименовании гарантированно придёт два события, а не одно.по тегу)!Размер миниатюр в альбомах фиксирован. {{handy|no}} {{ok}} Сделать кнопочки +/- для переключения размеров — «маленький», «средний», «большой».Некрасиво выглядят «вертикальные» фотографии в общем потоке… {{handy|no}} Эту проблему решать сложнее… Можно сделать любопытную штуку: JS{{ok}} Просто располагать все фотографии в «плавающем» порядке с равными '''интервалами'''.Описания альбомов находятся где-слайдерто сильно в жопе, регулирующий случайные сдвиги фотографий :) получитсявнизу. {{handy|no}} {{ok}} Переделать дизайн на флоаты, что их как бы немножко раскидываетописания альбомов минимизировать, и можно управлять степенью этогоибо нет от них толку.
Есть диафильмы. {{handy}}
… Но миниатюры в них крупноваты и всего 3 фото. {{handy|no}} Показывать диафильм мельче и справа, а не сверху.
… Кнопки влево-вправо двигают диафильм, а не переключают фото. {{handy|no}} Добавить мелкие полупрозрачные кнопки по краям диафильма — они пусть двигают диафильм. Большие влево-вправо оставить вверху фото и пусть они ведут на другие фото.
</tab>
Версия [[Vitaphoto]] 1.3 соответствует 6 сентября 2008 года. [{{SVN|vitaphoto/release/1.3}} Исходные коды 1.3], [{{SVN|vitaphoto/release/1.31}} исходные коды 1.31].
* Язык запросов по тегам, то есть, чтобы была позволена не только логическая операция «И», а также «ИЛИ» и «НЕ»; автоматическое вычисление вхождения альбома в альбом (используется приведение выражения к ДНФ);
** То есть, можно задавать логические выражения (в стандартном базисе :-D) над тегами. Это могут делать все на [http://vmx.yourcmc.ru/s/vitaphotolegacy-static/search.htm странице поиска]. Автоматическое вычисление вхождения подальбома в альбом (сравнение булевых функций, заданных формулами O_o);
* Голосование «за» и «против» фотографий, с возможностью привязки к комментариям;
* Онлайн-конфигурация своей фотогалереи (надо быть root’ом);
* Дальнейшие усовершенствования архитектуры кода (в первую очередь Web-приложения).
Версия [[Vitaphoto]] 1.2 соответствует 8 марта 2008 года. [{{SVN|vitaphoto/release/1.2}} Исходные коды].
* Ведение простой статистики в БД.
Версия [[Vitaphoto]] 1.1 соответствует 17 августа 2007 года. [{{SVN|vitaphoto/release/1.1}} Исходные коды].
* Чтение EXIF информации из фотографий.
Версия [[Vitaphoto]] 1.0 соответствует 19 июля 2007. [{{SVN|vitaphoto/release/1.0}} Исходные коды].
[[Категория:Sway]]
[[Категория:РазработкаАрхив]]