[system] / trunk / webwork2 / conf / global.conf.dist Repository:
ViewVC logotype

Annotation of /trunk/webwork2/conf/global.conf.dist

Parent Directory Parent Directory | Revision Log Revision Log


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

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9