Файл: onlinepoisk.wm-scripts.ru/controller/search.php
Строк: 158
<?php
use SymfonyComponentHttpFoundationRequest;
use SymfonyComponentHttpFoundationResponse;
use PagerfantaPagerfanta;
use PagerfantaViewDefaultView;
function strip_data($text) {
$quotes = array ("x27", "x22", "x60", "t", "n", "r", "'", ",", "/", "¬", ";", ":", "@", "~", "[", "]", "{", "}", "=", ")", "(", "*", "&", "^", "%", "$", "<", ">", "?", "!", '"', '\', '/', );
$text = trim( str_replace( $quotes, '', $text ) );
return $text;
}
$app->get('/search/{query}', function(Request $request, $query) use($app) {
$query = str_replace('+', ' ', $query);
$query = strip_data($query);
$ress=0;
$dest='block.php';
$pfile=fopen($dest,'r');
if (!$pfile) die("fail attempt to open file");
while (!feof($pfile)) {
$tempstr=fgets($pfile);
if (trim(mb_strtolower($tempstr, 'UTF-8'))==trim(mb_strtolower($query, 'UTF-8'))) $ress=1;
}
if ($ress!=1){
$filename = 'zapros.php';
$contents = '<li><a href="/search/'.$query.'" class="btn hash">'.$query."</a></li>n";
$array = file($filename);
$arr_count = count($array);
$dest='zapros.php';
$ressx=0;
$pfile=fopen($dest,'r');
if (!$pfile) die("fail attempt to open file");
while (!feof($pfile)) {
$tempstr=fgets($pfile);
if (trim(mb_strtolower($tempstr, 'UTF-8'))==trim(mb_strtolower($contents, 'UTF-8'))) $ressx=1;
}
if (($arr_count==23)&&($ressx==0)) $start=1;
else $start=0;
$count=0;
for ($i=$start; $i<=$arr_count; $i++) {
if ($array[$i]!="") {$arr[$count]=$array[$i];
$count++;}
}
$r = fopen($filename, 'w');
if ( $r ) {
foreach($arr as $val){
fwrite($r, $val);
}
if ($ressx==0)
{
fwrite($r, $contents);
fclose($handle);
}
else{}
}
$q = $app->escape($query);
$q = html_entity_decode($q);
$q = str_replace('+', ' ', $q);
$seo = Reg::get('seo');
$seo['title'] = "Скачать {$q} mp3 песню, слушать онлайн бесплатно";
$seo['description'] = "бесплатный онлайн плеер у нас вы сможете скачать {$q} и прослушать бесплатно";
$seo['keywords'] = "скчать песню, скачать мп3, {$q}, скачать mp3, бесплатно, без регистрации, новинка, поиск музыки, адхив, файл, без смс, слушать онлайн, плеер, быстро, скачать mp3 песню";
Reg::set('seo', $seo);
$p = $request->get('p', 1);
$ipp = $app['conf']->getOption('app', 'itemsPerPage', 10) ;
$pagerfanta = new Pagerfanta(new ArtSearchMusicPagerfantaAdapter(
$app['searchmusic'], str_replace("&", " ", $q), $p, $ipp
));
$ippv = $app['conf']->getOption('app', 'itemsPerPageVI', 10) ;
$pagerfantav = new Pagerfanta(new ArtSearchVideoPagerfantaAdapter(
$app['searchmusic'], str_replace("&", " ", $q), $p, $ippv
));
$pagerfanta->setCurrentPage($p);
$pagerfanta->setMaxPerPage($ipp);
$view = new DefaultView();
$pp = getlang(74,1);
$ppp = getlang(73,1);
$pagination = $view->render($pagerfanta, function($page) use ($q) {
return "./search/{$q}?p={$page}";
}, array(
'proximity' => 11,
'next_message' => $pp,
'previous_message' => $ppp,
)
);
$similar = array();
if ( substr_count($q, " ") <= 4 ) {
$lastfmdata = ArtLastFM::request($app['conf'], "artist.getSimilar", array(
"limit" => 10,
"artist" => $q
));
if ( isset($lastfmdata->similarartists) ) {
$similar = $lastfmdata->similarartists->artist;
}
}
$similars = array();
if ( substr_count($q, " ") <= 4 ) {
$lastfmdata = ArtLastFM::request($app['conf'], "artist.getTopAlbums", array(
"limit" => 10,
"artist" => $q,
" autocorrect" => 1
));
if ( isset($lastfmdata->topalbums) ) {
$similars = $lastfmdata->topalbums->album;
}
}
Reg::set('q', $q);
$artist = ArtLastFM::request($app['conf'], "artist.getInfo", array(
"artist" => $q
));
return $app['view']->render('layout.phtml', 'search/list.phtml', array(
'res' => $pagerfanta,
'resv' => $pagerfantav,
'pagination' => $pagination,
'q' => $q,
'similar' => $similar,
'similars' => $similars,
'artist' => $artist
));
}
else return $app['view']->render('layout.phtml', 'search/block.phtml', array(
));
});
$app->get('/popular', function(Request $request) use($app) {
$seo = Reg::get('seo');
$seo['title'] = "Топ 100 популярных треков";
$seo['description'] = "Топ 100 популярных треков";
$seo['keywords'] = "скчать песню, скачать мп3, скачать mp3, бесплатно, без регистрации, новинка, поиск музыки, адхив, файл, без смс, слушать онлайн, плеер, быстро, скачать mp3 песню";
Reg::set('seo', $seo);
$p = $request->get('p', 1);
$ipp = $app['conf']->getOption('app', 'itemsPerPagePop', 10) ;
$pagerfantap = new Pagerfanta(new ArtSearchPopPagerfantaAdapter(
$app['searchmusic'], $p, $ipp
));
$pagerfantap->setCurrentPage($p);
$pagerfantap->setMaxPerPage($ipp);
$view = new DefaultView();
return $app['view']->render('layout.phtml', 'part/popular.phtml', array(
'resp' => $pagerfantap,
));
});
$app->get('/video/{vkid}', function(Request $request, $vkid) use($app) {
$vvideo = $app['searchmusic']->videoget($vkid);
$seo = Reg::get('seo');
$seo['title'] = "{$vvideo->title} смотреть онлайн бесплатно";
$seo['description'] = "смотреть бесплатно видео";
$seo['keywords'] = "видео онлайн";
Reg::set('seo', $seo);
$video = (array)$vvideo;
$video['vkid'] = "{$vvideo->owner_id}_{$vvideo->id}";
return $app['view']->render('layout.phtml', 'part/vi-page.phtml', array(
'video' => $video,
'text' => $text
));
});
$app->get('/track/{vkid}', function(Request $request, $vkid) use($app) {
$vtrack = $app['searchmusic']->audioGetById($vkid);
$seo = Reg::get('seo');
$seo['title'] = " {$vtrack->artist} - {$vtrack->title} скачать mp3 трек, слушать онлайн бесплатно";
$seo['description'] = "прослушать мп3 трек {$vtrack->artist} - {$vtrack->title} и скачать бесплатно";
$seo['keywords'] = "скачать,{$vtrack->artist}, песня, новинка, слушать онлайн, файл, мп3, mp3 архив, популярный хит, {$vtrack->title}, бесплатно, без смс, онлайн плеер, архив mp3, исполнители";
Reg::set('seo', $seo);
$track = (array)$vtrack;
$track['vkid'] = "{$vtrack->owner_id}_{$vtrack->aid}";
$text = (isset($track['lyrics_id']) && $track['lyrics_id']) ? nl2br($app['searchmusic']->audioGetLyrics(
$track['lyrics_id']
)) : '';
return $app['view']->render('layout.phtml', 'part/track-page.phtml', array(
'track' => $track,
'text' => $text
));
});
$app->get('/getlyrics', function(Request $request) use($app) {
$text = nl2br($app['searchmusic']->audioGetLyrics(
$request->get('lyricsId')
));
return new Response($text);
});
$app->get('/getsong/{vkid}', function(Request $request, $vkid) use($app) {
session_write_close();
$vkTrack = $app['searchmusic']->getTrack( $vkid );
header("Content-Length: {$vkTrack['size']}");
if ( $request->get('dl') ) {
header('Last-Modified:');
header('ETag:');
header('Content-Type: audio/mpeg');
header('Accept-Ranges: bytes');
header("Content-Disposition: attachment; filename="{$vkTrack['fname']}"");
header('Content-Description: File Transfer');
header('Content-Transfer-Encoding: binary');
}
echo($vkTrack['url']);
return $app->stream(function () use ($vkTrack) {
readfile($vkTrack['url']);
}, 200, array('Content-Type' => 'audio/mpeg'));
});
/*
Техническая поддержка и обновления
http://wm-scripts.ru
*/