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