Pierre Rudloff
123a6c5ad9
Move middleware to a subfolder
2020-10-20 23:17:22 +02:00
Pierre Rudloff
496ac212e2
Set Link header in PHP so it can work in a subfolder
2020-10-20 23:10:33 +02:00
Pierre Rudloff
4bcf9566ad
Improve CSP
2020-10-20 00:57:26 +02:00
Pierre Rudloff
f29a61f182
Upgrade pretty-package-versions to 1.5
...
So we can have a cleaner way to get the root package version
2020-10-20 00:22:34 +02:00
Pierre Rudloff
561b6c8370
Make the CSP compatible with debug tools
2020-10-19 23:59:23 +02:00
Pierre Rudloff
e2560cd9cb
Code cleanup
2020-10-19 22:29:30 +02:00
Pierre Rudloff
da93835ea2
Fix error when X-Forwarded-Path is not defined
2020-10-19 22:20:19 +02:00
bellington3
c5298dd24b
Provide basePath support ( #309 )
...
* Provide basePath support
To be able to serve the application via a reverse proxy in a subfolder
smarty needs to be aware of the basepath if any.
* Provide basepath support via X-Forwarded headers
* Fix warnings
* Review adjustments
* Provide support X-Forwarded-Host header
* Use $uri in view factory directly
* Use middleware to set basepath from X-Forwarded-Path header
* Fix invalid type hint in RouterPathMiddleware
* Add "X-Forwarded-Host" to README
2020-10-19 22:18:03 +02:00
Pierre Rudloff
234ecc2c6d
Log handled exceptions
2020-10-18 13:20:06 +02:00
Pierre Rudloff
07f19a80f4
Improve fallback error handling
2020-10-18 13:20:06 +02:00
Pierre Rudloff
9becaeaabe
Fix uglyUrls
2020-10-18 00:59:19 +02:00
Pierre Rudloff
15636aa435
Stop using a singleton for LocaleManager ( #298 )
2020-10-17 22:36:03 +02:00
Pierre Rudloff
fc6bf472b2
Stop using deprecated constant
2020-10-17 22:18:58 +02:00
Pierre Rudloff
7e2afd8221
Stop using a singleton for Config ( #298 )
2020-10-17 22:07:42 +02:00
bellington3
83863bd66c
Provide config toggle to disable the 'convert seek' function ( #311 )
...
* Provide config toggle to disable the 'convert seek' function in the frontend
* Add convertSeek config option to config.example
* Only send from/to if convertSeek is activated
2020-10-17 14:14:36 +02:00
bellington3
2e8350ce1a
Provide config toggle to set 'audio' conversion on as default ( #310 )
...
* Provide config toggle to set 'audio' conversion on as default
* Fix git cherry pick mistake
* Update templates/index.tpl
Co-authored-by: Pierre Rudloff <contact@rudloff.pro>
* Add default audio config option to config.example
Co-authored-by: Pierre Rudloff <contact@rudloff.pro>
2020-09-30 00:07:20 +02:00
Pierre Rudloff
8d15fbdda2
Lint
2020-09-27 16:06:49 +02:00
Pierre Rudloff
b6b4dad2ec
Custom 404 and 405 error pages
2020-07-15 23:17:23 +02:00
Pierre Rudloff
280618bb6b
Use a factory to Config and LocaleManager (see #298 )
2020-07-15 23:05:41 +02:00
Pierre Rudloff
96a75cbf14
Log youtube-dl and ffmpeg commands (fixes #297)
2020-07-15 22:52:38 +02:00
Pierre Rudloff
b02e255cb4
Avoid magic numbers
2020-07-05 11:22:55 +02:00
Pierre Rudloff
281acf3068
Don't exclude RoboFile.php from grumphp scans ( closes #294 )
2020-07-02 22:53:15 +02:00
Pierre Rudloff
d127964eff
Simplify PSR-4 autoload
2020-07-01 22:52:22 +02:00
Pierre Rudloff
683a19b0fb
Remove references to avconv
...
Most distributions now use ffmpeg instead
2020-06-22 23:26:47 +02:00
Pierre Rudloff
f90a08e89c
Stop installing ffmpeg and phantomjs with Composer
...
It is convenient but this a the job of the OS package manager
2020-06-22 23:21:22 +02:00
Pierre Rudloff
251fbe48ca
Add generator meta with the current version
2020-06-21 15:51:28 +02:00
Pierre Rudloff
5c2823e3f1
Move Video class to a separate library
...
+ improve error handling
+ youtube-dl update
2020-06-21 15:12:03 +02:00
Pierre Rudloff
672a1a9754
Disable debug mode if dev dependencies are not installed
2020-06-20 14:14:38 +02:00
Pierre Rudloff
a79c89aea7
fixup! Add fallback to bestvideo and worstvideo ( fixes #288 )
2020-06-20 13:39:35 +02:00
Pierre Rudloff
29756cf290
Add fallback to bestvideo and worstvideo ( fixes #288 )
2020-06-20 13:34:46 +02:00
Pierre Rudloff
ad77d029d3
fixup! Detect locales automatically
2020-05-28 00:33:07 +02:00
Pierre Rudloff
cb20f4e51d
Detect locales automatically
2020-05-28 00:22:30 +02:00
Pierre Rudloff
689264cb35
Fix typo
2020-05-15 21:18:01 +02:00
Pierre Rudloff
7b5e7cb6d9
Disable IDN conversion
2020-05-14 11:55:30 +02:00
0x6470
8f7601edd8
Fix xHamster support, fixes #264 ( #276 )
...
* Fix xhamster support
* Send http headers properly
* added spaces
* convert stdObject to array for comparison
Co-authored-by: Pierre Rudloff <contact@rudloff.pro>
2020-05-14 10:59:59 +02:00
Pierre Rudloff
e81cbe70be
Lint
2020-05-14 00:26:36 +02:00
Pierre Rudloff
1d9a709444
Remove obsolete phpstan rule
2020-05-14 00:25:23 +02:00
Pierre Rudloff
6adc1df213
phpstan update
...
Better typying
2020-05-13 22:28:05 +02:00
Pierre Rudloff
74db3b9ad0
Update guzzle to 6.5
2020-05-13 21:39:38 +02:00
Pierre Rudloff
71d49ad74f
Lint
2020-05-13 21:18:32 +02:00
Pierre Rudloff
a478aea3ca
Stop using pathinfo ( fixes #272 )
...
Because it does not handle UTF-8 filenames correctly
2020-04-09 20:46:14 +02:00
Pierre Rudloff
d910c2b47f
New Turkish locale (provided by @urasbey)
2020-03-19 10:30:57 +01:00
daCaPo
e2d284399a
Switch from rg3/youtube-dl to ytdl-org/youtube-dl
2020-03-19 10:12:18 +01:00
Pierre Rudloff
6b6e571b71
Explain that the Video class accepts any youtube-dl format string (see #260 )
2020-03-19 10:01:55 +01:00
Pierre Rudloff
09bbe3c196
fixup! Upgrade jawira/case-converter ( fixes #262 )
2020-02-23 17:30:34 +01:00
Pierre Rudloff
0c18535ac1
Useless parameter
2020-02-23 17:26:21 +01:00
jagub2
c5a8ec7697
add Polish translation
2020-01-25 01:36:09 +01:00
jagub2
2d7e29a526
fix video remuxing
2020-01-24 00:34:40 +01:00
Pierre Rudloff
2f3ab77e8b
Stop using grunt and use grumphp and robo instead
2019-11-30 16:34:35 +01:00
Pierre Rudloff
904e18c220
Switch to Symfony 5
2019-11-29 23:15:03 +01:00
Pierre Rudloff
cc55fabe14
Remove remaining gettext functions
2019-11-29 22:56:41 +01:00
Pierre Rudloff
850fc80622
Add support for variables in translation ( #250 )
2019-11-29 22:13:11 +01:00
Pierre Rudloff
7772de5394
Fix tests ( #250 )
2019-11-28 00:04:05 +01:00
Pierre Rudloff
a5bd827d21
Switch to symfony/translation for translations ( #250 )
2019-11-27 23:15:49 +01:00
Pierre Rudloff
0b1ce90f47
New debug option
2019-11-27 21:41:15 +01:00
Pierre Rudloff
8521b03cc9
Allow every config options to be set with environment variables
2019-11-10 18:14:15 +01:00
Pierre Rudloff
9fc21b2419
fix: always use headers provided by youtube-dl when streaming
2019-10-16 23:00:05 +02:00
Pierre Rudloff
a2f5f90e03
fixup! style(phpcs): Switch to PSR-12
2019-10-03 21:41:54 +02:00
Pierre Rudloff
44bf858c35
style(phpcs): Switch to PSR-12
...
https://www.php-fig.org/psr/psr-12/
2019-10-03 21:24:12 +02:00
Pierre Rudloff
6cd8eeed4a
fix: Use cookies provided by youtube-dl
...
Fixes #225
2019-09-26 21:36:40 +02:00
Pierre Rudloff
dcf65cadb0
fix: Make sure array_combine returns an array
2019-06-17 23:19:18 +02:00
Pierre Rudloff
d35801d9a0
fixup! feat: Make generic formats dynamic
2019-05-08 19:55:18 +02:00
Pierre Rudloff
43d5cc1dbb
feat: Make generic formats dynamic
...
See #223
2019-05-08 19:49:18 +02:00
Pierre Rudloff
296a5f96b4
fix: Fix YoutubeStream range condition
2019-04-28 21:11:08 +02:00
Pierre Rudloff
b61287523d
refactor: StreamInterface::close() should not return anything
2019-04-28 15:57:21 +02:00
Pierre Rudloff
5e9768e0e7
fix: Validate config only after the options have been set
...
To avoid an exception when default options are not valid but the new options are.
2019-04-28 15:52:01 +02:00
Pierre Rudloff
756ff36653
fix: Wrong variable name
2019-04-26 20:38:14 +02:00
Pierre Rudloff
a1b401c148
refactor: Use less confusing variable names in YoutubeStream
2019-04-22 21:55:45 +02:00
Pierre Rudloff
7bf2510dd2
test(phpunit): Better tests for streams
2019-04-22 21:53:04 +02:00
Pierre Rudloff
84e9e86d28
style(styleci): Lint
2019-04-22 21:08:36 +02:00
Pierre Rudloff
b7bcc24320
fix: Wrong variable name
2019-04-22 21:07:36 +02:00
Pierre Rudloff
e13404903b
refactor: Move exceptions and streams to seperate namespaces
2019-04-22 21:06:05 +02:00
Pierre Rudloff
1a6ff90eac
feat: Split Youtube downloads in smaller chunks
...
Fixes #217
2019-04-22 20:20:04 +02:00
Pierre Rudloff
bba2087a55
style(styleci): Lint
2019-04-22 17:04:59 +02:00
Pierre Rudloff
1387d836dc
refactor: New Session class
...
So that session is shared between classes and does not get overwritten
2019-04-22 17:03:54 +02:00
Pierre Rudloff
3b43018b29
docs: Missing docblocks
2019-04-22 00:05:53 +02:00
Pierre Rudloff
70475f83d4
feat: Add a way to convert an entire playlist
...
Closes #194
2019-04-21 22:56:43 +02:00
Pierre Rudloff
4db519c2ef
fixup! fix: Don't use the $url property
2019-04-21 22:40:54 +02:00
Pierre Rudloff
97a7830196
refactor: Reuse Video::getHttpResponse() where possible
2019-04-21 22:38:27 +02:00
Pierre Rudloff
e93ab7ed13
feat: Use ZIP files for playlist archives
...
It is more widely supported and could be later used for #194
2019-04-21 22:34:45 +02:00
Pierre Rudloff
226f1b8380
fix: Don't use the $url property
...
It is not reliable
2019-04-21 22:20:05 +02:00
Pierre Rudloff
3ca84e144e
refactor: We don't need this check anymore
2019-04-21 21:36:14 +02:00
Pierre Rudloff
61cb73dc59
refactor: Fix some types and unused variables
2019-04-21 19:51:16 +02:00
Pierre Rudloff
dc4eafe33f
docs: Document magic properties
2019-04-21 19:10:37 +02:00
Pierre Rudloff
51eaf192b1
refactor: Don't mix static and dynamic methods
2019-04-21 18:53:23 +02:00
Pierre Rudloff
06a631c892
fixup! refactor: New Video class
2019-04-21 18:35:24 +02:00
Pierre Rudloff
4c9af8ad1d
refactor: New Video class
...
The news class provides a cleaner object-oriented logic
BREAKING CHANGE: The VideoDownload class has been removed and the Config constructor is now private
2019-04-21 18:30:02 +02:00
Pierre Rudloff
3077872517
Typo
2019-04-21 01:05:19 +02:00
Pierre Rudloff
586f20adb4
style(styleci): Lint
2019-04-21 00:58:04 +02:00
Pierre Rudloff
ddc27a8a2c
refactor: New PlaylistArchiveVideo class
...
Cleaner way to handle PlaylistArchiveStream info about videos
2019-04-21 00:56:12 +02:00
Pierre Rudloff
f9bf3b8d47
refactor: Use a StreamInterface for PlaylistArchiveStream
...
It is much cleaner
2019-04-21 00:35:43 +02:00
Pierre Rudloff
07261db27b
fix: Don't call PlaylistArchiveStream parent constructor
...
Because it messes with the output buffer
Fixes #215
2019-04-20 11:27:13 +02:00
Pierre Rudloff
7ab4c55550
docs: Add comments to some tricky parts
2019-04-20 01:19:55 +02:00
Pierre Rudloff
4537b661e1
fix: Close playlist streams correctly
2019-04-20 00:37:49 +02:00
Pierre Rudloff
ac3b768b50
refactor(phpstan): Various code improvements
2019-03-31 16:25:17 +02:00
Pierre Rudloff
5835bd67a5
refactor(phpstan): Various code improvements
2019-03-30 18:21:45 +01:00
Pierre Rudloff
0ed788560c
refactor: PlaylistArchiveStream should call parent constructor
2019-03-30 18:10:51 +01:00
Pierre Rudloff
9322bd5f14
style(StyleCI): Lint PHP
2019-01-06 17:00:12 +01:00
Pierre Rudloff
c6cf05f8ec
refactor: Move app name to a config variable
...
See #205
2019-01-06 16:59:16 +01:00
Pierre Rudloff
59aeb753ed
feat: Add support for Arabic locale
2018-12-07 18:19:00 +01:00