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