#!/usr/bin/perl require 5; use strict; #use warnings; use LWP; use HTTP::Cookies; use URI; use CGI::Carp qw( fatalsToBrowser ); use CGI; my $extra_login_string; my $resultContent; my $extra_user; my $extra_pass; my @extra_login; my %userlogins; my $cgi = new CGI; my $user = $cgi->param('aliceuser'); my $password = $cgi->param('alicepass'); my $word = $cgi->param('word'); my $gametype = $cgi->param('gametype'); my $process_extras = $cgi->param('process_additional'); my $additional_users = $cgi->cookie('aliceaccounts'); #check to see if the user and pass are entered if ($user && $password) { $userlogins{$user} = $password; } # check to see if there are extra accounts specified, and #if that they shoudl be processed if ($process_extras && $additional_users) { my @logins = split("---", $additional_users); foreach $extra_login_string (@logins){ @extra_login = split(/\|\|\|/, $extra_login_string); $extra_user = @extra_login[0]; $extra_pass = @extra_login[1]; $userlogins{$extra_user} = $extra_pass; } } foreach $user (keys %userlogins) { my $cookie_jar = HTTP::Cookies->new(); my $login = LWP::UserAgent->new; $login->cookie_jar( $cookie_jar ); my $loginURL = URI->new( 'http://kllc.iefw.net/kllc/rewards/public/login/login.jsp' ); $loginURL->query_form( "UserName" => $user, "x" => "14", "y" => "12", "password" => $userlogins{$user} ); #logs in, get;s cookied and then submits the word of the day my $response = $login->get( $loginURL ); die "Error: ", $response->status_line unless $response->is_success; my $submitWord = LWP::UserAgent->new; $submitWord->cookie_jar( $cookie_jar ); my $wordURL = URI->new( 'http://kllc.iefw.net/kllc/rewards/members/playgame.jsp' ); $wordURL->query_form( "CodeString" => $word, "type" => $gametype, "submit" => "Submit" ); my $giveWord = $submitWord->get( $wordURL ); $resultContent = $resultContent . $giveWord->content(); die "Error: ", $giveWord->status_line unless $giveWord->is_success; } $resultContent =~ s/<\/head>/\n<\/head>/g; print $cgi->header; print $resultContent; exit;