Merge branch 'release-1.2.5'
This commit is contained in:
commit
aa04d773ef
16 changed files with 405 additions and 107 deletions
|
@ -90,7 +90,8 @@ module.exports = function (grunt) {
|
|||
'i18n/zh_CN/LC_MESSAGES/Alltube.mo': 'i18n/zh_CN/LC_MESSAGES/Alltube.po',
|
||||
'i18n/es_ES/LC_MESSAGES/Alltube.mo': 'i18n/es_ES/LC_MESSAGES/Alltube.po',
|
||||
'i18n/de_DE/LC_MESSAGES/Alltube.mo': 'i18n/de_DE/LC_MESSAGES/Alltube.po',
|
||||
'i18n/pt_BR/LC_MESSAGES/Alltube.mo': 'i18n/pt_BR/LC_MESSAGES/Alltube.po'
|
||||
'i18n/pt_BR/LC_MESSAGES/Alltube.mo': 'i18n/pt_BR/LC_MESSAGES/Alltube.po',
|
||||
'i18n/ar_001/LC_MESSAGES/Alltube.mo': 'i18n/ar_001/LC_MESSAGES/Alltube.po'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -196,5 +196,3 @@ Please read the [FAQ](resources/FAQ.md) before reporting any issue.
|
|||
## License
|
||||
|
||||
This software is available under the [GNU General Public License](http://www.gnu.org/licenses/gpl.html).
|
||||
|
||||
Please __use a different name and logo__ if you run it on a public server.
|
||||
|
|
|
@ -112,6 +112,13 @@ class Config
|
|||
*/
|
||||
public $avconvVerbosity = 'error';
|
||||
|
||||
/**
|
||||
* App name.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
public $appName = 'AllTube Download';
|
||||
|
||||
/**
|
||||
* YAML config file path.
|
||||
*
|
||||
|
|
|
@ -19,7 +19,7 @@ class LocaleManager
|
|||
*
|
||||
* @var array
|
||||
*/
|
||||
private $supportedLocales = ['en_US', 'fr_FR', 'zh_CN', 'es_ES', 'pt_BR', 'de_DE'];
|
||||
private $supportedLocales = ['en_US', 'fr_FR', 'zh_CN', 'es_ES', 'pt_BR', 'de_DE', 'ar_001'];
|
||||
|
||||
/**
|
||||
* Current locale.
|
||||
|
|
|
@ -5,25 +5,25 @@
|
|||
"homepage": "http://alltubedownload.net/",
|
||||
"type": "project",
|
||||
"require": {
|
||||
"slim/slim": "~3.9.2",
|
||||
"slim/slim": "~3.11.0",
|
||||
"mathmarques/smarty-view": "~1.1.0",
|
||||
"symfony/yaml": "~3.4.1",
|
||||
"symfony/process": "~3.4.1",
|
||||
"guzzlehttp/guzzle": "~6.3.0",
|
||||
"aura/session": "~2.1.0",
|
||||
"barracudanetworks/archivestream-php": "~1.0.5",
|
||||
"smarty-gettext/smarty-gettext": "~1.5.1",
|
||||
"smarty-gettext/smarty-gettext": "~1.6.0",
|
||||
"zonuexe/http-accept-language": "~0.4.1",
|
||||
"rinvex/country": "~3.1.0",
|
||||
"php-mock/php-mock-mockery": "~1.2.0"
|
||||
"rinvex/countries": "~3.1.0",
|
||||
"php-mock/php-mock-mockery": "~1.3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/var-dumper": "~3.4.1",
|
||||
"squizlabs/php_codesniffer": "~3.2.2",
|
||||
"squizlabs/php_codesniffer": "~3.4.0",
|
||||
"phpunit/phpunit": "~6.5.2",
|
||||
"doctrine/instantiator": "~1.0.0",
|
||||
"ffmpeg/ffmpeg": "4.0.3",
|
||||
"rg3/youtube-dl": "2018.11.07",
|
||||
"rg3/youtube-dl": "2019.01.17",
|
||||
"heroku/heroku-buildpack-php": "*",
|
||||
"anam/phantomjs-linux-x86-binary": "~2.1.1"
|
||||
},
|
||||
|
@ -39,10 +39,10 @@
|
|||
"type": "package",
|
||||
"package": {
|
||||
"name": "rg3/youtube-dl",
|
||||
"version": "2018.11.07",
|
||||
"version": "2019.01.17",
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/rg3/youtube-dl/archive/2018.11.07.zip"
|
||||
"url": "https://github.com/rg3/youtube-dl/archive/2019.01.17.zip"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
200
composer.lock
generated
200
composer.lock
generated
|
@ -4,7 +4,7 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "2f25c657ba117b6ebbe7992c501bd890",
|
||||
"content-hash": "06c7619047b2e62246e52f538b982231",
|
||||
"packages": [
|
||||
{
|
||||
"name": "aura/session",
|
||||
|
@ -257,32 +257,33 @@
|
|||
},
|
||||
{
|
||||
"name": "guzzlehttp/psr7",
|
||||
"version": "1.4.2",
|
||||
"version": "1.5.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/guzzle/psr7.git",
|
||||
"reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c"
|
||||
"reference": "9f83dded91781a01c63574e387eaa769be769115"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/guzzle/psr7/zipball/f5b8a8512e2b58b0071a7280e39f14f72e05d87c",
|
||||
"reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c",
|
||||
"url": "https://api.github.com/repos/guzzle/psr7/zipball/9f83dded91781a01c63574e387eaa769be769115",
|
||||
"reference": "9f83dded91781a01c63574e387eaa769be769115",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.4.0",
|
||||
"psr/http-message": "~1.0"
|
||||
"psr/http-message": "~1.0",
|
||||
"ralouphie/getallheaders": "^2.0.5"
|
||||
},
|
||||
"provide": {
|
||||
"psr/http-message-implementation": "1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~4.0"
|
||||
"phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.8"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "1.4-dev"
|
||||
"dev-master": "1.5-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
@ -312,13 +313,14 @@
|
|||
"keywords": [
|
||||
"http",
|
||||
"message",
|
||||
"psr-7",
|
||||
"request",
|
||||
"response",
|
||||
"stream",
|
||||
"uri",
|
||||
"url"
|
||||
],
|
||||
"time": "2017-03-20T17:10:46+00:00"
|
||||
"time": "2018-12-04T20:46:45+00:00"
|
||||
},
|
||||
{
|
||||
"name": "hamcrest/hamcrest-php",
|
||||
|
@ -531,30 +533,29 @@
|
|||
},
|
||||
{
|
||||
"name": "php-mock/php-mock",
|
||||
"version": "1.0.1",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-mock/php-mock.git",
|
||||
"reference": "bfa2d17d64dbf129073a7ba2051a96ce52749570"
|
||||
"reference": "22d297231118e6fd5b9db087fbe1ef866c2b95d2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock/zipball/bfa2d17d64dbf129073a7ba2051a96ce52749570",
|
||||
"reference": "bfa2d17d64dbf129073a7ba2051a96ce52749570",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock/zipball/22d297231118e6fd5b9db087fbe1ef866c2b95d2",
|
||||
"reference": "22d297231118e6fd5b9db087fbe1ef866c2b95d2",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.5",
|
||||
"php": ">=5.6",
|
||||
"phpunit/php-text-template": "^1"
|
||||
},
|
||||
"replace": {
|
||||
"malkusch/php-mock": "*"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4|^5"
|
||||
"phpunit/phpunit": "^5.7"
|
||||
},
|
||||
"suggest": {
|
||||
"php-mock/php-mock-mockery": "Allows using PHPMockery for Mockery integration",
|
||||
"php-mock/php-mock-phpunit": "Allows integration into PHPUnit testcase with the trait PHPMock."
|
||||
},
|
||||
"type": "library",
|
||||
|
@ -562,7 +563,7 @@
|
|||
"psr-4": {
|
||||
"phpmock\\": [
|
||||
"classes/",
|
||||
"tests/unit/"
|
||||
"tests/"
|
||||
]
|
||||
}
|
||||
},
|
||||
|
@ -589,25 +590,25 @@
|
|||
"test",
|
||||
"test double"
|
||||
],
|
||||
"time": "2015-11-11T22:37:09+00:00"
|
||||
"time": "2017-02-17T20:52:52+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-mock/php-mock-integration",
|
||||
"version": "1.0.0",
|
||||
"version": "2.0.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-mock/php-mock-integration.git",
|
||||
"reference": "e83fb65dd20cd3cf250d554cbd4682b96b684f4b"
|
||||
"reference": "5a0d7d7755f823bc2a230cfa45058b40f9013bc4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock-integration/zipball/e83fb65dd20cd3cf250d554cbd4682b96b684f4b",
|
||||
"reference": "e83fb65dd20cd3cf250d554cbd4682b96b684f4b",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock-integration/zipball/5a0d7d7755f823bc2a230cfa45058b40f9013bc4",
|
||||
"reference": "5a0d7d7755f823bc2a230cfa45058b40f9013bc4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.5",
|
||||
"php-mock/php-mock": "^1",
|
||||
"php": ">=5.6",
|
||||
"php-mock/php-mock": "^2",
|
||||
"phpunit/php-text-template": "^1"
|
||||
},
|
||||
"require-dev": {
|
||||
|
@ -642,26 +643,26 @@
|
|||
"test",
|
||||
"test double"
|
||||
],
|
||||
"time": "2015-10-26T21:21:42+00:00"
|
||||
"time": "2017-02-17T21:31:34+00:00"
|
||||
},
|
||||
{
|
||||
"name": "php-mock/php-mock-mockery",
|
||||
"version": "1.2.0",
|
||||
"version": "1.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/php-mock/php-mock-mockery.git",
|
||||
"reference": "f3d67a36558c6d1fb912ed8ba786fffaf94e0755"
|
||||
"reference": "d6d3df9d9232f1623f1ca3cfdaacd53415593825"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock-mockery/zipball/f3d67a36558c6d1fb912ed8ba786fffaf94e0755",
|
||||
"reference": "f3d67a36558c6d1fb912ed8ba786fffaf94e0755",
|
||||
"url": "https://api.github.com/repos/php-mock/php-mock-mockery/zipball/d6d3df9d9232f1623f1ca3cfdaacd53415593825",
|
||||
"reference": "d6d3df9d9232f1623f1ca3cfdaacd53415593825",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"mockery/mockery": "^1",
|
||||
"php": ">=5.6",
|
||||
"php-mock/php-mock-integration": "^1"
|
||||
"php-mock/php-mock-integration": "^2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4|^5"
|
||||
|
@ -696,7 +697,7 @@
|
|||
"test",
|
||||
"test double"
|
||||
],
|
||||
"time": "2017-10-13T09:34:01+00:00"
|
||||
"time": "2018-03-27T07:00:25+00:00"
|
||||
},
|
||||
{
|
||||
"name": "phpunit/php-text-template",
|
||||
|
@ -889,16 +890,56 @@
|
|||
"time": "2016-08-06T14:39:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rinvex/country",
|
||||
"name": "ralouphie/getallheaders",
|
||||
"version": "2.0.5",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/ralouphie/getallheaders.git",
|
||||
"reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
|
||||
"reference": "5601c8a83fbba7ef674a7369456d12f1e0d0eafa",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=5.3"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "~3.7.0",
|
||||
"satooshi/php-coveralls": ">=1.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/getallheaders.php"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Ralph Khattar",
|
||||
"email": "ralph.khattar@gmail.com"
|
||||
}
|
||||
],
|
||||
"description": "A polyfill for getallheaders.",
|
||||
"time": "2016-02-11T07:05:27+00:00"
|
||||
},
|
||||
{
|
||||
"name": "rinvex/countries",
|
||||
"version": "v3.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/rinvex/renamed-country.git",
|
||||
"url": "https://github.com/rinvex/countries.git",
|
||||
"reference": "e32228ef43f26d3b02296be9454f842c52d492f3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/rinvex/renamed-country/zipball/e32228ef43f26d3b02296be9454f842c52d492f3",
|
||||
"url": "https://api.github.com/repos/rinvex/countries/zipball/e32228ef43f26d3b02296be9454f842c52d492f3",
|
||||
"reference": "e32228ef43f26d3b02296be9454f842c52d492f3",
|
||||
"shasum": ""
|
||||
},
|
||||
|
@ -960,21 +1001,20 @@
|
|||
"rinvex",
|
||||
"svg"
|
||||
],
|
||||
"abandoned": "rinvex/countries",
|
||||
"time": "2017-03-07T18:40:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "slim/slim",
|
||||
"version": "3.9.2",
|
||||
"version": "3.11.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/slimphp/Slim.git",
|
||||
"reference": "4086d0106cf5a7135c69fce4161fe355a8feb118"
|
||||
"reference": "d378e70431e78ee92ee32ddde61ecc72edf5dc0a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/slimphp/Slim/zipball/4086d0106cf5a7135c69fce4161fe355a8feb118",
|
||||
"reference": "4086d0106cf5a7135c69fce4161fe355a8feb118",
|
||||
"url": "https://api.github.com/repos/slimphp/Slim/zipball/d378e70431e78ee92ee32ddde61ecc72edf5dc0a",
|
||||
"reference": "d378e70431e78ee92ee32ddde61ecc72edf5dc0a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1032,20 +1072,20 @@
|
|||
"micro",
|
||||
"router"
|
||||
],
|
||||
"time": "2017-11-26T19:13:09+00:00"
|
||||
"time": "2018-09-16T10:54:21+00:00"
|
||||
},
|
||||
{
|
||||
"name": "smarty-gettext/smarty-gettext",
|
||||
"version": "1.5.1",
|
||||
"version": "1.6.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/smarty-gettext/smarty-gettext.git",
|
||||
"reference": "00fe2fcbc41e24e0245cd9d73f96bc7b0337972d"
|
||||
"reference": "9a7d9284b5374caeae5eb226cf486efb4bc748b4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/smarty-gettext/smarty-gettext/zipball/00fe2fcbc41e24e0245cd9d73f96bc7b0337972d",
|
||||
"reference": "00fe2fcbc41e24e0245cd9d73f96bc7b0337972d",
|
||||
"url": "https://api.github.com/repos/smarty-gettext/smarty-gettext/zipball/9a7d9284b5374caeae5eb226cf486efb4bc748b4",
|
||||
"reference": "9a7d9284b5374caeae5eb226cf486efb4bc748b4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1055,6 +1095,7 @@
|
|||
},
|
||||
"require-dev": {
|
||||
"azatoth/php-pgettext": "~1.0",
|
||||
"phpunit/phpunit": ">=4.8.36",
|
||||
"smarty/smarty": "3.1.*"
|
||||
},
|
||||
"suggest": {
|
||||
|
@ -1072,7 +1113,7 @@
|
|||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"LGPL-2.1+"
|
||||
"LGPL-2.1"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
|
@ -1086,7 +1127,7 @@
|
|||
],
|
||||
"description": "Gettext plugin enabling internationalization in Smarty Package files",
|
||||
"homepage": "https://github.com/smarty-gettext/smarty-gettext",
|
||||
"time": "2017-05-12T12:14:46+00:00"
|
||||
"time": "2019-01-17T23:06:53+00:00"
|
||||
},
|
||||
{
|
||||
"name": "smarty/smarty",
|
||||
|
@ -1201,16 +1242,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/process",
|
||||
"version": "v3.4.18",
|
||||
"version": "v3.4.21",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/process.git",
|
||||
"reference": "35c2914a9f50519bd207164c353ae4d59182c2cb"
|
||||
"reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/35c2914a9f50519bd207164c353ae4d59182c2cb",
|
||||
"reference": "35c2914a9f50519bd207164c353ae4d59182c2cb",
|
||||
"url": "https://api.github.com/repos/symfony/process/zipball/0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c",
|
||||
"reference": "0d41dd7d95ed179aed6a13393b0f4f97bfa2d25c",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1246,20 +1287,20 @@
|
|||
],
|
||||
"description": "Symfony Process Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2018-10-14T17:33:21+00:00"
|
||||
"time": "2019-01-02T21:24:08+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/yaml",
|
||||
"version": "v3.4.18",
|
||||
"version": "v3.4.21",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/yaml.git",
|
||||
"reference": "640b6c27fed4066d64b64d5903a86043f4a4de7f"
|
||||
"reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/640b6c27fed4066d64b64d5903a86043f4a4de7f",
|
||||
"reference": "640b6c27fed4066d64b64d5903a86043f4a4de7f",
|
||||
"url": "https://api.github.com/repos/symfony/yaml/zipball/554a59a1ccbaac238a89b19c8e551a556fd0e2ea",
|
||||
"reference": "554a59a1ccbaac238a89b19c8e551a556fd0e2ea",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -1305,7 +1346,7 @@
|
|||
],
|
||||
"description": "Symfony Yaml Component",
|
||||
"homepage": "https://symfony.com",
|
||||
"time": "2018-10-02T16:33:53+00:00"
|
||||
"time": "2019-01-01T13:45:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "zonuexe/http-accept-language",
|
||||
|
@ -1462,16 +1503,16 @@
|
|||
},
|
||||
{
|
||||
"name": "heroku/heroku-buildpack-php",
|
||||
"version": "v146",
|
||||
"version": "v148",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/heroku/heroku-buildpack-php.git",
|
||||
"reference": "a380d44126a056cc5b7daaa0714714e3c888689f"
|
||||
"reference": "d331bfb9251d8a091d3a0d29e25ffcdb801577e1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/a380d44126a056cc5b7daaa0714714e3c888689f",
|
||||
"reference": "a380d44126a056cc5b7daaa0714714e3c888689f",
|
||||
"url": "https://api.github.com/repos/heroku/heroku-buildpack-php/zipball/d331bfb9251d8a091d3a0d29e25ffcdb801577e1",
|
||||
"reference": "d331bfb9251d8a091d3a0d29e25ffcdb801577e1",
|
||||
"shasum": ""
|
||||
},
|
||||
"bin": [
|
||||
|
@ -1502,7 +1543,7 @@
|
|||
"nginx",
|
||||
"php"
|
||||
],
|
||||
"time": "2018-11-08T19:23:29+00:00"
|
||||
"time": "2018-12-20T21:53:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "myclabs/deep-copy",
|
||||
|
@ -2219,10 +2260,10 @@
|
|||
},
|
||||
{
|
||||
"name": "rg3/youtube-dl",
|
||||
"version": "2018.11.07",
|
||||
"version": "2019.01.17",
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://github.com/rg3/youtube-dl/archive/2018.11.07.zip",
|
||||
"url": "https://github.com/rg3/youtube-dl/archive/2019.01.17.zip",
|
||||
"reference": null,
|
||||
"shasum": null
|
||||
},
|
||||
|
@ -2789,16 +2830,16 @@
|
|||
},
|
||||
{
|
||||
"name": "squizlabs/php_codesniffer",
|
||||
"version": "3.2.3",
|
||||
"version": "3.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
|
||||
"reference": "4842476c434e375f9d3182ff7b89059583aa8b27"
|
||||
"reference": "379deb987e26c7cd103a7b387aea178baec96e48"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/4842476c434e375f9d3182ff7b89059583aa8b27",
|
||||
"reference": "4842476c434e375f9d3182ff7b89059583aa8b27",
|
||||
"url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/379deb987e26c7cd103a7b387aea178baec96e48",
|
||||
"reference": "379deb987e26c7cd103a7b387aea178baec96e48",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2836,7 +2877,7 @@
|
|||
"phpcs",
|
||||
"standards"
|
||||
],
|
||||
"time": "2018-02-20T21:35:23+00:00"
|
||||
"time": "2018-12-19T23:57:18+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-mbstring",
|
||||
|
@ -2899,16 +2940,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/var-dumper",
|
||||
"version": "v3.4.18",
|
||||
"version": "v3.4.21",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/var-dumper.git",
|
||||
"reference": "ff8ac19e97e5c7c3979236b584719a1190f84181"
|
||||
"reference": "a5f39641bb62e8b74e343467b145331273f615a2"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/ff8ac19e97e5c7c3979236b584719a1190f84181",
|
||||
"reference": "ff8ac19e97e5c7c3979236b584719a1190f84181",
|
||||
"url": "https://api.github.com/repos/symfony/var-dumper/zipball/a5f39641bb62e8b74e343467b145331273f615a2",
|
||||
"reference": "a5f39641bb62e8b74e343467b145331273f615a2",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2964,7 +3005,7 @@
|
|||
"debug",
|
||||
"dump"
|
||||
],
|
||||
"time": "2018-10-02T16:33:53+00:00"
|
||||
"time": "2019-01-01T13:45:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "theseer/tokenizer",
|
||||
|
@ -3008,20 +3049,21 @@
|
|||
},
|
||||
{
|
||||
"name": "webmozart/assert",
|
||||
"version": "1.3.0",
|
||||
"version": "1.4.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/webmozart/assert.git",
|
||||
"reference": "0df1908962e7a3071564e857d86874dad1ef204a"
|
||||
"reference": "83e253c8e0be5b0257b881e1827274667c5c17a9"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/webmozart/assert/zipball/0df1908962e7a3071564e857d86874dad1ef204a",
|
||||
"reference": "0df1908962e7a3071564e857d86874dad1ef204a",
|
||||
"url": "https://api.github.com/repos/webmozart/assert/zipball/83e253c8e0be5b0257b881e1827274667c5c17a9",
|
||||
"reference": "83e253c8e0be5b0257b881e1827274667c5c17a9",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": "^5.3.3 || ^7.0"
|
||||
"php": "^5.3.3 || ^7.0",
|
||||
"symfony/polyfill-ctype": "^1.8"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^4.6",
|
||||
|
@ -3054,7 +3096,7 @@
|
|||
"check",
|
||||
"validate"
|
||||
],
|
||||
"time": "2018-01-29T19:49:41+00:00"
|
||||
"time": "2018-12-25T11:19:39+00:00"
|
||||
}
|
||||
],
|
||||
"aliases": [],
|
||||
|
|
|
@ -37,5 +37,11 @@ uglyUrls: false
|
|||
# True to stream videos through server
|
||||
stream: false
|
||||
|
||||
# True to enable remux mode (merge best audio and best video)
|
||||
remux: false
|
||||
|
||||
# MP3 bitrate when converting (in kbit/s)
|
||||
audioBitrate: 128
|
||||
|
||||
# App name
|
||||
appName: AllTube Download
|
||||
|
|
|
@ -162,6 +162,7 @@ class FrontController
|
|||
$response,
|
||||
'extractors.tpl',
|
||||
[
|
||||
'config' => $this->config,
|
||||
'extractors' => $this->download->listExtractors(),
|
||||
'class' => 'extractors',
|
||||
'title' => _('Supported websites'),
|
||||
|
@ -189,6 +190,7 @@ class FrontController
|
|||
$response,
|
||||
'password.tpl',
|
||||
[
|
||||
'config' => $this->config,
|
||||
'class' => 'password',
|
||||
'title' => _('Password prompt'),
|
||||
'description' => _('You need a password in order to download this video with Alltube Download'),
|
||||
|
@ -378,6 +380,7 @@ class FrontController
|
|||
$response,
|
||||
'error.tpl',
|
||||
[
|
||||
'config' => $this->config,
|
||||
'errors' => $exception->getMessage(),
|
||||
'class' => 'video',
|
||||
'title' => _('Error'),
|
||||
|
@ -473,15 +476,15 @@ class FrontController
|
|||
}
|
||||
$webpageUrl = $request->getQueryParam('url');
|
||||
|
||||
return $response->withHeader('Content-Disposition', 'attachment; filename="'.pathinfo(
|
||||
$this->download->getFileNameWithExtension(
|
||||
return $response->withHeader(
|
||||
'Content-Disposition',
|
||||
'attachment; filename="'.$this->download->getFileNameWithExtension(
|
||||
'mkv',
|
||||
$webpageUrl,
|
||||
$format,
|
||||
$this->sessionSegment->getFlash($webpageUrl)
|
||||
),
|
||||
PATHINFO_FILENAME
|
||||
).'.mkv"');
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
237
i18n/ar_001/LC_MESSAGES/Alltube.po
Normal file
237
i18n/ar_001/LC_MESSAGES/Alltube.po
Normal file
|
@ -0,0 +1,237 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: POEditor.com\n"
|
||||
"Project-Id-Version: AllTube Download\n"
|
||||
"Language: ar\n"
|
||||
|
||||
#: templates/error.tpl:6
|
||||
msgid "Please check the URL of your video."
|
||||
msgstr "رجاء راجع الرابط المكتوب"
|
||||
|
||||
#: templates/playlist.tpl:5
|
||||
msgid "Videos extracted from"
|
||||
msgstr "الفيديوات مستخلصة من"
|
||||
|
||||
#: templates/playlist.tpl:7
|
||||
msgid ":"
|
||||
msgstr ":"
|
||||
|
||||
#: templates/playlist.tpl:26 templates/video.tpl:96 templates/video.tpl:99
|
||||
#: templates/password.tpl:10 templates/index.tpl:19
|
||||
#: controllers/FrontController.php:315
|
||||
msgid "Download"
|
||||
msgstr "حمل"
|
||||
|
||||
#: templates/playlist.tpl:27
|
||||
msgid "More options"
|
||||
msgstr "خيارات أكثر"
|
||||
|
||||
#: templates/password.tpl:5
|
||||
msgid "This video is protected"
|
||||
msgstr "الفيديو محمي عن التحميل"
|
||||
|
||||
#: templates/password.tpl:6
|
||||
msgid "You need a password in order to download this video."
|
||||
msgstr "تحتاج لكلمة سر كي تستطع تحميل هذا الفيديو"
|
||||
|
||||
#: templates/password.tpl:8
|
||||
msgid "Video password"
|
||||
msgstr "كلمة سر الفيديو"
|
||||
|
||||
#: templates/extractors.tpl:4 controllers/FrontController.php:167
|
||||
msgid "Supported websites"
|
||||
msgstr "المواقع المدعومة"
|
||||
|
||||
#: templates/video.tpl:6
|
||||
msgid "You are going to download"
|
||||
msgstr "تريد تحميل"
|
||||
|
||||
#: templates/video.tpl:24
|
||||
msgid "Available formats:"
|
||||
msgstr "الصيغ المدعومة"
|
||||
|
||||
#: templates/video.tpl:29
|
||||
msgid "Generic formats"
|
||||
msgstr "الصيغ العامة"
|
||||
|
||||
#: templates/video.tpl:32
|
||||
msgid "Best"
|
||||
msgstr "الأفضل"
|
||||
|
||||
#: templates/video.tpl:37
|
||||
msgid "Remux best video with best audio"
|
||||
msgstr "اجمع الصوت الأفضل مع الفيديو الأفضل جودة"
|
||||
|
||||
#: templates/video.tpl:41
|
||||
msgid "Worst"
|
||||
msgstr "الاسوأ"
|
||||
|
||||
#: templates/video.tpl:44
|
||||
msgid "Detailed formats"
|
||||
msgstr "الصيغ بتعمق أكثر"
|
||||
|
||||
#: templates/inc/footer.tpl:4
|
||||
msgid "Code by"
|
||||
msgstr "برمجه"
|
||||
|
||||
#: templates/inc/footer.tpl:6
|
||||
msgid "Design by"
|
||||
msgstr "صممه"
|
||||
|
||||
#: templates/inc/footer.tpl:10
|
||||
msgid "Get the code"
|
||||
msgstr "للحصول على أصل البرنامج"
|
||||
|
||||
#: templates/inc/footer.tpl:12
|
||||
msgid "Based on"
|
||||
msgstr "مبني على"
|
||||
|
||||
#: templates/inc/header.tpl:21
|
||||
msgid "Share on Twitter"
|
||||
msgstr "شاركها على تويتر"
|
||||
|
||||
#: templates/inc/header.tpl:23
|
||||
msgid "Share on Facebook"
|
||||
msgstr "شاركها على فيسبوك"
|
||||
|
||||
#: templates/index.tpl:8
|
||||
msgid "Copy here the URL of your video (Youtube, Dailymotion, etc.)"
|
||||
msgstr "انسخ هنا رابط الفيديو (يوتيوب، انستقرام، وغيرها)"
|
||||
|
||||
#: templates/index.tpl:25
|
||||
msgid "Audio only (MP3)"
|
||||
msgstr "صوت فقط (MP3)"
|
||||
|
||||
#: templates/index.tpl:36
|
||||
msgid "See all supported websites"
|
||||
msgstr "لمراجعة جميع المواقع المدعومة"
|
||||
|
||||
#: templates/index.tpl:38
|
||||
msgid "Drag this to your bookmarks bar:"
|
||||
msgstr "اسحب هذا الموقع لقائمة المفضلة في متصفحك"
|
||||
|
||||
#: templates/index.tpl:39
|
||||
msgid "Bookmarklet"
|
||||
msgstr "موشر الصفحة"
|
||||
|
||||
#: templates/inc/header.tpl:4
|
||||
msgid "Switch language"
|
||||
msgstr "غير اللغة"
|
||||
|
||||
#: templates/error.tpl:5
|
||||
msgid "An error occurred"
|
||||
msgstr "حصل خطأ ما"
|
||||
|
||||
#: templates/video.tpl:85
|
||||
msgid "Convert into a custom format:"
|
||||
msgstr "حول لصيغة خاصة"
|
||||
|
||||
#: templates/video.tpl:93
|
||||
msgid "kbit/s audio"
|
||||
msgstr "كيلوبايتات صوت"
|
||||
|
||||
#: templates/video.tpl:91
|
||||
msgid "with"
|
||||
msgstr "مع"
|
||||
|
||||
#: classes/VideoDownload.php:117
|
||||
msgid "Wrong password"
|
||||
msgstr "كلمة السر خاطئة"
|
||||
|
||||
#: classes/VideoDownload.php:364 classes/VideoDownload.php:526
|
||||
msgid "Conversion of M3U8 files is not supported."
|
||||
msgstr "تحويل ملفات M3U8 غير مدعوم حاليًا."
|
||||
|
||||
#: classes/VideoDownload.php:375 classes/VideoDownload.php:412
|
||||
#: classes/VideoDownload.php:445 classes/VideoDownload.php:478
|
||||
#: classes/VideoDownload.php:534
|
||||
msgid "Could not open popen stream."
|
||||
msgstr "لم يمكن بدأ Popen"
|
||||
|
||||
#: classes/VideoDownload.php:502
|
||||
msgid "Could not open fopen stream."
|
||||
msgstr "لم يمكن بدأ fopen"
|
||||
|
||||
#: controllers/FrontController.php:124
|
||||
msgid "Easily download videos from Youtube, Dailymotion, Vimeo and other websites."
|
||||
msgstr "حمل مقاطع الفيديو بكل سهولة من يوتيوب، انستقرام، فيميو وغيره."
|
||||
|
||||
#: controllers/FrontController.php:168
|
||||
msgid "List of all supported websites from which Alltube Download can extract video or audio files"
|
||||
msgstr "قائمة كل المواقع التي يدعم Alltube Download تحميل الفيديوات أو مقاطع الصوت منها"
|
||||
|
||||
#: controllers/FrontController.php:193
|
||||
msgid "Password prompt"
|
||||
msgstr "ادخل كلمة السر"
|
||||
|
||||
#: controllers/FrontController.php:194
|
||||
msgid "You need a password in order to download this video with Alltube Download"
|
||||
msgstr "تحتاج لكلمة السر لكي تستطع تحميل هذا الفيديو باستخدام Alltube Donwload"
|
||||
|
||||
#: controllers/FrontController.php:311
|
||||
msgid "Video download"
|
||||
msgstr "تحميل الفيديو"
|
||||
|
||||
#: controllers/FrontController.php:312
|
||||
msgid "Download video from "
|
||||
msgstr "تحميل الفيديو من"
|
||||
|
||||
#: controllers/FrontController.php:315
|
||||
msgid "from"
|
||||
msgstr "من"
|
||||
|
||||
#: controllers/FrontController.php:378
|
||||
msgid "Error"
|
||||
msgstr "مشكلة"
|
||||
|
||||
#: controllers/FrontController.php:450
|
||||
msgid "You need to enable remux mode to merge two formats."
|
||||
msgstr "لابد من اختيار نمط الريمكس ليمكن دمج صيغتين مختلفتين."
|
||||
|
||||
#: controllers/FrontController.php:525
|
||||
msgid "Can't find URL of video."
|
||||
msgstr "لم أستطع الوجود على رابط الفيديو."
|
||||
|
||||
#: classes/VideoDownload.php:289 classes/VideoDownload.php:394
|
||||
msgid "Can't find avconv or ffmpeg at "
|
||||
msgstr "لم يمكن الوجود على avconv أو ffmpeg في"
|
||||
|
||||
#: templates/inc/footer.tpl:14
|
||||
msgid "Donate"
|
||||
msgstr "تبرع"
|
||||
|
||||
#: classes/VideoDownload.php:158
|
||||
msgid "youtube-dl returned an empty URL."
|
||||
msgstr "Youtube-DL عاد برابط فارغ"
|
||||
|
||||
#: classes/VideoDownload.php:359
|
||||
msgid "Conversion of playlists is not supported."
|
||||
msgstr "تحويل القائمات غير مدعوم حاليًا."
|
||||
|
||||
#: classes/VideoDownload.php:366
|
||||
msgid "Conversion of DASH segments is not supported."
|
||||
msgstr "تحويل مقاطع DASH غير مدعوم حاليًا."
|
||||
|
||||
#: templates/inc/footer.tpl:14
|
||||
msgid "Donate using Liberapay"
|
||||
msgstr "تبرع عن طريق Liberapay"
|
||||
|
||||
#: classes/VideoDownload.php:302
|
||||
msgid "Invalid start time: "
|
||||
msgstr "وقت بداية خاطئ:"
|
||||
|
||||
#: classes/VideoDownload.php:309
|
||||
msgid "Invalid end time: "
|
||||
msgstr "وقت نهاية خاطئ:"
|
||||
|
||||
#: templates/index.tpl:28
|
||||
msgid "From"
|
||||
msgstr "من"
|
||||
|
||||
#: templates/index.tpl:29
|
||||
msgid "to"
|
||||
msgstr "إلى"
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"name": "alltube",
|
||||
"description": "HTML GUI for youtube-dl",
|
||||
"version": "1.2.4",
|
||||
"version": "1.2.5",
|
||||
"author": "Pierre Rudloff",
|
||||
"bugs": "https://github.com/Rudloff/alltube/issues",
|
||||
"dependencies": {
|
||||
|
|
|
@ -152,7 +152,11 @@ So AllTube will offer you video-only and audio-only formats in the format list.
|
|||
You then need to merge them together with a tool like ffmpeg.
|
||||
|
||||
You can also enable the experimental remux mode
|
||||
that will merge the best video and the best audio format on the fly.
|
||||
that will merge the best video and the best audio format on the fly:
|
||||
|
||||
```yaml
|
||||
remux: true
|
||||
```
|
||||
|
||||
## Convert videos to something other than MP3
|
||||
|
||||
|
|
|
@ -10,13 +10,13 @@
|
|||
<meta property="og:description" content="{$description|escape}" />
|
||||
{/if}
|
||||
<link rel="stylesheet" href="{base_url}/dist/main.css" />
|
||||
<title>AllTube Download{if isset($title)} - {$title|escape}{/if}</title>
|
||||
<title>{$config->appName}{if isset($title)} - {$title|escape}{/if}</title>
|
||||
<link rel="canonical" href="{$canonical}" />
|
||||
<link rel="icon" href="{base_url}/img/favicon.png" />
|
||||
<meta property="og:title" content="AllTube Download{if isset($title)} - {$title|escape}{/if}" />
|
||||
<meta property="og:title" content="{$config->appName}{if isset($title)} - {$title|escape}{/if}" />
|
||||
<meta property="og:image" content="{base_url}/img/logo.png" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<meta name="twitter:title" content="AllTube Download{if isset($title)} - {$title|escape}{/if}" />
|
||||
<meta name="twitter:title" content="{$config->appName}{if isset($title)} - {$title|escape}{/if}" />
|
||||
<meta name="twitter:image" content="{base_url}/img/logo.png" />
|
||||
<meta name="twitter:creator" content="@Tael67" />
|
||||
<meta name="theme-color" content="#4F4F4F">
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<h1 class="logobis">
|
||||
<a class="logocompatible" href="{base_url}">
|
||||
AllTube Download<span class="logocompatiblemask"><img src="{base_url}/img/logocompatiblemask.png" width="447" height="107" alt="" /></span>
|
||||
<span class="logocompatiblemask"><img src="{base_url}/img/logocompatiblemask.png" width="447" height="107" alt="{$config->appName}" /></span>
|
||||
</a></h1>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{include file='inc/header.tpl'}
|
||||
<main class="main">
|
||||
<div><img class="logo" src="{base_url}/img/logo.png"
|
||||
alt="AllTube Download" width="328" height="284"></div>
|
||||
alt="{$config->appName}" width="328" height="284"></div>
|
||||
<form action="{path_for name="video"}">
|
||||
<label class="labelurl" for="url">
|
||||
{t}Copy here the URL of your video (Youtube, Dailymotion, etc.){/t}
|
||||
|
|
|
@ -451,6 +451,8 @@ class FrontControllerTest extends TestCase
|
|||
*/
|
||||
public function testRedirectWithRtmpStream()
|
||||
{
|
||||
$this->markTestIncomplete('We need to find another RTMP video.');
|
||||
|
||||
$this->config->stream = true;
|
||||
$this->assertRequestIsOk(
|
||||
'redirect',
|
||||
|
|
|
@ -97,7 +97,6 @@ class VideoDownloadTest extends TestCase
|
|||
* @return void
|
||||
* @dataProvider urlProvider
|
||||
* @dataProvider m3uUrlProvider
|
||||
* @dataProvider rtmpUrlProvider
|
||||
* @dataProvider remuxUrlProvider
|
||||
*/
|
||||
public function testGetURL(
|
||||
|
@ -278,7 +277,6 @@ class VideoDownloadTest extends TestCase
|
|||
* @return void
|
||||
* @dataProvider urlProvider
|
||||
* @dataProvider m3uUrlProvider
|
||||
* @dataProvider rtmpUrlProvider
|
||||
*/
|
||||
public function testGetJSON($url, $format)
|
||||
{
|
||||
|
@ -316,7 +314,6 @@ class VideoDownloadTest extends TestCase
|
|||
* @return void
|
||||
* @dataProvider urlProvider
|
||||
* @dataProvider m3uUrlProvider
|
||||
* @dataProvider rtmpUrlProvider
|
||||
* @dataProvider remuxUrlProvider
|
||||
*/
|
||||
public function testGetFilename($url, $format, $filename, $extension)
|
||||
|
@ -349,7 +346,6 @@ class VideoDownloadTest extends TestCase
|
|||
* @return void
|
||||
* @dataProvider urlProvider
|
||||
* @dataProvider m3uUrlProvider
|
||||
* @dataProvider rtmpUrlProvider
|
||||
* @dataProvider remuxUrlProvider
|
||||
*/
|
||||
public function testGetAudioFilename($url, $format, $filename)
|
||||
|
@ -490,6 +486,8 @@ class VideoDownloadTest extends TestCase
|
|||
*/
|
||||
public function testGetRtmpStream($url, $format)
|
||||
{
|
||||
$this->markTestIncomplete('We need to find another RTMP video.');
|
||||
|
||||
$this->assertStream(
|
||||
$this->download->getRtmpStream(
|
||||
$this->download->getJSON($url, $format)
|
||||
|
|
Loading…
Reference in a new issue