#!perl ################################################################################ # WeBWorK mod_perl (c) 1995-2002 WeBWorK Team, Univeristy of Rochester # $Id: global.conf.dist,v 1.3 2002-11-26 21:49:51 sh002i Exp $ ################################################################################ # This file is used to set up the default WeBWorK course environment for all # requests. Values may be overwritten by the course.conf for a specific course. # All package variables set in this file are added to the course environment. # If you wish to set a variable here but omit it from the course environment, # use the "my" keyword. The following variables are available to this file: # # $webworkRoot directory that contains the WeBWorK distribution # $courseName name of the course being used ################################################################################ # WeBWorK settings ################################################################################ %webworkDirs = ( root => "$webworkRoot", bin => "$webworkRoot/bin", conf => "$webworkRoot/conf", courses => "$webworkRoot/courses", lib => "$webworkRoot/lib", logs => "$webworkRoot/logs", macros => "$webworkRoot/macros", tmp => "$webworkRoot/tmp", ); %webworkFiles = ( environment => "$webworkDirs{conf}/global.conf", hardcopySnippets => { preamble => "$webworkDirs{conf}/hardcopyPreamble.tex", setHeader => "$webworkDirs{conf}/hardcopySetHeader.pg", problemDivider => "$webworkDirs{conf}/hardcopyProblemDivider.tex", setFooter => "$webworkDirs{conf}/hardcopySetFooter.pg", setDivider => "$webworkDirs{conf}/hardcopySetDivider.tex", postamble => "$webworkDirs{conf}/hardcopyPostamble.tex", }, screenSnippets => { setHeader => "$webworkDirs{conf}/screenSetHeader.pg", }, logs => { timing => "$webworkDirs{logs}/timing.log", transaction => "$courseDirs{logs}/transaction.log", }, ); my $webworkURLRoot = "/webwork"; # *** # this should be detected! %webworkURLs = ( root => "$webworkURLRoot", htdocs => "/webwork_files", docs => "http://webhost.math.rochester.edu/webworkdocs/docs", ); ################################################################################ # Default course-specific settings ################################################################################ my $courseRoot = "$webworkDirs{courses}/$courseName"; %courseDirs = ( root => "$courseRoot", DATA => "$courseRoot/DATA", auth_DATA => "$courseRoot/DATA/.auth", html => "$courseRoot/html", html_images => "$courseRoot/html/images", html_temp => "$courseRoot/html/tmp", logs => "$courseRoot/logs", scoring => "$courseRoot/scoring", templates => "$courseRoot/templates", macros => "$courseRoot/templates/macros", ); %courseFiles = ( environment => "$courseDirs{root}/course.conf", ); my $courseURLRoot = "$webworkURLs{htdocs}/courses/$courseName"; %courseURLs = ( base => "$courseURLRoot", # *** # this should be "root"? html => "$courseURLRoot", html_temp => "$courseURLRoot/tmp", ); ################################################################################ # Other site-specific options ################################################################################ %mail = ( smtpServer => "mail.math.rochester.edu", smtpSender => "webwork\@math.rochester.edu", ); %externalPrograms = ( mv => "/bin/mv", # *** is this used? probably not... tth => "/usr/local/bin/tth", pdflatex => "/usr/local/bin/pdflatex", latex => "/usr/local/bin/latex", dvipng => "/usr/local/bin/dvipng -mode ljfivemp -D600 -Q6 -x1000.5 -bgTransparent", gif2eps => "$webworkDirs{bin}/gif2eps", png2eps => "$webworkDirs{bin}/png2eps", gif2png => "$webworkDirs{bin}/gif2png", ); ################################################################################ # Frontend options ################################################################################ %templates = ( system => "$webworkDirs{conf}/barebones.template", ); # $sessionKeyTimeout defines seconds of inactivity before a key expires $sessionKeyTimeout = 60*30; # Practice users are users who's names start with $practiceUser # (you can comment this out to remove practice user support) $practiceUserPrefix = "practice"; # There is a practice user who can be logged in multiple times. He's # commented out by default, though, so you don't hurt yourself. It is # kindof a backdoor to the practice user system, since he doesn't have a # password. Come to think of it, why do we even have this?! #$debugPracticeUser = "practice666"; ################################################################################ # Database and session ################################################################################ %dbInfo = ( auth_type => "GDBM", auth_passwd_file => "$courseDirs{auth_DATA}/$courseName\_password_DB", auth_perm_file => "$courseDirs{auth_DATA}/$courseName\_permissions_DB", auth_keys_file => "$courseDirs{auth_DATA}/keys", wwdb_type => "GDBM", wwdb_file => "$courseDirs{DATA}/$courseName\_webwork_DB", cldb_type => "GDBM", cldb_file => "$courseDirs{DATA}/$courseName\_classlist_DB", psvn_digits => 5, ); # This lets you specify a minimum permission level needed to perform # certain actions. In the current system, >=10 will allow a professor # to perform the action, >=5 will allow a TA to, and >=0 will allow a # student to perform an action (almost never what you want). %permissionLevels = ( "become_student" => 10, ); ################################################################################ # PG translation options ################################################################################ %pg = ( options => { # default translation options displayMode => "images", showOldAnswers => 1, showCorrectAnswers => 0, showHints => 0, showSolutions => 0, catchWarnings => 1, # default grader grader => "avg_problem_grader", }, # modules lists module names and the packages each contains modules => [ [qw(DynaLoader)], [qw(Exporter)], [qw(GD)], [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)], [qw(AnswerHash AnswerEvaluator)], [qw(WWPlot)], # required by Circle (and others) [qw(Circle)], [qw(Complex)], [qw(Complex1)], [qw(Distributions)], [qw(Fraction)], [qw(Fun)], [qw(Hermite)], [qw(Label)], [qw(List)], [qw(Match)], [qw(MatrixReal1)], # required by Matrix [qw(Matrix)], [qw(Multiple)], [qw(PGrandom)], [qw(Regression)], [qw(Select)], [qw(Units)], [qw(VectorField)], ], # defaults used by answer evaluators ansEvalDefaults => { functAbsTolDefault => .001, functLLimitDefault => .0000001, functMaxConstantOfIntegration => 1E8, functNumOfPoints => 3, functRelPercentTolDefault => .1, functULimitDefault => .9999999, functVarDefault => "x", functZeroLevelDefault => 1E-14, functZeroLevelTolDefault => 1E-12, numAbsTolDefault => .001, numFormatDefault => "", numRelPercentTolDefault => .1, numZeroLevelDefault => 1E-14, numZeroLevelTolDefault => 1E-12, }, );