y.php
by webproger on 2023-01-05
ᐥ...ᐥ
<?php
include $_SERVER['DOCUMENT_ROOT']."/i/i.php";
if($_SESSION['yg']) $_GET['g'] = $_SESSION['yg']; else $_GET['g'] = null;
if($_SESSION['yt']) $_GET['t'] = $_SESSION['yt']; else $_GET['t'] = null;
if($_SESSION['yv']) $_GET['v'] = $_SESSION['yv']; else $_GET['v'] = null;
if($_SESSION['yi']) $_GET['i'] = $_SESSION['yi']; else $_GET['i'] = null;
if($_SESSION['yj']) $_GET['j'] = $_SESSION['yj']; else $_GET['j'] = null;
if($_SESSION['ys']) $_GET['s'] = $_SESSION['ys']; else $_GET['s'] = null;
if(!$_GET['v']) exit("Session Terminated.");
if(qslt('ytb','COUNT(*)','ix',$_GET['v'],'ox','x'))
    header("Location: http://qindex.info/EngliSEA.php");
?>
<!DOCTYPE html>
<html><head><title><?php echo $_GET['t']; ?></title>
    <meta name="viewport"      content="width=device-width, initial-scale=1.0">
    <link rel='SHORTCUT ICON'  href='/g/v.ico'>
    <link rel='stylesheet' href='/i/c.css'>
    <style>
        .ta { width:275px; height: 70px; font-family:Courier New; }
        .btn { background-color:white; border-radius:50%; font-weight:bold; cursor:pointer; }
        .bn { width:70px; cursor:pointer; }
        .aw {
            position:fixed; left:0px; top:0px; width:100%; background-color:white;
            padding:0px 0px 0px 0px; text-align:center; visibility:hidden;
        }
        .dn {
            display:inline-block;
            position:relative;
            width:50px;
            height:50px;
            text-align:center;
            vertical-align:middle;
        }
        .sh {
            width:50px;
            cursor:pointer;
            position:absolute;
            left:0px;
            top:0px;
        }
        /* button */
        .br {
            position: fixed;
            right:  15px;
            bottom: 10px;
            z-index: 1000;
            padding:0px;
        }
        .bi {
            width:32px;
            height:32px;
            border-radius:50%;
            opacity: 1;
            cursor: pointer;
        }
    </style>
    <script src='/i/j.php'></script>
    <script>
        /* ---------------------------------------------------------------------------- functions
        bn button
        gc graphic
        ky key
        py play
        s2n string to number
        st state
        */
        function bn(b) {
            <?php
            //if($_SERVER['REMOTE_ADDR']==$p_mip) echo "window.alert(player.getPlayerState());";
            ?>
            switch(player.getPlayerState()) {
                case -1: // ---------------------- unstarted
                    location.reload();
                    break;
                case  0: // -------------------------- ended
                    switch(b) {
                        case 'l':
                            py(vl);
                            break;
                        case 'u':
                            py(cj-cu);
                            break;
                        case 'r':
                            if(vn>cn || vr>cr) { vn = 0; vr = 0; }
                            py(ci);
                            break;
                        case 'd':
                            break;
                    }
                    break;
                case  1: // ------------------------ playing
                    player.pauseVideo();
                    switch(b) {
                        case 'l':
                            py(vl);
                            break;
                        case 'u':
                            var t = player.getCurrentTime()-cu;
                            py(t);
                            break;
                        case 'r':
                            py(ci);
                            vl = ci;
                            break;
                        case 'd':
                            vd = player.getCurrentTime();
                            <?php if(!$_GET['j']) { ?>
                                jif.ck(cv,(vd-1).toFixed(1),jif.dt(0,7,0,0,0),'/');
                            <?php } ?>
                            break;
                    }
                    break;
                case  2: // ------------------------- paused
                    if(player.getCurrentTime()==0 && ci) {
                        py(ci);
                    } else {
                        switch(b) {
                            case 'l':
                                py(vl);
                                break;
                            case 'u':
                                var t = vd-cu;
                                py(t);
                                break;
                            case 'r':
                                py();
                                vl = vd;
                                break;
                            case 'd':
                                break;
                        }
                    }
                    break;
                case  3: // ---------------------- buffering
                    break;
                case  5: // ---------------------- videocued
                    switch(b) {
                        case 'l':
                        case 'u':
                        case 'r':
                            py();
                            break;
                        case 'd':
                            break;
                    }
                    break;
                default:
                    location.reload();
            }
        }
        function gc() {
            if(document.getElementById('vg')) {
                if(vg) {
                    document.getElementById('vg' ).style.visibility = 'hidden';
                    document.getElementById('isn').style.visibility = 'hidden';
                    document.getElementById('imn').style.visibility = 'visible';
                    vg = 0;
                } else {
                    document.getElementById('vg' ).style.visibility = 'visible';
                    document.getElementById('isn').style.visibility = 'visible';
                    document.getElementById('imn').style.visibility = 'hidden';
                    vg = 1;
                }
            }
        }
        function ky(event) {
            var e = event;
            var n = e.which || e.keyCode;
            if(n==37) { bn('l'); e.returnValue = false; }
            if(n==38) { bn('u'); e.returnValue = false; }
            if(n==39) { bn('r'); e.returnValue = false; }
            if(n==40) { bn('d'); e.returnValue = false; }
        }
        function py(t) {
            vs = 0;
            if(t) {
                if(t<ci) t = cj-(ci-t);
                player.seekTo(t);
            }
            player.playVideo();
        }
        function s2n(s) {
            let a = s.split(":");
            let n;
            switch(a.length) {
                case 1: n =                                            parseFloat(a[0]); break;
                case 2: n =                        60*parseFloat(a[0])+parseFloat(a[1]); break;
                case 3: n = 60*60*parseFloat(a[0])+60*parseFloat(a[1])+parseFloat(a[2]); break;
            }
            return n;
        }
        if(document.addEventListener) document.addEventListener('keydown',ky);
        else if(document.attachEvent) document.attachEvent('onkeydown',ky);
        else document.onkeydown = ky;
        window.onpagehide = st;
    </script>
</head><body style='font-size:0.9em;'><center><!-- iframe will replace --><div id="player"></div>

    <div style='padding:0px; width:100%;' id='d3'>
    <table cellspacing='5' style='width:auto;'>
    <tr>
        <td style='padding:0px; text-align:center; vertical-align:middle;'>
            <a href='/EngliSEA.php'><img style='width:50px;' src='/s/1768b76a74ef55c1acd8b78a3b6ae389.png'></a>
        </td>
        <td style='padding:0px;'><img src='/g/arrow_up.png'
            style='width:100px; cursor:pointer; display:block;' onclick="bn('u');"></td>
        <td style='padding:0px; text-align:center; vertical-align:middle;'><div class='dn'>
            <?php
            if($_GET['g']) {
                ?><img src='/g/image.png' class='sh' style='visibility:hidden;' id='imn' onclick="gc();"><img src='/g/screen.png' class='sh' id='isn' onclick="gc();"><?php
            } else {
                ?><img src='/g/blank.gif' class='sh'><?php
            }
            ?></div>
        </td>
    </tr>
    <tr>
        <td style='padding:0px; text-align:right;'><img style='width:100px; cursor:pointer;'
            src='/g/arrow_left.png' onclick="bn('l');"></td>
        <td style='padding:0px; width:100px;'><img style='width:100px; cursor:pointer;'
            src='/g/arrow_down.png' onclick="vs=1; if(vt) window.clearTimeout(vt); bn('d');"></td>
        <td style='padding:0px; text-align:left;'><img style='width:100px; cursor:pointer;'
            src='/g/arrow_right.png' onclick="bn('r');"></td>
    </tr>
    </table>
    </div>
    </center>
    <?php
    if($_GET['g']) {
        echo "<div id='vg' style='position:absolute; top:0px; width:100%; padding:0px;'>";
        echo "<center><img src='".$_GET['g']."' style='";
        if($p_mobile) echo "height:203px; max-width:360px;";
        else          echo "height:315px; max-width:560px;";
        echo "'></center></div>";
        ?>
        <?php
    }
    ?>
<script>
    // ------------------------------------------------------------------------------- initialize
    var cu =   5; // up
    var cn =  10; // times
    var cr = 600; // runtime
    var cv; // video
    var ci; // start
    var cj; // end
    var cc; // cookie
    <?php
    echo "cv = '".$_GET['v']."';";
    if($_GET['i']) echo "ci = s2n('".$_GET['i']."');"; else echo "ci = 0;";
    if($_GET['j']) echo "cj = s2n('".$_GET['j']."');";
    ?>
    if(!cj) { cc = jif.ck(cv); cc = parseFloat(cc); } else cc = 0;
    var vl;     // left
    var vd;     // down
    var vn = 0; // times
    var vr = 0; // runtime
    var vg = 1; // graphic
    var vt;     // timeout
    var vs = 0; // timeout flag
    if(cc>ci) { vl = cc; vd = cc; } else { vl = ci; vd = ci; }
    // ------------------------------------------------------------------------------------ embed
    // 2. This code loads the IFrame Player API code.
    var tag = document.createElement('script');
    tag.src = "https://www.youtube.com/iframe_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
    firstScriptTag.parentNode.insertBefore(tag,firstScriptTag);
  
    // 3. Creates an <iframe>.
    var player;
    function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
          <?php
          if($p_mobile) echo "height:'203',width:'360',";
          else          echo "height:'315',width:'560',";
          ?>
          playerVars:{
              'playsinline': 1
          },
          events:{
              'onReady': onPlayerReady,
              'onStateChange': onPlayerStateChange
          }
        });
    }
    // 4. The API will call this function.
    function ck() {
        var dr = player.getDuration();
        if(!dr) {
            var h = document.createElement("script");
            h.setAttribute("src","http://qindex.info/e/v_insert.php?ix=<?php echo $_GET['v']; ?>");
            document.getElementsByTagName('head')[0].appendChild(h);
        } else if(!cj) {
            cj = dr;
        }
    }
    function onPlayerReady(event) {
        player.loadVideoById({'videoId':cv,'startSeconds':vl<?php if($_GET['j']) echo ",'endSeconds':".$_GET['j']; ?>});
        <?php
        if($_GET['s']) echo "player.setVolume(".$_GET['s'].");";
        else           echo "player.setVolume(100);";
        ?>
        window.setTimeout("ck();",3000);
    }
    // 5. When the player's state changes.
    function onPlayerStateChange(event) {
        if(event.data == YT.PlayerState.ENDED) {
            <?php if($_GET['j']) { ?>
                vn++;
                vr += (cj-ci);
                if(vn<=cn && vr<=cr && !vs) vt = window.setTimeout("py(ci)",1000);
            <?php } else { ?>
                jif.ck(cv,false);
            <?php } ?>
        }
        if(event.data == YT.PlayerState.PLAYING) {}
        if(event.data == YT.PlayerState.PAUSED) {}
        if(event.data == YT.PlayerState.BUFFERING) {}
        if(event.data == YT.PlayerState.CUED) {}
    }
</script>
    <div class='br'><img class='bi' src='/g/bttn_close.png' onclick="window.close();"></div>
</body></html>