Parent Directory
|
Revision Log
initial support for WWDBv2:
- DB.pm finished (except for getGlobalUser{Set,Problem} methods)
- schema modules for password, permission, key, and user with
WWDBv1 hash-bashed backends
- GDBM driver
- wwdb command-line frontend
-sam
1 #!perl 2 ################################################################################ 3 # WeBWorK mod_perl (c) 1995-2002 WeBWorK Team, Univeristy of Rochester 4 # $Id: global.conf.dist,v 1.16 2003-03-21 23:30:10 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 # note: schema and driver must have the same interface. 165 %dbLayout = ( 166 password => { 167 record => "WeBWorK::DB::Record::Password", 168 schema => "WeBWorK::DB::Schema::Auth1Hash", 169 driver => "WeBWorK::DB::Driver::GDBM", 170 source => "$courseDirs{auth_DATA}/$courseName\_password_DB", 171 }, 172 permission => { 173 record => "WeBWorK::DB::Record::PermissionLevel", 174 schema => "WeBWorK::DB::Schema::Auth1Hash", 175 driver => "WeBWorK::DB::Driver::GDBM", 176 source => "$courseDirs{auth_DATA}/$courseName\_permissions_DB", 177 }, 178 key => { 179 record => "WeBWorK::DB::Record::Key", 180 schema => "WeBWorK::DB::Schema::Auth1Hash", 181 driver => "WeBWorK::DB::Driver::GDBM", 182 source => "$courseDirs{auth_DATA}/keys", 183 }, 184 user => { 185 record => "WeBWorK::DB::Record::User", 186 schema => "WeBWorK::DB::Schema::Classlist1Hash", 187 driver => "WeBWorK::DB::Driver::GDBM", 188 source => "$courseDirs{DATA}/$courseName\_classlist_DB", 189 }, 190 set => { 191 record => "WeBWorK::DB::Record::Set", 192 schema => "WeBWorK::DB::Schema::WW1Hash", 193 driver => "WeBWorK::DB::Driver::GDBM", 194 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 195 }, 196 set_user => { 197 record => "WeBWorK::DB::Record::UserSet", 198 schema => "WeBWorK::DB::Schema::WW1Hash", 199 driver => "WeBWorK::DB::Driver::GDBM", 200 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 201 }, 202 problem => { 203 record => "WeBWorK::DB::Record::Problem", 204 schema => "WeBWorK::DB::Schema::WW1Hash", 205 driver => "WeBWorK::DB::Driver::GDBM", 206 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 207 }, 208 problem_user => { 209 record => "WeBWorK::DB::Record::UserProblem", 210 schema => "WeBWorK::DB::Schema::WW1Hash", 211 driver => "WeBWorK::DB::Driver::GDBM", 212 source => "$courseDirs{DATA}/$courseName\_webwork_DB", 213 }, 214 ); 215 216 # This lets you specify a minimum permission level needed to perform 217 # certain actions. In the current system, >=10 will allow a professor 218 # to perform the action, >=5 will allow a TA to, and >=0 will allow a 219 # student to perform an action (almost never what you want). 220 %permissionLevels = ( 221 "become_student" => 10, 222 ); 223 224 # $sessionKeyTimeout defines seconds of inactivity before a key expires 225 $sessionKeyTimeout = 60*30; 226 227 # Practice users are users who's names start with $practiceUser 228 # (you can comment this out to remove practice user support) 229 $practiceUserPrefix = "practice"; 230 231 # There is a practice user who can be logged in multiple times. He's 232 # commented out by default, though, so you don't hurt yourself. It is 233 # kindof a backdoor to the practice user system, since he doesn't have a 234 # password. Come to think of it, why do we even have this?! 235 #$debugPracticeUser = "practice666"; 236 237 ################################################################################ 238 # PG translation options 239 ################################################################################ 240 241 %pg = ( 242 options => { 243 # default translation options 244 displayMode => "images", 245 showOldAnswers => 1, 246 showCorrectAnswers => 0, 247 showHints => 0, 248 showSolutions => 0, 249 catchWarnings => 1, 250 # default grader 251 grader => "avg_problem_grader", 252 }, 253 # modules lists module names and the packages each contains 254 modules => [ 255 [qw(DynaLoader)], 256 [qw(Exporter)], 257 [qw(GD)], 258 259 [qw(AlgParser AlgParserWithImplicitExpand Expr ExprWithImplicitExpand)], 260 [qw(AnswerHash AnswerEvaluator)], 261 [qw(WWPlot)], # required by Circle (and others) 262 [qw(Circle)], 263 [qw(Complex)], 264 [qw(Complex1)], 265 [qw(Distributions)], 266 [qw(Fraction)], 267 [qw(Fun)], 268 [qw(Hermite)], 269 [qw(Label)], 270 [qw(List)], 271 [qw(Match)], 272 [qw(MatrixReal1)], # required by Matrix 273 [qw(Matrix)], 274 [qw(Multiple)], 275 [qw(PGrandom)], 276 [qw(Regression)], 277 [qw(Select)], 278 [qw(Units)], 279 [qw(VectorField)], 280 ], 281 # defaults used by answer evaluators 282 ansEvalDefaults => { 283 functAbsTolDefault => .001, 284 functLLimitDefault => .0000001, 285 functMaxConstantOfIntegration => 1E8, 286 functNumOfPoints => 3, 287 functRelPercentTolDefault => .1, 288 functULimitDefault => .9999999, 289 functVarDefault => "x", 290 functZeroLevelDefault => 1E-14, 291 functZeroLevelTolDefault => 1E-12, 292 numAbsTolDefault => .001, 293 numFormatDefault => "", 294 numRelPercentTolDefault => .1, 295 numZeroLevelDefault => 1E-14, 296 numZeroLevelTolDefault => 1E-12, 297 }, 298 );
| aubreyja at gmail dot com | ViewVC Help |
| Powered by ViewVC 1.0.9 |