Это устаревшая версия, больше не поддерживается, текущая версия 1.1.3
Это форк проекта COPS 0.90 (Calibre OPDS PHP Server) для работы с базой программы MyHomeLib и локальными архивом Lib.Rus.Ec [FB2], флибусты или пользовательскими библиотеками, которые ведутся в программе.
MyHomeLib и архив библиотеки в данную сборку не включены! Их можно найти на торрентах поиском в гугле по запросу "lib.rus.ec myhomelib fb2".
Статус форка - бета.
На слабых серверах работает медленно, на Synology 213+ стартовый экран при первом запуске отдаёт за 3 секунды, на Synology 212j до 1 минуты (на нечищеной базе, читаем ниже)! Поиск по названию на 213+ 2-30 секунд, в зависимости от количества найденного, категорий поиска и установленных фильтров.
0.9.0.fb20140506. Первая версия релиза форка, отданная на сторону :)
0.9.0.fb20140512.
Исправлены ошибки:
Ощибка в функции getBooksByStartingLetter, возвращал неверное количество книг, из-за этого в подвале появлялись неработающие ссылки
Добавлен вызов sqliteCreateCollation('MHL_SYSTEM_NOCASE', ...), это недокументированная функция, отсутствие ее вызова приводило к падению программы на некоторых версиях PHP
Починил поиск из OPDS FBReader
Добавлено:
Параметр $config['myhomelib_database'] для имени базы данных. Задел под флибусту
Параметр $config['use_fb2_disk_cache']. Сохранять ли кеш данных на диске сервера. Имеет смысл ставить в TRUE только если $config['get_metadata_from_fb2'] также TRUE.
Параметр $config['cops_use_fb2_zip'] Упаковывать книги FB2 в zip-архив при выгрузке.
0.9.0.fb20140522.
Добавлено:
Все запросы проверены и приведены к совместимости с MySQL. Соответственно добавлены параметры в $config для использования базы MySQL. Конвертер уже есть, но пока не публичный.
Небольшая оптимизация функции поиска.
Из всех запросов удален литерал "Books.IsDeleted=0", вместо этого добавлен параметр $config['cops_global_del_filter']. Отмена фильтрации по удаленным на медленных машинах сильно ускоряет запросы.
Добавлен скрипт clear_db.php. Можно использвать при условии, что COPSFB использует КОПИЮ базы librusec_local_fb2.hlc2. Физически удаляет записи, помеченные как удаленные (Books.IsDeleted=1). Может удалить все книги с неиспользуемыми вами языками. Удаляет неиспользуемые COPSFB индексы. Сжимает (vacuum) базу. Все это позволяет при работе программы не использовать фильтры ( where ) по удаленным и по языку. Ускоряет работу программы в разы.
0.9.0.fb20140617.
Исправления:
Полностью переписан парсер fb2. По идее, должно теперь работать несколько быстрее, описание книги теперь вытаскивается корректно, перестал падать на невалидных fb2.
Бэкпорт функции поиска из 1.0RC
Правки для совместимости с OPDS-клиентом AlReader.Droid
Добавлена функция очистки дискового кеша. Вызывается только при загрузке книги. Для ее работы два новых параметра в конфиге: $config['max_cache_size'] и $config['cache_clear_size']
Исправлено имя загружаемого файла, если user agent - Internet Explorer.
0.9.0.fb20140720.
Внимание! В этой версии изменены параметры настройки.
1. Все настройки, связанные с путями, вынесены в файл config_local.php.
2. $config['myhomelib_librusec_path'] больше не используется, удален.
3. $config['calibre_directory'] используется для указания директории с книгами (архивами книг).
4. $config['myhomelib_database'] теперь должен указывать не только имя БД, а путь и имя БД MyHomeLib, например $config['myhomelib_database'] = './lib/librusec_local_fb2.hlc2'.
Прошу прощения у всех, кто ставит update!
Изменения:
checkconfig.php теперь проверяет настройки путей, спецефичные для форка.
Теперь поддерживаются пользовательские библиотеки MyHomeLib, но пока только fb2.
Один экземпляр COPSFB может поддерживать несколько библиотек. Но все библиотеки должны быть одного типа - либо MyHomeLib, либо Calibre.
0.9.0.fb20141003.
Добавлено:
Поддержка библиотеки Траума. Тестировал на версии traum_library_2-33_all_ru, т.е. поддерживаются FB2 и non-FB2 книги.
Новый параметр в настройках $config['cops_use_translit'] - переводить имена файлов при загрузке в транслит.
0.9.0.fb20150215.
Исправления:
Отправка книг по почте теперь работает и для MyHomeLib-библиотек. Должен быть правильно настроен параметр $config['cops_mail_configuration'].
0.9.0.fb20160519.
Добавлено:
Новый параметр в настройках $config['cops_global_filter'] - глобальный фильтр для базы. SQL выражение, накладывающее фильтр на все выборки из БД. Можно использлвать, например, чтобы посмотреть обновления с заданной даты:
$config['cops_global_filter'] = "date(books.[UpdateDate]) > date('2015-04-01')";
В load_inp.php добавлен параметр $skip_genres, список жанров, которые не надо грузить.
Исправления:
В opds_feed выдавались записи с пустым ID, что приводило к проблемам на некоторых OPDS клиентах.
Несколько мелких исправлений в load_inp.php
0.9.0.fb20180422.
Добавлено:
Новый параметр в настройках $config['cops_series_order'] - Сортировка книг при выводе по автору по сериям или алфавиту
Исправления:
Несколько мелких исправлений в load_inp.php для корректной загрузки последнего обновления либрусек.
Требования при установке те же, что и для исходного COPS:
PHP 5.3 / 5.4 with GD image processing & SQLite3 support;
web server with PHP support (Nginx, Apache, Cherokee, Lighttpd, IIS);
кроме того:
+ наличие на сервере внешнего разархиватора для zip, т.к. unzip в php не работает с архивами больше 2ГБ.
+ наличие на сервере (или "видимой" с сервера) базы данных MyHomeLib
+ наличие на сервере (или "видимой" с сервера) библиотеки
При работе над форком тестировалось под Windows 7/8.1 на XAMPP Version: 1.8.3 (Apache/2.4.7 (Win32) PHP/5.5.6) и на Synology 213+ (DSM 4.3-3810 Update 1 и 5.0-4482). Установка пакета аналогична прототипу и описана автором http://blog.slucas.fr/en/oss/calibre-opds-php-server.
Параметры конфигурации описаны на следующей странице.