Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jappix/jappix.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'server/music-search.php')
-rw-r--r--server/music-search.php109
1 files changed, 0 insertions, 109 deletions
diff --git a/server/music-search.php b/server/music-search.php
deleted file mode 100644
index b1c7cee7..00000000
--- a/server/music-search.php
+++ /dev/null
@@ -1,109 +0,0 @@
-<?php
-
-/*
-
-Jappix - An open social platform
-This is the Jappix music search script
-
--------------------------------------------------
-
-License: AGPL
-Author: Valérian Saliou
-
-*/
-
-// PHP base
-define('JAPPIX_BASE', '..');
-
-// Get the needed files
-require_once('./functions.php');
-require_once('./read-main.php');
-require_once('./read-hosts.php');
-
-// Prepare application
-enableErrorSink();
-hideErrors();
-compressThis();
-
-// Not allowed for a special node
-if(isStatic() || isUpload()) {
- exit;
-}
-
-// If valid data was sent
-if((isset($_GET['searchquery']) && !empty($_GET['searchquery'])) && (isset($_GET['location']) && !empty($_GET['location']))) {
- // Set a XML header
- header('Content-Type: text/xml; charset=utf-8');
-
- // Get the values
- $searchquery = $_GET['searchquery'];
- $location = $_GET['location'];
-
- // Jamendo search?
- if($location == 'jamendo') {
- exit(readUrl('http://api.jamendo.com/get2/name+id+duration+url/track/xml/?searchquery='.urlencode($searchquery).'&order=searchweight_desc'));
- }
-
- // Local music search
- $xml = '<data>';
- $searchquery = strtolower($searchquery);
-
- // Escape the regex special characters
- $searchquery = escapeRegex($searchquery);
-
- // Search in the directory
- $repertory = '../store/music/';
- $scan = scandir($repertory);
-
- foreach($scan as $current) {
- // This file match our query!
- if(is_file($repertory.$current) && $current && preg_match('/(^|\s|\[)('.$searchquery.')(.+)?(\.(og(g|a)|mp3|wav))$/i', strtolower($current))) {
- // Get the basic informations
- $title = preg_replace('/^(.+)(\.)(og(g|a)|mp3|wav)$/i', '$1', $current);
- $url = $location.'store/music/'.$current;
- $ext = getFileExt($current);
- $id = md5($url);
-
- // Get the MIME type
- if($ext == 'mp3') {
- $type = 'audio/mpeg';
- } else if($ext == 'wav') {
- $type = 'audio/x-wav';
- } else {
- $type = 'audio/ogg';
- }
-
- // Get the advanced informations
- $locked_title = $title;
- $artist = '';
- $source = '';
-
- $title_regex = '/^(([^-]+) - )?([^\[]+)( \[(.+))?$/i';
- $artist_regex = '/^(.+) - (.+)$/i';
- $source_regex = '/^(.+) \[(.+)\]$/i';
-
- if(preg_match($title_regex, $locked_title)) {
- $title = preg_replace($title_regex, '$3', $locked_title);
- }
-
- if(preg_match($artist_regex, $locked_title)) {
- $artist = preg_replace($artist_regex, '$1', $locked_title);
- }
-
- if(preg_match($source_regex, $locked_title)) {
- $source = preg_replace($source_regex, '$2', $locked_title);
- }
-
- // Generate the XML
- $xml .= '<data><track><name>'.htmlspecialchars($title).'</name><artist>'.htmlspecialchars($artist).'</artist><source>'.htmlspecialchars($source).'</source><id>'.htmlspecialchars($id).'</id><url>'.htmlspecialchars($url).'</url><type>'.$type.'</type></track></data>';
- }
- }
-
- // End
- $xml .= '</data>';
-
- // Return the path to the file
- exit($xml);
-}
-
-?>