Аудио-каталог 1.04

PHP-скрипт для аудио-каталога

Описание работы

Панель администратора

Внешний вид панели администратора аудио-каталога.

Внешний вид панели администратора аудио-каталога Панель администратора состоит из семи вкладок:

Поступления - работа с хранилищем музыки на сервере (обработка поступлений и импорт в базу);

Закачка дополнений - закачка обложек, фотографий (обязательно после каждой сессии импорта);

Редактор альбомов - редактирование уже занесенных в БД альбомов;

Редактор персоналий - редактирование информации об исполнителях, группах;

Редактор БД - состоит из двух вкладок:

  1. Пользователи - редактирование учетных записей пользователей, модераторов и администраторов;
  2. Жанры - редактирование жанров и стилей;

Утилиты - утилиты по очистке "мусора", или дополнительной обработке информации;

Сервис - данный раздел панели управления позволяет скачать обновления каталога с сервера разработчика.

Вкладка "Поступления"

При открытии панели управления аудио-каталога производится сканирование содержимого папок указанных в файле конфигурации и ID3 тегов аудио файлов. Все содержимое выводится в виде структуры папок. Каждому альбому должна соответствовать отдельная папка.

Над структурой папок расположено меню, состоящее из пяти пунктов:

Обновить - нажатие приводить к повторному сканированию папок (например в случае, если поступление новых альбомов происходит в реальном времени, либо функция автоматического сканирования папок и ID3 тегов отключена в файле конфигурации аудио-каталога).

Cпарсить ID3-теги - нажатие приводит к выводу содержимого ID3 тегов аудио файлов альбома в соответствующие поля таблицы "Треки".

Автопоиск - нажатие приводит к поиску ссылок на сайтах allmusic.com, ozon.ru, freedb.org (настраивается в файле конфигурации) для всех альбомов отображаемых в панели администратора. При автопоиске важно иметь правильную информацию в полях Название альбома и Исполнитель, т.к. результат поискового запроса сортируется для максимального приближения к значениям этих полей.

Автопарсинг - нажатие приводит к заполнению полей Обложка, Название альбома, Исполнитель, Год, Жанр, Описание (в том случае если они пусты) у всех альбомов. Предварительно необходимо произвести Поиск или Автопоиск на сайтах allmusic.com, ozon.ru, freedb.org ссылок на описание и выбрать каждому альбому наиболее подходящую ссылку для парсинга.

Принять готовые - нажатие перемещает полностью обработанные (готовые к импорту в базу) альбомы из панели администратора в базу данных музыкального каталога. При этом может происходить и физическое перемещение папки с альбомом (настраивается в файле конфигурации).

В простейшем случае последовательность действий на вкладке "Поступления" такая:

  1. Кликнуть по пункту меню "Обновить"
  2. Кликнуть по пункту меню "Cпарсить ID3-теги"
  3. Кликнуть по пункту меню "Автопоиск"
  4. Открыть последовательно каждый альбом (кликнуть на путь к папке альбома) и выбрать в правой части экрана одну из найденных ссылок.
  5. Кликнуть по пункту меню "Автопарсинг"
  6. Открыть последовательно каждый альбом и визуально проверить корректность полученных данных во всех полях и при необходимости переименовать треки. Для визуализации текущего состояния папки применяются иконки статуса и предупреждений, которые сразу указывают на проблемные места.
  7. Кликнуть по пункту меню "Принять готовые"
  • Для того чтобы альбом (папка) не обрабатывалась при нажатии на один из пунктов меню достаточно предварительно снять зеленую галочку с папки.

После открытия альбома появится редактируемая подробная информация об альбоме.

Открытие альбома для обработки

В правом верхнем углу находится меню состоящее из четырех пунктов:

Автопоиск - действие аналогично одноименному пункту меню вкладки "Поступления" за исключением того, что оно распространяется не на все альбомы, а только на выбранный в данный момент;

Парсить треки - действие аналогично пункту меню "Cпарсить ID3-теги" вкладки "Поступления" за исключением того, что оно распространяется не на все альбомы, а только на треки выбранного в данный момент альбома;

Парсить сайты - нажатие приводит к парсингу информации с сайта ссылка на который находится в поле "url:";

Импортировать в БД - нажатие перемещает полностью обработанный (готовый к импорту в базу) альбом из панели администратора в базу данных музыкального каталога. В отличие от пункта меню "Принять готовые" вкладки "Поступления" позволяет принудительно импортировать в базу альбом который в соответствии с выбранными настройками файла конфигурации готовым для импорта не является.

Ниже меню расположены две вкладки "Поиск" и "Спарсено"

Поиск Спарсено

Основная функция вкладки поиск: выбор ссылки по которой будет собираться (парситься) информация о текущем альбоме. Возможные варианты для выбора отображаются в виде фотографии обложки и краткого описания (названия исполнителя и альбома, год и жанр). Ссылки могут быть получены как в результате автопоиска, так и при поиске вручную. В отличие от автопоиска, когда сайты заданы в файле конфигурации, в ручном режиме можно выбирать сайты для поиска путем установки или снятия зеленых галочек рядом с названиями соответствующих сайтов. Затем нужно ввести искомое слово или фразу в строку поиска и нажать кнопку "Искать!".

 Кнопка "Парсить прямо сейчас". По своему действию эквивалентна выбору сылки для парсинга и последующему выбору пункта меню "Парсить сайты".

На вкладке "Спарсено" отображаются все данные которые были получены по выбранной ссылке в результате парсинга. В файле конфигурации задается приоритетность замены содержимого полей в зависимости от того с какого сайта получены данные поэтому не все спарсенные с сайта данные автоматически помещаются в соответствующие поля подробной информации об альбоме. Таким образом вкладка "Спарсено" дает возможность сравнить содержимое одинаковых полей альбома полученных например из тегов или предыдущего парсинга сайтов и принять окончательное решение какая информация более корретна.

При помощи кнопок со стрелкой << можно заменять содержимое полей подробной информации об альбоме содержимым соответствующих полей вкладки "Спарсено".

Названия треков с номерами можно импортировать из панели поиска двумя способами:

  • <<A,B,C.. по названиям треков (в этом случае очень важно чтобы количество треков с обеих сторон совпадало)
  • <<1,2,3.. по-порядку
Отредактировать информацию о треках можно вручную, или воспользоваться кнопоками   для установки значений сразу для всех треков.
Для удобства восприятия измененная, но не сохраненная информация выделяется желтой рамкой.

Таблица треки

Для завершения редактирования треков существуют следущие команды:
 Кнопка "Применить": сохраняет измененную информацию в базе данных
 Кнопка "Отменить": отменяет все не сохраненные изменения
 Кнопка "Сохранить в ID3-теги": сохраняет измененную информацию в базе данных и в ID3-тегах файлов
 Кнопка "Переименовать файлы": переименовывает файлы согласно маске переименования заданной в файле конфигурации.
 Кнопка "3 в 1": Эквивалентна последовательному нажатию "Применить", "Сохранить в ID3-теги", "Переименовать".

В процессе обработки альбома по мере заполнения полей и переименовывания треков будут происходить изменения в колонках "Статус" и "Предупреждения" основной таблицы вкладки "Поступления".

 Блок зеленных/серых иконок в колонке "Статус" общей таблицы наглядно показывает полноту подготовки информации.
 Блок желтых иконок в колонке "Предупреждения" показывает недостатки подготовки.

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

Вкладка "Закачка дополнений"

Закачка дополнений необходима после каждой сессии добавления альбомов. Она заключается в получении локальной копии обложек альбомов, фотографий персоналий и внесения в базу информации о персоналиях.

Самый простой вариант - нажать на кнопку "Закачать все". Таким образом скрипт скачает все необходимое автоматически и уменьшит обложки альбомов до заданных разрешений.

Вкладка "Редактор альбомов"

Эта вкладка предназначена для работы с альбомами после добавления их в базу данных аудио-каталога. Здесь можно дополнить или отредактировать информацию об альбомах либо удалить ошибочно добавленный трек или весь альбом.

Редактор альбомов

Выбор альбома для редактирования производится в списке расположенном слева. По умолчанию спиок отсортирован по убыванию ID альбома, т.е. первым сверху будет альбом добавленный последним. Если необходимо найти альбом или исполнителя с момента помещения в базу каталога которых прошло длительное время лучше всего воспользоваться фильтром вверху страница. Нужно ввести в поле "Имя содержит" название или и его часть после чего нажать кнопку "Применить".

В правой верхней части находится меню состоящее из пяти пунктов:

Открыть доступ / Закрыть доступ (скрыть) - пункт меню имеет два значение. "Открыть доступ" - нажатие приводит к тому, что альбом становится видимым для обычных пользователей аудио-каталога. "Закрыть доступ (скрыть)" - нажатие приводит к тому, что альбом помечается как скрытый и отображается только пользователям с правами администратора/модератора;

Удалить альбом и файлы - нажатие приводит к удалению записи об альбоме из базы данных аудио-каталога и физическому удалению файлов. Скрипт использует для удаления пути к файлам указанные в колонке "Путь" таблицы "Треклист" поэтому если пути вручную были некорректно отредактированы либо остались пустми есть риск потерять файлы не предназначенные для удаления;

Удалить альбом только из БД - нажатие приводит к удалению записи об альбоме из базы данных аудио-каталога. При этом сами аудио файлы остаются там где они на текущий момент и хранятся;

Обновить инф. о файлах - нажатие приводит к считыванию информации о файлах, расположенных в каталоге на который указывает путь в поле "Каталог с файлами", и обновлению полей таблицы Треклист полученными данными;

Обновить - нажатие приводит к обновлению страницы.

Вкладка "Редактор персоналий"

На этой вкладке можно отредактировать информацию о персоналиях и группах (музыкальных коллективах), добавить ссылки на фотографии для закачки или повторно поискать информацию о персоналии или группе на сайте ozon.ru по прошествии некоторого времени (в случае обновления описания на сайте). Редактор персоналий

В том случае, если из-за различия транскрипции названий зарубежной группы или исполнителя в базе данных содержатся дубликаты записей можно произвести их объединение. Например на выше приведенном скриншоте выбран Сергей Шнуров, а справа с столбце "Дубликаты/Похожие" имеется две записи: Сергей Шакуров и Сергей Онуфриев. В данном конкретном случае объединять персоналии не нужно, просто рассмотрим последовательность действий:

  1. Находим персоналию (исполнителя или группу) у которого есть дубликаты. Сделать это можно вручную или используя фильтр: оставить поле "Имя содержит" пустым, установить галочку рядом с надписью "С похожими/дубликатами" и нажать кнопку "Применить". Обратите внимание, что поиск производится не по всем персоналиям в базе, а только тем список которых отображается в левой части экрана, т.е. постранично.
  2. Выбираем персоналию, визуально оцениваем насколько название в полях "Имя (рус.)" и "Имя (англ.)" соответствуют предполагаемым дубликатам, отображаемым в правой части экрана в столбце "Дубликаты/Похожие".
  3. Кликаем по названию персоналии в столбце "Дубликаты/Похожие" (выделено синим цветом) и оцениваем где по нашему мнению описание лучше (правильнее транслитерация и т.д.), т.е принимаем решение запись с каким ID останется в базе в результате объединения. (Персоналия выбранная первой переместиться в столбец "Дубликаты/Похожие", поэтому к ней в любой момент можно вернуться. Выбрана должна быть правильная запись, а в столбце "Дубликаты/Похожие" лишние (неправильные) записи).
  4. Кликаем по кнопке расположенной слева от номера ID неправильной записи находящейся в столбце "Дубликаты/Похожие".
 Нажатие на эту кнопку приводит к тому, что текущая (открытая) персоналия поглощает (удаляет запись из базы данных и переписывает к себе данные о проектах из удаленной записи) находящуюся рядом с этой кнопкой в столбце "Дубликаты/Похожие".

Вкладка "Редактор БД"

На этой вкладке осуществляется управление пользователями. Для того чтобы открыть информацию о пользователе для редактирования следует кликнуть по его логину. Теперь можно изменить логин, адрес e-mail, адрес IP (в случае использования ограничения доступа по IP адресам), установить группу (т.е. права пользователя), отключить аккаунт либо сменить пароль.

Вкладка "Утилиты"

На этой вкладке расположены несколько команд:

  • Очистить фотографии с внешними ссылками - нажатие приводит к удалению ссылок на фотографии локальные копии которых сделать не удалось (битые ссылки).
  • Удалить не связанные с объектами персоналии - нажатие приводит к удалению из базы персоналий все альбомы которых были удалены.
  • Пересчет кеша локальных рейтингов (при изменении настроек или впервые) - нажатие приводит к расчету локального рейтинга каждого альбома среди пользователей каталога на основании выставленных ими оценок.

Вкладка "Сервис"

Нажатие приводит к проверке наличия более свежей версии скрипта аудио-каталога на сервере абновлений. Выводится информация о текущей версии и доступной новой версии с указанием изменений. Для установки обновления следует нажать кнопку "Установить". Обновление доступно только для пользователей с неистекшей лицензией.