| 1 | #!perl |
1 | #!perl |
| 2 | ################################################################################ |
2 | ################################################################################ |
| 3 | # WeBWorK Online Homework Delivery System |
3 | # WeBWorK Online Homework Delivery System |
| 4 | # Copyright © 2000-2003 The WeBWorK Project, http://openwebwork.sf.net/ |
4 | # Copyright © 2000-2003 The WeBWorK Project, http://openwebwork.sf.net/ |
| 5 | # $CVSHeader: webwork-modperl/conf/global.conf.dist,v 1.82 2004/07/03 17:21:27 sh002i Exp $ |
5 | # $CVSHeader: webwork2/conf/global.conf.dist,v 1.91 2004/07/13 04:24:37 sh002i Exp $ |
| 6 | # |
6 | # |
| 7 | # This program is free software; you can redistribute it and/or modify it under |
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 |
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 |
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. |
10 | # version, or (b) the "Artistic License" which comes with this package. |
| … | |
… | |
| 17 | |
17 | |
| 18 | # This file is used to set up the default WeBWorK course environment for all |
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. |
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. |
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, |
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: |
22 | # use the "my" keyword. The $webwork_dir variable is set in the WeBWorK Apache |
| 23 | # |
23 | # configuration file (webwork.apache-config) and is available for use here. In |
| 24 | # $webworkRoot directory that contains the WeBWorK distribution |
24 | # addition, the $courseName variable holds the name of the current course. |
| 25 | # $webworkURLRoot base URL handled by Apache::WeBWorK |
25 | |
| 26 | # $pgRoot directory that contains the PG distribution |
26 | ################################################################################ |
| 27 | # $courseName name of the course being used |
27 | # Seed variables |
|
|
28 | ################################################################################ |
|
|
29 | |
|
|
30 | # Set these variables to correspond to your configuration and preferences. |
|
|
31 | |
|
|
32 | # URL of WeBWorK handler. |
|
|
33 | $webwork_url = "/webwork2"; |
|
|
34 | |
|
|
35 | # Root directory of PG. |
|
|
36 | $pg_dir = "/home/sh002i/work/pg"; |
|
|
37 | |
|
|
38 | # URL and path to htdocs directory. |
|
|
39 | $webwork_htdocs_url = "/webwork2_files"; |
|
|
40 | $webwork_htdocs_dir = "$webwork_dir/htdocs"; |
|
|
41 | |
|
|
42 | # URL and path to courses directory. |
|
|
43 | $webwork_courses_url = "/webwork2_course_files"; |
|
|
44 | $webwork_courses_dir = "$webwork_dir/courses"; |
|
|
45 | |
|
|
46 | ################################################################################ |
|
|
47 | # Paths to external programs |
|
|
48 | ################################################################################ |
|
|
49 | |
|
|
50 | $externalPrograms{mkdir} = "/bin/mkdir"; |
|
|
51 | $externalPrograms{mysql} = "/usr/local/bin/mysql"; |
|
|
52 | |
|
|
53 | $externalPrograms{latex} = "/usr/local/bin/latex"; |
|
|
54 | $externalPrograms{pdflatex} = "/usr/local/bin/pdflatex"; |
|
|
55 | $externalPrograms{dvipng} = "/usr/local/bin/dvipng"; |
|
|
56 | $externalPrograms{tth} = "/usr/local/bin/tth"; |
|
|
57 | |
|
|
58 | ################################################################################ |
|
|
59 | # Mail settings |
|
|
60 | ################################################################################ |
|
|
61 | |
|
|
62 | # Mail sent by the PG system and the mail merge and feedback modules will be |
|
|
63 | # sent via this SMTP server. |
|
|
64 | $mail{smtpServer} = 'mail.yourschool.edu'; |
|
|
65 | |
|
|
66 | # When connecting to the above server, WeBWorK will send this address in the |
|
|
67 | # MAIL FROM command. This has nothing to do with the "From" address on the mail |
|
|
68 | # message. It can really be anything, but some mail servers require it contain |
|
|
69 | # a valid mail domain, or at least be well-formed. |
|
|
70 | $mail{smtpSender} = 'webwork@yourserver.yourschool.edu'; |
|
|
71 | |
|
|
72 | # AllowedRecipients defines addresses that the PG system is allowed to send mail |
|
|
73 | # to. this prevents subtle PG exploits. This should be set in course.conf to the |
|
|
74 | # addresses of professors of each course. Sending mail from the PG system (i.e. |
|
|
75 | # questionaires, essay questions) will fail if this is not set somewhere (either |
|
|
76 | # here or in course.conf). |
|
|
77 | $mail{allowedRecipients} = [ |
|
|
78 | #'prof1@yourserver.yourdomain.edu', |
|
|
79 | #'prof2@yourserver.yourdomain.edu', |
|
|
80 | ]; |
|
|
81 | |
|
|
82 | # If defined, feedbackRecipients overrides the list of recipients for feedback |
|
|
83 | # email. It's appropriate to set this in the course.conf for specific courses, |
|
|
84 | # but probably not in global.conf. if not defined, mail is sent to all |
|
|
85 | # professors and TAs for a given course |
|
|
86 | $mail{feedbackRecipients} = [ |
|
|
87 | #'prof1@yourserver.yourdomain.edu', |
|
|
88 | #'prof2@yourserver.yourdomain.edu', |
|
|
89 | ]; |
|
|
90 | |
|
|
91 | # feedbackVerbosity: |
|
|
92 | # 0: send only the feedback comment and context link |
|
|
93 | # 1: as in 0, plus user, set, problem, and PG data |
|
|
94 | # 2: as in 1, plus the problem environment (debugging data) |
|
|
95 | $mail{feedbackVerbosity} = 1; |
|
|
96 | |
|
|
97 | # Defines the size of the Mail Merge editor window |
|
|
98 | # FIXME: should this be here? it's UI, not mail |
|
|
99 | # FIXME: replace this with the auto-size method that TWiki uses |
|
|
100 | $mail{editor_window_rows} = 15; |
|
|
101 | $mail{editor_window_columns} = 100; |
| 28 | |
102 | |
| 29 | ################################################################################ |
103 | ################################################################################ |
| 30 | # System-wide locations (directories and URLs) |
104 | # System-wide locations (directories and URLs) |
| 31 | ################################################################################ |
105 | ################################################################################ |
| 32 | |
106 | |
| 33 | # The root directory, set by webwork_root variable in Apache configuration. |
107 | # The root directory, set by webwork_root variable in Apache configuration. |
| 34 | $webworkDirs{root} = "$webworkRoot"; |
108 | $webworkDirs{root} = "$webwork_dir"; |
| 35 | |
109 | |
| 36 | # Location of system-wide data files. |
110 | # Location of system-wide data files. |
| 37 | $webworkDirs{DATA} = "$webworkDirs{root}/DATA"; |
111 | $webworkDirs{DATA} = "$webworkDirs{root}/DATA"; |
| 38 | |
112 | |
| 39 | # Used for temporary storage of uploaded files. |
113 | # Used for temporary storage of uploaded files. |
| … | |
… | |
| 44 | |
118 | |
| 45 | # Location of configuration files, templates, snippets, etc. |
119 | # Location of configuration files, templates, snippets, etc. |
| 46 | $webworkDirs{conf} = "$webworkDirs{root}/conf"; |
120 | $webworkDirs{conf} = "$webworkDirs{root}/conf"; |
| 47 | |
121 | |
| 48 | # Location of course directories. |
122 | # Location of course directories. |
| 49 | $webworkDirs{courses} = "$webworkDirs{root}/courses"; |
123 | $webworkDirs{courses} = "$webwork_courses_dir" || "$webworkDirs{root}/courses"; |
| 50 | |
|
|
| 51 | # Contains the WeBWorK libraries. (FIXME: not used) |
|
|
| 52 | #$webworkDirs{lib} = "$webworkDirs{root}/lib"; |
|
|
| 53 | |
124 | |
| 54 | # Contains log files. |
125 | # Contains log files. |
| 55 | $webworkDirs{logs} = "$webworkDirs{root}/logs"; |
126 | $webworkDirs{logs} = "$webworkDirs{root}/logs"; |
| 56 | |
127 | |
| 57 | # Location of PG macros. (FIXME: not used) |
|
|
| 58 | #$webworkDirs{macros} = "$pgRoot/macros"; |
|
|
| 59 | |
|
|
| 60 | # Contains non-web-accessible temporary files, such as TeX working directories. |
128 | # Contains non-web-accessible temporary files, such as TeX working directories. |
| 61 | $webworkDirs{tmp} = "$webworkDirs{root}/tmp"; |
129 | $webworkDirs{tmp} = "$webworkDirs{root}/tmp"; |
| 62 | |
130 | |
| 63 | ##### The following locations are web-accessible. |
131 | ##### The following locations are web-accessible. |
| 64 | |
132 | |
| 65 | # The root URL (usually /webwork2), set by <Location> in Apache configuration. |
133 | # The root URL (usually /webwork2), set by <Location> in Apache configuration. |
| 66 | $webworkURLs{root} = "$webworkURLRoot"; |
134 | $webworkURLs{root} = "$webwork_url"; |
| 67 | |
135 | |
| 68 | # Location of system-wide web-accessible files, such as equation images, and |
136 | # Location of system-wide web-accessible files, such as equation images, and |
| 69 | # help files. |
137 | # help files. |
| 70 | $webworkDirs{htdocs} = "$webworkDirs{root}/htdocs"; |
138 | $webworkDirs{htdocs} = "$webwork_htdocs_dir" || "$webworkDirs{root}/htdocs"; |
| 71 | $webworkURLs{htdocs} = "/webwork2_files"; |
139 | $webworkURLs{htdocs} = "$webwork_htdocs_url"; |
| 72 | |
|
|
| 73 | # The URL of the static WeBWorK home page (FIXME: not used) |
|
|
| 74 | #$webworkURLs{home} = "$webworkURLs{htdocs}/index.html"; |
|
|
| 75 | |
140 | |
| 76 | # Location of web-accessible temporary files, such as equation images. |
141 | # Location of web-accessible temporary files, such as equation images. |
| 77 | $webworkDirs{htdocs_temp} = "$webworkDirs{htdocs}/tmp"; |
142 | $webworkDirs{htdocs_temp} = "$webworkDirs{htdocs}/tmp"; |
| 78 | $webworkURLs{htdocs_temp} = "$webworkURLs{htdocs}/tmp"; |
143 | $webworkURLs{htdocs_temp} = "$webworkURLs{htdocs}/tmp"; |
| 79 | |
144 | |
| … | |
… | |
| 95 | |
160 | |
| 96 | # URL of WeBWorK Bugzilla database. |
161 | # URL of WeBWorK Bugzilla database. |
| 97 | $webworkURLs{bugReporter} = "http://bugs.webwork.rochester.edu/enter_bug.cgi?product=WeBWorK%20mod_perl"; |
162 | $webworkURLs{bugReporter} = "http://bugs.webwork.rochester.edu/enter_bug.cgi?product=WeBWorK%20mod_perl"; |
| 98 | |
163 | |
| 99 | # Location of jsMath script, used for the jsMath display mode. |
164 | # Location of jsMath script, used for the jsMath display mode. |
| 100 | $webworkURLs{jsMath} = "$webworkURLs{root}/jsMath/jsMath.js"; |
165 | $webworkURLs{jsMath} = "$webworkURLs{htdocs}/jsMath/jsMath.js"; |
| 101 | |
166 | |
| 102 | # Location of ASCIIMathML script, used for the asciimath display mode. |
167 | # Location of ASCIIMathML script, used for the asciimath display mode. |
| 103 | $webworkURLs{asciimath} = "$webworkURLs{root}/ASCIIMathML/ASCIIMathML.js"; |
168 | $webworkURLs{asciimath} = "$webworkURLs{htdocs}/ASCIIMathML/ASCIIMathML.js"; |
| 104 | |
169 | |
| 105 | ################################################################################ |
170 | ################################################################################ |
| 106 | # Defaults for course-specific locations (directories and URLs) |
171 | # Defaults for course-specific locations (directories and URLs) |
| 107 | ################################################################################ |
172 | ################################################################################ |
| 108 | |
173 | |
| … | |
… | |
| 116 | # Location of authentication data files when using a WW1 (GDBM) database. |
181 | # Location of authentication data files when using a WW1 (GDBM) database. |
| 117 | $courseDirs{auth_DATA} = "$courseDirs{DATA}/.auth"; |
182 | $courseDirs{auth_DATA} = "$courseDirs{DATA}/.auth"; |
| 118 | |
183 | |
| 119 | # Location of course HTML files, passed to PG. |
184 | # Location of course HTML files, passed to PG. |
| 120 | $courseDirs{html} = "$courseDirs{root}/html"; |
185 | $courseDirs{html} = "$courseDirs{root}/html"; |
| 121 | $courseURLs{html} = "/webwork2_course_files/$courseName"; |
186 | $courseURLs{html} = "$webwork_courses_url/$courseName"; |
| 122 | #$courseURLs{root} = $courseURLs{html}; # FIXME: not used |
|
|
| 123 | |
187 | |
| 124 | # Location of course image files, passed to PG. |
188 | # Location of course image files, passed to PG. |
| 125 | $courseDirs{html_images} = "$courseDirs{html}/images"; |
189 | $courseDirs{html_images} = "$courseDirs{html}/images"; |
| 126 | |
190 | |
| 127 | # Location of web-accessible, course-specific temporary files, like static and |
191 | # Location of web-accessible, course-specific temporary files, like static and |
| … | |
… | |
| 163 | |
227 | |
| 164 | # The preamble is the first thing in the TeX file. |
228 | # The preamble is the first thing in the TeX file. |
| 165 | $webworkFiles{hardcopySnippets}{preamble} = "$webworkDirs{conf}/snippets/hardcopyPreamble.tex"; |
229 | $webworkFiles{hardcopySnippets}{preamble} = "$webworkDirs{conf}/snippets/hardcopyPreamble.tex"; |
| 166 | |
230 | |
| 167 | # The setHeader preceeds each set. It is a PG file. |
231 | # The setHeader preceeds each set. It is a PG file. |
| 168 | $webworkFiles{hardcopySnippets}{setHeader} = "$webworkDirs{conf}/snippets/setHeader.pg"; |
232 | $webworkFiles{hardcopySnippets}{setHeader} = "$webworkDirs{conf}/snippets/setHeader.pg"; # hardcopySetHeader.pg", |
| 169 | |
233 | |
| 170 | # The problem divider goes between problems. |
234 | # The problem divider goes between problems. |
| 171 | $webworkFiles{hardcopySnippets}{problemDivider} = "$webworkDirs{conf}/snippets/hardcopyProblemDivider.tex"; |
235 | $webworkFiles{hardcopySnippets}{problemDivider} = "$webworkDirs{conf}/snippets/hardcopyProblemDivider.tex"; |
| 172 | |
236 | |
| 173 | # The set footer goes after each set. Is is a PG file. |
237 | # The set footer goes after each set. Is is a PG file. |
| … | |
… | |
| 183 | $webworkFiles{hardcopySnippets}{postamble} = "$webworkDirs{conf}/snippets/hardcopyPostamble.tex"; |
247 | $webworkFiles{hardcopySnippets}{postamble} = "$webworkDirs{conf}/snippets/hardcopyPostamble.tex"; |
| 184 | |
248 | |
| 185 | ##### Screen snippets are used when displaying problem sets on the screen. |
249 | ##### Screen snippets are used when displaying problem sets on the screen. |
| 186 | |
250 | |
| 187 | # The set header is displayed on the problem set page. It is a PG file. |
251 | # The set header is displayed on the problem set page. It is a PG file. |
| 188 | $webworkFiles{screenSnippets}{setHeader} = "$webworkDirs{conf}/snippets/setHeader.pg"; |
252 | $webworkFiles{screenSnippets}{setHeader} = "$webworkDirs{conf}/snippets/setHeader.pg"; # screenSetHeader.pg" |
| 189 | |
253 | |
| 190 | ################################################################################ |
254 | ################################################################################ |
| 191 | # Course-specific files |
255 | # Course-specific files |
| 192 | ################################################################################ |
256 | ################################################################################ |
| 193 | |
257 | |
| 194 | # The course configuration file. |
258 | # The course configuration file. |
| 195 | $courseFiles{environment} = "$courseDirs{root}/course.conf"; |
259 | $courseFiles{environment} = "$courseDirs{root}/course.conf"; |
| 196 | |
|
|
| 197 | # The message of the day, displayed after login. (FIXME: not used) |
|
|
| 198 | #$courseFiles{motd} = "$courseDirs{templates}/motd.txt"; |
|
|
| 199 | |
260 | |
| 200 | # File contents are displayed after login, on the problem sets page. Path given |
261 | # File contents are displayed after login, on the problem sets page. Path given |
| 201 | # here is relative to the templates directory. |
262 | # here is relative to the templates directory. |
| 202 | $courseFiles{course_info} = "course_info.txt"; |
263 | $courseFiles{course_info} = "course_info.txt"; |
| 203 | |
264 | |
| … | |
… | |
| 219 | # library, provided templates/rochester and templates/asu exists. |
280 | # library, provided templates/rochester and templates/asu exists. |
| 220 | # |
281 | # |
| 221 | $courseFiles{problibs} = {}; |
282 | $courseFiles{problibs} = {}; |
| 222 | |
283 | |
| 223 | ################################################################################ |
284 | ################################################################################ |
|
|
285 | # Database options |
|
|
286 | ################################################################################ |
|
|
287 | |
|
|
288 | # Several database are defined in the file conf/database.conf and stored in the |
|
|
289 | # hash %dbLayouts. |
|
|
290 | include "conf/database.conf"; |
|
|
291 | |
|
|
292 | # Select the default database layout. This can be overridden in the course.conf |
|
|
293 | # file of a particular course. If you choose "gdbm", WeBWorK will be able to |
|
|
294 | # use courses from WeBWorK 1 without first adding course.conf files to them. |
|
|
295 | # However, the recommended database layout for new courses is "sql". This can |
|
|
296 | # be set when creating a course. |
|
|
297 | $dbLayoutName = "sql"; # or "gdbm"; |
|
|
298 | |
|
|
299 | # This sets the symbol "dbLayout" as an alias for the selected database layout. |
|
|
300 | *dbLayout = $dbLayouts{$dbLayoutName}; |
|
|
301 | |
|
|
302 | ################################################################################ |
|
|
303 | # Problem library options |
|
|
304 | ################################################################################ |
|
|
305 | |
|
|
306 | # The directory containing the problem library files. Set to "" if no problem |
|
|
307 | # library is installed. |
|
|
308 | $problemLibrary{root} = ""; |
|
|
309 | |
|
|
310 | # The name of the SQL database containing problem metadata |
|
|
311 | $problemLibrary{sourceSQL} = "ProblemLibrary"; |
|
|
312 | |
|
|
313 | # The user name to use when connecting to the problem library database |
|
|
314 | $problemLibrary{userSQL} = "webworkRead"; |
|
|
315 | |
|
|
316 | # The password to use when connecting to the problem library database |
|
|
317 | $problemLibrary{passwordSQL} = ""; |
|
|
318 | |
|
|
319 | ################################################################################ |
| 224 | # Logs |
320 | # Logs |
| 225 | ################################################################################ |
321 | ################################################################################ |
| 226 | |
322 | |
| 227 | # FIXME: take logs out of %webworkFiles/%courseFiles and give them their own |
323 | # FIXME: take logs out of %webworkFiles/%courseFiles and give them their own |
| 228 | # top-level hash. |
324 | # top-level hash. |
| … | |
… | |
| 235 | |
331 | |
| 236 | # The transaction log contains data from each recorded answer submission. This |
332 | # The transaction log contains data from each recorded answer submission. This |
| 237 | # is useful if the database becomes corrupted. |
333 | # is useful if the database becomes corrupted. |
| 238 | $webworkFiles{logs}{transaction} = "$courseDirs{logs}/transaction.log"; |
334 | $webworkFiles{logs}{transaction} = "$courseDirs{logs}/transaction.log"; |
| 239 | |
335 | |
| 240 | # The past answer list stores a history of all users' submitted answers. (FIXME: not used) |
|
|
| 241 | $webworkFiles{logs}{pastAnswerList} = "$courseDirs{logs}/past_answers.log"; |
|
|
| 242 | |
|
|
| 243 | # The answer log stores a history of all users' submitted answers. |
336 | # The answer log stores a history of all users' submitted answers. |
| 244 | $courseFiles{logs}{answer_log} = "$courseDirs{logs}/answer_log"; |
337 | $courseFiles{logs}{answer_log} = "$courseDirs{logs}/answer_log"; |
| 245 | |
338 | |
| 246 | ################################################################################ |
339 | ################################################################################ |
| 247 | # Mail settings |
|
|
| 248 | ################################################################################ |
|
|
| 249 | |
|
|
| 250 | # Mail sent by the PG system and the mail merge and feedback modules will be |
|
|
| 251 | # sent via this SMTP server. |
|
|
| 252 | $mail{smtpServer} = 'mail.yourschool.edu'; |
|
|
| 253 | |
|
|
| 254 | # When connecting to the above server, WeBWorK will send this address in the |
|
|
| 255 | # MAIL FROM command. This has nothing to do with the "From" address on the mail |
|
|
| 256 | # message. It can really be anything, but some mail servers require it contain |
|
|
| 257 | # a valid mail domain, or at least be well-formed. |
|
|
| 258 | $mail{smtpSender} = 'webwork@yourserver.yourschool.edu'; |
|
|
| 259 | |
|
|
| 260 | # AllowedRecipients defines addresses that the PG system is allowed to send mail |
|
|
| 261 | # to. this prevents subtle PG exploits. This should be set in course.conf to the |
|
|
| 262 | # addresses of professors of each course. Sending mail from the PG system (i.e. |
|
|
| 263 | # questionaires, essay questions) will fail if this is not set somewhere (either |
|
|
| 264 | # here or in course.conf). |
|
|
| 265 | $mail{allowedRecipients} = [ |
|
|
| 266 | #'prof1@yourserver.yourdomain.edu', |
|
|
| 267 | #'prof2@yourserver.yourdomain.edu', |
|
|
| 268 | ]; |
|
|
| 269 | |
|
|
| 270 | # If defined, feedbackRecipients overrides the list of recipients for feedback |
|
|
| 271 | # email. It's appropriate to set this in the course.conf for specific courses, |
|
|
| 272 | # but probably not in global.conf. if not defined, mail is sent to all |
|
|
| 273 | # professors and TAs for a given course |
|
|
| 274 | $mail{feedbackRecipients} = [ |
|
|
| 275 | #'prof1@yourserver.yourdomain.edu', |
|
|
| 276 | #'prof2@yourserver.yourdomain.edu', |
|
|
| 277 | ]; |
|
|
| 278 | |
|
|
| 279 | # feedbackVerbosity: |
|
|
| 280 | # 0: send only the feedback comment and context link |
|
|
| 281 | # 1: as in 0, plus user, set, problem, and PG data |
|
|
| 282 | # 2: as in 1, plus the problem environment (debugging data) |
|
|
| 283 | $mail{feedbackVerbosity} = 1; |
|
|
| 284 | |
|
|
| 285 | # Defines the size of the Mail Merge editor window |
|
|
| 286 | # FIXME: should this be here? it's UI, not mail |
|
|
| 287 | # FIXME: replace this with the auto-size method that TWiki uses |
|
|
| 288 | $mail{editor_window_rows} = 15; |
|
|
| 289 | $mail{editor_window_columns} = 100; |
|
|
| 290 | |
|
|
| 291 | ################################################################################ |
|
|
| 292 | # Paths to external programs |
340 | # More paths to external programs |
| 293 | ################################################################################ |
341 | ################################################################################ |
| 294 | |
|
|
| 295 | $externalPrograms{mkdir} = "/bin/mkdir"; |
|
|
| 296 | $externalPrograms{mysql} = "/usr/local/bin/mysql"; |
|
|
| 297 | |
|
|
| 298 | $externalPrograms{latex} = "/usr/local/bin/latex"; |
|
|
| 299 | $externalPrograms{pdflatex} = "/usr/local/bin/pdflatex"; |
|
|
| 300 | $externalPrograms{dvipng} = "/usr/local/bin/dvipng"; |
|
|
| 301 | $externalPrograms{tth} = "/usr/local/bin/tth"; |
|
|
| 302 | |
342 | |
| 303 | # These image conversion utilities are included in the WeBWorK distribution. |
343 | # These image conversion utilities are included in the WeBWorK distribution. |
| 304 | $externalPrograms{gif2eps} = "$webworkDirs{bin}/gif2eps"; |
344 | $externalPrograms{gif2eps} = "$webworkDirs{bin}/gif2eps"; |
| 305 | $externalPrograms{png2eps} = "$webworkDirs{bin}/png2eps"; |
345 | $externalPrograms{png2eps} = "$webworkDirs{bin}/png2eps"; |
| 306 | $externalPrograms{gif2png} = "$webworkDirs{bin}/gif2png"; |
346 | $externalPrograms{gif2png} = "$webworkDirs{bin}/gif2png"; |
| … | |
… | |
| 329 | %templates = ( |
369 | %templates = ( |
| 330 | system => "$webworkDirs{conf}/templates/ur.template", |
370 | system => "$webworkDirs{conf}/templates/ur.template", |
| 331 | ); |
371 | ); |
| 332 | |
372 | |
| 333 | ################################################################################ |
373 | ################################################################################ |
| 334 | # Database options |
|
|
| 335 | ################################################################################ |
|
|
| 336 | |
|
|
| 337 | # Several database are defined in the file conf/database.conf and stored in the |
|
|
| 338 | # hash %dbLayouts. |
|
|
| 339 | include "conf/database.conf"; |
|
|
| 340 | |
|
|
| 341 | # Select the default database layout. This can be overridden in the course.conf |
|
|
| 342 | # file of a particular course. If you choose "gdbm", WeBWorK will be able to |
|
|
| 343 | # use courses from WeBWorK 1 without first adding course.conf files to them. |
|
|
| 344 | # However, the recommended database layout for new courses is "sql". This can |
|
|
| 345 | # be set when creating a course. |
|
|
| 346 | $dbLayoutName = "sql"; # or: "gdbm" |
|
|
| 347 | |
|
|
| 348 | # This sets the symbol "dbLayout" as an alias for the selected database layout. |
|
|
| 349 | *dbLayout = $dbLayouts{$dbLayoutName}; |
|
|
| 350 | |
|
|
| 351 | ################################################################################ |
|
|
| 352 | # Problem library options |
|
|
| 353 | ################################################################################ |
|
|
| 354 | |
|
|
| 355 | # The directory containing the problem library files. Set to "" if no problem |
|
|
| 356 | # library is installed. |
|
|
| 357 | $problemLibrary{root} = ""; |
|
|
| 358 | |
|
|
| 359 | # The name of the SQL database containing problem metadata |
|
|
| 360 | $problemLibrary{sourceSQL} = "ProblemLibrary"; |
|
|
| 361 | |
|
|
| 362 | # The user name to use when connecting to the problem library database |
|
|
| 363 | $problemLibrary{userSQL} = "webworkRead"; |
|
|
| 364 | |
|
|
| 365 | # The password to use when connecting to the problem library database |
|
|
| 366 | $problemLibrary{passwordSQL} = ""; |
|
|
| 367 | |
|
|
| 368 | ################################################################################ |
|
|
| 369 | # Authorization system |
374 | # Authorization system |
| 370 | ################################################################################ |
375 | ################################################################################ |
| 371 | |
376 | |
| 372 | # This lets you specify a minimum permission level needed to perform certain |
377 | # This lets you specify a minimum permission level needed to perform certain |
| 373 | # actions. In the current system, >=10 will allow a professor to perform the |
378 | # actions. In the current system, >=10 will allow a professor to perform the |
| … | |
… | |
| 375 | # action (almost never what you want). |
380 | # action (almost never what you want). |
| 376 | |
381 | |
| 377 | my $student = 0; |
382 | my $student = 0; |
| 378 | my $ta = 5; |
383 | my $ta = 5; |
| 379 | my $professor = 10; |
384 | my $professor = 10; |
|
|
385 | my $nobody = undef; |
| 380 | |
386 | |
| 381 | %permissionLevels = ( |
387 | %permissionLevels = ( |
| 382 | report_bugs => $student, |
388 | report_bugs => $student, |
|
|
389 | |
| 383 | view_multiple_sets => $ta, |
390 | view_multiple_sets => $ta, |
| 384 | view_unopened_sets => $ta, |
391 | view_unopened_sets => $ta, |
| 385 | view_unpublished_sets => $ta, |
392 | view_unpublished_sets => $ta, |
| 386 | view_answers => $ta, |
393 | view_answers => $ta, |
|
|
394 | |
| 387 | become_student => $professor, |
395 | become_student => $professor, |
| 388 | access_instructor_tools => $ta, |
396 | access_instructor_tools => $ta, |
| 389 | create_and_delete_problem_sets => $professor, |
|
|
| 390 | modify_problem_sets => $professor, |
|
|
| 391 | assign_problem_sets => $professor, |
|
|
| 392 | modify_student_data => $professor, |
|
|
| 393 | score_sets => $professor, |
397 | score_sets => $professor, |
| 394 | send_mail => $professor, |
398 | send_mail => $professor, |
|
|
399 | |
|
|
400 | create_and_delete_problem_sets => $professor, |
|
|
401 | assign_problem_sets => $professor, |
|
|
402 | modify_problem_sets => $professor, |
|
|
403 | modify_student_data => $professor, |
|
|
404 | |
| 395 | modify_classlist_files => $professor, |
405 | modify_classlist_files => $professor, |
| 396 | modify_set_def_files => $professor, |
406 | modify_set_def_files => $professor, |
| 397 | modify_scoring_files => $professor, |
407 | modify_scoring_files => $professor, |
|
|
408 | modify_problem_template_files => $professor, |
|
|
409 | |
| 398 | create_and_delete_courses => $professor, |
410 | create_and_delete_courses => $professor, |
| 399 | fix_course_databases => $professor, |
411 | fix_course_databases => $professor, |
|
|
412 | |
|
|
413 | ##### Behavior of the interactive problem processor ##### |
|
|
414 | |
|
|
415 | show_correct_answers_before_answer_date => $ta, |
|
|
416 | show_solutions_before_answer_date => $ta, |
|
|
417 | avoid_recording_answers => $ta, |
|
|
418 | |
|
|
419 | check_answers_before_open_date => $ta, |
|
|
420 | check_answers_after_open_date_with_attempts => $ta, |
|
|
421 | check_answers_after_open_date_without_attempts => $student, |
|
|
422 | check_answers_after_due_date => $student, |
|
|
423 | check_answers_after_answer_date => $student, |
|
|
424 | |
|
|
425 | record_answers_when_acting_as_student => $nobody, |
|
|
426 | |
|
|
427 | # "record_answers_when_acting_as_student" takes precedence |
|
|
428 | # over the following for professors acting as students: |
|
|
429 | record_answers_before_open_date => $nobody, |
|
|
430 | record_answers_after_open_date_with_attempts => $student, |
|
|
431 | record_answers_after_open_date_without_attempts => $nobody, |
|
|
432 | record_answers_after_due_date => $nobody, |
|
|
433 | record_answers_after_answer_date => $nobody, |
| 400 | ); |
434 | ); |
| 401 | |
435 | |
| 402 | ################################################################################ |
436 | ################################################################################ |
| 403 | # Session options |
437 | # Session options |
| 404 | ################################################################################ |
438 | ################################################################################ |
| … | |
… | |
| 503 | }; |
537 | }; |
| 504 | |
538 | |
| 505 | ##### Directories used by PG |
539 | ##### Directories used by PG |
| 506 | |
540 | |
| 507 | # The root of the PG directory tree (from pg_root in Apache config). |
541 | # The root of the PG directory tree (from pg_root in Apache config). |
| 508 | $pg{directories}{root} = "$pgRoot"; |
542 | $pg{directories}{root} = "$pg_dir"; |
| 509 | $pg{directories}{lib} = "$pg{directories}{root}/lib"; |
543 | $pg{directories}{lib} = "$pg{directories}{root}/lib"; |
| 510 | $pg{directories}{macros} = "$pg{directories}{root}/macros"; |
544 | $pg{directories}{macros} = "$pg{directories}{root}/macros"; |
| 511 | |
545 | |
| 512 | ##### "Special" PG environment variables. (Stuff that doesn't fit in anywhere else.) |
546 | ##### "Special" PG environment variables. (Stuff that doesn't fit in anywhere else.) |
| 513 | |
547 | |
| … | |
… | |
| 575 | numZeroLevelDefault => 1E-14, |
609 | numZeroLevelDefault => 1E-14, |
| 576 | numZeroLevelTolDefault => 1E-12, |
610 | numZeroLevelTolDefault => 1E-12, |
| 577 | useBaseTenLog => 0, |
611 | useBaseTenLog => 0, |
| 578 | defaultDisplayMatrixStyle => "[s]", |
612 | defaultDisplayMatrixStyle => "[s]", |
| 579 | }; |
613 | }; |
|
|
614 | |
|
|
615 | ################################################################################ |
|
|
616 | # Compatibility |
|
|
617 | ################################################################################ |
|
|
618 | |
|
|
619 | # Define the old names for the various "root" variables. |
|
|
620 | $webworkRoot = $webworkDirs{root}; |
|
|
621 | $webworkURLRoot = $webworkURLs{root}; |
|
|
622 | $pgRoot = $pg{directories}{root}; |