[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 768 - (download) (annotate)
Thu Mar 6 19:12:38 2003 UTC (10 years, 2 months ago) by sh002i
File size: 10298 byte(s)
1. added %dbLayout (for the new DB.pm database system)
2. moved some stuff around
-sam

    1 #!perl
    2 ################################################################################
    3 # WeBWorK mod_perl (c) 1995-2002 WeBWorK Team, Univeristy of Rochester
    4 # $Id: global.conf.dist,v 1.14 2003-03-06 19:12:37 sh002i Exp $
    5 ################################################################################
    6 
    7 # This file is used to set up the default WeBWorK course environment for all
    8 # requests. Values may be overwritten by the course.conf for a specific course.
    9 # All package variables set in this file are added to the course environment.
   10 # If you wish to set a variable here but omit it from the course environment,
   11 # use the "my" keyword. The following variables are available to this file:
   12 #
   13 #         $webworkRoot    directory that contains the WeBWorK distribution
   14 #         $webworkURL     base URL handled by Apache::WeBWorK
   15 #         $courseName     name of the course being used
   16 
   17 ################################################################################
   18 # WeBWorK settings
   19 ################################################################################
   20 
   21 %webworkDirs = (
   22   root    => "$webworkRoot",
   23   bin     => "$webworkRoot/bin",
   24   conf    => "$webworkRoot/conf",
   25   courses => "$webworkRoot/courses",
   26   lib     => "$webworkRoot/lib",
   27   logs    => "$webworkRoot/logs",
   28   macros  => "$webworkRoot/macros",
   29   tmp     => "$webworkRoot/tmp",
   30 );
   31 
   32 %webworkFiles = (
   33   environment => "$webworkDirs{conf}/global.conf",
   34   hardcopySnippets => {
   35     preamble       => "$webworkDirs{conf}/hardcopyPreamble.tex",
   36     setHeader      => "$webworkDirs{conf}/hardcopySetHeader.pg",
   37     problemDivider => "$webworkDirs{conf}/hardcopyProblemDivider.tex",
   38     setFooter      => "$webworkDirs{conf}/hardcopySetFooter.pg",
   39     setDivider     => "$webworkDirs{conf}/hardcopySetDivider.tex",
   40     postamble      => "$webworkDirs{conf}/hardcopyPostamble.tex",
   41   },
   42   screenSnippets => {
   43     setHeader => "$webworkDirs{conf}/screenSetHeader.pg",
   44   },
   45   logs => {
   46     timing      => "$webworkDirs{logs}/timing.log",
   47     transaction => "$courseDirs{logs}/transaction.log",
   48   },
   49 );
   50 
   51 %webworkURLs = (
   52   root    => "$webworkURLRoot",
   53   home    => "http://host.yourdomaon.edu/webwork-info",
   54   htdocs  => "/webwork_files",
   55   docs    => "http://webhost.math.rochester.edu/webworkdocs/docs",
   56   oldProf => "/webwork-old/profLogin.pl",
   57 );
   58 
   59 ################################################################################
   60 # Default course-specific settings
   61 ################################################################################
   62 
   63 my $courseRoot = "$webworkDirs{courses}/$courseName";
   64 %courseDirs = (
   65   root        => "$courseRoot",
   66   DATA        => "$courseRoot/DATA",
   67   auth_DATA   => "$courseRoot/DATA/.auth",
   68   html        => "$courseRoot/html",
   69   html_images => "$courseRoot/html/images",
   70   html_temp   => "$courseRoot/html/tmp",
   71   logs        => "$courseRoot/logs",
   72   scoring     => "$courseRoot/scoring",
   73   templates   => "$courseRoot/templates",
   74   macros      => "$courseRoot/templates/macros",
   75 );
   76 
   77 %courseFiles = (
   78   environment => "$courseDirs{root}/course.conf",
   79   motd        => "$courseDirs{root}/motd.txt",
   80 );
   81 
   82 # quick hack to fix transaction logging. blah.
   83 $webworkFiles{logs}->{transaction} = "$courseDirs{logs}/transaction.log";
   84 
   85 my $courseURLRoot = "$webworkURLs{htdocs}/courses/$courseName";
   86 %courseURLs = (
   87   root      => "$courseURLRoot",
   88   html      => "$courseURLRoot",
   89   html_temp => "$courseURLRoot/tmp",
   90 );
   91 
   92 ################################################################################
   93 # Other site-specific options
   94 ################################################################################
   95 
   96 %mail = (
   97   smtpServer => "mail.math.rochester.edu",
   98   smtpSender => "webwork\@math.rochester.edu",
   99   # allowedRecipients defines addresses that the PG system is allowed to
  100   # send mail to. this prevents subtle PG exploits. This should be set
  101   # in course.conf to the addresses of professors of each course. Sending
  102   # mail from the PG system (i.e. questionaires, essay questions) will
  103   # fail if this is not set somewhere (either here or in course.conf).
  104   #allowedRecipients => [
  105   # "yourname\@host.yourdomain.edu",
  106   #],
  107   # if defined, feedbackRecipients overrides the list of recipients for
  108   # feedback email. It's appropriate to set this in the course.conf for
  109   # specific courses, but probably not in global.conf. if not defined,
  110   # mail is sent to all professors and TAs for a given course
  111   #feedbackRecipients => [
  112   # "prof1\@host.yourdomain.edu",
  113   # "prof2\@host.yourdomain.edu",
  114   #],
  115   # feedbackVerbosity:
  116   #  0: send only the feedback comment and context link
  117   #  1: as in 0, plus user, set, problem, and PG data
  118   #  2: as in 1, plus the problem environment (debugging data)
  119   feedbackVerbosity => 1,
  120 );
  121 
  122 %externalPrograms = (
  123   mkdir    => "/bin/mkdir",
  124   tth      => "/usr/local/bin/tth",
  125   pdflatex => "/usr/local/bin/pdflatex",
  126   latex    => "/usr/local/bin/latex",
  127   dvipng   => "/usr/local/bin/dvipng -mode ljfivemp -D600 -Q6 -x1000.5 -bgTransparent",
  128   gif2eps  => "$webworkDirs{bin}/gif2eps",
  129   png2eps  => "$webworkDirs{bin}/png2eps",
  130   gif2png  => "$webworkDirs{bin}/gif2png",
  131 );
  132 
  133 ################################################################################
  134 # Frontend options
  135 ################################################################################
  136 
  137 %templates = (
  138   system => "$webworkDirs{conf}/barebones.template",
  139 );
  140 
  141 ################################################################################
  142 # Database and session
  143 ################################################################################
  144 
  145 # dbInfo records some data for the "old" WW/Classlist/Auth.pm database system
  146 # {auth,wwdb,cldb}_type = database type: GDBM currently implemented
  147 # {auth_passwd,auth_perm,auth_keys,wwdb,cldb}_file = path to database file
  148 %dbInfo = (
  149   auth_type        => "GDBM",
  150   auth_passwd_file => "$courseDirs{auth_DATA}/$courseName\_password_DB",
  151   auth_perm_file   => "$courseDirs{auth_DATA}/$courseName\_permissions_DB",
  152   auth_keys_file   => "$courseDirs{auth_DATA}/keys",
  153   wwdb_type        => "GDBM",
  154   wwdb_file        => "$courseDirs{DATA}/$courseName\_webwork_DB",
  155   cldb_type        => "GDBM",
  156   cldb_file        => "$courseDirs{DATA}/$courseName\_classlist_DB",
  157   psvn_digits      => 5,
  158 );
  159 
  160 # dbLayout records the schema and source for each table in the "new" DB.pm
  161 # database system. consult DB.pm for the authoritative list of tables.
  162 # schema = perl module to use for access to the table
  163 # driver = perl module to use for access to the data source
  164 # source = location of data source (i.e. path, url, DBI spec)
  165 # note: schema and driver must have the same interface.
  166 %dbLayout = (
  167   password => {
  168     schema => "WeBWorK::DB::Schema::WW1Hash",
  169     driver => "WeBWorK::DB::Driver::GDBM",
  170     source => "$courseDirs{auth_DATA}/$courseName\_password_DB",
  171   },
  172   permission => {
  173     schema => "WeBWorK::DB::Schema::WW1Hash",
  174     driver => "WeBWorK::DB::Driver::GDBM",
  175     source => "gdbm:$courseDirs{auth_DATA}/$courseName\_permissions_DB",
  176   },
  177   user => {
  178     schema => "WeBWorK::DB::Schema::WW1Hash",
  179     driver => "WeBWorK::DB::Driver::GDBM",
  180     source => "gdbm:$courseDirs{auth_DATA}/keys",
  181   },
  182   set => {
  183     schema => "WeBWorK::DB::Schema::WW1Hash",
  184     driver => "WeBWorK::DB::Driver::GDBM",
  185     source => "gdbm:$courseDirs{auth_DATA}/keys",
  186   },
  187   set_user => {
  188     schema => "WeBWorK::DB::Schema::WW1Hash",
  189     driver => "WeBWorK::DB::Driver::GDBM",
  190     source => "gdbm:$courseDirs{auth_DATA}/keys",
  191   },
  192   problem => {
  193     schema => "WeBWorK::DB::Schema::WW1Hash",
  194     driver => "WeBWorK::DB::Driver::GDBM",
  195     source => "gdbm:$courseDirs{auth_DATA}/keys",
  196   },
  197   problem_user => {
  198     schema => "WeBWorK::DB::Schema::WW1Hash",
  199     driver => "WeBWorK::DB::Driver::GDBM",
  200     source => "gdbm:$courseDirs{auth_DATA}/keys",
  201   },
  202 );
  203 
  204 # This lets you specify a minimum permission level needed to perform
  205 # certain actions.  In the current system, >=10 will allow a professor
  206 # to perform the action, >=5 will allow a TA to, and >=0 will allow a
  207 # student to perform an action (almost never what you want).
  208 %permissionLevels = (
  209   "become_student" => 10,
  210 );
  211 
  212 # $sessionKeyTimeout defines seconds of inactivity before a key expires
  213 $sessionKeyTimeout = 60*30;
  214 
  215 # Practice users are users who's names start with $practiceUser
  216 # (you can comment this out to remove practice user support)
  217 $practiceUserPrefix = "practice";
  218 
  219 # There is a practice user who can be logged in multiple times.  He's
  220 # commented out by default, though, so you don't hurt yourself.  It is
  221 # kindof a backdoor to the practice user system, since he doesn't have a
  222 # password.  Come to think of it, why do we even have this?!
  223 #$debugPracticeUser = "practice666";
  224 
  225 ################################################################################
  226 # PG translation options
  227 ################################################################################
  228 
  229 %pg = (
  230   options => {
  231     # default translation options
  232     displayMode        => "images",
  233     showOldAnswers     => 1,
  234     showCorrectAnswers => 0,
  235     showHints          => 0,
  236     showSolutions      => 0,
  237     catchWarnings      => 1,
  238     # default grader
  239     grader => "avg_problem_grader",
  240   },
  241   # modules lists module names and the packages each contains
  242   modules => [
  243     [qw(DynaLoader)],
  244     [qw(Exporter)],
  245     [qw(GD)],
  246 
  247     [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)],
  248     [qw(AnswerHash AnswerEvaluator)],
  249     [qw(WWPlot)], # required by Circle (and others)
  250     [qw(Circle)],
  251     [qw(Complex)],
  252     [qw(Complex1)],
  253     [qw(Distributions)],
  254     [qw(Fraction)],
  255     [qw(Fun)],
  256     [qw(Hermite)],
  257     [qw(Label)],
  258     [qw(List)],
  259     [qw(Match)],
  260     [qw(MatrixReal1)], # required by Matrix
  261     [qw(Matrix)],
  262     [qw(Multiple)],
  263     [qw(PGrandom)],
  264     [qw(Regression)],
  265     [qw(Select)],
  266     [qw(Units)],
  267     [qw(VectorField)],
  268   ],
  269   # defaults used by answer evaluators
  270   ansEvalDefaults => {
  271     functAbsTolDefault            => .001,
  272     functLLimitDefault            => .0000001,
  273     functMaxConstantOfIntegration => 1E8,
  274     functNumOfPoints              => 3,
  275     functRelPercentTolDefault     => .1,
  276     functULimitDefault            => .9999999,
  277     functVarDefault               => "x",
  278     functZeroLevelDefault         => 1E-14,
  279     functZeroLevelTolDefault      => 1E-12,
  280     numAbsTolDefault              => .001,
  281     numFormatDefault              => "",
  282     numRelPercentTolDefault       => .1,
  283     numZeroLevelDefault           => 1E-14,
  284     numZeroLevelTolDefault        => 1E-12,
  285   },
  286 );

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9