���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() 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/truyentranh/ |
<?php $home_url ='https://'.$_SERVER['HTTP_HOST'].'/'; $url = '/anime/'.$_GET['url']; $url_img = str_replace(array('/anime','.m3u8'),array('/thumb','.png'),$url); $txt_id = str_replace(array('/anime','.m3u8'),array('',''),basename($url)); ?> <!doctype html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <meta http-equiv="X-UA-Compatible" content="IE=edge,Chrome=1" /> <meta http-equiv="X-UA-Compatible" content="IE=9" /> <title><?php echo $txt_id;?></title> <base href="<?php echo $home_url;?>" /> <link href="https://fonts.bunny.net/css?family=rubik" rel="stylesheet"> <style type="text/css"> html,body{ width:100%; height:100%; overflow: hidden; margin: 0; padding: 0; } * { margin: 0px; padding: 0px; } :root { --plyr-color-main: #ff7755; --plyr-video-background: transparent; --plyr-captions-background: #000; --plyr-captions-text-color: #fff; --plyr-font-weight-regular: 600; --plyr-font-weight-bold: 600; --plyr-font-family: 'rubik'; --webkit-text-track-display: none; --plyr-font-size-xlarge: 30px; } .container { width: 100%; height: 100%; } video { width: 100%; height: 100%; } </style> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/plyr/3.7.8/plyr.css" integrity="sha512-yexU9hwne3MaLL2PG+YJDhaySS9NWcj6z7MvUDSoMhwNghPgXgcvYgVhfj4FMYpPh1Of7bt8/RK5A0rQ9fPMOw==" crossorigin="anonymous" referrerpolicy="no-referrer" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/plyr/3.7.8/plyr.min.js" integrity="sha512-vONptKEoKbP1gaC5UkbYDa9OPr04ur4bxaaqT7DAJxGHB2oogtseCPrl5e5hPFokGYotlGNV4d+GM593ka7iNA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script src="https://cdn.jsdelivr.net/hls.js/latest/hls.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js" integrity="sha512-v2CJ7UaYy4JwqLDIrZUI/4hqeoQieOmAZNXBeQyjo21dadnwR+8ZaIJVT8EE2iyI61OV8e6M8PP2/4hpQINQ/g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js" integrity="sha512-3j3VU6WC5rPQB4Ld1jnLV7Kd5xr+cq9avvhwqzbH/taCRNURoeEpoPBK9pDyeukwSxwRPJ8fDgvYXd6SkaZ2TA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> </head> <body> <div class="container" id="a1"> <video controls crossorigin playsinline> <source src="https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8" type="application/x-mpegURL" /> </video> </div> <input type="hidden" name="visited" id="visited" value="0" /> <script> function setPlayerStartingPosition(player) { var video_start_time = document.getElementById("visited").value; var video_start_time = Math.floor(video_start_time); if (video_start_time > 0) { if(confirm('Click "OK" to continue watching, Click "cancel" if you want to watch video again from the beginning?')){ }else{ video_start_time = 0; } player.on('loadeddata', function (event) { var instance = event.detail.plyr; if (video_start_time <= instance.duration) { instance.off('loadeddata', event); instance.currentTime = video_start_time; } }); } } document.addEventListener("DOMContentLoaded", () => { const video = document.querySelector("video"); const source = video.getElementsByTagName("source")[0].src; // For more options see: https://github.com/sampotts/plyr/#options // captions.update is required for captions to work with hls.js const defaultOptions = { storage: { enabled: true, key: 'plyr--lib-332723' }, fullscreen: { enabled: true, fallback: true, iosNative: true }, iconUrl: 'https://assets.mediadelivery.net/plyr/3.7.3.2/plyr.svg', captions: { active: false, language: '', update: true }, controls: [ "play-large","play","rewind","fast-forward","progress","current-time","duration","mute","volume","settings","pip","fullscreen","audioTrack" ], settings: ['quality', 'speed', 'loop', 'audioTrack'], speed: { selected: 1, options: [0.5,0.75,1,1.25,1.5,1.75,2,4] }, i18n: { restart: 'Restart', rewind: 'Rewind {seektime}s', play: 'Play', pause: 'Pause', fastForward: 'Forward {seektime}s', seek: 'Seek', seekLabel: '{currentTime} of {duration}', played: 'Played', buffered: 'Buffered', currentTime: 'Current time', duration: 'Duration', volume: 'Volume', mute: 'Mute', unmute: 'Unmute', enableCaptions: 'Enable captions', disableCaptions: 'Disable captions', download: 'Download', enterFullscreen: 'Enter fullscreen', exitFullscreen: 'Exit fullscreen', frameTitle: 'Player for {title}', captions: 'Captions', settings: 'Settings', pip: 'PIP', menuBack: 'Go back to previous menu', speed: 'Speed', normal: 'Normal', quality: 'Quality', loop: 'Loop', start: 'Start', end: 'End', all: 'All', reset: 'Reset', disabled: 'Disabled', enabled: 'Enabled', advertisement: 'Ad', qualityBadge: { 2160: '4K', 1440: 'HD', 1080: 'HD', 720: 'HD', 576: 'SD', 480: 'SD', }, }, }; if (Hls.isSupported()) { // For more Hls.js options, see https://github.com/dailymotion/hls.js const hls = new Hls(); hls.loadSource(source); // From the m3u8 playlist, hls parses the manifest and returns // all available video qualities. This is important, in this approach, // we will have one source on the Plyr player. hls.on(Hls.Events.MANIFEST_PARSED, function (event, data) { // Transform available levels into an array of integers (height values). const availableQualities = hls.levels.map((l) => l.height) // Add new qualities to option defaultOptions.quality = { default: availableQualities[0], options: availableQualities, // this ensures Plyr to use Hls to update quality level forced: true, onChange: (e) => updateQuality(e), } // Initialize here const player = new Plyr(video, defaultOptions); player.on('timeupdate', () => { const currentTime_player = player.currentTime; $('#visited').val(currentTime_player); }); setPlayerStartingPosition(player); }); hls.attachMedia(video); window.hls = hls; } else { // default options with no quality update in case Hls is not supported const player = new Plyr(video, defaultOptions); } function updateQuality(newQuality) { window.hls.levels.forEach((level, levelIndex) => { if (level.height === newQuality) { console.log("Found quality match with " + newQuality); window.hls.currentLevel = levelIndex; } }); } }); function checkRefresh() { if( document.refreshForm.visited.value == "" ) { // This is a fresh page load document.refreshForm.visited.value = "1"; // You may want to add code here special for // fresh page loads } else { // This is a page refresh // Insert code here representing what to do on // a refresh alert('Xem lại từ đầu hoặc Tiếp tục xem: '+$.cookie("currentTime_player")); } } </script> </body> </html>