Pierre Rudloff
25f33bba56
refactor: Split FrontController into multiple classes
...
Closes #177
2019-04-22 16:51:48 +02:00
Pierre Rudloff
196d0b1338
Merge branch 'develop' of github.com:Rudloff/alltube into develop
2019-04-22 15:32:29 +02:00
Pierre Rudloff
1df06f7c22
refactor: Use route names that make more sense
2019-04-22 15:31:51 +02:00
Pierre Rudloff
660f322edd
build(composer): Upgrade slim/slim to 3.12.1
2019-04-22 15:02:34 +02:00
Pierre Rudloff
790677d13f
build(composer): Dependencies update
...
symfony/yaml, symfony/var-dumper, symfony/process, squizlabs/php_codesniffer
2019-04-22 15:01:53 +02:00
Pierre Rudloff
3b43018b29
docs: Missing docblocks
2019-04-22 00:05:53 +02:00
Pierre Rudloff
5bae668652
test(phpunit): Fix tests that use convert mode
2019-04-21 23:27:36 +02:00
Pierre Rudloff
1edd623c7f
fix: Enforce convert mode
...
So it can't be used by adding "&audio=on" manually
2019-04-21 23:16:27 +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
ebed2cea88
refactor: Avoid varible name conflict
2019-04-21 22:19:44 +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
d4e8e32cd6
test(phpunit): Disable testSetOptionsWithoutUpdate() on AppVeyor
2019-04-21 19:28:58 +02:00
Pierre Rudloff
28b99861c2
test(phpunit): Fix ConfigTest on Windows
2019-04-21 19:14:23 +02:00
Pierre Rudloff
dc4eafe33f
docs: Document magic properties
2019-04-21 19:10:37 +02:00
Pierre Rudloff
4fa604eec3
test(phpunit): Fix ConfigTest setup
2019-04-21 18:56:08 +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
feb8998188
fixup! Typo
2019-04-21 09:21:24 +02:00
Pierre Rudloff
3077872517
Typo
2019-04-21 01:05:19 +02:00
Pierre Rudloff
ece51117e6
We don't need to do that anymore
2019-04-21 01:05:12 +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
ff5f518c73
ci(heroku): Install required locales
...
See https://elements.heroku.com/buildpacks/heroku/heroku-buildpack-locale
2019-04-20 12:47:31 +02:00
Pierre Rudloff
4b92015063
ci(heroku): Force Python version
...
In order to be compatible with the now heroku-18 stack
2019-04-20 12:31:49 +02:00
Pierre Rudloff
5cb8bc30b3
Merge branch 'feature/travis' into develop
2019-04-20 12:28:48 +02:00
Pierre Rudloff
ff95b93c20
fixup! ci(travis): Disable Twitter test on CI
2019-04-20 12:23:18 +02:00
Pierre Rudloff
f4654c7229
test(phpunit): Improve locale-related tests
2019-04-20 12:17:52 +02:00
Pierre Rudloff
0283ef6928
ci(appveyor): Install a specific PHP version
2019-04-20 11:51:07 +02:00
Pierre Rudloff
12747ade59
ci(travis): Disable Twitter test on CI
2019-04-20 11:30:36 +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
c9cc1907ac
ci(appveyor): Force phpunit 6
2019-04-20 01:00:04 +02:00
Pierre Rudloff
4537b661e1
fix: Close playlist streams correctly
2019-04-20 00:37:49 +02:00
Pierre Rudloff
cd623bfa36
ci(appveyor): Fix path to PHP config
2019-04-19 23:30:44 +02:00
Pierre Rudloff
f5408d409a
style(csslint): Remove unused CSS class
2019-04-19 23:28:57 +02:00
Pierre Rudloff
71200c80bc
test(phpunit): Disable Vimeo tests on CI
2019-04-19 23:28:54 +02:00
Pierre Rudloff
9949a0d32b
Merge pull request #213 from hiwelo/accessibility-improvements
...
Accessibility improvements
2019-04-19 23:11:39 +02:00
hiwelo
a5fbb74094
Fixes attributes used to link label & form inputs
2019-04-18 23:04:22 +02:00
Damien Senger
596d5e2994
Adds and fixes labels for video.tpl inputs
...
According to the WCAG success criterias 1.3.1 (Info and relationships),
3.3.2 (Labels or Instructions) and 4.1.2 (Name, Role, Value), labels
or instructions are required when content requires user input.
The bit rate label was replaced by a real label announcing the purpose
of the text input _Custom bitrate_. The existing unit indication is now
using a `<span>` attribute and it is linked to the input using an
`aria-describedby` attribute.
Also, the lack of label for the format conversion selectbox is fixed
by using a specific `aria-label` attribute.
Resources:
- https://www.w3.org/TR/WCAG21/#labels-or-instructions
- https://www.w3.org/TR/WCAG21/#info-and-relationships
- https://www.w3.org/TR/WCAG21/#name-role-value
- https://www.w3.org/TR/WCAG20-TECHS/H44.html
- https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html
- https://www.w3.org/TR/WCAG20-TECHS/ARIA1.html
2019-04-13 13:18:32 +02:00
Damien Senger
ce07a621e5
Improves a11y of password protected video form
...
According to the WCAG success criterias 1.3.1 (Info and relationships),
3.3.2 (Labels or Instructions) and 4.1.2 (Name, Role, Value), labels
or instructions are required when content requires user input.
To do so, this commit adds a label for the password input and hide it
with a CSS visually-hidden method to not alter the design.
Resources:
- https://www.w3.org/TR/WCAG21/#labels-or-instructions
- https://www.w3.org/TR/WCAG21/#info-and-relationships
- https://www.w3.org/TR/WCAG21/#name-role-value
- https://www.w3.org/TR/WCAG20-TECHS/H44.html
- https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html
- https://gomakethings.com/hidden-content-for-better-a11y/
2019-04-13 13:11:09 +02:00
Damien Senger
726e9bf5c1
Adds a label to audio options inputs
...
According to the WCAG success criterias 1.3.1 (Info and relationships),
3.3.2 (Labels or Instructions) and 4.1.2 (Name, Role, Value), labels
or instructions are required when content requires user input.
To do so, this commit adds a label for the "From" and the "To" inputs
displayed when a user chose to get the audio of a file only.
Resources:
- https://www.w3.org/TR/WCAG21/#labels-or-instructions
- https://www.w3.org/TR/WCAG21/#info-and-relationships
- https://www.w3.org/TR/WCAG21/#name-role-value
- https://www.w3.org/TR/WCAG20-TECHS/H44.html
- https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html
2019-04-13 12:57:42 +02:00
Damien Senger
27543f9024
Updates the doctype to be lowercase
2019-04-13 12:51:49 +02:00
Damien Senger
60350747a5
Adds a label to social sharing links
...
According to the WCAG (success criterias 2.4.4 and 4.1.2), the purpose
of each link should be determined from the link text alone or from the
link text together with its programmatically determined link context.
In this case, because there is no text content, we are using
`aria-label` to have an explicit purpose announced to users of
assisting technologies.
Resources:
- https://dequeuniversity.com/rules/axe/3.2/link-name
- https://www.w3.org/TR/WCAG21/#link-purpose-in-context
- https://www.w3.org/TR/WCAG20-TECHS/ARIA8.html
2019-04-13 12:19:11 +02:00