rsstootalizer/Tweetodon/Website/OAuthLogin.pm

46 lines
1.0 KiB
Perl
Raw Normal View History

2017-04-21 14:56:24 +00:00
#!/usr/bin/perl -w
use strict;
use HTML::Template;
use Tweetodon::Website;
use Tweetodon::App;
use Tweetodon::Token;
package Tweetodon::Website::OAuthLogin;
@Tweetodon::Website::OAuthLogin::ISA = qw(Tweetodon::Website);
use Data::Dumper;
use JSON;
sub requires_authentication {
return 0;
}
sub fill_content {
return 1;
}
sub prerender {
my $self = shift;
$self->{"template"} = "OAuthLogin";
$self->{"content_type"} = "html";
$self->{"set_cookie"} = ("Username=".$main::FORM{inputUsername});
$self->{"params"}->{"currentmode"} = "OAuthLogin";
my ($username, $instance);
$main::FORM{inputUsername} =~ /^(.*?)@(.*)$/;
$username = $1;
$instance = $2;
my $app = Tweetodon::App->get_or_create_by_instance($instance);
my $token = Tweetodon::Token->get_by("username", $main::FORM{inputUsername});
print STDERR Dumper($token);
unless ($token){
$self->{params}->{instance_redirect_uri} = $main::config->{app}->{redirect_uris};
$self->{params}->{instance_client_id} = $app->{data}->{instance_client_id};
$self->{params}->{instance} = $instance;
}
}
1;