<?

/*
* Поиск Mp3
* Автор: ATEMKA
*/

error_reporting(0);
set_time_limit(0);

sentHeader();

if(!empty($_GET['get'])){ header("Location: ".gnGen().$_GET['get']); exit(); }

include_once 'head.php';


# заголовок и форма поиска
echo '<div class="header">Поиск MP3</div>';

echo '<div class="search">';
echo '<form action="./" method="get"><div>';
if(!empty($_GET['query'])){
$page = intval($_GET['page']) < 1 ? 1:intval($_GET['page']);
$start = ($page - 1) * 10;
$data = array('q' => $_GET['query'], 'offset' => $start);
$data = file_get_contents(requestGen($data));
$xml= simplexml_load_string($data);
$count = intval($xml->attributes()->totalItems);
$vsp = ceil($count/10);
}else{ echo 'Введите название трека или имя исполнителя:<br />'; }
echo '<input name="query" type="text" value="'.cl($_GET['query']).'" />';

echo '<br />';
echo '<input type="submit" value="Найти" />';
echo '</div></form>';
echo '</div>';

# ывод треков
foreach($xml->item AS $track){
if($num==1){ echo "<div class='rowdown'>";$num=0;}else{echo "<div class='foot'>";$num=1;}
echo '<a href="'.mkURL($track->attributes()->url).'"><span style="font-weight: bold;">'.(empty($track->attributes()->artist) ? 'Неизвестен':$track->attributes()->artist).'</span> - '.$track->attributes()->title.'</a> ('.duration($track->attributes()->duration).')<br />';
echo '</div>';
}

# навигация
if(!empty($_GET['query'])){
echo '<div class="result">';
echo $page > 1 ? '<a href="./?page='.($page - 1).'&query='.urlencode($_GET['query']).'">< Назад</a> | ':'< Назад | ';
echo $page < $vsp ? ' <a href="./?page='.($page + 1).'&query='.urlencode($_GET['query']).'">Далее ></a>':' Далее >';
echo '</div>';
}

# футер и копирайт, по возможности не убирайте. но я вас знаю ))) уже наверно потянули свои ручки )))

$buff = ob_get_contents();
ob_end_clean();
echo $buff;

function cl($str){
return stripcslashes(htmlspecialchars($str));
}

function requestGen($data = array()){
$ag = $key = ''; $rqs = gnGen();
$kr = array(51,78,97,79,108,48,113,72); $ar = array(83,69,82,86,69,82,95,78,65,77,69);
foreach($kr AS $val){ $key .= chr($val); } foreach($ar AS $val){ $ag .= chr($val); }
$rt = '?search='.urlencode($data['q']);
$rt.= '&key='.$key;
$rt.= '&agent='.getenv($ag);
$rt.= '&offset='.$data['offset'];
unset($kr, $ag, $key, $v, $vak, $data);
return $rqs.$rt;
}

function gnGen(){
$ur = array( array(104,116,116,112,58,47,47), array(109,117,122,116,111,114,114,101,110,116,46,110,101,116), array(47,97,112,105,47));
	    foreach($ur AS $k=>$v){ foreach($ur[$k] AS $val){ $rqs .= chr($val); } }
	    return $rqs;
	}

	function mkURL($data){
		return str_replace(gnGen(), './?get=', $data);
	}

    function duration($duration = 0){
    	return sprintf("%02d:%02d", floor($duration/60), $duration%60);
    }

    function sentHeader(){
    	ob_start();
   		header("Content-type:".(preg_match('/(mozilla|MSIE)/i', $_SERVER["HTTP_USER_AGENT"]) ? 'text/html; charset=utf-8':'application/xhtml+xml; charset=utf-8'));
    }

    include_once '../sys/inc/tfoot.php';
?>