Log of /trunk/webwork-modperl/lib/WeBWorK/ContentGenerator/Problem.pm
Parent Directory
Revision
1197 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 18 16:35:22 2003 UTC (10 years ago) by
sh002i
File length: 29798 byte(s)
Diff to
previous 1190
,
to
selected 1041
cleaned up mike's editor support functionality. it now stores the source
file override and seed override in the $problem object. this eliminates
special logic further down the line. (eventually, i would like to have a
separate frontend to PG for the editor, like Instructor::PGPreview.pm)
Revision
1131 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 11 20:40:11 2003 UTC (10 years ago) by
sh002i
File length: 29416 byte(s)
Diff to
previous 1128
,
to
selected 1041
Made many changes:
- turned off PG warning catching in conf/global.conf.dist
- added warning reporting to conf/templates/ur.template (but not to
other templates!)
- modified a couple of error messages in WeBWorK.pm
- made failure to create course environment and failure to find course
directory fatal errors in WeBWorK.pm
- added warning queueing and call stack storing to Apache::WeBWorK
- added "warnings" and "if_warnings" template escapes to
WeBWorK::ContentGenerator
- removed warning handling from WeBWorK::ContentGenerator::Problem
- code tidying in WeBWorK::ContentGenerator::Problem
- code tidying in WeBWorK::PG::ImageGenerator
-sam
Revision
1041 -
(
view)
(
download)
(
as text)
(
annotate)
-
[selected]
Modified
Fri Jun 6 16:14:38 2003 UTC (10 years ago) by
malsyned
File length: 29565 byte(s)
Diff to
previous 1040
Replaced the hardcoded path /webwork with $ce->{webworkURLs}->{root} in
the link from Problem.pm to PGProblemEditor.pm. This fixes bug 52.
-Dennis
Revision
1040 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 6 12:54:41 2003 UTC (10 years ago) by
gage
File length: 29546 byte(s)
Diff to
previous 1039
,
to
selected 1041
Added a CGI::end_form() to the options section of Problem.pm.
I believe this is is the root cause of the multiple key parameters. I
haven't done all of the testing needed to verify this for sure.
Bug #50 is probably comotose, but needs to be watched.
--Mike
Revision
1039 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jun 6 02:28:13 2003 UTC (10 years ago) by
gage
File length: 29509 byte(s)
Diff to
previous 1038
,
to
selected 1041
replaced $r->param('key') with my $key = $r->param('key'); and then used $key in call
to PG. $r->param('key') was returning a two item list in list context. I don't know
where the extra entry into the key param was coming from.
This stuns bug #50, but doesn't kill it.
-- Mike
Revision
1007 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 4 03:04:07 2003 UTC (10 years ago) by
gage
File length: 29394 byte(s)
Diff to
previous 1000
,
to
selected 1041
Added a section to handle the case where the problem has not yet been
assigned to a user. This might occur when the problem template is
called form the problem editor before the sets have been assigned
to students. The problem is obtained as a global problem
then converted to a user_problem with default values. The problem
is not saved. This code should be reviewed to make sure there are no
hidden behaviors. Perhaps a group reading is in order once things
settle down. This squashes bug #34.
--Mike
Revision
1000 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 3 22:27:16 2003 UTC (10 years ago) by
gage
File length: 28156 byte(s)
Diff to
previous 997
,
to
selected 1041
The conversion of set and problem from global to global-user now works.
You will get "pink screen" errors for now because not all of the vaules
in problem have been given correct defaults.
I'll do that next.
--Mike
Revision
993 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 3 20:20:16 2003 UTC (10 years ago) by
gage
File length: 27629 byte(s)
Diff to
previous 992
,
to
selected 1041
Made small modifications to allow Problem.pm to read a problem that has
not yet been assigned.
TO DO (and I'll need help with this)
Convert a global set to a global user set (and the global problem to a
global user problem). I need to know how to specify the appropriate
classes.
Once we are guaranteed a record of the type returned by getGlobalUser
....
stuff missing defaults (e.g. psvn for set, and num_correct (answers) for
problem) in the newly created global_user record objects.(this part I
can do.)
At that point the rest of Problem.pm should be able to proceed as before
without any changes.
--Mike
Revision
983 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 3 17:48:35 2003 UTC (10 years ago) by
malsyned
File length: 26522 byte(s)
Diff to
previous 942
,
to
selected 1041
Changed explicit references to "/webwork" to the abstract
$ce->{webworkURLs}->{root}. If you've been hardcoding "/webwork" into
your URLs, you should take a look at the diff to this update to learn
the prefered method.
-Dennis
Revision
942 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu May 29 20:30:56 2003 UTC (10 years ago) by
gage
File length: 26503 byte(s)
Diff to
previous 940
,
to
selected 1041
Display options are now sticky (they are repeated as hidden options in the main problem body).
Changed name of submit button from redisplay to "save options"
fixes bug #27 at least to some extent.
these saved options may not persist from one problem to another. In order to solve that problem
we need a storage place for user options, or else many more hidden inputs to save state as one
moves from one request to another.
this fix will work for now.
-- Mike
Revision
940 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu May 29 20:02:35 2003 UTC (10 years ago) by
gage
File length: 25964 byte(s)
Diff to
previous 939
,
to
selected 1041
Added a new template hook "options" which allows one to reset the display options.
Modified viewOptions to conform to a "vertical" look for the radio buttons in the redisplay options.
Modified some of the labels for the same reason.
The horizontal spacing is a bit of kludge (I can't guarantee no line breaks for each of the radio button
labels). Using underbars instead of spaces in the labels would fix this, but...
--Mike
Revision
926 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 28 03:31:07 2003 UTC (10 years ago) by
gage
File length: 25390 byte(s)
Diff to
previous 920
,
to
selected 1041
Problem Editor now creates a temporary file to edit (
adding .tmp to the file name)
Refresh causes a redirect to the Problem.pm with a GET command.
Some of the arguments are unnecessary and need to be cleaned up.
The seed and display mode in the problem editor are not properly
initialized from the problem set.
Problem.pm has been modified to check for these arguments and to read
the temporary source file, seed and displayMode. These are passed
through to a PG.pm object.
PG also needed to be modified so that the source_file and seed values
are overridden.
Revision
809 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Apr 17 21:30:57 2003 UTC (10 years, 2 months ago) by
sh002i
File length: 23329 byte(s)
Diff to
previous 795
,
to
selected 1041
changed the name of the "courseEnvironment" field in the
ContentGenerator object to "ce", to match the style and conciesness of
the existing "r" and new "db" fields.
-sam
Revision
739 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Feb 21 20:49:49 2003 UTC (10 years, 3 months ago) by
sh002i
File length: 20845 byte(s)
Diff to
previous 738
,
to
selected 1041
1. fixed some formatting in Problem
2. hardcopy allows correct answers, hints, solutions to be shown
3. privileged users are allowed to view/download "not yet open" sets
-sam
Revision
692 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jan 7 21:19:38 2003 UTC (10 years, 5 months ago) by
sh002i
File length: 20484 byte(s)
Diff to
previous 685
,
to
selected 1041
DONE effectiveUser for at least Problem.pm
DONE write a template escape for printing $user, $effectiveUser, &c. nicely
also added additional timing log points: timing is now logged:
1. when WeBWorK::PG::new starts
2. after all the initialization-type stuff happens
3. when WeBWorK::PG::new ends
Getting it to log the entire request time might be a little harder.
-sam
Revision
562 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Sep 27 23:53:42 2002 UTC (10 years, 8 months ago) by
sh002i
File length: 16891 byte(s)
Diff to
previous 558
,
to
selected 1041
- created macros/IO.pl, which is loaded with no opmask by PG.pm. It is a copy
of WeBWorK::PG::IO.pm, with some changes to make it work as a macro package.
The translator no longer shares IO.pm's functions with the safe compartment.
This is a BAD THING, and should be reconsidered when the Translator is
revised.
- Changed many (but not all) checks for HTML or HTML_tth modes to match /^HTML/
in the macros.
- changed &header to &head in Problem.pm
- Added problem environment variables for gif2eps and png2eps and modified
&dangerousMacros::alias to use them
- fixed MOST of the harmless warnings in the system. there's still the "Use
of uninitialized value in null operation" warning in template(), tho.
Still to come:
- make images in PDFs work
- fix TTH mode character encodings on mac (maybe)
- have logout button invalidate key
- Pretty die messages (from outside of the translator)
- Feedback - need nice modular way of sending email
- Options - email address and password
Revision
558 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Sep 20 22:47:22 2002 UTC (10 years, 9 months ago) by
sh002i
File length: 16442 byte(s)
Diff to
previous 555
,
to
selected 1041
* fixed multiple-calls-to-&handler problem
* fixed if-else-endif code in &template
* added code to catch warnings in PG evaluation
* added "pink screen" and warning reporting
* started work on logging code (see Utils.pm, commented out)
-sam & dennis
Revision
492 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 21 15:34:35 2002 UTC (10 years, 10 months ago) by
sh002i
File length: 15561 byte(s)
Diff to
previous 476
,
to
selected 1041
made progress towards working hardcopy generation. next, i have to fix
the call to pdflatex. screw pip. it's not working right, and it doesn't
give me any speed gain, since latex has to goofily write the WHOLE DAMN
FILE in whatever order it pleases before letting me have it.
-sam
Revision
476 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Aug 20 01:07:18 2002 UTC (10 years, 10 months ago) by
sh002i
File length: 15440 byte(s)
Diff to
previous 455
,
to
selected 1041
fixed problem with deciding when to generate images in math2img mode
finished adding template escapes to ProblemSets, ProblemSet, and Problem
fixed a problem where modules were removed from the courseEnv while
being loaded (whups.)
-sam
Revision
455 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Aug 5 21:34:18 2002 UTC (10 years, 10 months ago) by
sh002i
File length: 13658 byte(s)
Diff to
previous 449
,
to
selected 1041
"normalized" files:
- (c) header on all files
- standard order of preamble lines:
1. (c) header
2. package PACKAGENAME;
3. short summary of the package (pod's NAME section)
4. use - pragmatic modules
5. use - standard perl modules
6. use - CPAN modules
7. use - webwork modules
- ALWAYS use strict and use warnings
- use "use base" rather than "our @ISA"
so now we can be happy.
-sam
Revision
434 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 19 06:19:34 2002 UTC (10 years, 11 months ago) by
sh002i
File length: 12471 byte(s)
Diff to
previous 431
,
to
selected 1041
added refreshMath2img to the problem environment (PG.pm) and modified
Problem.pm to set it when showHints or showSolutions is on. THIS IS NOT
THE BEST THING TO DO -- we only need to refresh when the value of
showHints or showSolutions CHANGES. Also, we should be refreshing if the
problem seed changes. So, we need somewhere to store those three values
between invocations of the script. HHHHHMMMMMMMM......... &math2img in
dangerousMacros.pl has been modified to respect refreshMath2img and also
refresh if the image file is older than the PG source file.
-sam
Revision
424 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jul 11 19:09:08 2002 UTC (10 years, 11 months ago) by
sh002i
File length: 4132 byte(s)
Diff to
previous 415
,
to
selected 1041
Problem.pm/PG.pm/Translator.pm now compile and work (to some degree)
changed the format of pg/modules in global.conf
diddled with the format of system.template (i believe i moved an <HR>)
added ref2string function to Utils.pm, removed hash2string/array2string
fixed a package name in IO.pm
Revision
396 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 20 20:43:39 2002 UTC (11 years ago) by
malsyned
File length: 25083 byte(s)
Diff to
previous 392
,
to
selected 1041
Some edits to make it work on my system, and some code cleanups. You'll
probably have to edit it on the top (right now) to get it to work on your
system. /this will change/ in the future. But it's nice to have a working
demo.
--Dennis
Revision
392 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 20 13:46:05 2002 UTC (11 years ago) by
gage
File length: 24881 byte(s)
Diff to
previous 388
,
to
selected 1041
Problem.pm now works (kindof) to serve PG problems. There are configuration
variables at the top that have to be customized to an individuals directory.
(They could be placed in a config file to avoid having to update them constantly,
but soon these values should be set by information from the course and
problem environments.)
The code is still rather delicate. It seems to work with some problems and not
with others. I suspect that the macro files are not being properly read in
and that perhaps the warning mechanisms are not yet working properly.
Also beware the line ending problem. Some of these files were created on a
mac (using unix). I've had completely mysterious errors that were fixed
by checking the line endings.
There is also a lot of code, particulary the error reporting code which should be put
in its own module.
Revision
388 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 19 20:03:53 2002 UTC (11 years ago) by
gage
File length: 6707 byte(s)
Diff to
previous 353
,
to
selected 1041
I've added code for defining the problemEnvironment, at least for now.
Many of the values which will be pulled from the database have simply
been hardcoded into the subroutine.
There is also code to pretty print these values to aid in debugging.
Revision
353 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Added
Fri Jun 7 23:35:59 2002 UTC (11 years ago) by
malsyned
File length: 531 byte(s)
Diff
to
selected 1041
All of the content generators now work with the template system
Moved the content generators into the WeBWorK::ContentGenerator namespace
Added the default template and a few global.conf entries
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.