Handle download lists part 1
This commit is contained in:
parent
c9341acfb9
commit
03cf506132
3 changed files with 89 additions and 81 deletions
|
@ -113,7 +113,14 @@ class VideoDownload
|
|||
* */
|
||||
public function getJSON($url, $format = null, $password = null)
|
||||
{
|
||||
return json_decode($this->getProp($url, $format, 'dump-json', $password));
|
||||
$jsonArray = preg_split( "/\r|\n/", $this->getProp($url, $format, 'dump-json', $password), -1,
|
||||
PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
|
||||
$decodedJson = array();
|
||||
foreach ($jsonArray as $oneJson)
|
||||
{
|
||||
array_push($decodedJson, json_decode($oneJson));
|
||||
}
|
||||
return $decodedJson;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
<?php
|
||||
|
||||
require_once __DIR__.'/vendor/autoload.php';
|
||||
use Alltube\Config;
|
||||
use Alltube\Controller\FrontController;
|
||||
|
|
|
@ -3,87 +3,89 @@
|
|||
<div itemscope itemtype="http://schema.org/VideoObject">
|
||||
<div class="main">
|
||||
{include file="inc/logo.tpl"}
|
||||
<p id="download_intro">You are going to download<i itemprop="name">
|
||||
<a itemprop="url" id="video_link"
|
||||
data-ext="{$video->ext}"
|
||||
data-video="{$video->url|escape}"
|
||||
href="{$video->webpage_url}">
|
||||
{$video->title}</a></i>.
|
||||
</p>
|
||||
{if isset($video->thumbnail)}
|
||||
<img itemprop="thumbnailUrl" class="thumb" src="{$video->thumbnail}" alt="" />
|
||||
{/if}
|
||||
{if isset($video->description)}
|
||||
<meta itemprop="description" content="{$video->description|escape}" />
|
||||
{/if}
|
||||
{if isset($video->upload_date)}
|
||||
<meta itemprop="uploadDate" content="{$video->upload_date}" />
|
||||
{/if}
|
||||
<br/>
|
||||
{if isset($video->formats)}
|
||||
<h3><label for="format">Available formats:</label></h3>
|
||||
<form action="{path_for name="redirect"}">
|
||||
<input type="hidden" name="url" value="{$video->webpage_url}" />
|
||||
{if uglyUrls}
|
||||
<input type="hidden" name="page" value="redirect" />
|
||||
{/if}
|
||||
<select name="format" id="format" class="formats monospace">
|
||||
<optgroup label="Generic formats">
|
||||
<option value="best{$protocol}">
|
||||
{strip}
|
||||
Best ({$video->ext})
|
||||
{/strip}
|
||||
</option>
|
||||
<option value="worst{$protocol}">
|
||||
Worst
|
||||
</option>
|
||||
</optgroup>
|
||||
<optgroup label="Detailed formats" class="monospace">
|
||||
{foreach $video->formats as $format}
|
||||
{if $config->stream || $format->protocol|in_array:array('http', 'https')}
|
||||
{foreach $vidarr as $video}
|
||||
<p id="download_intro">You are going to download<i itemprop="name">
|
||||
<a itemprop="url" id="video_link"
|
||||
data-ext="{$video->ext}"
|
||||
data-video="{$video->url|escape}"
|
||||
href="{$video->webpage_url}">
|
||||
{$video->title}</a></i>.
|
||||
</p>
|
||||
{if isset($video->thumbnail)}
|
||||
<img itemprop="thumbnailUrl" class="thumb" src="{$video->thumbnail}" alt="" />
|
||||
{/if}
|
||||
{if isset($video->description)}
|
||||
<meta itemprop="description" content="{$video->description|escape}" />
|
||||
{/if}
|
||||
{if isset($video->upload_date)}
|
||||
<meta itemprop="uploadDate" content="{$video->upload_date}" />
|
||||
{/if}
|
||||
<br/>
|
||||
{if isset($video->formats)}
|
||||
<h3><label for="format{$video@index}">Available formats:</label></h3>
|
||||
<form action="{path_for name="redirect"}">
|
||||
<input type="hidden" name="url" value="{$video->webpage_url}" />
|
||||
{if uglyUrls}
|
||||
<input type="hidden" name="page" value="redirect" />
|
||||
{/if}
|
||||
<select name="format" id="format{$video@index}" class="formats monospace">
|
||||
<optgroup label="Generic formats">
|
||||
<option value="best{$protocol}">
|
||||
{strip}
|
||||
<option value="{$format->format_id}">
|
||||
{$format->ext}
|
||||
{for $foo=1 to (5 - ($format->ext|strlen))}
|
||||
|
||||
{/for}
|
||||
{if isset($format->width)}
|
||||
{$format->width}x{$format->height}
|
||||
{for $foo=1 to (10 - (("{$format->width}x{$format->height}")|strlen))}
|
||||
|
||||
{/for}
|
||||
{else}
|
||||
{for $foo=1 to 10}
|
||||
|
||||
{/for}
|
||||
{/if}
|
||||
{if isset($format->filesize)}
|
||||
{($format->filesize/1000000)|round:2} MB
|
||||
{for $foo=1 to (7 - (($format->filesize/1000000)|round:2|strlen))}
|
||||
|
||||
{/for}
|
||||
{else}
|
||||
{for $foo=1 to 10}
|
||||
|
||||
{/for}
|
||||
{/if}
|
||||
{if isset($format->format_note)}
|
||||
{$format->format_note}
|
||||
{/if}
|
||||
({$format->format_id})
|
||||
</option>
|
||||
Best ({$video->ext})
|
||||
{/strip}
|
||||
{/if}
|
||||
{/foreach}
|
||||
</optgroup>
|
||||
</select><br/><br/>
|
||||
<input class="downloadBtn" type="submit" value="Download" /><br/>
|
||||
</form>
|
||||
{else}
|
||||
<input type="hidden" name="format" value="best{$protocol}" />
|
||||
<a class="downloadBtn"
|
||||
href="{$video->url|escape}">Download</a><br/>
|
||||
{/if}
|
||||
</option>
|
||||
<option value="worst{$protocol}">
|
||||
Worst
|
||||
</option>
|
||||
</optgroup>
|
||||
<optgroup label="Detailed formats" class="monospace">
|
||||
{foreach $video->formats as $format}
|
||||
{if $config->stream || $format->protocol|in_array:array('http', 'https')}
|
||||
{strip}
|
||||
<option value="{$format->format_id}">
|
||||
{$format->ext}
|
||||
{for $foo=1 to (5 - ($format->ext|strlen))}
|
||||
|
||||
{/for}
|
||||
{if isset($format->width)}
|
||||
{$format->width}x{$format->height}
|
||||
{for $foo=1 to (10 - (("{$format->width}x{$format->height}")|strlen))}
|
||||
|
||||
{/for}
|
||||
{else}
|
||||
{for $foo=1 to 10}
|
||||
|
||||
{/for}
|
||||
{/if}
|
||||
{if isset($format->filesize)}
|
||||
{($format->filesize/1000000)|round:2} MB
|
||||
{for $foo=1 to (7 - (($format->filesize/1000000)|round:2|strlen))}
|
||||
|
||||
{/for}
|
||||
{else}
|
||||
{for $foo=1 to 10}
|
||||
|
||||
{/for}
|
||||
{/if}
|
||||
{if isset($format->format_note)}
|
||||
{$format->format_note}
|
||||
{/if}
|
||||
({$format->format_id})
|
||||
</option>
|
||||
{/strip}
|
||||
{/if}
|
||||
{/foreach}
|
||||
</optgroup>
|
||||
</select><br/><br/>
|
||||
<input class="downloadBtn" type="submit" value="Download" /><br/>
|
||||
</form>
|
||||
{else}
|
||||
<input type="hidden" name="format" value="best{$protocol}" />
|
||||
<a class="downloadBtn" href="{$video->url|escape}">Download</a><br/>
|
||||
{/if}
|
||||
<hr />
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
{include file="inc/footer.tpl"}
|
||||
|
|
Loading…
Reference in a new issue