[system] / trunk / webwork-modperl / conf / global.conf.dist Repository:
ViewVC logotype

View of /trunk/webwork-modperl/conf/global.conf.dist

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2410 - (download) (annotate)
Fri Jun 25 16:29:20 2004 UTC (8 years, 10 months ago) by jj
File size: 13780 byte(s)
Added comment on how to skip the equation cache.

    1 #!perl
    2 ################################################################################
    3 # WeBWorK Online Homework Delivery System
    4 # Copyright © 2000-2003 The WeBWorK Project, http://openwebwork.sf.net/
    5 # $CVSHeader: webwork-modperl/conf/global.conf.dist,v 1.77 2004/06/24 17:21:23 sh002i Exp $
    6 #
    7 # This program is free software; you can redistribute it and/or modify it under
    8 # the terms of either: (a) the GNU General Public License as published by the
    9 # Free Software Foundation; either version 2, or (at your option) any later
   10 # version, or (b) the "Artistic License" which comes with this package.
   11 #
   12 # This program is distributed in the hope that it will be useful, but WITHOUT
   13 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
   14 # FOR A PARTICULAR PURPOSE.  See either the GNU General Public License or the
   15 # Artistic License for more details.
   16 ################################################################################
   17 
   18 # This file is used to set up the default WeBWorK course environment for all
   19 # requests. Values may be overwritten by the course.conf for a specific course.
   20 # All package variables set in this file are added to the course environment.
   21 # If you wish to set a variable here but omit it from the course environment,
   22 # use the "my" keyword. The following variables are available to this file:
   23 #
   24 #         $webworkRoot    directory that contains the WeBWorK distribution
   25 #         $webworkURLRoot base URL handled by Apache::WeBWorK
   26 #         $pgRoot         directory that contains the PG distribution
   27 #         $courseName     name of the course being used
   28 
   29 ################################################################################
   30 # WeBWorK settings
   31 ################################################################################
   32 
   33 %webworkDirs = (
   34   root          => "$webworkRoot",
   35   DATA          => "$webworkRoot/DATA",
   36   uploadCache   => "$webworkRoot/DATA/uploads",
   37   bin           => "$webworkRoot/bin",
   38   conf          => "$webworkRoot/conf",
   39   courses       => "$webworkRoot/courses",
   40   htdocs        => "$webworkRoot/htdocs",
   41   htdocs_temp   => "$webworkRoot/htdocs/tmp",
   42   equationCache => "$webworkRoot/htdocs/tmp/equations",
   43   local_help    => "$webworkRoot/htdocs/helpFiles",
   44   lib           => "$webworkRoot/lib",
   45   logs          => "$webworkRoot/logs",
   46   macros        => "$pgRoot/macros",
   47   tmp           => "$webworkRoot/tmp",
   48 );
   49 
   50 %webworkFiles = (
   51   environment        => "$webworkDirs{conf}/global.conf",
   52   hardcopySnippets   => {
   53     preamble       => "$webworkDirs{conf}/snippets/hardcopyPreamble.tex",
   54     setHeader      => "$webworkDirs{conf}/snippets/setHeader.pg",  # hardcopySetHeader.pg",
   55     problemDivider => "$webworkDirs{conf}/snippets/hardcopyProblemDivider.tex",
   56     setFooter      => "$webworkDirs{conf}/snippets/hardcopySetFooter.pg",
   57     setDivider     => "$webworkDirs{conf}/snippets/hardcopySetDivider.tex",
   58     userDivider    => "$webworkDirs{conf}/snippets/hardcopyUserDivider.tex",
   59     postamble      => "$webworkDirs{conf}/snippets/hardcopyPostamble.tex",
   60   },
   61   screenSnippets => {
   62     setHeader => "$webworkDirs{conf}/snippets/setHeader.pg",       # screenSetHeader.pg",
   63   },
   64   logs => {
   65     timing         => "$webworkDirs{logs}/timing.log",
   66   },
   67   # Set this to "" if you don't want to use the equation cache file
   68   equationCacheDB => "$webworkDirs{DATA}/equationcache",
   69 );
   70 
   71 %webworkURLs = (
   72   root          => "$webworkURLRoot",
   73   home          => "/webwork2_files/index.html",
   74   htdocs        => "/webwork2_files",
   75   htdocs_temp   => "/webwork2_files/tmp",
   76   equationCache => "/webwork2_files/tmp/equations",
   77   docs          => "http://webhost.math.rochester.edu/webworkdocs/docs",
   78   local_help    => "/webwork2_files/helpFiles",
   79   oldProf       => "/webwork1/profLogin.pl",
   80   bugReporter   => "http://bugs.webwork.rochester.edu/enter_bug.cgi?product=WeBWorK%20mod_perl",
   81   jsMath        => "/webwork2_files/jsMath/jsMath.js",
   82   asciimath     => "/webwork2_files/ASCIIMathML/ASCIIMathML.js",
   83 );
   84 
   85 ################################################################################
   86 # Default course-specific settings
   87 ################################################################################
   88 
   89 my $courseRoot = "$webworkDirs{courses}/$courseName";
   90 %courseDirs = (
   91   root        => "$courseRoot",
   92   DATA        => "$courseRoot/DATA",
   93   auth_DATA   => "$courseRoot/DATA/.auth",
   94   html        => "$courseRoot/html",
   95   html_images => "$courseRoot/html/images",
   96   html_temp   => "$courseRoot/html/tmp",
   97   logs        => "$courseRoot/logs",
   98   scoring     => "$courseRoot/scoring",
   99   templates   => "$courseRoot/templates",
  100   macros      => "$courseRoot/templates/macros",
  101   email       => "$courseRoot/templates/email",
  102 );
  103 
  104 %courseFiles = (
  105   environment => "$courseDirs{root}/course.conf",
  106   motd        => "$courseDirs{templates}/motd.txt",
  107   logs => {
  108     answer_log  => "$courseDirs{logs}/answer_log",
  109   },
  110   course_info => "course_info.txt",  # path relative to templates directory
  111   login_info  => "login_info.txt",   # path relative to templates directory
  112 );
  113 
  114 # quick hack to fix transaction logging. blah.
  115 $webworkFiles{logs}->{transaction}    = "$courseDirs{logs}/transaction.log";
  116 $webworkFiles{logs}->{pastAnswerList} = "$courseDirs{logs}/past_answers.log";
  117 
  118 my $courseURLRoot = "/webwork2_course_files/$courseName";
  119 %courseURLs = (
  120   root      => "$courseURLRoot",
  121   html      => "$courseURLRoot",
  122   html_temp => "$courseURLRoot/tmp",
  123 );
  124 
  125 ################################################################################
  126 # Other site-specific options
  127 ################################################################################
  128 
  129 %mail = (
  130   smtpServer => "mail.math.rochester.edu",
  131   smtpSender => "webwork\@math.rochester.edu",
  132 
  133   # allowedRecipients defines addresses that the PG system is allowed to
  134   # send mail to. this prevents subtle PG exploits. This should be set
  135   # in course.conf to the addresses of professors of each course. Sending
  136   # mail from the PG system (i.e. questionaires, essay questions) will
  137   # fail if this is not set somewhere (either here or in course.conf).
  138   #allowedRecipients => [
  139   # 'prof1@host.yourdomain.edu',
  140   # 'prof2@host.yourdomain.edu',
  141   #],
  142 
  143   # if defined, feedbackRecipients overrides the list of recipients for
  144   # feedback email. It's appropriate to set this in the course.conf for
  145   # specific courses, but probably not in global.conf. if not defined,
  146   # mail is sent to all professors and TAs for a given course
  147   #feedbackRecipients => [
  148   # 'prof1@host.yourdomain.edu',
  149   # 'prof2@host.yourdomain.edu',
  150   #],
  151 
  152   # feedbackVerbosity:
  153   #  0: send only the feedback comment and context link
  154   #  1: as in 0, plus user, set, problem, and PG data
  155   #  2: as in 1, plus the problem environment (debugging data)
  156   feedbackVerbosity => 1,
  157 
  158   # defines the size of the Mail Merge editor window
  159   # FIXME: should this be here? it's UI, not mail
  160   # FIXME: replace this with the auto-size method that TWiki uses
  161   editor_window_rows    => 15,
  162   editor_window_columns => 100,
  163 );
  164 
  165 %externalPrograms = (
  166   mkdir    => "/bin/mkdir",
  167   tth      => "/usr/local/bin/tth",
  168   pdflatex => "/usr/local/bin/pdflatex",
  169   latex    => "/usr/local/bin/latex",
  170   dvipng   => "/usr/local/bin/dvipng",
  171   gif2eps  => "$webworkDirs{bin}/gif2eps",
  172   png2eps  => "$webworkDirs{bin}/png2eps",
  173   gif2png  => "$webworkDirs{bin}/gif2png",
  174   mysql    => "/usr/local/bin/mysql",
  175 );
  176 
  177 %siteDefaults = (
  178   status => {
  179       audit => "Audit",
  180       A => "Audit",
  181       drop  => "Drop",
  182       D => "Drop",
  183       withdraw => "Drop",
  184       current => "Enrolled",
  185       C => "Enrolled",
  186       enrolled => "Enrolled",
  187   },
  188 );
  189 
  190 ################################################################################
  191 # Frontend options
  192 ################################################################################
  193 
  194 %templates = (
  195   system => "$webworkDirs{conf}/templates/ur.template",
  196 );
  197 
  198 ################################################################################
  199 # Database options
  200 ################################################################################
  201 
  202 # Several database are defined in the file conf/database.conf and stored in the
  203 # hash %dbLayouts.
  204 include "conf/database.conf";
  205 
  206 # Select the default database layout. This can be overridden in the course.conf
  207 # file of a particular course.
  208 #$dbLayoutName = "sql";
  209 $dbLayoutName = "gdbm";
  210 
  211 *dbLayout = $dbLayouts{$dbLayoutName};
  212 
  213 ################################################################################
  214 # Problem library options
  215 ################################################################################
  216 
  217 %problemLibrary = (
  218   root => "", # set to the top of the problem library, if its installed
  219   sourceSQL   => "ProblemLibrary",
  220   userSQL     => "webworkRead",
  221   passwordSQL => "",
  222 );
  223 
  224 ################################################################################
  225 # Authorization system
  226 ################################################################################
  227 
  228 # This lets you specify a minimum permission level needed to perform certain
  229 # actions.  In the current system, >=10 will allow a professor to perform the
  230 # action, >=5 will allow a TA to, and >=0 will allow a student to perform an
  231 # action (almost never what you want).
  232 my $student = 0;
  233 my $ta = 5;
  234 my $professor = 10;
  235 %permissionLevels = (
  236   report_bugs                    => $student,
  237   view_multiple_sets             => $ta,
  238   view_unopened_sets             => $ta,
  239   view_unpublished_sets          => $ta,
  240   view_answers                   => $ta,
  241   become_student                 => $professor,
  242   access_instructor_tools        => $ta,
  243   create_and_delete_problem_sets => $professor,
  244   modify_problem_sets            => $professor,
  245   assign_problem_sets            => $professor,
  246   modify_student_data            => $professor,
  247   score_sets                     => $professor,
  248   send_mail                      => $professor,
  249   modify_classlist_files         => $professor,
  250   modify_set_def_files           => $professor,
  251   modify_scoring_files           => $professor,
  252   create_and_delete_courses      => $professor,
  253   fix_course_databases           => $professor,
  254 );
  255 
  256 ################################################################################
  257 # Session options
  258 ################################################################################
  259 
  260 # $sessionKeyTimeout defines seconds of inactivity before a key expires
  261 $sessionKeyTimeout = 60*30;
  262 
  263 # $sessionKeyLength defines the length (in characters) of the session key
  264 $sessionKeyLength = 40;
  265 
  266 # @sessionKeyChars lists the legal session key characters
  267 @sessionKeyChars = ('A'..'Z', 'a'..'z', '0'..'9', '.', '^', '/', '!', '*');
  268 
  269 # Practice users are users who's names start with $practiceUser
  270 # (you can comment this out to remove practice user support)
  271 $practiceUserPrefix = "practice";
  272 
  273 # There is a practice user who can be logged in multiple times.  He's
  274 # commented out by default, though, so you don't hurt yourself.  It is
  275 # kindof a backdoor to the practice user system, since he doesn't have a
  276 # password.  Come to think of it, why do we even have this?!
  277 #$debugPracticeUser = "practice666";
  278 
  279 ################################################################################
  280 # PG translation options
  281 ################################################################################
  282 
  283 %pg = (
  284   # available display modes
  285   displayModes => [ qw(plainText formattedText images jsMath asciimath) ],
  286   # pg options
  287   options => {
  288     # default translation options
  289     displayMode        => "images",
  290     showOldAnswers     => 1,
  291     showCorrectAnswers => 0,
  292     showHints          => 0,
  293     showSolutions      => 0,
  294     catchWarnings      => 0, # there's a global warning catcher now
  295     # default grader
  296     grader => "avg_problem_grader",
  297   },
  298   # options for various renderers
  299   renderers => {
  300     "WeBWorK::PG::Remote" => {
  301       proxy => "http://localhost:21000/RenderD"
  302     }
  303   },
  304   # currently selected renderer
  305   renderer => "WeBWorK::PG::Local",
  306   #renderer => "WeBWorK::PG::Remote",
  307   # directories used by PG
  308   directories => {
  309     # directories used only by PG
  310     root   => "$pgRoot",
  311     lib    => "$pgRoot/lib",
  312     macros => "$pgRoot/macros",
  313   },
  314   # this can be customized in the course.conf file
  315   specialPGEnvironmentVars => {
  316     PRINT_FILE_NAMES_FOR   => [ qw(professor) ],
  317     CAPA_Tools             => "$courseDirs{macros}/CAPA_Tools/",
  318     CAPA_MCTools           => "$courseDirs{macros}/CAPA_MCTools/",
  319     CAPA_Graphics_URL      => "$courseURLs{html}/CAPA_Graphics/",
  320     CAPA_GraphicsDirectory => "$courseDirs{html}/CAPA_Graphics/",
  321     onTheFlyImageSize  => 400,
  322   },
  323   # modules lists module names and the packages each contains
  324   modules => [
  325     [qw(DynaLoader)],
  326     [qw(Exporter)],
  327     [qw(GD)],
  328 
  329     [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)],
  330     [qw(AnswerHash AnswerEvaluator)],
  331     [qw(WWPlot)], # required by Circle (and others)
  332     [qw(Circle)],
  333     [qw(Complex)],
  334     [qw(Complex1)],
  335     [qw(Distributions)],
  336     [qw(Fraction)],
  337     [qw(Fun)],
  338     [qw(Hermite)],
  339     [qw(Label)],
  340     [qw(List)],
  341     [qw(Match)],
  342     [qw(MatrixReal1)], # required by Matrix
  343     [qw(Matrix)],
  344     [qw(Multiple)],
  345     [qw(PGrandom)],
  346     [qw(Regression)],
  347     [qw(Select)],
  348     [qw(Units)],
  349     [qw(VectorField)],
  350   ],
  351   # defaults used by answer evaluators
  352   ansEvalDefaults => {
  353     functAbsTolDefault            => .001,
  354     functLLimitDefault            => .0000001,
  355     functMaxConstantOfIntegration => 1E8,
  356     functNumOfPoints              => 3,
  357     functRelPercentTolDefault     => .1,
  358     functULimitDefault            => .9999999,
  359     functVarDefault               => "x",
  360     functZeroLevelDefault         => 1E-14,
  361     functZeroLevelTolDefault      => 1E-12,
  362     numAbsTolDefault              => .001,
  363     numFormatDefault              => "",
  364     numRelPercentTolDefault       => .1,
  365     numZeroLevelDefault           => 1E-14,
  366     numZeroLevelTolDefault        => 1E-12,
  367     useBaseTenLog                 => 0,
  368     defaultDisplayMatrixStyle     => "[s]",
  369   },
  370 );

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9