#!/usr/local/bin/webwork-perl

## $Id$

################################################################
#  Copyright @1995-2002 by Michael E. Gage, Arnold K. Pizer and
#  WeBWorK at the University of Rochester. All rights reserved.
################################################################

BEGIN {
	my $useLibDir = '.';
	if    ($0 =~ m|^(/.*)/|)  { $useLibDir = $1; }
	elsif ($0 =~ m|^(\..*)/|) { $useLibDir = $1; }
	elsif ($0 =~ m|^(.+)/|)   { $useLibDir = "./$1"; }
	unshift @INC, $useLibDir;
}

use webworkInit; # WeBWorKInitLine
use Global;
## pngPrecreateProb.pl
##
## pre-creates dvipng output for each student for a single problem
## so that WeBWorK doesn't have to run dvipng in processProblems

## NOTE: problem set has to be built before precreating...

## this is called with arguments classID setdefinitionfile probnumber
## e.g. pngPrecreateSet.pl demoCourse set1.def 7

my ($courseID,$fileName, $probNumber, $lowerLimit, $upperLimit) = @ARGV;

if( (@ARGV < 3) or (@ARGV > 5) ) {
	print "\nSyntax is: pngPrecreateProb.pl course_name  set_definition_filename  prob_number    or\n";
	print "           pngPrecreateProb.pl course_name  set_definition_filename  prob_number  lowerLimit   or\n";
	print "           pngPrecreateProb.pl course_name  set_definition_filename  prob_number  lowerLimit  upperLimit\n\n";
	print "       (e.g. pngPrecreateProb.pl  demoCourse  set1.def  2  or\n";
	print "       (e.g. pngPrecreateProb.pl  demoCourse  set1.def  2  30000  or\n";
	print "       (e.g. pngPrecreateProb.pl  demoCourse  set1.def  2  30000   60000\n\n";

	print "The Problem is pre created for all psvn's between lower and upper limits if the limits\n";
	print "  are given.\n\n";
	exit(0);
  }

my $scriptDirectory         = getWebworkScriptDirectory();

require "${scriptDirectory}precreate.pl";

precreate('prob', 'HTML_dpng', $courseID, $fileName, $probNumber, $lowerLimit, $upperLimit);

