<?php
# 4ekiss (ICQ: 8311156);
include('design/head.php');
define('MP3', true);
include('sys/config.php');
include('sys/fnc.php');



if(isset($_GET['text']) && is_numeric($_GET['text'])){
# Текст песни

if(isset($_GET['query'])){

$query = 'query='.urlencode(str_replace(chr(0), '', (string)$_GET['query']));
isset($_GET['page']) ? $query.='&amp;page='.abs((int)$_GET['page']) : '';

if(isset($_GET['sort']) && $_GET['sort']=='1') $query.='&amp;sort=1';
if(isset($_GET['only']) && $_GET['only']=='1') $query.='&amp;only=1';

} else $query='';

$api = md5('76575883api_id=1886174lyrics_id='.$_GET['text'].'method=audio.getLyricstest_mode=1v=2.0'.$set['key']);
$xml = Send_Post('http://api.vkontakte.ru/api.php', 'api_id=1886174&lyrics_id='.$_GET['text'].'&method=audio.getLyrics&test_mode=1&v=2.0&sig='.$api, 'http://vkontakte.ru/app1886174');
$text = trim(simplexml_load_string($xml)->lyrics->text);

echo '<div>Текст песни</div><div>';

if(empty($text)) echo '<b>Текст отсутствует!</b>';
else echo str_replace("\n", '<br/>', $text);
echo '</div><img src="design/back.gif" alt="back"> <a href="?'.$query.'">Назад</a><br/>';

} elseif(isset($_GET['query']) && !empty($_GET['query'])){
# Поиск

if(isset($_POST['go'])) $page = (abs((int)$_POST['go'])-1)*10;
else $page = isset($_GET['page']) ? abs((int)$_GET['page']) : 0;

$query = str_replace(chr(0), '', (string)$_GET['query']);
$away = 'query='.urlencode($query);

if(isset($_GET['sort']) && $_GET['sort']=='1'){$sort=1; $away.='&amp;sort=1';} else $sort=0;
if(isset($_GET['only']) && $_GET['only']=='1') {$only=1; $away.='&amp;only=1';} else $only=0;

$i=0; while($i<$page+$set['num']) $i = $i+100;
if($page+$set['num']>100) $line = $page-$i+100;
else $line = $page;

$file = 'data/'.md5($query).'_'.$i.($sort==1 ? '_s' : '').($only==1 ? '_t' : '').'.dat';
$nums = 'data/'.md5($query).($sort==1 ? '_s' : '').($only==1 ? '_t' : '').'_n.dat';

if(!file_exists($file)){

$api = md5('76575883api_id=1886174count=100lyrics='.$only.'method=audio.searchoffset='.($i-100).'q='.$query.'sort='.$sort.'test_mode=1v=2.0'.$set['key']);
$xml = Send_Post('http://api.vkontakte.ru/api.php', 'api_id=1886174&count=100&lyrics='.$only.'&method=audio.search&offset='.($i-100).'&q='.$query.'&sort='.$sort.'&test_mode=1&v=2.0&sig='.$api, 'http://vkontakte.ru/app1886174');

$parse = simplexml_load_string($xml);
$num = (int)$parse->count;

if($num!=0){

$text = "";

foreach ($parse->audio as $song)
$text.=$song->artist.'~|~'.$song->title.'~|~'.date('i:s', (int)$song->duration).
'~|~'.$song->aid.'~|~'.$song->owner_id.'~|~'.(isset($song->lyrics_id) ? $song->lyrics_id : '')."~|~\r\n";

file_put_contents($nums, $num>1000 ? 1000 : $num);
file_put_contents($file, $text);

}
}

echo '<div class="search">
<b>Название</b>:<br/>
<form action="?" method="get">
<input type="text" name="query" value="'.check($query).'" />
<br/><b>Сортировать:</b><br/><select name="sort">'.($sort==1 ? '<option value="1">по длительности</option><option value="0">по дате</option>' : '<option value="0">по дате</option><option value="1">по длительности</option>').'
</select><br/><input name="only" type="checkbox" value="1" '.($only==1 ? 'checked="checked" ' : '').'/> <b> Только с текстом</b>
<br/><input type="submit" value="Поиск" /></form></div>';

if(file_exists($file)){

$songs = file($file);
$total = file_get_contents($nums);
$lines = count($songs);

if(file_exists('data/search.dat'))
$search = file('data/search.dat');
else $search = array();

$put = '<a href="?'.$away.'">'.check($query).'</a> ('.$total.')'."\r\n";

if(!in_array($put, $search)){
if(count($search)>4) unset($search[0]);
file_put_contents('data/search.dat', implode('', $search).$put);
}

if($line > $lines){$page = 0; $line=0;}
if ($lines < $line + $set['num']) $end = $lines;
else $end = $line + $set['num'];

echo '<div>Найдено <b>'.$total.'</b> аудиозаписей</div>';

for ($i = $line; $i < $end; $i++){

$info = explode('~|~', $songs[$i]);

echo '<div class="song"><img src="design/audio.gif" alt="song"> <b>'.$info[0].'</b> - '.$info[1].' ('.$info[2].')<br/>
<img src="design/download.gif" alt="load"> <a href="'.$info[3].'_'.$info[4].'.php">Просмотр</a>
'.(!empty($info[5]) ? ' <img src="design/text.gif" alt="text"> <a href="?text='.$info[5].($page!=0 ? '&amp;page='.$page : '').'&amp;'.$away.'">Текст песни</a>' : '').'</div>';

}

pages($page, $total, '?'.$away.'&amp;', $set['num']);

} else echo '<div>Аудиозаписи не найдены!</div>';

} else {
# Главная

echo '<div class="search">
<b>Название</b>:<br/>
<form action="?" method="get">
<input type="text" name="query" />
<br/><b>Сортировать:</b><br/><select name="sort"><option value="0">по дате</option><option value="1">по длительности</option></select>
<br/><input name="only" type="checkbox" value="1" /> <b> Только с текстом</b>
<br/><input type="submit" value="Поиск" /></form></div>';

if(file_exists('data/search.dat')){

$search = file('data/search.dat');

$total = count($search);

if($total>0){
echo '<div><b>Последние запросы:</b>';

for($i=0; $i<$total; $i++)
echo '<br/>'.$search[$i];
echo '</div>';
}
}
}

echo '<br /><br /><img src="../../images/act3.gif" width="7" height="10" alt="-" /> <a href="/">На главную</a>';
include('design/foot.php');
?>