aboutsummaryrefslogtreecommitdiffstats
path: root/lib/WWW/FairViewer.pm
diff options
context:
space:
mode:
authorJesús <heckyel@hyperbola.info>2020-11-09 16:21:42 -0500
committerJesús <heckyel@hyperbola.info>2020-11-09 16:21:42 -0500
commitdbf55fce0e37447df68d9a69d21bc5c5bbe97992 (patch)
tree86cc088e0547004710af359c4366081f3f744b84 /lib/WWW/FairViewer.pm
parent9838963cf2aab02241a37cee7d305025dc694d90 (diff)
downloadfair-viewer-dbf55fce0e37447df68d9a69d21bc5c5bbe97992.tar.lz
fair-viewer-dbf55fce0e37447df68d9a69d21bc5c5bbe97992.tar.xz
fair-viewer-dbf55fce0e37447df68d9a69d21bc5c5bbe97992.zip
Update from upstream
- Documented the configuration options in `man fair-viewer`. - Fixed the `--page=i` option. - Added the `--dimension=3d` option. - Added the `--license=creative_commons` option. - Some code clean-up.
Diffstat (limited to 'lib/WWW/FairViewer.pm')
-rw-r--r--lib/WWW/FairViewer.pm42
1 files changed, 9 insertions, 33 deletions
diff --git a/lib/WWW/FairViewer.pm b/lib/WWW/FairViewer.pm
index 8d8abff..d11286d 100644
--- a/lib/WWW/FairViewer.pm
+++ b/lib/WWW/FairViewer.pm
@@ -54,25 +54,15 @@ my %valid_options = (
order => {valid => [qw(relevance rating upload_date view_count)], default => undef},
date => {valid => [qw(hour today week month year)], default => undef},
- channelId => {valid => qr/^[-\w]{2,}\z/, default => undef},
- channelType => {valid => [qw(any show)], default => undef},
+ channelId => {valid => qr/^[-\w]{2,}\z/, default => undef},
# Video only options
- videoCaption => {valid => [qw(1 true)], default => undef},
- videoDefinition => {valid => [qw(high standard)], default => undef},
- videoCategoryId => {valid => qr/^\d+\z/, default => undef},
- videoDimension => {valid => [qw(2d 3d)], default => undef},
- videoDuration => {valid => [qw(short long)], default => undef},
- videoEmbeddable => {valid => [qw(true)], default => undef},
- videoLicense => {valid => [qw(creative_commons)], default => undef},
- videoSyndicated => {valid => [qw(true)], default => undef},
- eventType => {valid => [qw(completed live upcoming)], default => undef},
- chart => {valid => [qw(mostPopular)], default => 'mostPopular'},
-
- region => {valid => qr/^[A-Z]{2}\z/i, default => undef},
- relevanceLanguage => {valid => qr/^[a-z]+(?:\-\w+)?\z/i, default => undef},
- safeSearch => {valid => [qw(none moderate strict)], default => undef},
- videoType => {valid => [qw(episode movie)], default => undef},
+ videoCaption => {valid => [qw(1 true)], default => undef},
+ videoDefinition => {valid => [qw(high standard)], default => undef},
+ videoDimension => {valid => [qw(2d 3d)], default => undef},
+ videoDuration => {valid => [qw(short long)], default => undef},
+ videoLicense => {valid => [qw(creative_commons)], default => undef},
+ region => {valid => qr/^[A-Z]{2}\z/i, default => undef},
comments_order => {valid => [qw(top new)], default => 'top'},
subscriptions_order => {valid => [qw(alphabetical relevance unread)], default => undef},
@@ -233,23 +223,9 @@ sub new {
sub page_token {
my ($self) = @_;
-
my $page = $self->get_page;
-
- # Don't generate the token for the first page
- return undef if $page == 1;
-
- my $index = $page * $self->get_maxResults() - $self->get_maxResults();
- my $k = int($index / 128) - 1;
- $index -= 128 * $k;
-
- my @f = (8, $index);
- if ($k > 0 or $index > 127) {
- push @f, $k + 1;
- }
-
- require MIME::Base64;
- MIME::Base64::encode_base64(pack('C*', @f, 16, 0)) =~ tr/=\n//dr;
+ return undef if ($page == 1);
+ return $page;
}
=head2 escape_string($string)