View source
<?php
use Drupal\Core\Url;
define('GETID3_RECOMMENDED_VERSION', '1.9.9');
function getid3_help($route_name) {
switch ($route_name) {
case 'help.page.getid3':
return '<p>' . t("To use this module you'll need to <a href='!download-link'>download the library</a> from the <a href='!info-link'>getID3 website</a> and extract the contents into the module's getid3 directory. Currently, the recommended version of the getID3 library is %recommended-version.", array(
'!download-link' => Url::fromUri('http://prdownloads.sourceforge.net/getid3'),
'!info-link' => Url::fromUri('http://getid3.org/'),
'%recommended-version' => GETID3_RECOMMENDED_VERSION,
)) . '</p>';
}
}
function getid3_load($display_warning = TRUE) {
$getid3_path = getid3_get_path();
if (file_exists($getid3_path . '/getid3.php') && file_exists($getid3_path . '/write.php')) {
if (!defined('GETID3_HELPERAPPSDIR')) {
define('GETID3_HELPERAPPSDIR', realpath($getid3_path . '/../helperapps') . '/');
}
include_once $getid3_path . '/getid3.php';
$getid3 = new getID3();
require_once $getid3_path . '/write.php';
return method_exists($getid3, 'version') || defined('GETID3_VERSION');
}
return FALSE;
}
function getid3_instance() {
$id3 = NULL;
$id3_lib_available = getid3_load();
if ($id3_lib_available == FALSE) {
drupal_set_message(t("The getid3() module cannot find the getID3 library used to read and write ID3 tags. The site administrator will need to verify that it is installed and then update the <a href='!admin-settings-audio-getid3'>settings</a>.", array(
'!admin-settings-audio-getid3' => Url::fromRoute('getid3.config'),
)), 'error', FALSE);
return $id3;
}
$id3 = new getID3();
$id3->option_md5_data = FALSE;
$id3->option_md5_data_source = FALSE;
$id3->encoding = 'UTF-8';
return $id3;
}
function getid3_analyze($filepath) {
$info = array();
if ($id3 = getid3_instance()) {
$info = $id3
->analyze($filepath);
unset($id3);
}
return $info;
}
function getid3_get_path() {
$config = \Drupal::config('getid3.settings');
$path = $config
->get('path');
if (empty($path) || strlen($path) < 1) {
$path = 'libraries/getid3/getid3';
$config
->set('path', $path)
->save();
}
return $path;
}
function getid3_get_version() {
if (getid3_load() == FALSE) {
return NULL;
}
$getid3 = new getID3();
if (method_exists($getid3, 'version')) {
return $getid3
->version();
}
if (defined('GETID3_VERSION')) {
return GETID3_VERSION;
}
return NULL;
}