Parent Directory
|
Revision Log
Revision 1932 - (view) (download)
| 1 : | sh002i | 1801 | #!perl |
| 2 : | sh002i | 654 | ################################################################################ |
| 3 : | sh002i | 1663 | # WeBWorK Online Homework Delivery System |
| 4 : | # Copyright © 2000-2003 The WeBWorK Project, http://openwebwork.sf.net/ | ||
| 5 : | jj | 1932 | # $CVSHeader: webwork-modperl/conf/global.conf.dist,v 1.53 2004/03/17 03:38:29 sh002i Exp $ |
| 6 : | sh002i | 1663 | # |
| 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 : | sh002i | 654 | ################################################################################ |
| 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 : | sh002i | 695 | # $webworkURL base URL handled by Apache::WeBWorK |
| 26 : | sh002i | 1051 | # $pgRoot directory that contains the PG distribution |
| 27 : | sh002i | 654 | # $courseName name of the course being used |
| 28 : | |||
| 29 : | ################################################################################ | ||
| 30 : | sh002i | 663 | # WeBWorK settings |
| 31 : | ################################################################################ | ||
| 32 : | sh002i | 654 | |
| 33 : | %webworkDirs = ( | ||
| 34 : | sh002i | 1519 | root => "$webworkRoot", |
| 35 : | DATA => "$webworkRoot/DATA", | ||
| 36 : | sh002i | 1617 | uploadCache => "$webworkRoot/DATA/uploads", |
| 37 : | sh002i | 1519 | 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 : | lib => "$webworkRoot/lib", | ||
| 44 : | logs => "$webworkRoot/logs", | ||
| 45 : | macros => "$pgRoot/macros", | ||
| 46 : | tmp => "$webworkRoot/tmp", | ||
| 47 : | sh002i | 654 | ); |
| 48 : | |||
| 49 : | %webworkFiles = ( | ||
| 50 : | gage | 1021 | environment => "$webworkDirs{conf}/global.conf", |
| 51 : | hardcopySnippets => { | ||
| 52 : | sh002i | 1100 | preamble => "$webworkDirs{conf}/snippets/hardcopyPreamble.tex", |
| 53 : | setHeader => "$webworkDirs{conf}/snippets/hardcopySetHeader.pg", | ||
| 54 : | problemDivider => "$webworkDirs{conf}/snippets/hardcopyProblemDivider.tex", | ||
| 55 : | setFooter => "$webworkDirs{conf}/snippets/hardcopySetFooter.pg", | ||
| 56 : | setDivider => "$webworkDirs{conf}/snippets/hardcopySetDivider.tex", | ||
| 57 : | gage | 1114 | userDivider => "$webworkDirs{conf}/snippets/hardcopyUserDivider.tex", |
| 58 : | sh002i | 1100 | postamble => "$webworkDirs{conf}/snippets/hardcopyPostamble.tex", |
| 59 : | sh002i | 654 | }, |
| 60 : | screenSnippets => { | ||
| 61 : | gage | 1380 | setHeader => "$webworkDirs{conf}/snippets/setHeader.pg", |
| 62 : | sh002i | 654 | }, |
| 63 : | logs => { | ||
| 64 : | gage | 1021 | timing => "$webworkDirs{logs}/timing.log", |
| 65 : | sh002i | 654 | }, |
| 66 : | sh002i | 1519 | equationCacheDB => "$webworkDirs{DATA}/equationcache", |
| 67 : | sh002i | 654 | ); |
| 68 : | |||
| 69 : | %webworkURLs = ( | ||
| 70 : | sh002i | 1519 | root => "$webworkURLRoot", |
| 71 : | home => "/webwork2_files/index.html", | ||
| 72 : | htdocs => "/webwork2_files", | ||
| 73 : | htdocs_temp => "/webwork2_files/tmp", | ||
| 74 : | equationCache => "/webwork2_files/tmp/equations", | ||
| 75 : | docs => "http://webhost.math.rochester.edu/webworkdocs/docs", | ||
| 76 : | sh002i | 1801 | oldProf => "/webwork1/profLogin.pl", |
| 77 : | sh002i | 654 | ); |
| 78 : | |||
| 79 : | sh002i | 663 | ################################################################################ |
| 80 : | # Default course-specific settings | ||
| 81 : | ################################################################################ | ||
| 82 : | |||
| 83 : | my $courseRoot = "$webworkDirs{courses}/$courseName"; | ||
| 84 : | %courseDirs = ( | ||
| 85 : | root => "$courseRoot", | ||
| 86 : | DATA => "$courseRoot/DATA", | ||
| 87 : | auth_DATA => "$courseRoot/DATA/.auth", | ||
| 88 : | html => "$courseRoot/html", | ||
| 89 : | html_images => "$courseRoot/html/images", | ||
| 90 : | html_temp => "$courseRoot/html/tmp", | ||
| 91 : | logs => "$courseRoot/logs", | ||
| 92 : | scoring => "$courseRoot/scoring", | ||
| 93 : | templates => "$courseRoot/templates", | ||
| 94 : | macros => "$courseRoot/templates/macros", | ||
| 95 : | gage | 1380 | email => "$courseRoot/templates/email", |
| 96 : | sh002i | 663 | ); |
| 97 : | |||
| 98 : | %courseFiles = ( | ||
| 99 : | environment => "$courseDirs{root}/course.conf", | ||
| 100 : | gage | 1751 | motd => "$courseDirs{templates}/motd.txt", |
| 101 : | gage | 1387 | logs => { |
| 102 : | answer_log => "$courseDirs{logs}/answer_log", | ||
| 103 : | }, | ||
| 104 : | gage | 1793 | course_info => "course_info.txt", # path relative to templates directory |
| 105 : | login_info => "login_info.txt", # path relative to templates directory | ||
| 106 : | sh002i | 663 | ); |
| 107 : | |||
| 108 : | sh002i | 705 | # quick hack to fix transaction logging. blah. |
| 109 : | sh002i | 1032 | $webworkFiles{logs}->{transaction} = "$courseDirs{logs}/transaction.log"; |
| 110 : | $webworkFiles{logs}->{pastAnswerList} = "$courseDirs{logs}/past_answers.log"; | ||
| 111 : | sh002i | 705 | |
| 112 : | sh002i | 1822 | my $courseURLRoot = "/webwork2_courses/$courseName"; |
| 113 : | sh002i | 654 | %courseURLs = ( |
| 114 : | sh002i | 699 | root => "$courseURLRoot", |
| 115 : | sh002i | 654 | html => "$courseURLRoot", |
| 116 : | html_temp => "$courseURLRoot/tmp", | ||
| 117 : | ); | ||
| 118 : | |||
| 119 : | ################################################################################ | ||
| 120 : | sh002i | 663 | # Other site-specific options |
| 121 : | ################################################################################ | ||
| 122 : | sh002i | 654 | |
| 123 : | sh002i | 663 | %mail = ( |
| 124 : | gage | 1793 | smtpServer => "mail.math.rochester.edu", |
| 125 : | smtpSender => "webwork\@math.rochester.edu", | ||
| 126 : | sh002i | 1801 | |
| 127 : | sh002i | 705 | # allowedRecipients defines addresses that the PG system is allowed to |
| 128 : | # send mail to. this prevents subtle PG exploits. This should be set | ||
| 129 : | # in course.conf to the addresses of professors of each course. Sending | ||
| 130 : | # mail from the PG system (i.e. questionaires, essay questions) will | ||
| 131 : | # fail if this is not set somewhere (either here or in course.conf). | ||
| 132 : | sh002i | 706 | #allowedRecipients => [ |
| 133 : | sh002i | 1801 | # 'prof1@host.yourdomain.edu', |
| 134 : | # 'prof2@host.yourdomain.edu', | ||
| 135 : | sh002i | 706 | #], |
| 136 : | sh002i | 1801 | |
| 137 : | sh002i | 705 | # if defined, feedbackRecipients overrides the list of recipients for |
| 138 : | # feedback email. It's appropriate to set this in the course.conf for | ||
| 139 : | # specific courses, but probably not in global.conf. if not defined, | ||
| 140 : | # mail is sent to all professors and TAs for a given course | ||
| 141 : | #feedbackRecipients => [ | ||
| 142 : | sh002i | 1787 | # 'prof1@host.yourdomain.edu', |
| 143 : | # 'prof2@host.yourdomain.edu', | ||
| 144 : | sh002i | 705 | #], |
| 145 : | sh002i | 1801 | |
| 146 : | sh002i | 740 | # feedbackVerbosity: |
| 147 : | # 0: send only the feedback comment and context link | ||
| 148 : | # 1: as in 0, plus user, set, problem, and PG data | ||
| 149 : | # 2: as in 1, plus the problem environment (debugging data) | ||
| 150 : | sh002i | 1801 | feedbackVerbosity => 1, |
| 151 : | |||
| 152 : | # defines the size of the Mail Merge editor window | ||
| 153 : | # FIXME: should this be here? it's UI, not mail | ||
| 154 : | # FIXME: replace this with the auto-size method that TWiki uses | ||
| 155 : | editor_window_rows => 15, | ||
| 156 : | editor_window_columns => 100, | ||
| 157 : | sh002i | 654 | ); |
| 158 : | |||
| 159 : | sh002i | 663 | %externalPrograms = ( |
| 160 : | sh002i | 737 | mkdir => "/bin/mkdir", |
| 161 : | sh002i | 663 | tth => "/usr/local/bin/tth", |
| 162 : | pdflatex => "/usr/local/bin/pdflatex", | ||
| 163 : | latex => "/usr/local/bin/latex", | ||
| 164 : | sh002i | 1154 | dvipng => "/usr/local/bin/dvipng", |
| 165 : | sh002i | 663 | gif2eps => "$webworkDirs{bin}/gif2eps", |
| 166 : | png2eps => "$webworkDirs{bin}/png2eps", | ||
| 167 : | gif2png => "$webworkDirs{bin}/gif2png", | ||
| 168 : | ); | ||
| 169 : | |||
| 170 : | ################################################################################ | ||
| 171 : | # Frontend options | ||
| 172 : | ################################################################################ | ||
| 173 : | |||
| 174 : | sh002i | 654 | %templates = ( |
| 175 : | sh002i | 1100 | system => "$webworkDirs{conf}/templates/ur.template", |
| 176 : | sh002i | 654 | ); |
| 177 : | |||
| 178 : | sh002i | 663 | ################################################################################ |
| 179 : | sh002i | 1108 | # Database options |
| 180 : | sh002i | 663 | ################################################################################ |
| 181 : | |||
| 182 : | sh002i | 1696 | # Several database are defined in the file conf/database.conf and stored in the |
| 183 : | # hash %dbLayouts. | ||
| 184 : | include "conf/database.conf"; | ||
| 185 : | sh002i | 768 | |
| 186 : | sh002i | 1696 | # Select the default database layout. This can be overridden in the course.conf |
| 187 : | # file of a particular course. | ||
| 188 : | sh002i | 1801 | #$dbLayoutName = "sql"; |
| 189 : | $dbLayoutName = "gdbm"; | ||
| 190 : | gage | 1099 | |
| 191 : | sh002i | 1801 | *dbLayout = $dbLayouts{$dbLayoutName}; |
| 192 : | |||
| 193 : | sh002i | 1108 | ################################################################################ |
| 194 : | # Authorization system | ||
| 195 : | ################################################################################ | ||
| 196 : | |||
| 197 : | # This lets you specify a minimum permission level needed to perform certain | ||
| 198 : | # actions. In the current system, >=10 will allow a professor to perform the | ||
| 199 : | # action, >=5 will allow a TA to, and >=0 will allow a student to perform an | ||
| 200 : | # action (almost never what you want). | ||
| 201 : | gage | 1021 | my $ta = 5; |
| 202 : | my $professor = 10; | ||
| 203 : | sh002i | 654 | %permissionLevels = ( |
| 204 : | sh002i | 1108 | become_student => $professor, |
| 205 : | access_instructor_tools => $ta, | ||
| 206 : | create_and_delete_problem_sets => $professor, | ||
| 207 : | modify_problem_sets => $professor, | ||
| 208 : | assign_problem_sets => $professor, | ||
| 209 : | malsyned | 1210 | modify_student_data => $professor, |
| 210 : | malsyned | 1446 | score_sets => $professor, |
| 211 : | gage | 1380 | send_mail => $professor, |
| 212 : | sh002i | 1617 | modify_classlist_files => $professor, |
| 213 : | modify_set_def_files => $professor, | ||
| 214 : | sh002i | 654 | ); |
| 215 : | |||
| 216 : | sh002i | 1108 | ################################################################################ |
| 217 : | # Session options | ||
| 218 : | ################################################################################ | ||
| 219 : | |||
| 220 : | sh002i | 768 | # $sessionKeyTimeout defines seconds of inactivity before a key expires |
| 221 : | $sessionKeyTimeout = 60*30; | ||
| 222 : | |||
| 223 : | sh002i | 811 | # $sessionKeyLength defines the length (in characters) of the session key |
| 224 : | $sessionKeyLength = 40; | ||
| 225 : | |||
| 226 : | # @sessionKeyChars lists the legal session key characters | ||
| 227 : | @sessionKeyChars = ('A'..'Z', 'a'..'z', '0'..'9', '.', '^', '/', '!', '*'); | ||
| 228 : | |||
| 229 : | sh002i | 768 | # Practice users are users who's names start with $practiceUser |
| 230 : | # (you can comment this out to remove practice user support) | ||
| 231 : | $practiceUserPrefix = "practice"; | ||
| 232 : | |||
| 233 : | # There is a practice user who can be logged in multiple times. He's | ||
| 234 : | # commented out by default, though, so you don't hurt yourself. It is | ||
| 235 : | # kindof a backdoor to the practice user system, since he doesn't have a | ||
| 236 : | # password. Come to think of it, why do we even have this?! | ||
| 237 : | #$debugPracticeUser = "practice666"; | ||
| 238 : | |||
| 239 : | sh002i | 663 | ################################################################################ |
| 240 : | # PG translation options | ||
| 241 : | ################################################################################ | ||
| 242 : | sh002i | 654 | |
| 243 : | %pg = ( | ||
| 244 : | sh002i | 1240 | # options for various renderers |
| 245 : | renderers => { | ||
| 246 : | "WeBWorK::PG::Remote" => { | ||
| 247 : | sh002i | 1560 | proxy => "http://localhost:21000/RenderD" |
| 248 : | sh002i | 1240 | } |
| 249 : | }, | ||
| 250 : | # currently selected renderer | ||
| 251 : | sh002i | 1242 | renderer => "WeBWorK::PG::Local", |
| 252 : | sh002i | 1560 | #renderer => "WeBWorK::PG::Remote", |
| 253 : | sh002i | 1240 | # directories used by PG |
| 254 : | sh002i | 1108 | directories => { |
| 255 : | gage | 1380 | # directories used only by PG |
| 256 : | sh002i | 1108 | lib => "$pgRoot/lib", |
| 257 : | macros => "$pgRoot/macros", | ||
| 258 : | sh002i | 1240 | }, |
| 259 : | sh002i | 654 | options => { |
| 260 : | sh002i | 663 | # default translation options |
| 261 : | sh002i | 654 | displayMode => "images", |
| 262 : | showOldAnswers => 1, | ||
| 263 : | showCorrectAnswers => 0, | ||
| 264 : | showHints => 0, | ||
| 265 : | showSolutions => 0, | ||
| 266 : | sh002i | 1132 | catchWarnings => 0, # there's a global warning catcher now |
| 267 : | sh002i | 654 | # default grader |
| 268 : | grader => "avg_problem_grader", | ||
| 269 : | }, | ||
| 270 : | gage | 1099 | # this will be customized in the course.conf file |
| 271 : | specialPGEnvironmentVars => { | ||
| 272 : | sh002i | 1704 | PRINT_FILE_NAMES_FOR => [ qw(professor) ], |
| 273 : | sh002i | 1240 | CAPA_Tools => "$courseDirs{macros}/CAPA_Tools/", |
| 274 : | CAPA_MCTools => "$courseDirs{macros}/CAPA_MCTools/", | ||
| 275 : | sh002i | 1897 | CAPA_Graphics_URL => "$courseURLs{html}/CAPA_Graphics/", |
| 276 : | CAPA_GraphicsDirectory => "$courseDirs{html}/CAPA_Graphics/", | ||
| 277 : | malsyned | 1103 | }, |
| 278 : | sh002i | 654 | # modules lists module names and the packages each contains |
| 279 : | modules => [ | ||
| 280 : | [qw(DynaLoader)], | ||
| 281 : | [qw(Exporter)], | ||
| 282 : | [qw(GD)], | ||
| 283 : | |||
| 284 : | [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)], | ||
| 285 : | [qw(AnswerHash AnswerEvaluator)], | ||
| 286 : | [qw(WWPlot)], # required by Circle (and others) | ||
| 287 : | [qw(Circle)], | ||
| 288 : | [qw(Complex)], | ||
| 289 : | [qw(Complex1)], | ||
| 290 : | [qw(Distributions)], | ||
| 291 : | [qw(Fraction)], | ||
| 292 : | [qw(Fun)], | ||
| 293 : | [qw(Hermite)], | ||
| 294 : | [qw(Label)], | ||
| 295 : | [qw(List)], | ||
| 296 : | [qw(Match)], | ||
| 297 : | [qw(MatrixReal1)], # required by Matrix | ||
| 298 : | [qw(Matrix)], | ||
| 299 : | [qw(Multiple)], | ||
| 300 : | [qw(PGrandom)], | ||
| 301 : | [qw(Regression)], | ||
| 302 : | [qw(Select)], | ||
| 303 : | [qw(Units)], | ||
| 304 : | [qw(VectorField)], | ||
| 305 : | ], | ||
| 306 : | # defaults used by answer evaluators | ||
| 307 : | ansEvalDefaults => { | ||
| 308 : | functAbsTolDefault => .001, | ||
| 309 : | functLLimitDefault => .0000001, | ||
| 310 : | functMaxConstantOfIntegration => 1E8, | ||
| 311 : | functNumOfPoints => 3, | ||
| 312 : | functRelPercentTolDefault => .1, | ||
| 313 : | functULimitDefault => .9999999, | ||
| 314 : | functVarDefault => "x", | ||
| 315 : | functZeroLevelDefault => 1E-14, | ||
| 316 : | functZeroLevelTolDefault => 1E-12, | ||
| 317 : | numAbsTolDefault => .001, | ||
| 318 : | numFormatDefault => "", | ||
| 319 : | numRelPercentTolDefault => .1, | ||
| 320 : | numZeroLevelDefault => 1E-14, | ||
| 321 : | numZeroLevelTolDefault => 1E-12, | ||
| 322 : | jj | 1932 | useBaseTenLog => 0, |
| 323 : | sh002i | 654 | }, |
| 324 : | ); |
| aubreyja at gmail dot com | ViewVC Help |
| Powered by ViewVC 1.0.9 |