#!/usr/bin/env perl

=head1 NAME

wwsh - command-line interface to the WeBWorK libraries.

=cut

use strict;
use warnings;

BEGIN {
	use Mojo::File qw(curfile);
	use Env qw(WEBWORK_ROOT);

	$WEBWORK_ROOT = curfile->dirname->dirname;
}

our $ce;
our $db;

use lib "$ENV{WEBWORK_ROOT}/lib";

use WeBWorK::CourseEnvironment;
use WeBWorK::DB;
use Data::Dumper;

my $courseID = shift @ARGV;
my $scriptFile   = shift @ARGV;

unless ($courseID and $scriptFile) {
	die "usage: $0 courseID  scriptFile\n";
}

die 'You must pass scriptFile in as a path to the file' unless -e $scriptFile;

$ce = WeBWorK::CourseEnvironment->new({
	webwork_dir => $ENV{WEBWORK_ROOT},
	courseName  => $courseID,
});


$db = WeBWorK::DB->new($ce);

print <<'EOF';
wwsh - The WeBWorK Shell
Available objects: $ce (WeBWorK::CourseEnvironment)
                   $db (WeBWorK::DB)
Available modules: Data::Dumper

EOF
print "courseID: $courseID and scriptFile:  $scriptFile\n--------------------------------\n";
do $scriptFile;
if ($@) {
	print "errors ", $@,"\n" ;
} else {
	print "--------------------------------\ndone\n";
}


