From: dpvc <dp...@de...> - 2005-05-14 01:33:32
|
Log Message: ----------- Changes needed to make loadMacros() look through a path of directories rather than just course/templates/macros and pg/macros. You can specify the path in the global.conf file. You also need to make the update to pg/macros/dangerousMacros.pl Modified Files: -------------- webwork-modperl/conf: global.conf.dist webwork-modperl/lib/WeBWorK: PG.pm webwork-modperl/lib/WeBWorK/PG: Local.pm Revision Data ------------- Index: global.conf.dist =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/conf/global.conf.dist,v retrieving revision 1.117 retrieving revision 1.118 diff -Lconf/global.conf.dist -Lconf/global.conf.dist -u -r1.117 -r1.118 --- conf/global.conf.dist +++ conf/global.conf.dist @@ -612,6 +612,16 @@ $pg{directories}{lib} = "$pg{directories}{root}/lib"; $pg{directories}{macros} = "$pg{directories}{root}/macros"; +# +# The macro file search path. Each directory in this list is seached +# (in this order) by loadMacros() when it looks for a .pl file. +# +$pg{directories}{macrosPath} = [ + ".", # search the problem file's directory + $courseDirs{macros}, + $pg{directories}{macros}, +]; + ##### "Special" PG environment variables. (Stuff that doesn't fit in anywhere else.) # Users for whom to print the file name of the PG file being processed. Index: PG.pm =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/lib/WeBWorK/PG.pm,v retrieving revision 1.59 retrieving revision 1.60 diff -Llib/WeBWorK/PG.pm -Llib/WeBWorK/PG.pm -u -r1.59 -r1.60 --- lib/WeBWorK/PG.pm +++ lib/WeBWorK/PG.pm @@ -137,21 +137,22 @@ # ADDED: dvipngTempDir # ADDED: jsMathURL # ADDED: asciimathURL + # ADDED: macrosPath + # REMOVED: macrosDirectory, courseScriptsDirectory $envir{cgiDirectory} = undef; $envir{cgiURL} = undef; $envir{classDirectory} = undef; - $envir{courseScriptsDirectory} = $ce->{pg}->{directories}->{macros}."/"; + $envir{macrosPath} = $ce->{pg}->{directories}{macrosPath}; $envir{htmlDirectory} = $ce->{courseDirs}->{html}."/"; $envir{htmlURL} = $ce->{courseURLs}->{html}."/"; - $envir{macroDirectory} = $ce->{courseDirs}->{macros}."/"; $envir{templateDirectory} = $ce->{courseDirs}->{templates}."/"; $envir{tempDirectory} = $ce->{courseDirs}->{html_temp}."/"; $envir{tempURL} = $ce->{courseURLs}->{html_temp}."/"; $envir{scriptDirectory} = undef; $envir{webworkDocsURL} = $ce->{webworkURLs}->{docs}."/"; $envir{localHelpURL} = $ce->{webworkURLs}->{local_help}."/"; - $envir{jsMathURL} = $ce->{webworkURLs}->{jsMath}; + $envir{jsMathURL} = $ce->{webworkURLs}->{jsMath}; $envir{asciimathURL} = $ce->{webworkURLs}->{asciimath}; # Information for sending mail Index: Local.pm =================================================================== RCS file: /webwork/cvs/system/webwork-modperl/lib/WeBWorK/PG/Local.pm,v retrieving revision 1.16 retrieving revision 1.17 diff -Llib/WeBWorK/PG/Local.pm -Llib/WeBWorK/PG/Local.pm -u -r1.16 -r1.17 --- lib/WeBWorK/PG/Local.pm +++ lib/WeBWorK/PG/Local.pm @@ -95,8 +95,7 @@ # set the directory hash #warn "PG: setting the directory hash\n"; $translator->rh_directories({ - courseScriptsDirectory => $ce->{pg}->{directories}->{macros}, - macroDirectory => $ce->{courseDirs}->{macros}, + macrosPath => $ce->{courseDirs}->{macrosPath}, templateDirectory => $ce->{courseDirs}->{templates}, tempDirectory => $ce->{courseDirs}->{html_temp}, }); |