Parent Directory
|
Revision Log
moved PG modules and macro files from webwork-modperl to pg -sam
1 #!perl 2 ################################################################################ 3 # WeBWorK mod_perl (c) 1995-2002 WeBWorK Team, Univeristy of Rochester 4 # $Id: global.conf.dist,v 1.22 2003-06-06 21:47:23 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 # $pgRoot directory that contains the PG distribution 16 # $courseName name of the course being used 17 18 ################################################################################ 19 # WeBWorK settings 20 ################################################################################ 21 22 %webworkDirs = ( 23 root => "$webworkRoot", 24 bin => "$webworkRoot/bin", 25 conf => "$webworkRoot/conf", 26 courses => "$webworkRoot/courses", 27 lib => "$webworkRoot/lib", 28 logs => "$webworkRoot/logs", 29 macros => "$pgRoot/macros", 30 tmp => "$webworkRoot/tmp", 31 ); 32 33 %webworkFiles = ( 34 environment => "$webworkDirs{conf}/global.conf", 35 hardcopySnippets => { 36 preamble => "$webworkDirs{conf}/hardcopyPreamble.tex", 37 setHeader => "$webworkDirs{conf}/hardcopySetHeader.pg", 38 problemDivider => "$webworkDirs{conf}/hardcopyProblemDivider.tex", 39 setFooter => "$webworkDirs{conf}/hardcopySetFooter.pg", 40 setDivider => "$webworkDirs{conf}/hardcopySetDivider.tex", 41 postamble => "$webworkDirs{conf}/hardcopyPostamble.tex", 42 }, 43 screenSnippets => { 44 setHeader => "$webworkDirs{conf}/screenSetHeader.pg", 45 }, 46 logs => { 47 timing => "$webworkDirs{logs}/timing.log", 48 }, 49 ); 50 51 %webworkURLs = ( 52 root => "$webworkURLRoot", 53 home => "/webwork2_files/index.html", 54 htdocs => "/webwork2_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 $webworkFiles{logs}->{pastAnswerList} = "$courseDirs{logs}/past_answers.log"; 85 86 my $courseURLRoot = "$webworkURLs{htdocs}/courses/$courseName"; 87 %courseURLs = ( 88 root => "$courseURLRoot", 89 html => "$courseURLRoot", 90 html_temp => "$courseURLRoot/tmp", 91 ); 92 93 ################################################################################ 94 # Other site-specific options 95 ################################################################################ 96 97 %mail = ( 98 smtpServer => "mail.math.rochester.edu", 99 smtpSender => "webwork\@math.rochester.edu", 100 # allowedRecipients defines addresses that the PG system is allowed to 101 # send mail to. this prevents subtle PG exploits. This should be set 102 # in course.conf to the addresses of professors of each course. Sending 103 # mail from the PG system (i.e. questionaires, essay questions) will 104 # fail if this is not set somewhere (either here or in course.conf). 105 #allowedRecipients => [ 106 # "yourname\@host.yourdomain.edu", 107 #], 108 # if defined, feedbackRecipients overrides the list of recipients for 109 # feedback email. It's appropriate to set this in the course.conf for 110 # specific courses, but probably not in global.conf. if not defined, 111 # mail is sent to all professors and TAs for a given course 112 #feedbackRecipients => [ 113 # "prof1\@host.yourdomain.edu", 114 # "prof2\@host.yourdomain.edu", 115 #], 116 # feedbackVerbosity: 117 # 0: send only the feedback comment and context link 118 # 1: as in 0, plus user, set, problem, and PG data 119 # 2: as in 1, plus the problem environment (debugging data) 120 feedbackVerbosity => 1, 121 ); 122 123 %externalPrograms = ( 124 mkdir => "/bin/mkdir", 125 tth => "/usr/local/bin/tth", 126 pdflatex => "/usr/local/bin/pdflatex", 127 latex => "/usr/local/bin/latex", 128 dvipng => "/usr/local/bin/dvipng -mode ljfivemp -D600 -Q6 -x1000.5 -bgTransparent", 129 gif2eps => "$webworkDirs{bin}/gif2eps", 130 png2eps => "$webworkDirs{bin}/png2eps", 131 gif2png => "$webworkDirs{bin}/gif2png", 132 ); 133 134 ################################################################################ 135 # Frontend options 136 ################################################################################ 137 138 %templates = ( 139 system => "$webworkDirs{conf}/barebones.template", 140 ); 141 142 ################################################################################ 143 # Database and session 144 ################################################################################ 145 # temporary values needed for using both GDBM databases. 146 # Use auser name for which all problems have been built, and none have 147 # been specifically reassigned. 148 #FIXME !!!! what hack!!!!!! 149 150 $dbLayout{set}->{params}->{globalUserID} = "practice1"; 151 $dbLayout{problem}->{params}->{globalUserID} = "practice1"; 152 153 # dbInfo records some data for the "old" WW/Classlist/Auth.pm database system 154 # {auth,wwdb,cldb}_type = database type: GDBM currently implemented 155 # {auth_passwd,auth_perm,auth_keys,wwdb,cldb}_file = path to database file 156 %dbInfo = ( 157 auth_type => "GDBM", 158 auth_passwd_file => "$courseDirs{auth_DATA}/$courseName\_password_DB", 159 auth_perm_file => "$courseDirs{auth_DATA}/$courseName\_permissions_DB", 160 auth_keys_file => "$courseDirs{auth_DATA}/keys", 161 wwdb_type => "GDBM", 162 wwdb_file => "$courseDirs{DATA}/$courseName\_webwork_DB", 163 cldb_type => "GDBM", 164 cldb_file => "$courseDirs{DATA}/$courseName\_classlist_DB", 165 psvn_digits => 5, 166 ); 167 168 # dbLayout records the schema and source for each table in the "new" DB.pm 169 # database system. consult DB.pm for the authoritative list of tables. 170 # schema = perl module to use for access to the table 171 # driver = perl module to use for access to the data source 172 # source = location of data source (i.e. path, url, DBI spec) 173 # params = extra information needed by the schema (optional) 174 # note: schema and driver must have the same interface. 175 %dbLayout = ( 176 password => { 177 record => "WeBWorK::DB::Record::Password", 178 schema => "WeBWorK::DB::Schema::Auth1Hash", 179 driver => "WeBWorK::DB::Driver::GDBM", 180 source => "$courseDirs{auth_DATA}/$courseName\_password_DB", 181 }, 182 permission => { 183 record => "WeBWorK::DB::Record::PermissionLevel", 184 schema => "WeBWorK::DB::Schema::Auth1Hash", 185 driver => "WeBWorK::DB::Driver::GDBM", 186 source => "$courseDirs{auth_DATA}/$courseName\_permissions_DB", 187 }, 188 key => { 189 record => "WeBWorK::DB::Record::Key", 190 schema => "WeBWorK::DB::Schema::Auth1Hash", 191 driver => "WeBWorK::DB::Driver::GDBM", 192 source => "$courseDirs{auth_DATA}/keys", 193 }, 194 user => { 195 record => "WeBWorK::DB::Record::User", 196 schema => "WeBWorK::DB::Schema::Classlist1Hash", 197 driver => "WeBWorK::DB::Driver::GDBM", 198 source => "$courseDirs{DATA}/$courseName\_classlist_DB", 199 }, 200 set => { 201 record => "WeBWorK::DB::Record::Set", 202 schema => "WeBWorK::DB::Schema::GlobalTableEmulator", 203 driver => "WeBWorK::DB::Driver::Null", 204 source => undef, 205 }, 206 set_user => { 207 record => "WeBWorK::DB::Record::UserSet", 208 schema => "WeBWorK::DB::Schema::WW1Hash", 209 driver => "WeBWorK::DB::Driver::GDBM", 210 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 211 params => { psvnLength => 5 }, 212 }, 213 problem => { 214 record => "WeBWorK::DB::Record::Problem", 215 schema => "WeBWorK::DB::Schema::GlobalTableEmulator", 216 driver => "WeBWorK::DB::Driver::Null", 217 source => undef, 218 }, 219 problem_user => { 220 record => "WeBWorK::DB::Record::UserProblem", 221 schema => "WeBWorK::DB::Schema::WW1Hash", 222 driver => "WeBWorK::DB::Driver::GDBM", 223 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 224 params => { psvnLength => 5 }, 225 }, 226 ); 227 228 # This lets you specify a minimum permission level needed to perform 229 # certain actions. In the current system, >=10 will allow a professor 230 # to perform the action, >=5 will allow a TA to, and >=0 will allow a 231 # student to perform an action (almost never what you want). 232 my $ta = 5; 233 my $professor = 10; 234 %permissionLevels = ( 235 "become_student" => 10, 236 "access_instructor_tools" => $ta, 237 "create_and_delete_problem_sets" => $professor, 238 "modify_problem_sets" => $professor, 239 "assign_problem_sets" => $professor, 240 ); 241 242 # $sessionKeyTimeout defines seconds of inactivity before a key expires 243 $sessionKeyTimeout = 60*30; 244 245 # $sessionKeyLength defines the length (in characters) of the session key 246 $sessionKeyLength = 40; 247 248 # @sessionKeyChars lists the legal session key characters 249 @sessionKeyChars = ('A'..'Z', 'a'..'z', '0'..'9', '.', '^', '/', '!', '*'); 250 251 # Practice users are users who's names start with $practiceUser 252 # (you can comment this out to remove practice user support) 253 $practiceUserPrefix = "practice"; 254 255 # There is a practice user who can be logged in multiple times. He's 256 # commented out by default, though, so you don't hurt yourself. It is 257 # kindof a backdoor to the practice user system, since he doesn't have a 258 # password. Come to think of it, why do we even have this?! 259 #$debugPracticeUser = "practice666"; 260 261 ################################################################################ 262 # PG translation options 263 ################################################################################ 264 265 %pg = ( 266 options => { 267 # default translation options 268 displayMode => "images", 269 showOldAnswers => 1, 270 showCorrectAnswers => 0, 271 showHints => 0, 272 showSolutions => 0, 273 catchWarnings => 1, 274 # default grader 275 grader => "avg_problem_grader", 276 }, 277 # modules lists module names and the packages each contains 278 modules => [ 279 [qw(DynaLoader)], 280 [qw(Exporter)], 281 [qw(GD)], 282 283 [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)], 284 [qw(AnswerHash AnswerEvaluator)], 285 [qw(WWPlot)], # required by Circle (and others) 286 [qw(Circle)], 287 [qw(Complex)], 288 [qw(Complex1)], 289 [qw(Distributions)], 290 [qw(Fraction)], 291 [qw(Fun)], 292 [qw(Hermite)], 293 [qw(Label)], 294 [qw(List)], 295 [qw(Match)], 296 [qw(MatrixReal1)], # required by Matrix 297 [qw(Matrix)], 298 [qw(Multiple)], 299 [qw(PGrandom)], 300 [qw(Regression)], 301 [qw(Select)], 302 [qw(Units)], 303 [qw(VectorField)], 304 ], 305 # defaults used by answer evaluators 306 ansEvalDefaults => { 307 functAbsTolDefault => .001, 308 functLLimitDefault => .0000001, 309 functMaxConstantOfIntegration => 1E8, 310 functNumOfPoints => 3, 311 functRelPercentTolDefault => .1, 312 functULimitDefault => .9999999, 313 functVarDefault => "x", 314 functZeroLevelDefault => 1E-14, 315 functZeroLevelTolDefault => 1E-12, 316 numAbsTolDefault => .001, 317 numFormatDefault => "", 318 numRelPercentTolDefault => .1, 319 numZeroLevelDefault => 1E-14, 320 numZeroLevelTolDefault => 1E-12, 321 }, 322 );
| aubreyja at gmail dot com | ViewVC Help |
| Powered by ViewVC 1.0.9 |