[system] / trunk / webwork-modperl / lib Repository:
ViewVC logotype

Log of /trunk/webwork-modperl/lib

View Directory Listing Directory Listing


Sticky Revision:

Revision 6007 - Directory Listing
Modified Sat Feb 14 16:51:56 2009 UTC (11 years ago) by gage
Reverse the order in which site_info and login_info appear on the page.

Once again login_info appears first.

This was inadvertently switched when I updated Login a few days ago.

Revision 6006 - Directory Listing
Modified Thu Feb 12 20:04:10 2009 UTC (11 years ago) by gage
changes to interface imported from the 2-4-patches code that didn't make it into head

Revision 6004 - Directory Listing
Modified Wed Feb 11 03:31:38 2009 UTC (11 years ago) by gage
Added ability to automatically create some directories -- so far only html_temp
when archiving the course.

Revision 6003 - Directory Listing
Modified Wed Feb 11 03:30:56 2009 UTC (11 years ago) by gage
Added ability to automatically create html_temp  directory -- which is often missing if the
course hasn't been used when preparing course for archival.

Revision 5986 - Directory Listing
Modified Wed Feb 4 03:15:51 2009 UTC (11 years ago) by gage
Added code to check the directory structure of the courses (make sure all standard
directories are present and have rwx privileges available to the webserver.

No automatic repair of the directory structure is performed. (We'll see how annoying that is.)

Revision 5985 - Directory Listing
Modified Mon Feb 2 03:18:10 2009 UTC (11 years ago) by gage
Streamlined the course integrity checking

Revision 5983 - Directory Listing
Modified Sun Jan 25 22:12:41 2009 UTC (11 years, 1 month ago) by gage
Moving Exception handling to DB.pm from DB::Schema

Revision 5982 - Directory Listing
Modified Sun Jan 25 22:11:52 2009 UTC (11 years, 1 month ago) by gage
Moving exception catching to DB.pm from Schema.pm

Revision 5981 - Directory Listing
Modified Sun Jan 25 22:11:07 2009 UTC (11 years, 1 month ago) by gage
moving exception catching to DB instead of DB::Schema

Revision 5980 - Directory Listing
Modified Sun Jan 25 21:31:38 2009 UTC (11 years, 1 month ago) by gage
Changes which allow the rename function to also add new tables when renaming.

Updating fields is not yet implemented.

Revision 5979 - Directory Listing
Modified Sun Jan 25 15:32:13 2009 UTC (11 years, 1 month ago) by gage
Changes to support archiving courses.

Revision 5978 - Directory Listing
Modified Sun Jan 25 15:29:37 2009 UTC (11 years, 1 month ago) by gage
Changes to support archiving and unarchiving courses

Revision 5974 - Directory Listing
Modified Sun Jan 18 03:30:23 2009 UTC (11 years, 1 month ago) by gage
changes to support error checking when archiving

Revision 5973 - Directory Listing
Modified Sun Jan 18 03:25:37 2009 UTC (11 years, 1 month ago) by gage
changes to support increased error checking when archiving courses

Revision 5966 - Directory Listing
Modified Wed Jan 14 13:39:47 2009 UTC (11 years, 1 month ago) by dpvc
Make the Prob. List. button inactive when used on an Undefined_Set
(i.e., in the Library Browser).  This prevents an error page when an
instructor clicks on the button rather than going back to the Library
Browser page.

Revision 5946 - Directory Listing
Modified Wed Nov 19 16:49:20 2008 UTC (11 years, 3 months ago) by glarose
PGProblemEditor.pm: protect against undefined globalSets, e.g., when
editing a problem in the Library Browser.

Revision 5932 - Directory Listing
Modified Thu Oct 9 02:18:38 2008 UTC (11 years, 4 months ago) by gage
Forward ports from rel-2-4-patches

Revision 5902 - Directory Listing
Modified Fri Sep 12 14:33:55 2008 UTC (11 years, 5 months ago) by gage
forward port of change to 2-4-patches

Revision 5887 - Directory Listing
Modified Fri Aug 29 18:17:28 2008 UTC (11 years, 5 months ago) by glarose
ProblemSetDetail: show ip restriction fields if set isn't assigned to
any users.

Revision 5868 - Directory Listing
Modified Tue Aug 12 16:27:51 2008 UTC (11 years, 6 months ago) by sh002i
allow commas in directory names :P

Revision 5862 - Directory Listing
Modified Wed Aug 6 16:03:36 2008 UTC (11 years, 6 months ago) by glarose
Hardcopy.pm: bugfix to deal with empty values coming in for
a set's hide_score parameter.

Revision 5850 - Directory Listing
Modified Wed Jul 23 03:22:27 2008 UTC (11 years, 7 months ago) by gage
replace die by warn when dumping tables for archives.
This allows us to dump old courses that haven't been updated.

Revision 5846 - Directory Listing
Modified Thu Jul 10 15:00:31 2008 UTC (11 years, 7 months ago) by glarose
ProblemSetDetail: correct typo in grouping set message, don't show
problem seeds for usersets of gateway assignments (because the seeds
there aren't used for anything; only the version's seeds matter).

Revision 5845 - Directory Listing
Modified Tue Jul 8 19:55:43 2008 UTC (11 years, 7 months ago) by darnold
Modified the data types isn these files to encapsulate the data in a
SOAP string type.

Revision 5844 - Directory Listing
Modified Tue Jul 8 19:51:12 2008 UTC (11 years, 7 months ago) by darnold
Modified so that the data type in the SOAP envelope is forced to be a
string.
Made some bug fixes to a few methods.

Revision 5841 - Directory Listing
Modified Thu Jul 3 14:10:07 2008 UTC (11 years, 7 months ago) by gage
forward port correction in reporting AUTOLOAD error from rel-2-4-5

Take care,

Mike

VS: ----------------------------------------------------------------------

Revision 5840 - Directory Listing
Modified Wed Jul 2 17:16:10 2008 UTC (11 years, 7 months ago) by gage
forward port of typo correction in url

Revision 5836 - Directory Listing
Modified Tue Jul 1 13:18:52 2008 UTC (11 years, 7 months ago) by glarose
SetMaker: update to make problems that are "tried" display according
to the assignment type of the selected set.  We may want to back this
change out at some point: because the set type is determined when the
page is built, changing the selected set doesn't change how viewed
problems are displayed until the page is reloaded.  I think the
behavior introduced by this patch is better than showing all problems
as homework problems, but it may be otherwise.

Revision 5835 - Directory Listing
Modified Tue Jul 1 13:13:27 2008 UTC (11 years, 7 months ago) by glarose
ProblemSetDetail: fix sourcefile handling for gateway assignments

Revision 5834 - Directory Listing
Modified Tue Jul 1 13:12:56 2008 UTC (11 years, 7 months ago) by glarose
GatewayQuiz: improve handling of unlikely circumstances.

Revision 5832 - Directory Listing
Modified Sun Jun 29 18:03:11 2008 UTC (11 years, 7 months ago) by gage
 Comment on why the "stylesheet" variable will not work properly
if one attempts to modify it in course.conf

.CVS: ----------------------------------------------------------------------

Revision 5784 - Directory Listing
Modified Wed Jun 25 15:33:39 2008 UTC (11 years, 8 months ago) by glarose
ContentGenerator: clean up and collect sidebar links for gateway
assignments.

Revision 5781 - Directory Listing
Modified Wed Jun 25 14:43:16 2008 UTC (11 years, 8 months ago) by glarose
PGProblemEditor: update to allow editing of gateway assignment problems.

Revision 5780 - Directory Listing
Modified Wed Jun 25 14:42:55 2008 UTC (11 years, 8 months ago) by glarose
ProblemSetDetail: update edit/try links to work for gateway assignments.

Revision 5779 - Directory Listing
Modified Wed Jun 25 14:42:13 2008 UTC (11 years, 8 months ago) by glarose
Authz: allow set IDs of Undefined_Set for gateway assignments.

Revision 5778 - Directory Listing
Modified Wed Jun 25 14:41:40 2008 UTC (11 years, 8 months ago) by glarose
Utils::Tasks: add fake_set_version for previewing gateway assignments.

Revision 5777 - Directory Listing
Modified Wed Jun 25 14:41:00 2008 UTC (11 years, 8 months ago) by glarose
GatewayQuiz: allow problem preview from problem editor.  (Allows
input set as Undefined_Set and creates a fake one problem
assignment.)

Revision 5776 - Directory Listing
Modified Wed Jun 25 14:38:19 2008 UTC (11 years, 8 months ago) by gage
forward port from rel-2-4-patches
changed wording on registration text

Revision 5739 - Directory Listing
Modified Tue Jun 24 03:40:48 2008 UTC (11 years, 8 months ago) by gage
set default library to NPL
cosmetic changes

Revision 5738 - Directory Listing
Modified Tue Jun 24 03:39:39 2008 UTC (11 years, 8 months ago) by gage
Added support for math2 theme
Is the dvipng command supposed to have bgTr....  or bgtr...

Revision 5727 - Directory Listing
Modified Mon Jun 23 20:43:04 2008 UTC (11 years, 8 months ago) by apizer
Format preview email better.  Make COL[] info line up.  Also identify
preview user.

Revision 5726 - Directory Listing
Modified Mon Jun 23 20:01:21 2008 UTC (11 years, 8 months ago) by glarose
Stats: update to correctly read data for gateway assignments.

Revision 5725 - Directory Listing
Modified Mon Jun 23 19:59:54 2008 UTC (11 years, 8 months ago) by glarose
StudentProgress: update test time display to reflect changes in
setting open_date/version_creation_time.

Revision 5724 - Directory Listing
Modified Mon Jun 23 19:59:01 2008 UTC (11 years, 8 months ago) by glarose
Instructor/Index: correct link sent when acting as a user on a
set to allow for gateway test assignments.

Revision 5723 - Directory Listing
Modified Mon Jun 23 19:58:11 2008 UTC (11 years, 8 months ago) by glarose
ProblemSets: correct display of test times for gateway assignments,
allow link to take test before open date if instructors have that
permission level.

Revision 5722 - Directory Listing
Modified Mon Jun 23 19:57:02 2008 UTC (11 years, 8 months ago) by glarose
UserDetail: finish set version editing code; correct handling of
template set and set versions.

Revision 5720 - Directory Listing
Modified Mon Jun 23 19:54:46 2008 UTC (11 years, 8 months ago) by glarose
GatewayQuiz: adds ability to create new set versions when acting as
a student, cleans up minimization of data saving.

Revision 5719 - Directory Listing
Modified Mon Jun 23 14:22:39 2008 UTC (11 years, 8 months ago) by glarose
Revise fields shown when editing set versions.

Revision 5718 - Directory Listing
Modified Mon Jun 23 14:22:15 2008 UTC (11 years, 8 months ago) by glarose
Correct handling of null max_attempts fields in the problem_user
database table.

Revision 5717 - Directory Listing
Modified Sat Jun 21 16:38:49 2008 UTC (11 years, 8 months ago) by gage
 Added information on error in AUTOLOAD

Revision 5716 - Directory Listing
Modified Sat Jun 21 16:36:52 2008 UTC (11 years, 8 months ago) by gage
 Formatting changes.

Revision 5715 - Directory Listing
Modified Sat Jun 21 16:33:53 2008 UTC (11 years, 8 months ago) by gage
Pass permissionLevel to the PG question environment
allows the question to behave differently if the actual viewer is an
instructor.  (The effectiveUser is the student for whom the
question was constructed -- the user -- is the person viewing the problem
which might be the student or it might be an instructor acting as the student
The permissionLevel is the one assigned to the "user".

Revision 5714 - Directory Listing
Modified Sat Jun 21 16:27:51 2008 UTC (11 years, 8 months ago) by gage
 Give more information in error message.

Revision 5713 - Directory Listing
Modified Sat Jun 21 16:26:44 2008 UTC (11 years, 8 months ago) by gage
Update version to 2.4.5

Revision 5712 - Directory Listing
Modified Fri Jun 20 19:55:21 2008 UTC (11 years, 8 months ago) by glarose
Update to minimize the data that are saved when a new version of a
gateway assignment is created.  This allows things like set invisibility
to propagate to all set versions that have been created, and cleans
up the stored data.

Revision 5711 - Directory Listing
Modified Fri Jun 20 19:53:58 2008 UTC (11 years, 8 months ago) by glarose
Show versions of gateway assignments that have been taken by a user,
providing a mechanism for instructors to edit specific versions of the
assignments.

Revision 5710 - Directory Listing
Modified Fri Jun 20 19:52:55 2008 UTC (11 years, 8 months ago) by glarose
Allow instructors to edit versions of an assignment.  This requires
that the input setID have ,vN appended, where N is the version number
to edit.  The ability to edit and try problems from gateway tests
remains problematic, however.

Revision 5705 - Directory Listing
Modified Thu Jun 19 19:34:31 2008 UTC (11 years, 8 months ago) by glarose
Correct message about time exceeded for gateway tests that are in
progress.

Revision 5704 - Directory Listing
Modified Thu Jun 19 19:05:00 2008 UTC (11 years, 8 months ago) by glarose
Gateway cleanup: make mark correct function mark all set versions
correct for gateway tests, take max attempts option out of problem
selectors for gateways (this should be strictly a function of the
set-level versions_per_interval).

Revision 5702 - Directory Listing
Modified Wed Jun 18 19:20:55 2008 UTC (11 years, 8 months ago) by glarose
Implement Danny Glin's fix for set_location entries being left when
a set was deleted.

Revision 5679 - Directory Listing
Modified Fri May 23 14:54:46 2008 UTC (11 years, 9 months ago) by gage
Moved trim_spaces utility from AddUsers.pm to Utils.pm (data munger section)
CourseAdmin page now calls trim_spaces to clean up data entered when creating
a new course   (spaces at beginning and end of entry are trimmed).  This addresses
bug #1442

Revision 5678 - Directory Listing
Modified Fri May 23 14:51:03 2008 UTC (11 years, 9 months ago) by gage
modifications to the <body> tag and to the
submit tag so that applets are triggered upon submission of the
problem.  This is still a work in progress -- the timing issues
with applets appear to be significant.

Revision 5666 - Directory Listing
Modified Fri May 9 11:55:17 2008 UTC (11 years, 9 months ago) by gage
Added a few more cosmetic tweaks to the text and to the execution flow.

This registration is now acceptable except that the questions asked in the email
need to be examined more closely.

A later version might allow for automatic registration.

Revision 5665 - Directory Listing
Modified Fri May 9 00:42:24 2008 UTC (11 years, 9 months ago) by gage
Changed the message on the email message a bit.

Revision 5664 - Directory Listing
Modified Fri May 9 00:27:04 2008 UTC (11 years, 9 months ago) by gage
Added a banner which asks users to register production servers.

Clicking on the "register button" brings up a page with a mailto: link.
and a "server site registered" button.  Clicking on the mailto link brings
up the administrator's email application with suggested information to be emailed
to gage@math.rochester.edu (for now -- later we can replace this with an alias mail
address and eventually with some sort of form and a database for the recipient.)


Clicking on the "server site registered" button creates an empty file
courses/admin/registered_2.4.5

where 2.4.5 is the current version number found in WeBWorK.

if this file is present the "please register" banner goes away.

It's just a first cut at tackling this problem.

p

Revision 5653 - Directory Listing
Modified Tue Apr 29 19:30:26 2008 UTC (11 years, 9 months ago) by sh002i
comment re: unused value rh_directories

Revision 5652 - Directory Listing
Modified Tue Apr 29 19:29:54 2008 UTC (11 years, 9 months ago) by sh002i
eliminate 'odd number of hash elements' error when showHints or
showSolutions are not checked.

Revision 5651 - Directory Listing
Modified Tue Apr 29 19:28:58 2008 UTC (11 years, 9 months ago) by sh002i
added fake_user, cleaned up formatting, expanded functionality of
renderProblems

Revision 5650 - Directory Listing
Modified Tue Apr 29 19:28:08 2008 UTC (11 years, 9 months ago) by sh002i
commented out unused variable

Revision 5649 - Directory Listing
Modified Tue Apr 29 19:27:34 2008 UTC (11 years, 9 months ago) by sh002i
beginnings of lightweight problem renderer

Revision 5648 - Directory Listing
Modified Tue Apr 29 19:24:48 2008 UTC (11 years, 9 months ago) by sh002i
added comments about future exception handling scheme

Revision 5645 - Directory Listing
Modified Sun Apr 27 11:53:10 2008 UTC (11 years, 10 months ago) by gage
Rolling back previous change of "\0 to \0 until further checking is done.

Revision 5644 - Directory Listing
Modified Sat Apr 26 23:13:59 2008 UTC (11 years, 10 months ago) by gage
Changed   join("\0",....)  to join(\0, ....) since I'm pretty sure that what was desired
was a string separated by nulls.   If one of the items in the list began with a number  eg 14
you would get    \014....\0name...\0   etc.  I think \0name evaluates properly but I'm pretty
sure that \014 does not.

Revision 5637 - Directory Listing
Modified Tue Apr 22 11:44:27 2008 UTC (11 years, 10 months ago) by gage
Changed references to "feedback"  to "email instructor", "cancel email" and so
forth for consistency.  This was in response to a suggestion by Bob Palais at
University of Utah.

-- Mike

Revision 5636 - Directory Listing
Modified Tue Apr 22 11:40:18 2008 UTC (11 years, 10 months ago) by gage
Fixed bug #1435 which prevented showHints and showSolutions from working.
Added -value =>1 to the checkbox items so that they return numeric
values rather than "on".

Revision 5629 - Directory Listing
Modified Fri Apr 4 19:22:30 2008 UTC (11 years, 10 months ago) by sh002i
When viewing a file-based problem library, don't show to problem
library's prefix in the "select a problem collection" popup. This can
significantly shorten the length of the options in that popup, making
them more managable.

Revision 5617 - Directory Listing
Modified Thu Mar 13 22:22:23 2008 UTC (11 years, 11 months ago) by sh002i
Add $feedback_by_section option:

# If this value is true, feedback will only be sent to users with the same
# section as the user initiating the feedback.
$feedback_by_section = 0;

Revision 5610 - Directory Listing
Modified Mon Feb 4 22:56:23 2008 UTC (12 years ago) by sh002i
improve error reporting for list parsing

Revision 5609 - Directory Listing
Modified Mon Feb 4 22:55:23 2008 UTC (12 years ago) by sh002i
added $mail{smtp_timeout} setting

Revision 5605 - Directory Listing
Modified Fri Jan 25 23:34:23 2008 UTC (12 years, 1 month ago) by dpvc
Add "disabled" previous and next buttons so that a student who clicks
on the next button on the first problem and then clicks again
(expecting another next) doesn't get "up" by accident.

Revision 5599 - Directory Listing
Modified Mon Jan 14 18:09:31 2008 UTC (12 years, 1 month ago) by glarose
Fix dropped last value in problem definition lines when importing from
a set definition file.

Revision 5598 - Directory Listing
Modified Tue Jan 8 14:44:04 2008 UTC (12 years, 1 month ago) by gage
fixed spelling of received :-)

Revision 5564 - Directory Listing
Modified Wed Oct 17 16:56:16 2007 UTC (12 years, 4 months ago) by sh002i
Useful tools for managing NPL-style tags in PG problems.

These tools were developed in the course of managing the Rogawski
problem library for W.H.Freeman:

lib/WeBWorK/NPL.pm - Useful routines for parsing and writing PG tags
format as well as the Textbooks file format. Also contains a routine
gen_find_tags which generates a "wanted" function for File::Find that
finds files that match a certain tags specification. As of now, editing
of tags is somewhat limited -- a facility for appending tags to the end
of the tag block is given, which should be sufficient for adding a new
textbook to existing files.

The tag parsing routine is all new, and should be somewhat more robust
and harder to abuse. One notable improvement is that it can handle
escaped single quotes within values, making it possible to say things
like:
	## DBsection('L\'Hospital\'s Rule')
However, the stricter value parsing makes it reject some broken values
already in the NPL. In the case of KEYWORDS, if a parse error is
encountered it will fall back on the old keyword parsing method. This
could be extended to other values if need be.

bin/pg-find-tags - Prints file names for files that match specifications
given on the command line. Good demo of how to use gen_find_tags. Can be
easily modified to perform other tasks.

bin/pg-append-textbook-tags - Appends tags for a new textbook to the end
of the tag block in an already-tagged file.

bin/pg-pull - Pull files from an existing library into a new library.
Directory and file names for the new library can be generated from the
tags in the problem (and optionally use the names from a Textbooks
file). We use this to pull Rogawski-tagged NPL problems out for separate
distribution. This script has some annoying limitations right now --
read the comments.

Revision 5561 - Directory Listing
Modified Mon Oct 15 15:55:16 2007 UTC (12 years, 4 months ago) by sh002i
support hints and solutions in the library browser

Revision 5507 - Directory Listing
Modified Fri Sep 14 15:21:54 2007 UTC (12 years, 5 months ago) by glarose
Bug fix.  Both the proctored test template and all taken versions of the
test were being dropped from the ProblemSets page when the user didn't
have the auth level to view proctored tests.

Revision 5496 - Directory Listing
Modified Wed Sep 12 15:05:07 2007 UTC (12 years, 5 months ago) by glarose
Correct logic error for showing correct answers with respect to
hiding scores et al.

Revision 5466 - Directory Listing
Modified Sat Sep 8 21:15:16 2007 UTC (12 years, 5 months ago) by dpvc
Fix DOS and Mac line endings, and make the detection of non-text files
a little more strict (DOS files were being marked as non-text).
Also, localize the file handles.

Revision 5414 - Directory Listing
Modified Sat Aug 25 18:16:34 2007 UTC (12 years, 6 months ago) by sh002i
forward-port (sh002i): Resolve bug #1293 by actually throwing a
RecordExists exception from NewSQL::Std.

Revision 5412 - Directory Listing
Modified Fri Aug 24 18:39:49 2007 UTC (12 years, 6 months ago) by sh002i
Extended the set definition file format to support commas in the
source_file field (as well was the value and max_attempts fields).

Commas are backslash escaped: \,
To get a literal backslash:   \\

Revision 5411 - Directory Listing
Modified Fri Aug 24 18:09:46 2007 UTC (12 years, 6 months ago) by sh002i
ignore .svn directories in problem libraries (%ignoredir)

Revision 5334 - Directory Listing
Modified Wed Aug 15 17:48:16 2007 UTC (12 years, 6 months ago) by jj
Textbook chapters and sections will now include their numbers in the
library browser, and be sorted accordingly.

Revision 5326 - Directory Listing
Modified Tue Aug 14 20:16:16 2007 UTC (12 years, 6 months ago) by glarose
bug fix: somehow I seem to have mixed up the logic in the message that
gets displayed on the sets page for tests that are still open/over time.
Sam: if you can get this into 2.4, that'd be great.  Thanks.

Revision 5325 - Directory Listing
Modified Tue Aug 14 18:34:35 2007 UTC (12 years, 6 months ago) by dpvc
Work around IE bug where pressing return submits a form but does not
set the submit button's value properly in some circumstances.

Revision 5324 - Directory Listing
Modified Tue Aug 14 16:23:27 2007 UTC (12 years, 6 months ago) by dpvc
Allow unpacking of .tar.gz and .tar files in addition to .tgz files.

Revision 5322 - Directory Listing
Modified Tue Aug 14 13:50:34 2007 UTC (12 years, 6 months ago) by glarose
bug fix.  when updating to hide set header display I assumed that
the $db->getMergedSet($userToShow, $setID) would succeed, which isn't
the case for a set that isn't assigned to any users (in particular,
which isn't assigned to the instructor who is editing the set).  this
bug fix resolves that by instead using the global set to determine if
headers should be displayed when the call to get the merged set fails.

Revision 5319 - Directory Listing
Modified Mon Aug 13 22:59:59 2007 UTC (12 years, 6 months ago) by sh002i
updated copyright dates

Revision 5314 - Directory Listing
Modified Mon Aug 13 14:16:11 2007 UTC (12 years, 6 months ago) by dpvc
Backing out of Mike's change to previewAnswers.  Setting that to 0
means the grader will not be run when the problem is first shown, and
that means the notes provided by the grader (like "You can earn
partial credit on this problem") won't be shown until the student
first provides an answer.  These messages are important, particularly
for sequential problems, and so need to appear even when the problem
is first shown, not just when answers have been submitted.

If Mike had another reason than just efficiency for not processing
answers on the first invocation of a problem, that will need to be
handled in a more sophisticated way.

Revision 5308 - Directory Listing
Modified Fri Aug 10 18:25:44 2007 UTC (12 years, 6 months ago) by jj
Sort entries which will appear in the library browser (chapter titles,
section titles, etc.).

Revision 5303 - Directory Listing
Modified Fri Aug 10 16:44:57 2007 UTC (12 years, 6 months ago) by sh002i
removed extra newline

Revision 5301 - Directory Listing
Modified Fri Aug 10 16:37:10 2007 UTC (12 years, 6 months ago) by sh002i
back out of pg_dir -> webwork_pg_dir change

Revision 5300 - Directory Listing
Modified Fri Aug 10 16:35:01 2007 UTC (12 years, 6 months ago) by sh002i
restore whitespace destroyed (presumably) by matt's editor

Revision 5295 - Directory Listing
Modified Fri Aug 10 16:04:01 2007 UTC (12 years, 6 months ago) by jj
When problems are being displayed, add a second "Update Set" button, this
one at the bottom of the list of problems.

Revision 5278 - Directory Listing
Modified Fri Aug 10 01:04:09 2007 UTC (12 years, 6 months ago) by sh002i
fixes for upgrading an empty database

Revision 5276 - Directory Listing
Modified Fri Aug 10 00:27:14 2007 UTC (12 years, 6 months ago) by sh002i
added missing newline at the end of the file

Revision 5267 - Directory Listing
Modified Thu Aug 9 22:02:38 2007 UTC (12 years, 6 months ago) by sh002i
backport (sh002i): set the default value of restrict_ip to No

Revision 5265 - Directory Listing
Modified Thu Aug 9 21:47:28 2007 UTC (12 years, 6 months ago) by glarose
Add check for NULL restrict_ip fields in the set table to be sure
that we don't try to check ip restrictions in that case.

Revision 5263 - Directory Listing
Modified Thu Aug 9 20:52:57 2007 UTC (12 years, 6 months ago) by jj
If we allow a user to see a problem rendered in Undefined_Set, then they
have to have permission to use instructor tools.

Revision 5258 - Directory Listing
Modified Thu Aug 9 17:24:33 2007 UTC (12 years, 6 months ago) by sh002i
forward-port (gage): Don't processAnswers the first time a page is
viewed. (Process answers only if the submitAnswers, previewAnswers or
checkAnswers button has been pressed.)

Revision 5257 - Directory Listing
Modified Thu Aug 9 17:22:37 2007 UTC (12 years, 6 months ago) by sh002i
forward-port (gage): Change the record key field to "0" from "1".  This
picks out the studentID which is usually in the first column.

This is a temporary fix.  We should change the scoring and merge
features to use the login as the primary key. That can await a general
cleanup and code factoring for the scoring and grade calculations
throughout WeBWorK.

Revision 5254 - Directory Listing
Modified Thu Aug 9 14:55:23 2007 UTC (12 years, 6 months ago) by glarose
Update ProblemSet editing to take out editing of set headers for
gateway tests; this is a bit of a hack to deal with the problem
that editing/trying the set header fails for a gateway test.  In
that the set header file isn't used for gateway tests I think this
is probably reasonable behavior.

Revision 5248 - Directory Listing
Modified Wed Aug 8 22:36:45 2007 UTC (12 years, 6 months ago) by glarose
Update restrictions on set access to ignore the case of
the set named 'Undefined_Set', which is used by the
library browser to view problems.

Revision 5244 - Directory Listing
Modified Wed Aug 8 00:33:07 2007 UTC (12 years, 6 months ago) by jj
Fix bug in keyword searching caused by not updating the name of related
tables in recent problem library database changes.

Revision 5234 - Directory Listing
Modified Tue Aug 7 01:06:31 2007 UTC (12 years, 6 months ago) by jj
Changes database access: now Problem Library tables are stored in the
webwork database.

Revision 5229 - Directory Listing
Modified Wed Aug 1 03:22:14 2007 UTC (12 years, 6 months ago) by mleventi
Fixed WSDL Errors

Revision 5227 - Directory Listing
Modified Tue Jul 31 18:02:54 2007 UTC (12 years, 6 months ago) by gage
set local host rpc address and hope that this hardwired url doesn't need
to be changed very often.  So far the default seems to be correct in
most cases.

Revision 5226 - Directory Listing
Modified Tue Jul 31 17:56:34 2007 UTC (12 years, 6 months ago) by gage
This seems to be a more stable way to discover the root directory of webwork.

For some reason $ENV{WEBWORK_ROOT} is occasionally undefined.

Revision 5225 - Directory Listing
Modified Tue Jul 31 16:40:01 2007 UTC (12 years, 6 months ago) by gage
Enhanced error message so that we can better determine the cause of communication problems
between webwork and moodle.

Revision 5223 - Directory Listing
Modified Tue Jul 31 04:33:45 2007 UTC (12 years, 6 months ago) by gage
Added error message (reported to the httpd log) if $ENV{WEBWORK_ROOT} is not defined.

Take care,

Mike

Revision 5221 - Directory Listing
Modified Thu Jul 26 18:53:08 2007 UTC (12 years, 7 months ago) by sh002i
Construct additional course environments using %WeBWorK::SeedCE, which
will always have all necessary values in it. The old way broke when we
moved the definitions of $webwork_courses_* and $webwork_htdocs_* out of
global.conf and into webwork.apache[2]-config (and therefore into
SeedCE).

Revision 5220 - Directory Listing
Modified Wed Jul 25 23:51:48 2007 UTC (12 years, 7 months ago) by sh002i
don't complain if tables don't exist when deleting them

Revision 5219 - Directory Listing
Modified Wed Jul 25 23:37:49 2007 UTC (12 years, 7 months ago) by sh002i
fixed typo :P

Revision 5213 - Directory Listing
Modified Mon Jul 23 04:06:32 2007 UTC (12 years, 7 months ago) by sh002i
PLEASE READ -- APACHE CONFIG CHANGES!

This patch makes webwork.apache2-config static (no <Perl> sections) and
passes changes into WeBWorK via PerlSetVar directives. The course
environment (global.conf) is seeded from these variables. Also changes
pg_dir to webwork_pg_dir, so all seed variables start with "webwork_".

So update your webwork.apache2-config and global.conf files! :)

Revision 5212 - Directory Listing
Modified Sun Jul 22 05:25:18 2007 UTC (12 years, 7 months ago) by sh002i
allow record classes to specify a set of initial records to insert into
a newly-created table. this is used to populate the setting table with
e.g. (db_version, $THIS_DB_VERSION).

Revision 5211 - Directory Listing
Modified Sun Jul 22 05:24:22 2007 UTC (12 years, 7 months ago) by sh002i
put most of wwdb_upgrade in a library so it can be accessed from elsewhere.

Revision 5207 - Directory Listing
Modified Sat Jul 21 19:13:10 2007 UTC (12 years, 7 months ago) by sh002i
use new dummp_table/restore_table code for course archiving/unarchiving

Revision 5206 - Directory Listing
Modified Sat Jul 21 19:12:38 2007 UTC (12 years, 7 months ago) by sh002i
dump_table/restore_table: remove debugging ooutput, eliminate unused variable

Revision 5205 - Directory Listing
Modified Sat Jul 21 16:39:23 2007 UTC (12 years, 7 months ago) by gage
The url for RPC has to be hardwired.  This makes that a bit clearer.

Revision 5204 - Directory Listing
Modified Sat Jul 21 16:37:39 2007 UTC (12 years, 7 months ago) by gage
Try this again.

Revision 5203 - Directory Listing
Modified Sat Jul 21 16:35:43 2007 UTC (12 years, 7 months ago) by gage
Update -- added reference to the union theme in addition to the moodle and math themes

Revision 5202 - Directory Listing
Modified Sat Jul 21 16:32:45 2007 UTC (12 years, 7 months ago) by gage
Stop a recurring error on hosted2  -- unfortunately I'm not sure what was triggering this error.
I couldn't generate it but an undefined set_id warning occured in many log entries
 from one course.

Revision 5201 - Directory Listing
Modified Sat Jul 21 16:30:38 2007 UTC (12 years, 7 months ago) by gage
don't use hardwired  mysql and mysqldump commands.

find the location of these commands in global.conf (i.e. the course environment)

Revision 5194 - Directory Listing
Modified Thu Jul 19 21:12:23 2007 UTC (12 years, 7 months ago) by sh002i
added record class for settings

Revision 5193 - Directory Listing
Modified Thu Jul 19 21:02:42 2007 UTC (12 years, 7 months ago) by sh002i
added missing newline at end of file

Revision 5192 - Directory Listing
Modified Thu Jul 19 21:02:15 2007 UTC (12 years, 7 months ago) by sh002i
(1) added methods for setting table (2) added dump_tables/restore_tables

Revision 5191 - Directory Listing
Modified Thu Jul 19 21:01:44 2007 UTC (12 years, 7 months ago) by sh002i
added dump_table and restore_table methods, which use mysqldump(1) and
mysql(1) respectively to dump/restore table data to/from a file.

Revision 5190 - Directory Listing
Modified Thu Jul 19 21:00:46 2007 UTC (12 years, 7 months ago) by sh002i
added name_eq where clause for settings

Revision 5153 - Directory Listing
Modified Thu Jul 12 18:37:23 2007 UTC (12 years, 7 months ago) by mleventi
New Gradebook function.

Revision 5137 - Directory Listing
Modified Wed Jul 11 01:01:07 2007 UTC (12 years, 7 months ago) by gage
Allow several blank problems to be added at once to a set.

Revision 5136 - Directory Listing
Modified Wed Jul 11 01:00:38 2007 UTC (12 years, 7 months ago) by gage
Adding warnings when dates are not correctly defined

Revision 5134 - Directory Listing
Modified Tue Jul 10 14:41:54 2007 UTC (12 years, 7 months ago) by glarose
Make sure logic in score display is correct.

Revision 5087 - Directory Listing
Modified Fri Jun 29 19:54:19 2007 UTC (12 years, 7 months ago) by sh002i
$main::VERSION should be "2.x" in HEAD. It gets set in rel-2-x-dev
branch before tagging each rel-2-x-y.

Revision 5080 - Directory Listing
Modified Fri Jun 29 18:57:38 2007 UTC (12 years, 7 months ago) by mleventi
Took out a hardcoded variable

Revision 5079 - Directory Listing
Modified Fri Jun 29 18:40:40 2007 UTC (12 years, 7 months ago) by mleventi
Added support for Apache1 in WSDL generation.

Revision 5078 - Directory Listing
Modified Fri Jun 29 18:17:23 2007 UTC (12 years, 7 months ago) by mleventi
Bug fix.

Revision 5077 - Directory Listing
Modified Fri Jun 29 17:12:03 2007 UTC (12 years, 7 months ago) by mleventi
Put back whitespace.

Revision 5064 - Directory Listing
Modified Thu Jun 28 21:31:48 2007 UTC (12 years, 7 months ago) by mleventi
More bugs squashed

Revision 5063 - Directory Listing
Modified Thu Jun 28 20:46:18 2007 UTC (12 years, 7 months ago) by mleventi
User Creation Bug Squashed.

Revision 5057 - Directory Listing
Modified Thu Jun 28 20:08:49 2007 UTC (12 years, 7 months ago) by mleventi
Squashing more bugs adding php4 support

Revision 5035 - Directory Listing
Modified Tue Jun 26 06:45:17 2007 UTC (12 years, 8 months ago) by mleventi
Squashing some bugs with the WebworkSOAP webservice.

Revision 5029 - Directory Listing
Modified Mon Jun 25 12:10:49 2007 UTC (12 years, 8 months ago) by gage
Changes to make unarchiving possible with a choice names for the unarchived files.
To do:  Provide updating of the database.  Currently there may be difficulties if the database is upgradedbetween the time the course is archived and the course is unarchived.
The behavior with sql_moodle  data schemas has not been tested.

Revision 5028 - Directory Listing
Modified Mon Jun 25 12:09:58 2007 UTC (12 years, 8 months ago) by gage
Changes to make unarchiving possible with a choice names for the unarchived files.

To do:  Provide updating of the database.  Currently there may be difficulties if the database is upgraded
between the time the course is archived and the course is unarchived.

The behavior with sql_moodle  data schemas has not been tested.

Revision 5020 - Directory Listing
Modified Fri Jun 22 19:05:59 2007 UTC (12 years, 8 months ago) by sh002i
use $ce->{externalPrograms}{gzip} rather than 'gzip'.

Revision 5009 - Directory Listing
Modified Thu Jun 21 20:17:02 2007 UTC (12 years, 8 months ago) by mleventi
Inital Commit of SOAP services.

Revision 5002 - Directory Listing
Modified Tue Jun 12 11:45:33 2007 UTC (12 years, 8 months ago) by glarose
Fix typo.

Revision 4972 - Directory Listing
Modified Thu May 31 14:39:10 2007 UTC (12 years, 8 months ago) by glarose
Update database handling to save the last submitted answer to problems
for every preview or new page.

Revision 4971 - Directory Listing
Modified Wed May 30 19:56:01 2007 UTC (12 years, 8 months ago) by glarose
bug fix to avoid warnings when dealing null fields with setting hide_score
and hide_score_by_problem for users.

Revision 4970 - Directory Listing
Modified Fri May 25 22:11:24 2007 UTC (12 years, 9 months ago) by jj
Sync treatment of keywords to current version of loadDB2.

Revision 4933 - Directory Listing
Modified Fri Apr 20 17:58:15 2007 UTC (12 years, 10 months ago) by glarose
Add where_student_id_eq clause for searching users.

Revision 4932 - Directory Listing
Modified Thu Apr 19 22:17:13 2007 UTC (12 years, 10 months ago) by dpvc
Added directory listing when a directory is being deleted.  The
listing will show the total number of files in the direcotry, and the
top level contents of the directory (with numbers of items in the each
subdirectory listed, but not the contents).  This resolves bug #1246.

Revision 4929 - Directory Listing
Modified Tue Apr 17 18:28:24 2007 UTC (12 years, 10 months ago) by glarose
Check for defined values to avoid uninitialized multiplication errors.

Revision 4926 - Directory Listing
Modified Mon Apr 9 21:01:51 2007 UTC (12 years, 10 months ago) by glarose
Bug fixes.  $urlPath->arg("setID") isn't always defined in our calls to
Authz::invalidIPAddress, and FormatRecords needs to know about versioned
sets.  The latter fixes the bug in Hardcopy that just (didn't) get fixed
with the previous (not well enough tested) fix.

Revision 4925 - Directory Listing
Modified Mon Apr 9 20:20:29 2007 UTC (12 years, 10 months ago) by glarose
bug fix: correct "sid" => "set_id"

Revision 4924 - Directory Listing
Modified Wed Apr 4 21:30:57 2007 UTC (12 years, 10 months ago) by glarose
Bug fixes: correct hideWork -> hide_work, and ensure version numbers
get appended to started tests.

Revision 4923 - Directory Listing
Modified Wed Apr 4 15:06:01 2007 UTC (12 years, 10 months ago) by glarose
Add set-level proctor login password for proctored gateway/quiz
assignments, improve handling of proctor keys and permissions for
proctored assignments, bug fixes for recently added features.

This commit
 - adds the ability to specify a set-level proctor for proctored
   gateway/quiz assignments.  this is done by adding a proctor with
   a username "set_id:setName", where "setName" is the name of the
   set, adding a "restricted_login_proctor" field to the set tables
   in the database, and allowing Authen::Proctor and
   ContentGenerator::LoginProctor to appropriately deal with this
   possibility.
 - updates proctor permissions and status in global.conf.dist,
   changing the old "proctor_quiz" permission level (3) into two
   levels, "proctor_quiz_login" and "proctor_quiz_grade".
   wwdb_upgrade includes a stanza to make this change to proctors
   that already exist in courses.
 - adds a "Proctor" status in %statuses in global.conf, with no
   valid behaviors.  this allows the creation of proctor users
   in a course who have the permissionLevel to login (and thus
   proctor), but not to access the course.
 - improves GatewayQuiz explanatory messages when scores or work
   are hidden.
 - improves GatewayQuiz proctor key management, especially for
   tests with more than one allowed attempt.  this includes
   adding a deleteAllProctorKeys() method to DB.pm.
 - updates Instructor Tools, UserList.pm and ProblemSetDetail
   to deal with set-level proctoring.  c.f. the note below about
   the ramifications of these changes.
 - updates ProblemSetList to deal with new problem set fields
   set_locations and set-level proctors that are located in a
   different database table than the set data.
 - fixes bugs in UserList and ProblemSetDetail dealing with the
   setting of hide_score, hide_score_by_problem, and
   time_limit_cap.

This update hides set-level proctor users from the classlist
editor (UserList.pm) and instructor tools (Index.pm) interfaces.
They can be created, modified, and deleted at the homework sets
editor page (ProblemSetDetail.pm) only, and there only implicitly:
we never indicate that a user is being created or modified behind
the screen.

Revision 4922 - Directory Listing
Modified Mon Apr 2 20:58:49 2007 UTC (12 years, 10 months ago) by glarose
Update ProblemSetDetail to set both hide_score and hide_score_by_problem
set fields with a single selector.  This is general, in the sense that
it should allow other combinations of fields to be set if that's
appropriate.  This is a tentative commit; we may choose to back out the
changes later, especially if the data model for hiding scores is
changed.

Revision 4921 - Directory Listing
Modified Mon Apr 2 19:57:39 2007 UTC (12 years, 10 months ago) by glarose
Update to add preliminary support for hiding scores on problems only.

Revision 4920 - Directory Listing
Modified Mon Apr 2 19:56:47 2007 UTC (12 years, 10 months ago) by glarose
Patch to set default for time_cap set definition import and include
problem_randorder in set definition export.

Revision 4919 - Directory Listing
Modified Mon Apr 2 19:55:14 2007 UTC (12 years, 10 months ago) by glarose
Finally patch addUserProblem to use grok_vsetID.

Revision 4918 - Directory Listing
Modified Fri Mar 30 19:07:55 2007 UTC (12 years, 10 months ago) by glarose
Some bugfixes, preliminary commit of relax_restrict_ip function.  this
commit
 - adds relax_restrict_ip and hide_score_by_problem columns to the set
	and set_user tables
 - adds the corresponding fields to the Set and UserSet DB Records
 - patches 'no location' handling in the location management routine
	in CourseAdmin.pm
 - improves Authz->checkSet's handling of the case of location
	restriction when no addresses exist for a location, makes it
	use any cached set that may be available, and makes it honor
	relax_restrict_ip
 - corrects a typo and some comments in DB.pm
 - allows ip restriction fields in ProblemSetList when importing from
	or exporting to set definition files
 - updates ProblemSetDetail.pm to handle the relax_restrict_ip field

The relax_restrict_ip function has not been well tested.
hide_score_by_problem isn't yet used.

Revision 4917 - Directory Listing
Modified Fri Mar 30 14:21:14 2007 UTC (12 years, 10 months ago) by glarose
Usability update: add direct edit links to list of displayed locations,
ability to delete multiple locations selected from the list.

Revision 4916 - Directory Listing
Modified Fri Mar 30 13:02:05 2007 UTC (12 years, 10 months ago) by glarose
Bug fix.  Check for locations has to be with a non-versioned set_id.

Revision 4915 - Directory Listing
Modified Fri Mar 30 12:39:47 2007 UTC (12 years, 10 months ago) by glarose
Back out error checking of input data fields.  This doesn't work with
the initial conversion of a set to a gateway/test assignment, because
at that point the fields have to be zero or empty.

Revision 4914 - Directory Listing
Modified Thu Mar 29 19:48:58 2007 UTC (12 years, 10 months ago) by glarose
More gateway fixes/additions.  This commit
  - moves javascript code for gateways into htdocs/js/gateway.js,
  - updates the gateway template to use that,
  - updates the gateway CSS file to use Louis Zulli's workaround
    for IE6 not honoring position:fixed, and adds CSS definitions
    for a score reporting box for multi-page, multi-attempt quizzes,
  - updates the GatewayQuiz module to print a score reporting box
    for multi-page, multi-attempt quizzes,
  - updates the Grades module to correctly sort problems for
    GatewayQuiz assignments that have randomly ordered problems, and
  - adds some error checking to ProblemSetDetail to avoid people
    doing things like submitting a zero time limit for a gateway.

Revision 4913 - Directory Listing
Modified Thu Mar 29 17:42:54 2007 UTC (12 years, 10 months ago) by glarose
Change permission levels to display and edit levels as user roles
(guest, student, proctor, ta, professor) rather than numerical values.

Revision 4912 - Directory Listing
Modified Thu Mar 29 15:12:49 2007 UTC (12 years, 10 months ago) by glarose
Update checkKeyfields to allow IP masks of the form [address]/[mask]

Revision 4911 - Directory Listing
Modified Wed Mar 28 19:16:06 2007 UTC (12 years, 11 months ago) by glarose
Update for centralization of set-level validity checks in Authz: check
for homework assignments being sent to the gateway content generator.

Revision 4910 - Directory Listing
Modified Wed Mar 28 18:32:11 2007 UTC (12 years, 11 months ago) by glarose
Follow up commit of IP address restriction code.  This adds IP address
location management to CourseAdmin.pm, corrects a typo for location
address management in DB.pm, and makes ProblemSetDetail.pm prettier
when displaying locations for restrictions.

Revision 4909 - Directory Listing
Modified Tue Mar 27 20:12:14 2007 UTC (12 years, 11 months ago) by glarose
Second preliminary commit of changes to move set-level valid checks to
Authz.  This makes ProblemSet.pm and Problem.pm use the
$self->{invalidSet} value set by ContentGenerator.pm, and means that
regular homework assignments may now be restricted to specific IP
addresses.  This commit also corrects $userName/$effectiveUserName
errors I had in Authz->checkSet() and moves the actual IP address
checking to a separate subroutine in Authz.  Hardcopy.pm uses that
routine to filter sets to be sure it doesn't generate hardcopies for
a IP address restricted set.

Revision 4908 - Directory Listing
Modified Tue Mar 27 17:15:19 2007 UTC (12 years, 11 months ago) by glarose
Update to clean up some code and use the ContentGenerator level check
for set validity.  This update also updates indenting, standardizing
on a tab-based indent, which means that the diff will show almost all
of the code as changing.  Sorry about that.

Revision 4907 - Directory Listing
Modified Tue Mar 27 17:13:31 2007 UTC (12 years, 11 months ago) by glarose
Preliminary commit of changes to Authz.pm and ContentGenerator.pm to
move set-level checks for set validity (set is open, published, IP
address restrictions, etc.) out of the individual ContentGenerator
modules.  ContentGenerator now uses Authz::checkSet to check these
and stores any return message in $self->{invalidSet}.  Individual
ContentGenerator modules can take advantage of this by checking the
value of $self->{invalidSet} that is preset (thus, this change should
be transparent for unchanged ContentGenerators).

Revision 4905 - Directory Listing
Modified Tue Mar 27 17:06:04 2007 UTC (12 years, 11 months ago) by glarose
Fix bug in site_check call.

Revision 4904 - Directory Listing
Modified Tue Mar 27 17:04:02 2007 UTC (12 years, 11 months ago) by glarose
Preliminary commit of code to restrict access to assignments by client
IP address.  This commit adds the database tables for IP address
restriction, updates check_modules.pl to require Net::IP for address
matching, adds database calls in DB.pm for manipulating locations and
addresses, and adds location restriction to the set editing in
ProblemSetDetail.

This commit does not add actual restriction to sets, nor the ability
to create locations to which to restrict access.

Revision 4901 - Directory Listing
Modified Mon Mar 26 20:26:57 2007 UTC (12 years, 11 months ago) by sh002i
replace set ID underscores with spaces, not nonbreaking spaces (for IE6)

Revision 4900 - Directory Listing
Modified Mon Mar 26 19:50:55 2007 UTC (12 years, 11 months ago) by sh002i
fix for warning when generating prettySetID

Revision 4897 - Directory Listing
Modified Thu Mar 22 22:37:52 2007 UTC (12 years, 11 months ago) by sh002i
don't up nonbreaking spaces in set names :P

Revision 4895 - Directory Listing
Modified Thu Mar 22 20:03:29 2007 UTC (12 years, 11 months ago) by sh002i
replace underscores with spaces in set names the links menu

Revision 4894 - Directory Listing
Modified Thu Mar 22 13:50:07 2007 UTC (12 years, 11 months ago) by glarose
Added authentication mechanism Cosign.pm.  This implements WeBWorK
authentication using cosign[1], an open-source single sign-on system
developed at the University of Michigan.  This should be a reasonable
model for other modules implementing external, directory or location
based, authentication for WeBWorK.

To use cosign authentication for WeBWorK, set $authen{user_module} in
global.conf to WeBWorK::Authen::Cosign, and then configure apache to
require cosign authentication to enter WeBWorK courses.  If $cosignoff
is set to a true value in the course environment, standard WeBWorK
authentication is used for that course.

Note that cosign is a cookie-based authentication system.  This means
that it is between very hard and impossible to authenticate multiple
users on the same computer/web browser at the same time.  Thus it is
not possible to have both $authen{user_module} and $authen{proctor_module}
set to Cosign at the same time.

Implementation:
  Cosign.pm inherits from Authen.pm.  It redefines get_credentials to
force password authentication, and then assumes password checks succeed.
Because cosign is a Location/Directory based apache authentication
system, by the time the user gets to the Authen module we know that she
has successfully authenticated against cosign.  We also modify the
forget_verification method to return a redirect to the course environment
variable $cosign_logout_script.

 [1] <http://www.umich.edu/~umweb/software/cosign/>

Revision 4893 - Directory Listing
Modified Thu Mar 22 13:39:50 2007 UTC (12 years, 11 months ago) by glarose
Add support for external authentication systems.    This is appropriate
if something like an apache directory or location based authentication
system (such as cosign, basic or digest auth) is used.  In these cases,
WeBWorK may not handle the logout procedure, and we need information
from the Authentication module to determine the correct action.  We
allow for the case of redirects here, but this could easily be
extended if needed.

Implementation: pre_header_initialize() checks for $authen->{redirect}
to be defined and true after calling $authen->forget_verification().
If to, we set $self->reply_with_redirect to the value of returned by
$authen->{redirect}.

This update also moves key deletion from body() to
pre_header_initialize(), so that those actions take place before any
redirect.

Revision 4892 - Directory Listing
Modified Thu Mar 22 13:35:42 2007 UTC (12 years, 11 months ago) by glarose
Add support for external authentication systems.  This is appropriate
if something like an apache directory or location based authentication
system (such as cosign, basic or digest auth) is used.  In these cases,
by the time the user gets to a ContentGenerator in the WeBWorK system
she has successfully authenticated against the external authentication
system, and so if there was an error it indicates that the user was
not allowed to enter the course for some other reason.  Thus, in this
case we print an error message and skip the WeBWorK login form.

Implementation:
  body() checks for $authen->{external_auth} to be defined and true;
if so, only the authentication error and an informational message
about the external authentication system is printed.  If undefined
or false, any authentication error is printed and the login form,
as usual.

Revision 4891 - Directory Listing
Modified Thu Mar 22 13:28:46 2007 UTC (12 years, 11 months ago) by glarose
Comment out residual debugging "warn" statement.

Revision 4886 - Directory Listing
Modified Thu Mar 15 22:08:17 2007 UTC (12 years, 11 months ago) by glarose
Make getAllMergedProblemVersions and getAllProblemVersions order returned
data by problem ID.

Revision 4885 - Directory Listing
Modified Thu Mar 15 22:07:37 2007 UTC (12 years, 11 months ago) by glarose
Add export option for gateway set fields.  Include time_cap in the
list of fields in the set.

Revision 4884 - Directory Listing
Modified Thu Mar 15 22:06:16 2007 UTC (12 years, 11 months ago) by glarose
Fix state retention when previewing or checking answers by retaining
page but not worrying about preview or answer check.  Reduce PG
translation for multipage tests by only translating problems on
submission or as needed when checking.  Clean up some calls to get
problems so that db->getAll... problems calls are used.  Add course
logging for preview, newpage, and grading.  Add "Show Past Answers"
form/button as appropriate.

Please note: there is an interesting question about the order in
which problems are logged for the case when problems on a test/quiz
are ordered randomly.  In this case, the problems are logged in the
course answer_log in the order in which they appear on the test.
However, when viewing grades and student progress, at the moment
this is not the case.  In the long run we probably want the grades
page to conform to the order shown in the test, while we may want
the student progress page to match the order seen in the actual
test definition.  For the moment that's probably a bug.

Revision 4883 - Directory Listing
Modified Thu Mar 15 22:00:37 2007 UTC (12 years, 11 months ago) by glarose
Add comment requested for heaven's sake.

Revision 4882 - Directory Listing
Modified Wed Mar 14 23:52:43 2007 UTC (12 years, 11 months ago) by sh002i
wrap message for preview. resolves bug #1147.

Revision 4881 - Directory Listing
Modified Wed Mar 14 23:38:11 2007 UTC (12 years, 11 months ago) by sh002i
accidental commit of "die" that i added for testing (whoops).

Revision 4880 - Directory Listing
Modified Wed Mar 14 22:50:36 2007 UTC (12 years, 11 months ago) by sh002i
error handler in the post-connection subroutine that sends the error to
the professor by email and also logs it to the apache log.
resolves bug #1120, sort of.

Revision 4879 - Directory Listing
Modified Wed Mar 14 17:29:49 2007 UTC (12 years, 11 months ago) by sh002i
added check on the number of addresses in the From and Reply-to fields.
this resolves bug #1131.

Revision 4875 - Directory Listing
Modified Tue Mar 13 21:18:18 2007 UTC (12 years, 11 months ago) by glarose
Bug fixes in implementation of hide_score and hide_work.

Revision 4874 - Directory Listing
Modified Tue Mar 13 15:46:02 2007 UTC (12 years, 11 months ago) by glarose
Update for new values of hide_score and hide_work.

Revision 4873 - Directory Listing
Modified Tue Mar 13 15:45:31 2007 UTC (12 years, 11 months ago) by glarose
Update to make hardcopy generation respect a set's hide_work setting,
allow those with permission to generate hardcopies for multiple sets
to print versioned sets.

Revision 4872 - Directory Listing
Modified Tue Mar 13 15:44:21 2007 UTC (12 years, 11 months ago) by glarose
Update to use hide_score and hide_work, adding new values and including
the new permissionLevel from global.conf.  In ProblemSets.pm also fix
hardcopy selector value for gateway tests.

Revision 4871 - Directory Listing
Modified Tue Mar 13 15:42:06 2007 UTC (12 years, 11 months ago) by glarose
Update Set.pm and UserSet.pm files to reflect more intelligible values
of hide_work and hide_score.

Revision 4868 - Directory Listing
Modified Mon Mar 12 19:43:06 2007 UTC (12 years, 11 months ago) by sh002i
Better messages when no recipients are selected -- resolves bug 1130.

Revision 4865 - Directory Listing
Modified Fri Mar 9 21:09:02 2007 UTC (12 years, 11 months ago) by glarose
Update for gateway parameters hide_score until set due date, hide_work
until set due date, and add time_limit_cap.

Revision 4864 - Directory Listing
Modified Fri Mar 9 21:08:08 2007 UTC (12 years, 11 months ago) by glarose
update to allow hide_score until set due date.

Revision 4862 - Directory Listing
Modified Fri Mar 9 21:06:35 2007 UTC (12 years, 11 months ago) by glarose
update hide_score and hide_work records for sets and usersets, add
time_limit_cap column to tables.

Revision 4861 - Directory Listing
Modified Fri Mar 9 21:05:37 2007 UTC (12 years, 11 months ago) by glarose
Update set editing to allow new gateway options, fix display of options
with labels when editing for users, make more gateway parameters editable
for users, add override checkboxes for drop down menus for parameters
when editing for users.

Revision 4860 - Directory Listing
Modified Thu Mar 8 21:50:05 2007 UTC (12 years, 11 months ago) by glarose
Intermediate commit.  This should speed up working on long multipage
tests by not translating pages that aren't on the current page unless
we're grading or checking the test.

There is still a bug in the GatewayQuiz module when dealing with
multipage, multiattempt tests, however.  Management of the grading/
previewing state isn't being handled correctly, so the logic for
that needs to be reworked.

Revision 4852 - Directory Listing
Modified Wed Mar 7 17:43:57 2007 UTC (12 years, 11 months ago) by sh002i
re-throw unrecognized exceptions

Revision 4851 - Directory Listing
Modified Wed Mar 7 17:34:42 2007 UTC (12 years, 11 months ago) by glarose
Update for new NewSQL versioning API.

Revision 4850 - Directory Listing
Modified Tue Mar 6 22:03:15 2007 UTC (12 years, 11 months ago) by glarose
Add check for whether self->{login_type} is defined.  I'm not sure
why this is necessary, but we get warnings when entering from
LoginProctor otherwise.

Revision 4849 - Directory Listing
Modified Tue Mar 6 22:02:28 2007 UTC (12 years, 11 months ago) by glarose
Correct addkey to allow for proctor grading keys, restore ordering to
listSetVersions.

Revision 4848 - Directory Listing
Modified Tue Mar 6 22:01:58 2007 UTC (12 years, 11 months ago) by glarose
Update for new newSQL version API.

Revision 4847 - Directory Listing
Modified Tue Mar 6 22:01:27 2007 UTC (12 years, 11 months ago) by glarose
Clean up code, completely rewrite output of test headers to simplify
logical structure.

Revision 4846 - Directory Listing
Modified Tue Mar 6 21:57:44 2007 UTC (12 years, 11 months ago) by sh002i
setting $this_set='' is unnecessary. getMergedSet returns undef in
scalar context if the record is not found. also fixed some indentation.

Revision 4842 - Directory Listing
Modified Tue Mar 6 01:33:53 2007 UTC (12 years, 11 months ago) by sh002i
use path to cp in course environment

Revision 4841 - Directory Listing
Modified Tue Mar 6 01:33:21 2007 UTC (12 years, 11 months ago) by sh002i
better error reporting for external program calls

Revision 4840 - Directory Listing
Modified Tue Mar 6 01:30:43 2007 UTC (12 years, 11 months ago) by sh002i
better error reporting for external programs

Revision 4839 - Directory Listing
Modified Mon Mar 5 23:06:55 2007 UTC (12 years, 11 months ago) by glarose
Update to fix scoring of multipart problems.

Revision 4838 - Directory Listing
Modified Mon Mar 5 23:06:34 2007 UTC (12 years, 11 months ago) by glarose
Minor updates to clean comments, some logic, and display of versioned
sets.

Revision 4837 - Directory Listing
Modified Mon Mar 5 23:05:56 2007 UTC (12 years, 11 months ago) by glarose
Update to use new newSQL versioning API.  Also fixes display of correct
answers so that correct answers to a versioned set are visible if the
available attempts on the set are exhausted and the version's answer
date has been reached, but not before.

Revision 4836 - Directory Listing
Modified Mon Mar 5 23:02:13 2007 UTC (12 years, 11 months ago) by glarose
Update sortByName() utility to allow sorting on multiple fields.  This
allows sorting on set_id and version_id, which is desirable for
versioned sets.

Revision 4835 - Directory Listing
Modified Mon Mar 5 19:07:45 2007 UTC (12 years, 11 months ago) by sh002i
replace system() calls with readpipe() calls -- arguments are escaped
and stdout/stderr are captured, and exit status is reported accurately.

Revision 4830 - Directory Listing
Modified Sun Mar 4 22:21:54 2007 UTC (12 years, 11 months ago) by sh002i
remove old versioning methods that are no longer used by any client code

Revision 4821 - Directory Listing
Modified Fri Mar 2 23:28:52 2007 UTC (12 years, 11 months ago) by sh002i
explain seemingly nonsensical line of code

Revision 4820 - Directory Listing
Modified Fri Mar 2 23:26:30 2007 UTC (12 years, 11 months ago) by sh002i
remove commented-out sql_table_names hash

Revision 4819 - Directory Listing
Modified Fri Mar 2 23:25:35 2007 UTC (12 years, 11 months ago) by sh002i
reorder sections so that they're in the same order as the tables in database.conf
i think the database.conf order makes more sense, anyway. this will make
it easier for me to find things.

Revision 4818 - Directory Listing
Modified Fri Mar 2 23:22:28 2007 UTC (12 years, 11 months ago) by sh002i
confirmed a fix by gavin -- i had said "grep" when i should have said "map".
(there's no need for the grep, in any case)

Revision 4816 - Directory Listing
Modified Fri Mar 2 23:18:04 2007 UTC (12 years, 11 months ago) by sh002i
updates to allow merging and versioning to interact gracefully:

- use table aliasing to be able to refer to the same table by two
  different names
- call sql_field_expression to get SQLized field names (the
  implementation in Versioned.pm returns a SUBSTRING(...) expression)
- use the implementations of conv_where and keyparts_to_where from the
  primary table being merged (this allows Versioned.pm to provide
  appropriate WHERE conditions)
- remove Gavin's change that ignores versioned tables

Revision 4815 - Directory Listing
Modified Fri Mar 2 23:12:28 2007 UTC (12 years, 11 months ago) by sh002i
don't quote table names that are scalar references, dereference them
instead

Revision 4814 - Directory Listing
Modified Fri Mar 2 23:11:42 2007 UTC (12 years, 11 months ago) by sh002i
add sql_field_expression method to return a fully-SQLized, quoted
expression that can be used to represent the field in a field list or
WHERE clause (but not as an lvalue in a SET clause)

Revision 4813 - Directory Listing
Modified Fri Mar 2 23:09:49 2007 UTC (12 years, 11 months ago) by sh002i
don't quote table/field names in grok_*_from_vsetID_sql, do it in caller

Revision 4812 - Directory Listing
Modified Fri Mar 2 21:36:00 2007 UTC (12 years, 11 months ago) by glarose
Update for NewSQL new versioning API, make a lot of indenting more
uniform, make display of versioned sets that are assigned to a user
but haven't been taken better.

Revision 4811 - Directory Listing
Modified Fri Mar 2 21:35:13 2007 UTC (12 years, 11 months ago) by glarose
Update for NewSQL versioned API.

Revision 4810 - Directory Listing
Modified Fri Mar 2 21:34:54 2007 UTC (12 years, 11 months ago) by glarose
Finish update for weighted problems; update to make attempts_per_version
work better for number of attempts greater than one.

Revision 4809 - Directory Listing
Modified Fri Mar 2 21:34:12 2007 UTC (12 years, 11 months ago) by glarose
Correct listSetVersions to sort output.

Revision 4805 - Directory Listing
Modified Thu Mar 1 22:20:36 2007 UTC (12 years, 11 months ago) by glarose
Update comments.

Revision 4804 - Directory Listing
Modified Thu Mar 1 22:20:24 2007 UTC (12 years, 11 months ago) by glarose
Update for new NewSQL database API, improve display of test/quiz
assignments.

Revision 4803 - Directory Listing
Modified Thu Mar 1 22:19:40 2007 UTC (12 years, 11 months ago) by glarose
Update assignUseSetVersionToUser and assignProblemSetVersionToUser to
use new NewSQL API.

Revision 4802 - Directory Listing
Modified Thu Mar 1 22:18:56 2007 UTC (12 years, 11 months ago) by glarose
Update GatewayQuiz ContentGenerator to use new NewSQL API, clean up some
comments, deal with bug where last answer would be saved when there
are no remaining allowed submissions, update to use maxAttempts == -1
instead of 0, update to try and deal with problems with weights
not equal to one (untested).

Revision 4801 - Directory Listing
Modified Thu Mar 1 22:15:24 2007 UTC (12 years, 11 months ago) by glarose
Updates for new NewSQL Versioned API; update listProblemVersions,
getAllProblemVersions, getMergedProblemVersion.

Revision 4800 - Directory Listing
Modified Thu Mar 1 22:11:46 2007 UTC (12 years, 11 months ago) by glarose
Update to include needed where_ conversion methods:
set_id_eq_problem_id_eq and user_id_eq_set_id_eq_version_id_eq.

Revision 4799 - Directory Listing
Modified Thu Mar 1 22:10:37 2007 UTC (12 years, 11 months ago) by glarose
Update to avoid versioned tables, which are now dealt with in
VersionedMerge.pm

Revision 4798 - Directory Listing
Modified Thu Mar 1 22:09:51 2007 UTC (12 years, 11 months ago) by glarose
New Schema to support merging of versioned sets in NewSQL.  This is a
horribly brutal hack that seeks to get something working until Sam
comes up with one of his gloriously elegant and sophisticated
solutions.

Revision 4796 - Directory Listing
Modified Tue Feb 27 16:16:41 2007 UTC (12 years, 11 months ago) by glarose
Add conditional to check whether set assignment/unassignment needs to
be done before making a database call to do so.  Resolves a problem I
was having with duplicate entries in set_user being created before a
database error was returned warning about duplicate sets.

Revision 4793 - Directory Listing
Modified Thu Feb 22 17:44:31 2007 UTC (13 years ago) by sh002i
THIS UPDATE BREAKS CONTENT GENERATORS: split up methods for versioned
and non-versioned sets, and added new implementations for merged
versioned sets. (i'm mainly committing this so gavin can see what i've
done and give me input.)

Revision 4791 - Directory Listing
Modified Thu Feb 22 01:25:11 2007 UTC (13 years ago) by sh002i
list keyfields explicitly, so that we can have the ProblemVersion
keyfields in the correct order (user_id,set_id,version_id,problem_id)

Revision 4790 - Directory Listing
Modified Tue Feb 20 22:10:09 2007 UTC (13 years ago) by sh002i
restrict where clauses generated from keyparts which don't mention
either set_id or version_id

Revision 4789 - Directory Listing
Modified Tue Feb 20 19:53:47 2007 UTC (13 years ago) by sh002i
added keyparts_to_where wrapper for combined set_id/version_id

Revision 4788 - Directory Listing
Modified Tue Feb 20 00:07:16 2007 UTC (13 years ago) by sh002i
get_fields_where*: when field list is unspecified, use all fields rather
than letting sqlabstract default to "*". (also remove unneeded
Data::Dumper import)

Revision 4787 - Directory Listing
Modified Tue Feb 20 00:05:19 2007 UTC (13 years ago) by sh002i
added make_vsetID_sql, fixed an off-by-1 in grok_setID_from_vsetID_sql

Revision 4786 - Directory Listing
Modified Tue Feb 20 00:04:21 2007 UTC (13 years ago) by sh002i
schema-level support for a version field embedded in the set ID.
TODO:
 - modify DB.pm to NOT use version/non-version specific where clause
names, and commit removal of those names from NewSQL.pm (done but not
committed yet, since we don't want to break things too badly)
 - modify DB.pm to provide a completely separate suite of methods for
versioned sets/problems

Revision 4785 - Directory Listing
Modified Tue Feb 20 00:01:47 2007 UTC (13 years ago) by sh002i
versioned subclasses of UserSet/UserProblem

Revision 4784 - Directory Listing
Modified Tue Feb 20 00:00:02 2007 UTC (13 years ago) by sh002i
remove leftover debugging code (Data::Dumper)

Revision 4782 - Directory Listing
Modified Wed Feb 14 19:29:32 2007 UTC (13 years ago) by sh002i
Set SMTP envelope sender to $ce->{mail}{smtpSender} rather than user's
from address. This prevents some mailservers from rejecting the mail for
having a forged sender address.

Revision 4781 - Directory Listing
Modified Wed Feb 14 19:08:46 2007 UTC (13 years ago) by gage
Added warning message when moodle session is not found.

Revision 4780 - Directory Listing
Modified Wed Feb 14 19:00:02 2007 UTC (13 years ago) by sh002i
revert file-based mail status changes (but keep formatting fixes)

Revision 4778 - Directory Listing
Modified Wed Feb 14 18:16:46 2007 UTC (13 years ago) by sh002i
Set SMTP envelope sender to $ce->{mail}{smtpSender} rather than user's
from address. This prevents some mailservers from rejecting the mail for
having a forged sender address.

Revision 4768 - Directory Listing
Modified Tue Feb 6 22:32:30 2007 UTC (13 years ago) by sh002i
perliminary steps to splitting versioned and non-versioned user sets.
TODO:
 - modify DB.pm to NOT use version/non-version specific where clause
names, and commit removal of those names from NewSQL.pm
 - modify DB.pm to provide a completely separate suite of methods for
versioned sets/problems
 - add VersionedUserSet and VersionedUserProblem records classes, make
them subclasses of UserSet and UserProblem. include fake 'version'
field.
 - add boxing/unboxing routines for those record classes.
 - figure out what to do about listing versioned sets/problems, since
some of the keyparts is going to be synthesized. (post-filter on
get_fields_where?)

Revision 4763 - Directory Listing
Modified Thu Feb 1 22:43:07 2007 UTC (13 years ago) by glarose
Make sure that something gets passed to renderProblems() for the userSet
even when a global set is being edited and it isn't assigned to any
users.  Gets rid of "odd number of elements in hash assignment" errors
in renderProblems.  Because renderProblems plugs in a fake set if it
gets a false value in for the userSet, sending in '' appears to solve
the problem.

Revision 4758 - Directory Listing
Modified Tue Jan 30 21:35:28 2007 UTC (13 years ago) by sh002i
alternate implementation of DelayedMailer that uses Mail::Sender rather
than Net::SMTP. This is somewhat more flexible, but currently doesn't
play well with Safe.pm. (I forget exactly how, but I have it on record
somewhere.)

Revision 4756 - Directory Listing
Modified Wed Jan 24 22:20:35 2007 UTC (13 years, 1 month ago) by sh002i
fix permission not getting set (introduced with prior changes) UGH!

Revision 4753 - Directory Listing
Modified Fri Jan 19 16:20:59 2007 UTC (13 years, 1 month ago) by sh002i
the parameter is called moodle17, not moodle_version

Revision 4752 - Directory Listing
Modified Thu Jan 18 21:17:10 2007 UTC (13 years, 1 month ago) by gage
Removed warning message.

Revision 4751 - Directory Listing
Modified Thu Jan 18 20:59:16 2007 UTC (13 years, 1 month ago) by gage
Fixed typo in defining PermissionLevels (missing s in
teachersPermissionLevel) etc.

Revision 4749 - Directory Listing
Modified Thu Jan 18 19:37:49 2007 UTC (13 years, 1 month ago) by sh002i
fixed typo (calling sql->quote instead of sql->_quote)

Revision 4742 - Directory Listing
Modified Mon Jan 8 23:56:16 2007 UTC (13 years, 1 month ago) by sh002i
fixed lexical redefinition warning

Revision 4741 - Directory Listing
Modified Mon Jan 8 22:51:03 2007 UTC (13 years, 1 month ago) by sh002i
added code to display mail merge status from coursedir/DATA/mailmerge.
nothing writes/deletes the status files yet though, that is next. :)

Revision 4740 - Directory Listing
Modified Mon Jan 8 20:35:58 2007 UTC (13 years, 1 month ago) by sh002i
Preliminary Moodle 1.7 support. There is still some work to do on this,
but I think it belongs in MAIN now.

Revision 4739 - Directory Listing
Modified Mon Jan 8 20:22:45 2007 UTC (13 years, 1 month ago) by sh002i
add flag to set problem seed in assignProblemToUser and assignProblemToUserSet

Revision 4738 - Directory Listing
Modified Mon Jan 8 18:32:29 2007 UTC (13 years, 1 month ago) by sh002i
removed unused import of WeBWorK::DB::Utils::initializeUserProblem.

Revision 4736 - Directory Listing
Modified Wed Jan 3 23:59:02 2007 UTC (13 years, 1 month ago) by gage
Gave a bit more information when the scoring data (.csv ) file doesn't exist.  This gives the
user a clue as to what to name the file.

-- Mike

Revision 4735 - Directory Listing
Modified Wed Jan 3 22:47:30 2007 UTC (13 years, 1 month ago) by dpvc
Fixed incorrect lookup of which set to view when viewing problems
"From This Course".  The problem was introduced in version 1.69.
Similar errors were also in the other viewing modes, but were
corrected for "Local Problems" in 1.70 and for "Set Definitions Files"
in 1.73.2.1 (though I have updated the latter to be consistent with
the other cases).

Revision 4722 - Directory Listing
Modified Sat Dec 9 03:29:56 2006 UTC (13 years, 2 months ago) by sh002i
use student ID for password if password field is defined but empty

Revision 4705 - Directory Listing
Modified Wed Dec 6 02:23:45 2006 UTC (13 years, 2 months ago) by sh002i
don't include Safe::Hole anymore

Revision 4700 - Directory Listing
Modified Tue Dec 5 20:59:46 2006 UTC (13 years, 2 months ago) by sh002i
use DelayedMailer instead of RestrictedMailer

Revision 4698 - Directory Listing
Modified Tue Dec 5 20:58:38 2006 UTC (13 years, 2 months ago) by sh002i
a stopgap solution to the PG/Net::SMTP problem

Revision 4697 - Directory Listing
Modified Tue Dec 5 20:57:53 2006 UTC (13 years, 2 months ago) by sh002i
move constituency_hash into Utils.pm

Revision 4696 - Directory Listing
Modified Tue Dec 5 20:56:58 2006 UTC (13 years, 2 months ago) by sh002i
use croak instead of die in constructor

Revision 4695 - Directory Listing
Modified Fri Dec 1 17:19:30 2006 UTC (13 years, 2 months ago) by glarose
Add hide_score and hide_work functions, allowing suppression of the
display of the score on the assignment and/or the work the student
submitted.  Also updates the treatment of due and answer_date fields.
Now setting the due and answer dates to the same time will (should?)
make answers available once the test is completed (e.g., all attempts
are exhausted); setting the answer date to after the due date leaves
the correct answers unavailable until a similar time has passed from
when the test is completed.  And the problem/page jump links are
cleaned up to be more concise for multipage tests.

Revision 4694 - Directory Listing
Modified Fri Dec 1 17:12:32 2006 UTC (13 years, 2 months ago) by glarose
Add hide_score and hide_work fields to the homework list/editor, and to
the set definition file import.

Revision 4693 - Directory Listing
Modified Fri Dec 1 17:11:18 2006 UTC (13 years, 2 months ago) by glarose
Add hide_score and hide_work fields to set editing.  Currently these are
sequestered in the Gateway Parameters section of the edit form, because
the fields are only used by gateway/quiz assignments.  In the long run
they want to be moved out to apply to assignments more generally.

Revision 4692 - Directory Listing
Modified Fri Dec 1 17:09:40 2006 UTC (13 years, 2 months ago) by glarose
Add hiding of scores for gateway/quiz assignments with hide_score set.

Revision 4691 - Directory Listing
Modified Fri Dec 1 17:08:24 2006 UTC (13 years, 2 months ago) by glarose
Correct braces in eval { }.  I think we can call this a typo.

Revision 4690 - Directory Listing
Modified Fri Dec 1 17:06:40 2006 UTC (13 years, 2 months ago) by glarose
Correct addUserProblem for versioned sets.  This is probably a fix for a
problem that should be dealt with by addressing the issue of versioning
more globally in DB.pm.  For the moment this deals with the need to check
for the existence of a problem against the non-versioned set when adding
problems to a user set version.

Revision 4689 - Directory Listing
Modified Fri Dec 1 17:04:03 2006 UTC (13 years, 2 months ago) by glarose
Add hide_score and hide_work fields to the set and user_set records.
These are currently only used by gateway/quiz assignments.

Revision 4686 - Directory Listing
Modified Thu Nov 30 01:29:39 2006 UTC (13 years, 2 months ago) by sh002i
don't die when scoring file doesn't exist (fixes bug #1138).

Revision 4684 - Directory Listing
Modified Thu Nov 30 01:00:15 2006 UTC (13 years, 2 months ago) by sh002i
read_scoring_file: return a reference to an empty hash if filename is "None".
This satisfies SendMail.pm, which expects a hashref unless there's an error.

Revision 4683 - Directory Listing
Modified Tue Nov 28 22:29:38 2006 UTC (13 years, 2 months ago) by sh002i
fix moodle 1.5/6 session handling

Revision 4682 - Directory Listing
Modified Tue Nov 28 22:16:01 2006 UTC (13 years, 2 months ago) by sh002i
Moodle 1.7 compatibility: This is Mike's current work on Moodle 1.7
compatibility, cross-ported from rel-2-3-exp.

Changes from:
	lib/WeBWorK/Authen/Moodle.pm: 1.9 -> 1.9.2.2
	lib/WeBWorK/DB/Schema/NewSQL/Moodle.pm: 1.5 -> 1.5.4.1

Revision 4677 - Directory Listing
Modified Mon Nov 27 18:37:23 2006 UTC (13 years, 2 months ago) by sh002i
Add wrapped RestrictedMailer instance to PG envir.

Revision 4676 - Directory Listing
Modified Mon Nov 27 18:36:21 2006 UTC (13 years, 2 months ago) by sh002i
wrapper for Mail::Sender that restricts the arguemnts that can be passed
to various "dangerous" methods. It is designed for use with
RestrictedClosureClass and Safe::Hole.

NOTE THAT THIS CLASS DOESN'T PROVIDE SAFETY ON ITS OWN. READ THE
COMMENTS FOR MORE INFO.

Revision 4675 - Directory Listing
Modified Mon Nov 27 18:34:56 2006 UTC (13 years, 2 months ago) by sh002i
removed extra blank line

Revision 4674 - Directory Listing
Modified Mon Nov 27 18:32:54 2006 UTC (13 years, 2 months ago) by sh002i
eliminate useless double-assignment (which could cause a later security
issue if someone comments out the second assignment and not the first)

Revision 4649 - Directory Listing
Modified Mon Nov 13 18:05:18 2006 UTC (13 years, 3 months ago) by sh002i
make default feedback button name "Email instructor" for those who don't
want to update global.conf.

Revision 4648 - Directory Listing
Modified Mon Nov 13 17:27:51 2006 UTC (13 years, 3 months ago) by sh002i
typo fix

Revision 4647 - Directory Listing
Modified Mon Nov 13 16:53:47 2006 UTC (13 years, 3 months ago) by sh002i
label proctor login_type with the user ID of the student

Revision 4646 - Directory Listing
Modified Mon Nov 13 16:48:39 2006 UTC (13 years, 3 months ago) by sh002i
improvements to Authen logging:
- add login_type field (normal, guest, proctor, proctor_grading)
- add initial_login field to control when success loggin occurs
- log password success/failure directly, but also log overall success or
  failure at end of verify()
- add log_error field to for overall failure message
- improve wording of some error messages

Revision 4645 - Directory Listing
Modified Mon Nov 13 16:19:42 2006 UTC (13 years, 3 months ago) by sh002i
allow replacing feedback button with a link to an arbitrary URL.

Revision 4642 - Directory Listing
Modified Fri Nov 10 17:56:01 2006 UTC (13 years, 3 months ago) by sh002i
complete the fix for the undefined problibs hash problem.

Revision 4638 - Directory Listing
Modified Tue Nov 7 18:27:47 2006 UTC (13 years, 3 months ago) by sh002i
avoid error when the $courseFiles{problibs} hash is undefined.
see: <http://webhost.math.rochester.edu/webworkdocs/discuss/msgReader$4261>

Revision 4636 - Directory Listing
Modified Mon Nov 6 22:30:26 2006 UTC (13 years, 3 months ago) by sh002i
import parse_scoring_file routine (THIRD TIME'S THE CHARM)

Revision 4635 - Directory Listing
Modified Mon Nov 6 22:27:49 2006 UTC (13 years, 3 months ago) by sh002i
import parse_scoring_file routine

Revision 4634 - Directory Listing
Modified Mon Nov 6 22:24:49 2006 UTC (13 years, 3 months ago) by sh002i
accidental commit

Revision 4633 - Directory Listing
Modified Mon Nov 6 22:21:46 2006 UTC (13 years, 3 months ago) by sh002i
import parse_scoring_file routine

Revision 4601 - Directory Listing
Modified Tue Oct 31 18:53:03 2006 UTC (13 years, 3 months ago) by sh002i
add where_email_address_nonempty, remove commented-out code

Revision 4600 - Directory Listing
Modified Tue Oct 31 18:52:06 2006 UTC (13 years, 3 months ago) by sh002i
remove some commented-out code

Revision 4599 - Directory Listing
Modified Tue Oct 31 18:51:18 2006 UTC (13 years, 3 months ago) by sh002i
add methods that expose the "where" interface of NewSQL

Revision 4598 - Directory Listing
Modified Tue Oct 31 18:46:06 2006 UTC (13 years, 3 months ago) by sh002i
standardize routines for reading scoring files, resolves bug #932.

Revision 4597 - Directory Listing
Modified Mon Oct 30 20:51:25 2006 UTC (13 years, 3 months ago) by sh002i
remove commented-out non-apache2-compatible code

Revision 4596 - Directory Listing
Modified Mon Oct 30 20:47:57 2006 UTC (13 years, 3 months ago) by sh002i
apache2 compatibility fixes

Revision 4595 - Directory Listing
Modified Mon Oct 30 20:46:46 2006 UTC (13 years, 3 months ago) by sh002i
make full copy of param data for apache 2

Revision 4594 - Directory Listing
Modified Wed Oct 25 22:49:54 2006 UTC (13 years, 4 months ago) by sh002i
make this work with Apache2 (i can't believe this wasn't caught earlier)

Revision 4593 - Directory Listing
Modified Wed Oct 25 15:49:00 2006 UTC (13 years, 4 months ago) by sh002i
fix box() to actually do undef=>"" conversion (oops), simplify unbox().

Revision 4592 - Directory Listing
Modified Wed Oct 25 14:25:31 2006 UTC (13 years, 4 months ago) by sh002i
use fetchrow_array rather than fetchrow_arrayref in get iterator

Revision 4591 - Directory Listing
Modified Wed Oct 25 14:24:32 2006 UTC (13 years, 4 months ago) by sh002i
add where_user_id_like()

Revision 4590 - Directory Listing
Modified Wed Oct 25 14:23:48 2006 UTC (13 years, 4 months ago) by sh002i
add where_user_id_like(), make box() more concise, formatting fixes.

Revision 4589 - Directory Listing
Modified Wed Oct 25 14:22:22 2006 UTC (13 years, 4 months ago) by sh002i
construct from hashrefs and arrayrefs in addition to hashes and objects,
add toArray method.

Revision 4588 - Directory Listing
Modified Wed Oct 25 14:20:46 2006 UTC (13 years, 4 months ago) by sh002i
add schema accessor methods (ie $db->User), make gen_new more concise.

Revision 4587 - Directory Listing
Modified Mon Oct 23 17:33:20 2006 UTC (13 years, 4 months ago) by sh002i
add "exists" methods, remove commented-out $where vars, fix usage of
grok_versionID_from_vsetID_sql, make getUserSetVersions behave
correctly.

Revision 4586 - Directory Listing
Modified Mon Oct 23 17:32:01 2006 UTC (13 years, 4 months ago) by sh002i
needs "v" in make/grok_vsetID, move "+0" numeric cast into
grok_versionID_from_vsetID_sql, add parens.

Revision 4585 - Directory Listing
Modified Mon Oct 23 17:30:26 2006 UTC (13 years, 4 months ago) by sh002i
added where_versionedset_user_id_eq_set_id_eq_version_id_le

Revision 4584 - Directory Listing
Modified Mon Oct 23 17:29:52 2006 UTC (13 years, 4 months ago) by sh002i
override _order_by to allow passthrough of literal SQL via scalar refs.

Revision 4580 - Directory Listing
Modified Thu Oct 19 17:37:25 2006 UTC (13 years, 4 months ago) by sh002i
change the way where_* subs are called, bugfixes.

Revision 4579 - Directory Listing
Modified Thu Oct 19 17:35:25 2006 UTC (13 years, 4 months ago) by sh002i
move moodle session table access routines to Authen::Moodle.

Revision 4577 - Directory Listing
Modified Tue Oct 17 23:42:55 2006 UTC (13 years, 4 months ago) by sh002i
this schema module is used for both the password and permission tables.

Revision 4576 - Directory Listing
Modified Tue Oct 17 23:42:00 2006 UTC (13 years, 4 months ago) by sh002i
fixed a problem where users with no groups or no groups in this course
were excluded from listings. use _course_members_query() from Moodle.pm
to get userids_subquery.

Revision 4575 - Directory Listing
Modified Tue Oct 17 23:40:43 2006 UTC (13 years, 4 months ago) by sh002i
slightly nicer constructor

Revision 4574 - Directory Listing
Modified Tue Oct 17 23:40:26 2006 UTC (13 years, 4 months ago) by sh002i
moved function that generates and SQL statment listing the userids in
the current course, added a function that does the same for groupids.

Revision 4573 - Directory Listing
Modified Tue Oct 17 23:39:14 2006 UTC (13 years, 4 months ago) by sh002i
slightly nicer constuctor

Revision 4572 - Directory Listing
Modified Tue Oct 17 23:38:45 2006 UTC (13 years, 4 months ago) by sh002i
utility bind() method which fills in bind values

Revision 4570 - Directory Listing
Modified Fri Oct 13 20:37:46 2006 UTC (13 years, 4 months ago) by sh002i
completed NewSQL::Moodle::User module -- seems to work well

Revision 4569 - Directory Listing
Modified Thu Oct 12 22:04:04 2006 UTC (13 years, 4 months ago) by sh002i
first crack at NewSQL-based Moodle::User module... kinda cool, really...

Revision 4568 - Directory Listing
Modified Thu Oct 12 22:02:52 2006 UTC (13 years, 4 months ago) by sh002i
yet more where clause abstractions (annoying but necessary :P)

Revision 4567 - Directory Listing
Modified Wed Oct 11 16:16:51 2006 UTC (13 years, 4 months ago) by sh002i
remove unused functions (left over from GDBM days)

Revision 4566 - Directory Listing
Modified Wed Oct 11 16:15:50 2006 UTC (13 years, 4 months ago) by sh002i
remove unused reference to findDefaults

Revision 4565 - Directory Listing
Modified Tue Oct 10 18:18:53 2006 UTC (13 years, 4 months ago) by sh002i
move creation of sql object into init_sql method (cf Merge.pm)

Revision 4564 - Directory Listing
Modified Tue Oct 10 18:16:17 2006 UTC (13 years, 4 months ago) by sh002i
remove null implementations of n/a oldapi methods, random cleanup.

Revision 4563 - Directory Listing
Modified Tue Oct 10 18:15:22 2006 UTC (13 years, 4 months ago) by sh002i
nice error messages for unimplemented API methods

Revision 4561 - Directory Listing
Modified Tue Oct 10 10:58:54 2006 UTC (13 years, 4 months ago) by dpvc
Fixed problem where ShowPast Answers would incorrectly includes
answers for students whose login name have the current student's login
name as a suffix. (Fixes bug #1102)

Revision 4558 - Directory Listing
Modified Fri Oct 6 21:17:40 2006 UTC (13 years, 4 months ago) by sh002i
this is the log message for the last version (v1.80): sweeping changes!

PLEASE NOTE THAT VERSION 1.80 AND LATER OF DB.PM WILL NOT WORK WITH
MOODLE UNTIL I UPDATE THE MOODLE SCHEMA MODULES (which should happen
soon).

WARNING: VERY EXPERIMENTAL CHANGES. DO NOT USE ON PRODUCTION SITES.
MAKE A BACKUP OF YOUR DATA BEFORE USING.

replaced ad-hoc argument checking with calls to checkArgs and
checkArgsRefList. this makes the code much more concise and readable.

no longer checking for existence before adding a field -- instead catch
a RecordExists exception which is thrown by NewSQL classes. this will
speed inserts of slightly.

added count* methods for all tables.

switch to using newer NewSQL methods where they'll be more efficient or
readable.

generally regularize code -- resolve indentation problems, get rid of
extraneous empty lines, etc.

rewrote getMergedSets, getMergedProblems, and getAllMergedUserProblems
to use NewSQL::Merged (via set_merged/problem_merged "tables"). The new
merge method (which is done completely withtin the database) is more
than three times as fast for normal merging and more than seven times as
fast for getAllMergedUserProblems.

Revision 4557 - Directory Listing
Modified Fri Oct 6 21:01:22 2006 UTC (13 years, 4 months ago) by sh002i
*** empty log message ***

Revision 4556 - Directory Listing
Modified Fri Oct 6 20:20:35 2006 UTC (13 years, 4 months ago) by sh002i
lots o' fixes

Revision 4555 - Directory Listing
Modified Fri Oct 6 20:19:56 2006 UTC (13 years, 4 months ago) by sh002i
FIELD_DATA() returns a reference to the field_data hash

Revision 4554 - Directory Listing
Modified Fri Oct 6 20:18:52 2006 UTC (13 years, 4 months ago) by sh002i
add a transformation function that acts on fields, whether or not
they're qualified with a table name.

Revision 4553 - Directory Listing
Modified Fri Oct 6 04:35:05 2006 UTC (13 years, 4 months ago) by sh002i
pretty logging!

Revision 4552 - Directory Listing
Modified Fri Oct 6 04:33:16 2006 UTC (13 years, 4 months ago) by sh002i
don't turn on tracing -- we're doing out own debugging in each schema
module now :)

Revision 4551 - Directory Listing
Modified Thu Oct 5 19:44:51 2006 UTC (13 years, 4 months ago) by sh002i
add RecordExists exception: schema modules should throw this exception
if a conflicting record exists on insert.

Revision 4550 - Directory Listing
Modified Thu Oct 5 19:44:04 2006 UTC (13 years, 4 months ago) by sh002i
explicitly turn PrintError off

Revision 4549 - Directory Listing
Modified Thu Oct 5 19:43:33 2006 UTC (13 years, 4 months ago) by sh002i
newsql module for accessing "merged" records as if they existed in a table

Revision 4548 - Directory Listing
Modified Thu Oct 5 19:43:06 2006 UTC (13 years, 4 months ago) by sh002i
newsql-based module for accessing standard webwork SQL tables

Revision 4547 - Directory Listing
Modified Thu Oct 5 19:42:44 2006 UTC (13 years, 4 months ago) by sh002i
this file is now the base class for newsql-based schema modules

Revision 4545 - Directory Listing
Modified Mon Oct 2 17:05:55 2006 UTC (13 years, 4 months ago) by sh002i
put user methods first (in same order as dblayout tables in database.conf)

Revision 4544 - Directory Listing
Modified Mon Oct 2 16:59:25 2006 UTC (13 years, 4 months ago) by sh002i
remove spurrious use lines for Record classes

Revision 4543 - Directory Listing
Modified Mon Oct 2 16:32:51 2006 UTC (13 years, 4 months ago) by sh002i
fixes to index structure.

* the prefix lengths on keyfield indexes is now 255, the length of the field.
* the index that contains all three keyfields is now a UNIQUE KEY
* psvn is no longer the PRIMARY KEY, now a UNIQUE KEY (and it's the
second UNIQUE KEY, after the user_id/set_id one)

also, made wwdb_upgrade a little easier to maintain by not hardcoding
version numbers into the @DB_VERSIONS structure.

Revision 4541 - Directory Listing
Modified Mon Oct 2 15:04:27 2006 UTC (13 years, 4 months ago) by sh002i
alphanumeric keyfields TINYBLOB NOT NULL instead of BLOB for UNIQUE indexing.

Revision 4540 - Directory Listing
Modified Fri Sep 29 19:41:36 2006 UTC (13 years, 4 months ago) by sh002i
update sql_moodle to reference remaining routines in sql_single

Revision 4539 - Directory Listing
Modified Fri Sep 29 19:39:55 2006 UTC (13 years, 4 months ago) by sh002i
use $db->rename_tables for course renaming, remove addCourseHelper,
deleteCourseHelper, copyCourseDataHelper and associated infrastructure.
still have to do something about archive/unarchive -- they are not only
mysql specific, but they rely on the database being local, on the
default port, and named "webwork". :P

Revision 4538 - Directory Listing
Modified Fri Sep 29 19:37:55 2006 UTC (13 years, 4 months ago) by sh002i
table renaming support

Revision 4537 - Directory Listing
Modified Fri Sep 29 19:03:00 2006 UTC (13 years, 4 months ago) by sh002i
propagate errors during module preload

Revision 4536 - Directory Listing
Modified Fri Sep 29 19:02:31 2006 UTC (13 years, 4 months ago) by sh002i
remove reference to FileXfer

Revision 4535 - Directory Listing
Modified Fri Sep 29 16:52:23 2006 UTC (13 years, 4 months ago) by sh002i
use $db->create_tables and $db->delete_tables, check for dblayout
existence even if we're using the default dblayoutname, make regex and
error message match for course id checking, removal of "sql" specific
information from POD, formatting fixes, additional warnings about bad
course existence checking code.

Revision 4534 - Directory Listing
Modified Fri Sep 29 16:49:47 2006 UTC (13 years, 4 months ago) by sh002i
add create_tables and delete_tables methods

Revision 4533 - Directory Listing
Modified Fri Sep 29 16:49:08 2006 UTC (13 years, 4 months ago) by sh002i
remove partially finished and sometimes incorrect POD :(

Revision 4532 - Directory Listing
Modified Fri Sep 29 16:47:51 2006 UTC (13 years, 4 months ago) by sh002i
drop_table becomes delete_table (don't want to use SQL terminology
exactly...). don't refer to $self->{record} or $self->{driver} in the
main code, only in the helpers at the bottom. (this might help us with
subclassing for moodle... maybe...)

Revision 4531 - Directory Listing
Modified Fri Sep 29 14:54:35 2006 UTC (13 years, 4 months ago) by sh002i
add create_table and drop_table methods, small cleanups.

Revision 4530 - Directory Listing
Modified Thu Sep 28 23:42:32 2006 UTC (13 years, 4 months ago) by sh002i
incorrectly set type of set_user.status column to INT; should be FLOAT.
if you ran wwdb_upgrade after the last commit, you lost the decimal
portions of any status values. thanks to gavin for noticing.

Revision 4529 - Directory Listing
Modified Thu Sep 28 22:48:23 2006 UTC (13 years, 4 months ago) by sh002i
change key.timestamp type to BIGINT and problem_user.status type to INT.

Revision 4527 - Directory Listing
Modified Tue Sep 26 15:57:41 2006 UTC (13 years, 5 months ago) by sh002i
remove several useless "use Data::Dumper" lines

Revision 4526 - Directory Listing
Modified Tue Sep 26 15:43:26 2006 UTC (13 years, 5 months ago) by sh002i
null-to-empty-string translation. this is necessary right now, but
ultimately undesirable.

Revision 4525 - Directory Listing
Modified Tue Sep 26 15:01:50 2006 UTC (13 years, 5 months ago) by sh002i
SQL::Abstract subclass that allows transformation of SQL identifiers. it
overloads the _table and _quote methods to allow different
transformation routines for table names and column names. the
transformation routines themselves are specified by the new
"transform_table" and "transform_field" parameters to the constructor
that take coderefs.

used by NewSQL to implement tableOverride and fieldOverride.

Revision 4524 - Directory Listing
Modified Mon Sep 25 22:56:58 2006 UTC (13 years, 5 months ago) by sh002i
a new, much more flexible implementation. should be a drop-in
replacement. please test.

Revision 4523 - Directory Listing
Modified Mon Sep 25 22:41:37 2006 UTC (13 years, 5 months ago) by sh002i
set DBI trace level from dbLayout "debug" param. this can be a little chatty...

Revision 4522 - Directory Listing
Modified Mon Sep 25 22:40:56 2006 UTC (13 years, 5 months ago) by sh002i
generate record class methods from a single field data table at compile
time. generate real accessors/mutators rather than using an autoload.
this should speed up record access significantly.

Revision 4521 - Directory Listing
Modified Mon Sep 25 22:35:05 2006 UTC (13 years, 5 months ago) by sh002i
use a single username/password for connecting to the SQL database. this
means that only one DBI handle is created instead of two, and the
Driver's connect/disconnect methods are no-ops.

Revision 4520 - Directory Listing
Modified Mon Sep 25 22:27:43 2006 UTC (13 years, 5 months ago) by sh002i
another false start :(

Revision 4519 - Directory Listing
Modified Mon Sep 25 22:26:38 2006 UTC (13 years, 5 months ago) by sh002i
dymanically generate newRecord subroutines at compile time -- they're
identical except for their names and the tables they access, so they
might as well be generated. slightly more compile-time overhead,
no-to-negligible impact on runtime speed.

Revision 4518 - Directory Listing
Modified Mon Sep 25 22:14:54 2006 UTC (13 years, 5 months ago) by sh002i
tons of "DBFIXME" notes -- how to make database access more efficient

Revision 4517 - Directory Listing
Modified Mon Sep 25 22:02:34 2006 UTC (13 years, 5 months ago) by sh002i
it was not a good idea to put a literal ASCII NUL in this file.

Revision 4516 - Directory Listing
Modified Mon Sep 25 21:44:07 2006 UTC (13 years, 5 months ago) by sh002i
added small fixme note

Revision 4515 - Directory Listing
Modified Mon Sep 25 16:10:36 2006 UTC (13 years, 5 months ago) by glarose
Gateway update: be more aware of undefined fields for gateway parameters.
I don't think this should be an issue, but saw a case where an "undefined
value in subtraction" error was being returned; hopefully this will
provide some level of protection against that.

Revision 4514 - Directory Listing
Modified Mon Sep 25 16:05:31 2006 UTC (13 years, 5 months ago) by glarose
Gateway update: report tests graded in the grace period after the due
time as having been completed at exactly the maximum allowed time.
Thus, if a test allows 20 min and there is a grace period (defined in
global.conf) of 2 min, a test submitted after 21 min will be reported
here as having been completed in 20 min, not 21.  This avoids some
confusion for instructors who aren't aware of the grace period.

This update doesn't have any effect on the presentation of non-
versioned sets.

Revision 4509 - Directory Listing
Modified Mon Sep 18 21:31:46 2006 UTC (13 years, 5 months ago) by sh002i
superceded by ProblemSetDetail.pm

Revision 4508 - Directory Listing
Modified Mon Sep 18 21:23:57 2006 UTC (13 years, 5 months ago) by sh002i
replaced by FileManger.pm a while ago

Revision 4504 - Directory Listing
Modified Mon Sep 18 18:04:11 2006 UTC (13 years, 5 months ago) by sh002i
use before/after/between from Utils.pm

Revision 4503 - Directory Listing
Modified Mon Sep 18 18:03:50 2006 UTC (13 years, 5 months ago) by sh002i
move before, after, and between subroutines here from Problem/GatewayQuiz

Revision 4502 - Directory Listing
Modified Sun Sep 17 17:44:36 2006 UTC (13 years, 5 months ago) by dpvc
Changed button order to put "save" before "save as" as per Arnie's
suggestion in

   http://webhost.math.rochester.edu/webworkdocs/discuss/msgReader$4100

This avoids "save" disappearing off the right-hand side when the
browser windows isn't big enough to show it.

Revision 4501 - Directory Listing
Modified Fri Sep 15 22:09:36 2006 UTC (13 years, 5 months ago) by sh002i
removed support module for deleted sql dblayout

Revision 4500 - Directory Listing
Modified Fri Sep 15 22:02:37 2006 UTC (13 years, 5 months ago) by sh002i
move contents of CGIDeleteParams.pm to CGI.pm. This removes a level of
indirection that's no longer necessary, and fixes importing.

Revision 4499 - Directory Listing
Modified Fri Sep 15 21:46:22 2006 UTC (13 years, 5 months ago) by sh002i
no longer used -- see CGIDeleteParams

Revision 4498 - Directory Listing
Modified Fri Sep 15 21:44:17 2006 UTC (13 years, 5 months ago) by sh002i
remove unused $db lexical

Revision 4495 - Directory Listing
Modified Fri Sep 15 17:53:34 2006 UTC (13 years, 5 months ago) by sh002i
didn't mean to commit that.

Revision 4494 - Directory Listing
Modified Fri Sep 15 17:53:18 2006 UTC (13 years, 5 months ago) by sh002i
make importing actually work in runtime_use. previously, symbols were
being imported into the bogus package "Main", and there was no way to
specify an import list.

Revision 4491 - Directory Listing
Modified Wed Sep 13 23:40:26 2006 UTC (13 years, 5 months ago) by sh002i
precompile many modules at server start time. this allows more compiled
code (parse trees, bytecode, etc.) to be shared among child processes,
and speeds child start time, since that compilation has already been
done in the master process.

you may want to turn this off for development, since it makes the server
take a really long time to start.

Revision 4490 - Directory Listing
Modified Tue Sep 12 17:07:56 2006 UTC (13 years, 5 months ago) by sh002i
indentation fixes: the outdenting of section headers was making this
file really hard for me to read, so i indented them all.

Revision 4489 - Directory Listing
Modified Tue Sep 12 17:06:43 2006 UTC (13 years, 5 months ago) by sh002i
allow empty last field to be present when reading classlist

Revision 4486 - Directory Listing
Modified Mon Sep 11 20:34:41 2006 UTC (13 years, 5 months ago) by sh002i
add more erorr checking, get settings from global.conf.

Revision 4484 - Directory Listing
Modified Mon Sep 11 20:22:25 2006 UTC (13 years, 5 months ago) by sh002i
added missing ")" to log message

Revision 4467 - Directory Listing
Modified Sun Sep 10 01:59:19 2006 UTC (13 years, 5 months ago) by dpvc
Second attempt to trap the stderr output of bsdtar.

Revision 4466 - Directory Listing
Modified Sat Sep 9 22:09:55 2006 UTC (13 years, 5 months ago) by gage
Map Moodle groups to WeBWorK sections and recitations

A section is a group that begins with the prefix SEC_
all other groups are recitations.

Revision 4465 - Directory Listing
Modified Sat Sep 9 01:40:30 2006 UTC (13 years, 5 months ago) by dpvc
Use shell_qupte and readpipe to handle tar commands, and include
stderr in the output so that we can report the correct number of files
archived via bsdtar.

Revision 4463 - Directory Listing
Modified Fri Sep 8 21:01:19 2006 UTC (13 years, 5 months ago) by glarose
Gateway debug: correct code allowing multiple problems to be drawn
from the same problem group.  I think this is correct now (the original
code I wrote was odd enough that it's not at all clear what I was
thinking...).

Revision 4462 - Directory Listing
Modified Fri Sep 8 20:28:54 2006 UTC (13 years, 5 months ago) by glarose
Gateway update to Hardcopy: correct generation of hardcopies including
student solutions to allow the correct answers to be shown before the
due date if the student has used up all attempts on the set.

Revision 4452 - Directory Listing
Modified Wed Sep 6 18:18:30 2006 UTC (13 years, 5 months ago) by sh002i
filter out students without "include_in_email" behavior - bug #938.

Revision 4450 - Directory Listing
Modified Wed Sep 6 16:25:56 2006 UTC (13 years, 5 months ago) by sh002i
fixed bug #1057 -- read_set_def was getting the wrong param passed to it.

Revision 4449 - Directory Listing
Modified Wed Sep 6 14:31:42 2006 UTC (13 years, 5 months ago) by sh002i
backing out of accidental commit.

Revision 4441 - Directory Listing
Modified Tue Sep 5 16:00:40 2006 UTC (13 years, 5 months ago) by sh002i
removing courses directory (please read)

i originally moved the courses directory to courses.dist, to preserve
file history, but this wasn't the right strategy, since it caused the
courses directory to disappear from older branches as well. so i copied
it back to courses, and then used "cvs remove" to delete its contents.

so, it will hopefully exist in rel-2-2-dev and earlier releases, but not
in rel-2-3-dev or HEAD.

Revision 4435 - Directory Listing
Modified Fri Sep 1 17:28:51 2006 UTC (13 years, 5 months ago) by sh002i
disable test CG

Revision 4426 - Directory Listing
Modified Thu Aug 31 20:17:27 2006 UTC (13 years, 5 months ago) by sh002i
remove incorrect "close(FILE)" -- left over from WW1 probably.

Revision 4421 - Directory Listing
Modified Sat Aug 26 23:05:18 2006 UTC (13 years, 6 months ago) by jj
Added local time zone to values which can be configured from within a course.

Revision 4417 - Directory Listing
Modified Sat Aug 26 16:55:12 2006 UTC (13 years, 6 months ago) by sh002i
only recognize comments that start at the beginning of a line. this
reduces the changes that a "#" in a field, will cause a real line to be
truncated. (it's unlikely that the student ID will start with a "#".)

yeah, i know the real solution is to use escaping.

should-be-backported-to-rel-2-3-dev

Revision 4416 - Directory Listing
Modified Sat Aug 26 12:56:40 2006 UTC (13 years, 6 months ago) by gage
Fixed problem where blank status  in classlist.lst was not interpreted as enrolled.

Squashes bug 1058

Revision 4415 - Directory Listing
Modified Sat Aug 26 12:33:22 2006 UTC (13 years, 6 months ago) by gage
made the definition of $auxiliaryFilesExist more robust.  This fixes bug 1056 and related bugs

Revision 4413 - Directory Listing
Modified Fri Aug 25 19:43:37 2006 UTC (13 years, 6 months ago) by sh002i
this file hasn't been used in a long time

Revision 4412 - Directory Listing
Modified Fri Aug 25 18:47:47 2006 UTC (13 years, 6 months ago) by glarose
Gateway update of ProblemSetEditor; add problems_per_page verbiage.
I think this is moot, given that (barring an interpretive error
on my part) this file isn't being used, but hopefully it is at least
now consistently moot rather than inconsistently so.

Revision 4411 - Directory Listing
Modified Fri Aug 25 18:42:27 2006 UTC (13 years, 6 months ago) by glarose
Gateway update of ProblemSetDetail: add some sensible defaults
for gateway parameters, remove confusing labels.

Revision 4410 - Directory Listing
Modified Fri Aug 25 18:40:01 2006 UTC (13 years, 6 months ago) by glarose
Gateway update of problemsetlist; add problems_per_page fields,
allow input via problemsPerPage = N in set.def files.

Revision 4397 - Directory Listing
Modified Thu Aug 24 21:16:41 2006 UTC (13 years, 6 months ago) by sh002i
restrict PG access to ImageGenerator object using RestrictedClosureClass
(prevents problem code from monkeying with paths, viewing passwords,
calling methods other than add() and other bad stuff)

Revision 4395 - Directory Listing
Modified Thu Aug 24 21:07:51 2006 UTC (13 years, 6 months ago) by sh002i
Added class to protect objects from evil prying problem code.

Uses the closure-as-object technique to protect the self hash of the
underlying object from problem code. All that the problem code sees is a
blessed coderef. The coderef is a closure over the underlying object and
the list of allowed methods. You can invoke the coderef directly, with
the name of the method to invoke as the first argument, but the class
also provides an AUTOLOAD routine that calls the coderef for you, so you
can continue to use the class as usual.

Revision 4390 - Directory Listing
Modified Tue Aug 22 19:00:04 2006 UTC (13 years, 6 months ago) by dpvc
Make links to the Problem Editor in the links menu at the left target
the WW_Editor window, just like other "Edit it" links.

Revision 4389 - Directory Listing
Modified Tue Aug 22 18:37:22 2006 UTC (13 years, 6 months ago) by dpvc
Make the target for the "Show Past Answers" window be WW_Info so that
it is named in a similar way to the other windows used (WW_Editor,
WW_View).  This reduces possible classes with other sites using the
more generic "information".

Revision 4386 - Directory Listing
Modified Thu Aug 17 23:55:17 2006 UTC (13 years, 6 months ago) by dpvc
Added LaTeXMathML mode.

Revision 4377 - Directory Listing
Modified Mon Aug 14 18:21:52 2006 UTC (13 years, 6 months ago) by sh002i
make course title and institution optional

Revision 4376 - Directory Listing
Modified Mon Aug 14 18:15:11 2006 UTC (13 years, 6 months ago) by sh002i
pass server_root_url into safe compartment.

Revision 4375 - Directory Listing
Modified Mon Aug 14 18:14:54 2006 UTC (13 years, 6 months ago) by sh002i
use apache_root_url from course env. for absolute urls in system link

Revision 4374 - Directory Listing
Modified Mon Aug 14 18:14:22 2006 UTC (13 years, 6 months ago) by sh002i
seed the course env. with hostname, port, ssl status, and root URL.

Revision 4359 - Directory Listing
Modified Tue Aug 8 16:09:58 2006 UTC (13 years, 6 months ago) by sh002i
remove vestigal gdbm/global_user related stuff.

Revision 4358 - Directory Listing
Modified Tue Aug 8 16:06:13 2006 UTC (13 years, 6 months ago) by sh002i
removed vestigal gdbm code

Revision 4357 - Directory Listing
Modified Tue Aug 8 16:03:25 2006 UTC (13 years, 6 months ago) by sh002i
removed vestigal gdbm/sql options. fix how dblayout radio buttons are
generated, so that the default layout or selected is selected correctly.

Revision 4356 - Directory Listing
Modified Sun Aug 6 18:48:23 2006 UTC (13 years, 6 months ago) by sh002i
change how the html table rows are computed so that only visible fields
are looked at. (pretty sure this works. could use some more testing
though.)

Revision 4353 - Directory Listing
Modified Sat Aug 5 02:53:50 2006 UTC (13 years, 6 months ago) by sh002i
remove vestiges of GDBM database support

Revision 4351 - Directory Listing
Modified Sat Aug 5 02:15:31 2006 UTC (13 years, 6 months ago) by sh002i
more experiments

Revision 4350 - Directory Listing
Modified Sat Aug 5 02:10:49 2006 UTC (13 years, 6 months ago) by sh002i
add comments indicating that empty strings are stored as null in the DB.
(this is left over from GDBM days, where there was no such thing as an
undefined/null value. at some point, we will make a distinction, at
which time it will become possible to override a value with an empty
string.)

Revision 4339 - Directory Listing
Modified Thu Aug 3 17:03:32 2006 UTC (13 years, 6 months ago) by sh002i
this didn't pan out -- i'm finally deleting it

Revision 4338 - Directory Listing
Modified Thu Aug 3 17:02:23 2006 UTC (13 years, 6 months ago) by sh002i
remove this, since it doesn't solve the right problem.

Revision 4337 - Directory Listing
Modified Thu Aug 3 17:01:51 2006 UTC (13 years, 6 months ago) by sh002i
remove CGIParamShim request hack, since CGIParamShim is not the solution

Revision 4332 - Directory Listing
Modified Thu Aug 3 15:20:18 2006 UTC (13 years, 6 months ago) by glarose
GatewayQuiz update: improve timer, update error messages when overtime,
maybe some other minor changes I can't think of.

Revision 4327 - Directory Listing
Modified Tue Aug 1 22:02:50 2006 UTC (13 years, 6 months ago) by glarose
GatewayQuiz update: revise timer to make display more elegant and
robust.

Revision 4326 - Directory Listing
Modified Tue Aug 1 22:02:07 2006 UTC (13 years, 6 months ago) by glarose
GatewayQuiz Hardcopy update: add note about correctness of student
answers when printing answers for GatewayQuizzes.

Revision 4317 - Directory Listing
Modified Fri Jul 28 20:10:28 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz Hardcopy update: change random ordering of problems in
Gateway tests to use PGrandom (avoids calling srand() repeatedly),
add student answers to completed gateway tests when correct answers
are shown.  Also cleans up presentation of gateway tests.

Revision 4316 - Directory Listing
Modified Fri Jul 28 20:08:54 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz update: use PGrandom to randomly order problems when that is
called for (avoids using srand() repeatedly).

Revision 4315 - Directory Listing
Modified Fri Jul 28 04:33:28 2006 UTC (13 years, 7 months ago) by sh002i
proof-of-concept RPC class that bootstraps itself the same way that
WeBWorK.pm does. this way, we can code in the same idioms we're used to
($r, $r->ce, $r->db, etc.)

Revision 4312 - Directory Listing
Modified Fri Jul 28 02:13:25 2006 UTC (13 years, 7 months ago) by sh002i
only show import/export warning when those functions are selected.

Revision 4311 - Directory Listing
Modified Fri Jul 28 02:10:33 2006 UTC (13 years, 7 months ago) by sh002i
allow for courses with no contact people in the admin course when
deleting or archiving courses.

Revision 4309 - Directory Listing
Modified Thu Jul 27 20:58:18 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz ProblemSets update: omit hardcopy checkbox or radio button
for gateway template sets, clean up checking for gateway sets.

Revision 4308 - Directory Listing
Modified Thu Jul 27 20:43:04 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz Hardcopy update: preliminary commit to add checks for
versioned sets to allow generation of hardcopies of versioned sets.
Still needs checking to avoid generation of hardcopies for the
template set.

Revision 4307 - Directory Listing
Modified Thu Jul 27 20:40:12 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz update for multiple page tests; bug fix, adds better preview/
problem checking state retention when switching between pages.

Revision 4306 - Directory Listing
Modified Thu Jul 27 15:49:23 2006 UTC (13 years, 7 months ago) by glarose
GatewayQuiz preliminary commit adding multi-page test capability.
This requires updating the database to add the problems_per_page
record to the set tables of the database.

Revision 4305 - Directory Listing
Modified Thu Jul 27 01:08:04 2006 UTC (13 years, 7 months ago) by sh002i
remove any symbol that begins with an underscore from the course env.
this is to weed out the weird "_</path/to/database.conf" symbols that
were getting through, but it also prevents the purposeful use of
variables like "_some_internal_thing". which is not so bad.

Revision 4304 - Directory Listing
Modified Wed Jul 26 22:20:04 2006 UTC (13 years, 7 months ago) by sh002i
use WeBWorK::Authen::class() to determine the proper Authen class to use.
this is much nicer than embedding that decision in this file. twice.

Revision 4303 - Directory Listing
Modified Wed Jul 26 22:09:19 2006 UTC (13 years, 7 months ago) by sh002i
add class($ce,$type) subroutine to determine correct authen module, docs

Revision 4296 - Directory Listing
Modified Tue Jul 25 23:02:12 2006 UTC (13 years, 7 months ago) by sh002i
playing with request methods

Revision 4295 - Directory Listing
Modified Mon Jul 24 23:28:41 2006 UTC (13 years, 7 months ago) by gage
Fixed CGI::radio call (replaced with CGI::radio_group

Fixed   name parameter in Options  (replaced name by -name as required by CGI)

Revision 4294 - Directory Listing
Modified Fri Jul 21 00:36:37 2006 UTC (13 years, 7 months ago) by sh002i
update package name

Revision 4293 - Directory Listing
Modified Fri Jul 21 00:35:49 2006 UTC (13 years, 7 months ago) by sh002i
add WeBWorK::CGIDeleteParams option

Revision 4292 - Directory Listing
Modified Fri Jul 21 00:35:25 2006 UTC (13 years, 7 months ago) by sh002i
update with more notes

Revision 4291 - Directory Listing
Modified Fri Jul 21 00:18:23 2006 UTC (13 years, 7 months ago) by sh002i
this module deletes all parameters from any CGI object. the effect is to
disable sticky parameters completely. this seems to solve the problems
we've been having with parameter management under Apache2. see the tail
end of the notes in CGIParamShim.pm for more details.

Revision 4290 - Directory Listing
Modified Thu Jul 20 23:21:44 2006 UTC (13 years, 7 months ago) by sh002i
fixed syntax of call to radio_group -- leading dashes are required.

the rule is (as defined by CGI::Util::rearrange):

* if the first argument is a hashref, interpret its contents as named
parameters. leading dashes can be used, but are not required.

* otherwise, if the first parameter begins with a dash, interpret the
argument string as named parameters. a leading dash is technically only
required on the first item, but you'd be nuts to mix dash and no-dash.

* otherwise, treat the argument list as non-named parameters.

Revision 4289 - Directory Listing
Modified Thu Jul 20 18:32:25 2006 UTC (13 years, 7 months ago) by sh002i
temporarily enable /test/ url.

Revision 4288 - Directory Listing
Modified Thu Jul 20 18:32:07 2006 UTC (13 years, 7 months ago) by sh002i
testbed

Revision 4285 - Directory Listing
Modified Tue Jul 18 15:58:09 2006 UTC (13 years, 7 months ago) by gage
Fixed bug #1037 where the option of adding a blank problem to an empty set was not allowed.

Revision 4284 - Directory Listing
Modified Tue Jul 18 15:30:18 2006 UTC (13 years, 7 months ago) by gage
This commit actually does contain escapeHTML !

There is still a problem (even with standard CGI.  Entering

5"<input name="foo"> into a problem answer blank will produce extraneous HTML
code.  Not sure how dangerous this is, (I think not very -- all it does is louse up
the output for that one viewer.)  The quote is causing more trouble than the <

Revision 4283 - Directory Listing
Modified Tue Jul 18 14:59:05 2006 UTC (13 years, 7 months ago) by gage
Added CGIParamShim as a choice

Revision 4282 - Directory Listing
Modified Tue Jul 18 14:52:40 2006 UTC (13 years, 7 months ago) by gage
Added a rudimentary escapeHTML -- probably enough to keep from ruining HTML output
-- not designed to untaint data.

Revision 4281 - Directory Listing
Modified Tue Jul 18 14:08:21 2006 UTC (13 years, 7 months ago) by gage
Fixed behavior of checkbox_group

Revision 4280 - Directory Listing
Modified Tue Jul 18 13:10:54 2006 UTC (13 years, 7 months ago) by gage
Formatting corrections (including adding some {}).  Checbox_groups does not yet work correctly.
Removed support for sql template in rename, (it's still present in delete).

Revision 4279 - Directory Listing
Modified Mon Jul 17 21:54:38 2006 UTC (13 years, 7 months ago) by gage
Beef up the error reporting in CGIeasytags

Revision 4278 - Directory Listing
Modified Mon Jul 17 21:53:40 2006 UTC (13 years, 7 months ago) by gage
Rolled back a change to hidden_fields subroutine.  CGI::hidden(name=>foo, value=>bar) doesn't work
with standard CGI.  Using default instead of value doesn't work either.  Not sure what is going on.

Returned to using CGI::hidden(foo, bar)       (sigh)

Revision 4277 - Directory Listing
Modified Mon Jul 17 21:51:12 2006 UTC (13 years, 7 months ago) by gage
Added {} to a couple of CGI::Tr to force concatenation.

Revision 4276 - Directory Listing
Modified Mon Jul 17 21:50:26 2006 UTC (13 years, 7 months ago) by gage
Another {} entry.

Revision 4274 - Directory Listing
Modified Mon Jul 17 17:16:37 2006 UTC (13 years, 7 months ago) by gage
Tweaks to the radio_group block, plus some fiddling with the warning mechanism

Revision 4273 - Directory Listing
Modified Sun Jul 16 18:47:39 2006 UTC (13 years, 7 months ago) by sh002i
experimental CGI subclass that defers to WeBWorK::Request for parameter
handling.

Revision 4272 - Directory Listing
Modified Sun Jul 16 02:40:41 2006 UTC (13 years, 7 months ago) by gage
Added {} to some HTML tags.  For some reason they seem to have disappeared?

Revision 4271 - Directory Listing
Modified Sat Jul 15 16:38:50 2006 UTC (13 years, 7 months ago) by gage
This version of WeBWorK::CGI  calls one of the others:

CGI
or WeBWorK::CGIeasytags

or (eventually) WeBWorK::CGIParamshim

Revision 4270 - Directory Listing
Modified Sat Jul 15 16:35:32 2006 UTC (13 years, 7 months ago) by gage
front end for HTML::easytags that imitages CGI behavior for creating HTML tags.
called from WeBWorK::CGI.pm

Revision 4269 - Directory Listing
Modified Sat Jul 15 16:31:16 2006 UTC (13 years, 7 months ago) by gage
Added {} to force concatenation in some tables;

Revision 4268 - Directory Listing
Modified Sat Jul 15 14:23:38 2006 UTC (13 years, 7 months ago) by sh002i
always store values as arrayrefs in paramcache

Revision 4267 - Directory Listing
Modified Sat Jul 15 14:23:06 2006 UTC (13 years, 7 months ago) by sh002i
make reply_with_file work under Apache2

Revision 4266 - Directory Listing
Modified Sat Jul 15 14:11:44 2006 UTC (13 years, 7 months ago) by sh002i
rolled back accidental commit of non-null AllowSubroutineOutput value.
I'm getting kind of sick of Constants.pm -- do we need Constants.pm.dist?
or should we replace this mechanism with PerlSetVar or something?

Revision 4263 - Directory Listing
Modified Sat Jul 15 14:07:31 2006 UTC (13 years, 7 months ago) by sh002i
load Apache2::Connection, move requires up to the top in a begin block.

Revision 4262 - Directory Listing
Modified Sat Jul 15 14:06:42 2006 UTC (13 years, 7 months ago) by sh002i
dubious hack to support WeBWorK::CGIParamShim. This is not threadsafe,
but then again, neither is Safe.pm, so it's a non-issue so far.

Revision 4261 - Directory Listing
Modified Sat Jul 15 14:04:48 2006 UTC (13 years, 7 months ago) by sh002i
docuemntation fix -- htmlEscape doesn't use CGI::escapeHTML

Revision 4260 - Directory Listing
Modified Fri Jul 14 21:27:33 2006 UTC (13 years, 7 months ago) by gage
Commiting formatting changes

Revision 4259 - Directory Listing
Modified Fri Jul 14 21:25:11 2006 UTC (13 years, 7 months ago) by gage
Committing formatting changes to CGI calls
Adding {} to calls that concatenate their inputs

Revision 4258 - Directory Listing
Modified Fri Jul 14 21:22:04 2006 UTC (13 years, 7 months ago) by gage
Minor formatting changes in CGI calls.  Mostly adding {} at the beginning of functions that
concatenate their inputs.

Revision 4257 - Directory Listing
Modified Fri Jul 14 02:35:53 2006 UTC (13 years, 7 months ago) by gage
Here is a stable? version of CGI.pm for the night.
There are some minor bugs that need to be fixed in the newest version

Revision 4256 - Directory Listing
Modified Fri Jul 14 02:32:28 2006 UTC (13 years, 7 months ago) by gage
Fixed a bug in tables

Revision 4255 - Directory Listing
Modified Fri Jul 14 00:02:44 2006 UTC (13 years, 7 months ago) by gage
*** empty log message ***

Revision 4254 - Directory Listing
Modified Thu Jul 13 23:57:49 2006 UTC (13 years, 7 months ago) by gage
Latest version of CGI  this processes inputs first and is more regular

Revision 4253 - Directory Listing
Modified Thu Jul 13 19:38:19 2006 UTC (13 years, 7 months ago) by gage
Considerably simplified the behavior of radio buttons and select lists.
Let's try it now.

Revision 4252 - Directory Listing
Modified Thu Jul 13 18:56:39 2006 UTC (13 years, 7 months ago) by gage
Replaced "values" by "value" in call to radio_group.  Sorry about that. :-)

Revision 4251 - Directory Listing
Modified Thu Jul 13 17:24:36 2006 UTC (13 years, 7 months ago) by gage
More changes to the select block of WeBWorK::CGI

Revision 4250 - Directory Listing
Modified Thu Jul 13 16:56:41 2006 UTC (13 years, 7 months ago) by gage
Still working on getting the select lists to work correctly

Revision 4249 - Directory Listing
Modified Thu Jul 13 16:30:08 2006 UTC (13 years, 7 months ago) by gage
Fix another glitch -- if not default value is specified select the first value

Revision 4248 - Directory Listing
Modified Thu Jul 13 16:17:52 2006 UTC (13 years, 7 months ago) by gage
Fixed bug in applying labvels to values

Revision 4247 - Directory Listing
Modified Thu Jul 13 15:01:05 2006 UTC (13 years, 7 months ago) by gage
Added handler for CGI::password_field

Revision 4246 - Directory Listing
Modified Thu Jul 13 14:55:46 2006 UTC (13 years, 7 months ago) by gage
Fixed checkbox CGI glitch

Revision 4245 - Directory Listing
Modified Thu Jul 13 14:48:00 2006 UTC (13 years, 7 months ago) by gage
Fixed a glitch in moving auxiliary files.  There was an error when auxiliary files didn't need to be moved.

Revision 4244 - Directory Listing
Modified Thu Jul 13 14:47:21 2006 UTC (13 years, 7 months ago) by gage
Made calls to CGI::    use named parameters so that WeBWorK::CGI handles them properly

Revision 4243 - Directory Listing
Modified Wed Jul 12 17:28:07 2006 UTC (13 years, 7 months ago) by sh002i
support uploads under apache2

Revision 4242 - Directory Listing
Modified Wed Jul 12 04:38:24 2006 UTC (13 years, 7 months ago) by sh002i
added missing "1;" at endo f file

Revision 4241 - Directory Listing
Modified Wed Jul 12 04:37:43 2006 UTC (13 years, 7 months ago) by sh002i
Apache2: use reply_with_redirect rather than ad-hoc method.

Revision 4240 - Directory Listing
Modified Wed Jul 12 04:36:07 2006 UTC (13 years, 7 months ago) by sh002i
Apache2: use reply_with_file rather than ad-hoc method.

Revision 4239 - Directory Listing
Modified Wed Jul 12 04:35:26 2006 UTC (13 years, 7 months ago) by sh002i
Apache 2: replace header_out with headers_out, explicit returns for
do_reply_with_*

Revision 4238 - Directory Listing
Modified Wed Jul 12 04:33:55 2006 UTC (13 years, 7 months ago) by sh002i
replace header_in with headers_in (Apache 2)

Revision 4237 - Directory Listing
Modified Wed Jul 12 04:33:06 2006 UTC (13 years, 7 months ago) by sh002i
use normal print function rather than $r->print, so that we don't have
to load Apache2::RequestIO.

Revision 4236 - Directory Listing
Modified Wed Jul 12 01:27:47 2006 UTC (13 years, 7 months ago) by gage
Changed from use CGI to use WeBWorK::CGI

There is one part of the subrouting hidden_paramters in which I ensure
that there is only one value for each name (replaced @vaules with $value

Revision 4235 - Directory Listing
Modified Wed Jul 12 01:23:54 2006 UTC (13 years, 7 months ago) by gage
Converting from use CGI to use WeBWorK::CGI

The only substantial change is in Hardcopy where set_id was changed to "sid"

I believe that change is correct.

Revision 4234 - Directory Listing
Modified Wed Jul 12 01:19:15 2006 UTC (13 years, 7 months ago) by gage
Mostly replace use CGI; with use WeBWorK::CGI

Files with additional changes to CGI calls are
SendMail, SetMaker PGProblemEditor Instructor::Index and FileManager

Revision 4233 - Directory Listing
Modified Wed Jul 12 01:14:46 2006 UTC (13 years, 7 months ago) by gage
Latest version of WeBWorK::CGI.  It can still use a good deal of abstraction
but it appears to work with existing code.  It's meant to be a CGI imitation for
WeBWorK and it's coding style, not a complete duplicate.

The speed seems acceptable but there are very obvious things that could be done to speed it up if needed.

Revision 4232 - Directory Listing
Modified Tue Jul 11 18:18:16 2006 UTC (13 years, 7 months ago) by gage
This hack seems to work -- will revisit to regularize hidden inputs

Revision 4231 - Directory Listing
Modified Tue Jul 11 17:58:38 2006 UTC (13 years, 7 months ago) by gage
Fixed some problems with hidden fields.  Time to go back and regularize the processing.

V: ----------------------------------------------------------------------

Revision 4230 - Directory Listing
Modified Tue Jul 11 16:39:29 2006 UTC (13 years, 7 months ago) by gage
Changed submit button so that the name and label keys are explicitly entered.

Revision 4229 - Directory Listing
Modified Tue Jul 11 16:26:20 2006 UTC (13 years, 7 months ago) by gage
Added end form statement

Revision 4228 - Directory Listing
Modified Tue Jul 11 16:19:18 2006 UTC (13 years, 7 months ago) by gage
Fixed typo (should be keys not key)

Revision 4227 - Directory Listing
Modified Tue Jul 11 16:13:10 2006 UTC (13 years, 7 months ago) by gage
Normalized call for submit button

Revision 4226 - Directory Listing
Modified Tue Jul 11 16:11:13 2006 UTC (13 years, 7 months ago) by gage
Cleaned up some cases where all of the parameters are included in the initial hash.

Revision 4225 - Directory Listing
Modified Tue Jul 11 15:04:49 2006 UTC (13 years, 7 months ago) by gage
Fixed some problems with textarea interpretation.

Revision 4224 - Directory Listing
Modified Tue Jul 11 14:44:55 2006 UTC (13 years, 7 months ago) by gage
Allow textfield   to be interpreted

Revision 4223 - Directory Listing
Modified Tue Jul 11 14:21:36 2006 UTC (13 years, 7 months ago) by sh002i
don't call send_http_header under apache2

Revision 4222 - Directory Listing
Modified Tue Jul 11 14:04:02 2006 UTC (13 years, 7 months ago) by gage
Allow th   to have comma separated entries

Revision 4221 - Directory Listing
Modified Tue Jul 11 13:28:26 2006 UTC (13 years, 7 months ago) by gage
One more glitch in radio buttons fixed.

Revision 4220 - Directory Listing
Modified Tue Jul 11 13:25:56 2006 UTC (13 years, 7 months ago) by gage
Fixed some errors in radio buttons

Revision 4219 - Directory Listing
Modified Tue Jul 11 12:29:16 2006 UTC (13 years, 7 months ago) by gage
Allow table to contain a list of rows (rather than a single one).

Revision 4218 - Directory Listing
Modified Tue Jul 11 12:07:37 2006 UTC (13 years, 7 months ago) by gage
Added handlers for scrolling lists.

Revision 4217 - Directory Listing
Modified Tue Jul 11 03:59:50 2006 UTC (13 years, 7 months ago) by sh002i
only call send_http_header under Apache1.

Revision 4216 - Directory Listing
Modified Tue Jul 11 03:59:08 2006 UTC (13 years, 7 months ago) by sh002i
Apache2 compatibility for HTTP constants. (This may very well be broken,
but I wanted to get it comitted before bed.)

Revision 4214 - Directory Listing
Modified Tue Jul 11 02:51:18 2006 UTC (13 years, 7 months ago) by gage
This will now handle at least some popup_menu commands (<select>)

Revision 4212 - Directory Listing
Modified Mon Jul 10 20:02:03 2006 UTC (13 years, 7 months ago) by gage
This commits an experimental file to see if HTML generation can be accomplished using HTML::EasyTag as a basis.
It is NOT ready for prime time.

You can install this in a file by replacing

use CGI;

by

use WeBWorK::CGI;

Revision 4211 - Directory Listing
Modified Mon Jul 10 17:48:46 2006 UTC (13 years, 7 months ago) by sh002i
improve formatting for params debugging output.

Revision 4210 - Directory Listing
Modified Sat Jul 8 22:58:55 2006 UTC (13 years, 7 months ago) by gage
We don't need this debug statement, and it causes errors when the course is entered from outside moodle

Revision 4209 - Directory Listing
Modified Sat Jul 8 22:23:46 2006 UTC (13 years, 7 months ago) by gage
Added -override to checkbox for problems already added to this course.  They were sticking when they should not have.

Revision 4208 - Directory Listing
Modified Sat Jul 8 17:29:16 2006 UTC (13 years, 7 months ago) by gage
Finding local problems seems to work correctly now.

Revision 4207 - Directory Listing
Modified Sat Jul 8 17:00:28 2006 UTC (13 years, 7 months ago) by gage
Changes that make it possible to browse this course and the set definition files.  (I think I mislabeled the local_sets
parameter to library_sets)

There is still a problem with viewing local problems.    A directory labeled set0 is interpreted as 0, which in this instance is
not the right thing.  This might not be a new problem.

Revision 4206 - Directory Listing
Modified Sat Jul 8 16:26:34 2006 UTC (13 years, 7 months ago) by gage
Have placed -override=>1  in every CGI::hidden().  So far this seems to fix the problem with misleading sticky behavior.
I have no clue why use CGI qw(-nosticky) didn't work for hidden.  Possibly a bug.  So far the fix continues to work for
apache1.3
without changing the behavior.

After further testing this file should have at least some of the annoying debug statements removed.

Revision 4205 - Directory Listing
Modified Sat Jul 8 14:49:26 2006 UTC (13 years, 7 months ago) by gage
Added -override =>1 back in to some of the CGI::hidden() tags.  Still won't remember which
library it's looking at.

Revision 4202 - Directory Listing
Modified Sat Jul 8 14:07:35 2006 UTC (13 years, 7 months ago) by gage
Try using the -nosticky pragma to see if this fixes the problem.

Revision 4201 - Directory Listing
Modified Sat Jul 8 01:52:01 2006 UTC (13 years, 7 months ago) by gage
Fixed some of the param problems by adding   , override=>1  to the CGI::hidden() calls.
This means that CGI ignores any param() values when assigning value to the field.  We have been
assigning our own updated values in any case, so this is probably what should have been done
from the start.  I'm not 100% sure of this yet however, so I've only fixed a couple of places
in SetMaker.pm where the behavior is weird.  I'd like to here of other weird behavior that could
be attributed to values in forms sticking or not sticking correctly.

Revision 4198 - Directory Listing
Modified Fri Jul 7 22:27:33 2006 UTC (13 years, 7 months ago) by sh002i
debug() output for untangling CGI/param problems (remove later)

Revision 4197 - Directory Listing
Modified Wed Jul 5 18:28:14 2006 UTC (13 years, 7 months ago) by sh002i
use WeBWorK::Cookie

Revision 4196 - Directory Listing
Modified Wed Jul 5 18:27:18 2006 UTC (13 years, 7 months ago) by sh002i
separate definitions for $warning_handler for Apache 1/2

Revision 4195 - Directory Listing
Modified Wed Jul 5 18:24:43 2006 UTC (13 years, 7 months ago) by sh002i
don't load Apache::Log via global.conf anymore -- special-case it in
WeBWorK::PG::Local instead. this allows for selective loading of
Apache::Log for Apache1 or Apache2::Log and APR::Table for Apache2.

Revision 4193 - Directory Listing
Modified Fri Jun 30 18:47:09 2006 UTC (13 years, 7 months ago) by sh002i
Install wrapper for param() method when running under mod_perl2. This is
necessary because Apache2::Request's param doesn't support adding
parameters or modifying parameter values.

This is a potentially SLOW workaround, because there's an extra level of
perl code before we get to the XS param().

Revision 4192 - Directory Listing
Modified Thu Jun 29 23:20:48 2006 UTC (13 years, 7 months ago) by sh002i
Progress on Apache2 compatibility -- doesn't work yet.

I've gotten to the point where the login screen can be displayed, but
login will still fail. The issue that i'm currently working on is that
we modify $r->param values extensively in WeBWorK, and that is not
supported in Apache2::Request. I'm not sure why, and no workaround is
given. One solution is to wrap override param() in WeBWorK::Request, but
this would slow things down since the Apache2::Request param method is
written in C.

Revision 4191 - Directory Listing
Modified Thu Jun 29 21:28:23 2006 UTC (13 years, 7 months ago) by sh002i
removed commented-out code that would have needed modification for apache2

Revision 4190 - Directory Listing
Modified Thu Jun 29 21:10:52 2006 UTC (13 years, 7 months ago) by sh002i
WeBWorK::Cookie inherits from Apache::Cookie or Apache2::Cookie
depending on the mod_perl version.

Revision 4185 - Directory Listing
Modified Thu Jun 29 15:39:02 2006 UTC (13 years, 7 months ago) by gage
fixed changes in moodle table names and field names
I'm trying to meet moodle coding standards in naming fields

Revision 4180 - Directory Listing
Modified Wed Jun 28 17:03:26 2006 UTC (13 years, 7 months ago) by sh002i
this CG has not been used for a long time

Revision 4179 - Directory Listing
Modified Wed Jun 28 16:20:39 2006 UTC (13 years, 7 months ago) by sh002i
change order of use statements compulsively

Revision 4178 - Directory Listing
Modified Wed Jun 28 16:19:57 2006 UTC (13 years, 7 months ago) by sh002i
eliminate sub redefine warnings

Revision 4170 - Directory Listing
Modified Mon Jun 26 23:25:15 2006 UTC (13 years, 8 months ago) by dpvc
Add the moodle theme to the list of available themes.

Revision 4168 - Directory Listing
Modified Mon Jun 26 18:16:26 2006 UTC (13 years, 8 months ago) by gage
The last message was garbled.  I've added code that copies auxiliary files when you make a local copy or
an extra copy of a problem file of the form  prob4/prob4.pg

This copy mechanism is not yet used when viewing one of these problems from a temporary file in tmpEdit.  If you
have viewed a problem before you start editing it, your browser will probably use cached images and you
will not have any errors.  If you start editing a problem with auxiliary files before viewing it once in its original
state, then some of the auxiliary images might be missing.

Revision 4167 - Directory Listing
Modified Mon Jun 26 18:05:52 2006 UTC (13 years, 8 months ago) by gage
and copy auxilliary files when making a copy of a problem.  This does not do anything about the creation of temporary files
for viewing.  If you have already viewed the file before you start editing it youthen the temporary links will work.
Make
File::Copy available

Revision 4166 - Directory Listing
Modified Mon Jun 26 18:03:48 2006 UTC (13 years, 8 months ago) by gage
Make File::Copy available

Revision 4165 - Directory Listing
Modified Sat Jun 24 22:23:30 2006 UTC (13 years, 8 months ago) by dpvc
Fixed a couple more issues with blank problems.  Allow files to be
copied even when we can't write the original (this lets you make a
copy of the blank problem or default headers).

Attempt to overcome the copy/rename problem by making it not be a menu
and instead use a checkbox that says whether the problem or header
will replace the one in the current set.  This makes it clear that a
copy is still being made (not that the original is being renamed), but
that the homework set is being altered.  Those are really two
different actions, and it seems to make sense to separate them.  The
default is still to link into the homework set, if there is one.

Revision 4164 - Directory Listing
Modified Sat Jun 24 21:12:29 2006 UTC (13 years, 8 months ago) by dpvc
Changed messages that refer to 'Save as' to use 'Create a copy'
instead (which is the current wording for that function).

Problem:  Since the default in that pop-up menu us "Rename file"
rather than "Create a copy", it is not immediately clear what this
message refers to.

I still think "Create a copy" should be the default rather than
"Rename file", since the latter only makes sense when you got to the
editor from a file linked to a homework set, which is not always the
case (e.g., when you use the Library Browser).  It would also make
these error messages refer to something visible rather than a menu
item that is not showing.

Revision 4163 - Directory Listing
Modified Sat Jun 24 21:04:13 2006 UTC (13 years, 8 months ago) by dpvc
Handle blank problems correctly (they were being flagged as unsafe in
some cases, and produced as many as 3 error messages indicating that
the file had to be "Saved as" before editing).  Also fixed a typo with
hardcopy header checking.

Revision 4162 - Directory Listing
Modified Sat Jun 24 20:31:01 2006 UTC (13 years, 8 months ago) by dpvc
Allow viewing of the default header files (so they can be saved to
local files).

Revision 4161 - Directory Listing
Modified Sat Jun 24 20:08:30 2006 UTC (13 years, 8 months ago) by dpvc
Fixed some typos.

Revision 4160 - Directory Listing
Modified Sat Jun 24 20:01:25 2006 UTC (13 years, 8 months ago) by dpvc
Changed some "Problem sets" to "Homework sets" and added an note when
a file is already included in the target homework set.

Revision 4159 - Directory Listing
Modified Sat Jun 24 19:51:02 2006 UTC (13 years, 8 months ago) by dpvc
Correctly handle viewing of edited files (we are passed relative
paths, but the code used to treat them as absolute paths).

Revision 4158 - Directory Listing
Modified Sat Jun 24 19:38:00 2006 UTC (13 years, 8 months ago) by dpvc
Use a better word order for these messages.

Revision 4157 - Directory Listing
Modified Sat Jun 24 19:35:36 2006 UTC (13 years, 8 months ago) by dpvc
Make edit links use the WW_Editor window.

Revision 4149 - Directory Listing
Modified Sat Jun 24 01:43:44 2006 UTC (13 years, 8 months ago) by gage
Make sure that the user list is restricted to the current course.

cosmetic changes in Permission

Revision 4147 - Directory Listing
Modified Sat Jun 24 01:00:44 2006 UTC (13 years, 8 months ago) by sh002i
belatedly adding moodle schema modules

Revision 4137 - Directory Listing
Modified Fri Jun 23 18:42:31 2006 UTC (13 years, 8 months ago) by gage
A bare bones method for verifying against and LDAP (in this case the LDAP at the U of R)
You will need to change the constants for use with another local LDAP.

this is not at all finished -- in particular there is no check to see if the user is enrolled
in a specific course.

Revision 4136 - Directory Listing
Modified Mon Jun 19 15:57:24 2006 UTC (13 years, 8 months ago) by gage
Allow delete option after archiving course.

Revision 4135 - Directory Listing
Modified Mon Jun 19 15:39:51 2006 UTC (13 years, 8 months ago) by sh002i
Added HTTP-Basic authenticator for WeBWorK:

AuthenWeBWorK.pm - steals $ce/$authz/$db/$authen bootstrapping code from
the dispatcher, overrides Authen's get_credentials method (and clobbers
cookie methods and set_params)

Debug.pm - load WeBWorK::Contsants explicitly in case it isn't already
loaded

Authen.pm - added maybe_kill_cookie shim (so that it can be overridden
elsewhere)

Configure as follows:

<Location /some_protected_location>
 AuthName "My Protected Location"
 AuthType Basic
 PerlAuthenHandler Apache::AuthenWeBWorK
 PerlSetVar authen_webwork_root /path/to/webwork2
 PerlSetVar authen_webwork_course some_course_id
 require valid-user
</Location>

Revision 4132 - Directory Listing
Modified Sat Jun 17 21:35:22 2006 UTC (13 years, 8 months ago) by sh002i
print log messages to debug output

Revision 4129 - Directory Listing
Modified Thu Jun 15 14:48:19 2006 UTC (13 years, 8 months ago) by gage
Implemented unarchiving function to complement archiving function.

Archive exports the course database to courseName/DATA and then tas and gzips the directory courseName to
courseDirectory/courseName.tar.gz

Unarchive allows one to choose files of the type courseDirectory/courseName.tar.gz  and then
ungzip, untar them to courseDirectory/courseName   -- the database record in courseName/DATA is
then loaded into the webwork database.

So far there is only minimal error checking about whether all or part of the course exists when unarchiving.

There are not yet features for archiving and then deleting a course -- these two operations have to be done
separately for now.

Revision 4128 - Directory Listing
Modified Sat Jun 10 14:20:42 2006 UTC (13 years, 8 months ago) by gage
Fixed spelling typo in comment

Revision 4127 - Directory Listing
Modified Sat Jun 10 14:18:56 2006 UTC (13 years, 8 months ago) by gage
Add contact person for a new course to the admin course as a student.
Student's have no access to CourseAdmin features.

Revision 4126 - Directory Listing
Modified Sat Jun 10 01:50:54 2006 UTC (13 years, 8 months ago) by sh002i
don't call formatDateTime unless the result is used (closes bug #830)

Revision 4125 - Directory Listing
Modified Thu Jun 8 23:27:02 2006 UTC (13 years, 8 months ago) by sh002i
check for a valid moodle session when the webwork key matches an expired
session. this allows for seamless re-login when the webwork timeout is
shorter than the moodle timeout.

Revision 4122 - Directory Listing
Modified Wed Jun 7 19:30:51 2006 UTC (13 years, 8 months ago) by sh002i
replace "SELECT *" with explicit list of fields to avoid problems when
columns are ordered differently in the database. fixes bug #1033.

Revision 4115 - Directory Listing
Modified Wed May 31 18:41:23 2006 UTC (13 years, 8 months ago) by jj
Fixed bug for selecting problems from the ProblemLibrary database.  Problems which have no associated textbook were mucking things up, even if no textbook was selected.

Revision 4108 - Directory Listing
Modified Thu May 25 16:37:15 2006 UTC (13 years, 9 months ago) by sh002i
improvements to URL handling.
* use use_abs_url option of systemLink to generate URLs, rather than
hardcoding logic.
* don't generate a full URL for the return to your work link. it isn't
needed.
* in the "This feedback message was automatically generated by the
WeBWorK system at" message, give the URL to the webwork home module,
rather than just the host and port.

Revision 4107 - Directory Listing
Modified Thu May 25 16:35:10 2006 UTC (13 years, 9 months ago) by sh002i
added use_abs_url option to systemLink: If set to a true value, the
scheme, host, and port are prepended to the URL. This is useful for
links which must be usable on their own, such as those sent via email.

Revision 4102 - Directory Listing
Modified Thu May 25 03:08:50 2006 UTC (13 years, 9 months ago) by gage
Replaced instance of fetch_moodle_cookie with fetch_moodle_session

Revision 4101 - Directory Listing
Modified Wed May 24 23:30:23 2006 UTC (13 years, 9 months ago) by sh002i
almost totally works now
* fixed passwork checking (call to md5_hex was wrong)
* added debugging output
* renamed fetch_moodle_cookie to fetch_moodle_session
* commented out unused moodle_session_expired

Revision 4100 - Directory Listing
Modified Wed May 24 23:28:24 2006 UTC (13 years, 9 months ago) by sh002i
add moodlekey methods (these should go away eventually, but the current
implementation of Authen::Moodle needs them)

Revision 4099 - Directory Listing
Modified Tue May 23 20:47:27 2006 UTC (13 years, 9 months ago) by gage
Support for finding applets in one of several locations.

Revision 4096 - Directory Listing
Modified Tue May 23 17:38:29 2006 UTC (13 years, 9 months ago) by sh002i
changed how activity is determined. previously, check_session was being
called with updateTimestamp=1, which would cause all active sessions to
be "touched" so as to prolong their validity. also, it's not really
approriate to call check_session in this way to begin with. we already
grabbed the key, and we know it matches, so we don't want to grab it
again. so instead i just put the timestamp comparison directly into this
file.

see also UserList.pm 1.79.

Revision 4092 - Directory Listing
Modified Mon May 22 21:39:07 2006 UTC (13 years, 9 months ago) by sh002i
add charset=utf-8 to content type header

Revision 4091 - Directory Listing
Modified Sun May 21 00:52:20 2006 UTC (13 years, 9 months ago) by gage
Added support for directories for housing applet files

Revision 4090 - Directory Listing
Modified Sun May 21 00:51:25 2006 UTC (13 years, 9 months ago) by gage
Added onSubmit to form so that javaScript functions can be triggered by the submit button.

check that this still works on windows MSIE

Revision 4089 - Directory Listing
Modified Sun May 21 00:50:04 2006 UTC (13 years, 9 months ago) by gage
$formFields is needed by at least one grader (sequentialGrader) in order to function.

Is there a better way?

Revision 4087 - Directory Listing
Modified Thu May 18 19:52:12 2006 UTC (13 years, 9 months ago) by sh002i
replace @DB_LAYOUT_ORDER and %DB_LAYOUT_DESCRIPTIONS with values from
course environment. remove form fields for 'sql' and 'gdbm' layouts.

Revision 4084 - Directory Listing
Modified Thu May 18 19:32:53 2006 UTC (13 years, 9 months ago) by sh002i
modifications necessary to support moodle tables:

* respect non_native flag in dbLayout

With these changes, courses with the sql_moodle dbLayout can be created,
deleted, renamed, and archived using the WeBWorK course management
tools.

Revision 4083 - Directory Listing
Modified Thu May 18 19:32:41 2006 UTC (13 years, 9 months ago) by sh002i
modifications necessary to support moodle tables:

* respect non_native flag in dbLayout
* don't attempt to add users if user table is non_native
* rather than checking for the string "sql_single" in renameCourse and
  archiveCourse, and erroring out otherwise, we check to see if there is
  a copyCourseDataHelper or archiveCourseHelper implementation
  (respectively). new getHelperRef subroutine helps with this.

With these changes, courses with the sql_moodle dbLayout can be created,
deleted, renamed, and archived using the WeBWorK course management
tools.

Revision 4082 - Directory Listing
Modified Thu May 18 19:27:57 2006 UTC (13 years, 9 months ago) by sh002i
added stub for sql_moodle. this just copies the subroutines from sql_single.pm.

Revision 4080 - Directory Listing
Modified Thu May 18 19:25:44 2006 UTC (13 years, 9 months ago) by sh002i
use new config options for authentication modules (see global.conf).

Revision 4071 - Directory Listing
Modified Tue May 16 00:31:06 2006 UTC (13 years, 9 months ago) by dpvc
Fix jsMath output in the answer preview when the student answer
conains < or > (make sure they don't look like tags).

Revision 4068 - Directory Listing
Modified Fri May 12 18:39:10 2006 UTC (13 years, 9 months ago) by sh002i
some progress

Revision 4065 - Directory Listing
Modified Mon May 8 19:38:40 2006 UTC (13 years, 9 months ago) by apizer
removed warn message used to debug changes.

Revision 4064 - Directory Listing
Modified Mon May 8 18:23:10 2006 UTC (13 years, 9 months ago) by apizer
Added an email link so that one can easily email student(s) after e.g.
giving then an extension.

Revision 4063 - Directory Listing
Modified Sun May 7 22:01:57 2006 UTC (13 years, 9 months ago) by gage
Fixed minor problem where a field might not be defined (in addition to being empty) ==
now we check for defined, then check for non-empty.

-- Mike

Revision 4062 - Directory Listing
Modified Sun May 7 21:46:43 2006 UTC (13 years, 9 months ago) by gage
Replaced the use of checkKey by check_session to conform to the new subroutines in Authen.pm

Revision 4061 - Directory Listing
Modified Tue Apr 25 17:05:27 2006 UTC (13 years, 10 months ago) by sh002i
pass relative paths to Problem in sourceFilePath (see bug #1016)

Revision 4059 - Directory Listing
Modified Mon Apr 24 16:00:09 2006 UTC (13 years, 10 months ago) by sh002i
accidentally used $self->ce rather than $self->r->ce in revert_handler

Revision 4058 - Directory Listing
Modified Tue Apr 18 23:27:33 2006 UTC (13 years, 10 months ago) by sh002i
reverting to 1.40 -- accidental commit

Revision 4057 - Directory Listing
Modified Tue Apr 18 23:27:32 2006 UTC (13 years, 10 months ago) by sh002i
SECURITY: prevent reading/saving files outside of templates directory.

Revision 4051 - Directory Listing
Modified Mon Apr 17 21:17:12 2006 UTC (13 years, 10 months ago) by sh002i
Resolve bug #994 ("Try it" yields:  sourceFilePath is unsafe!)

SetMaker uses a relative path for sourceFilePath, which is nice, but
which path_is_subdir didn't account for. Added thrid argument,
$allow_relative, to that utility which causes $dir to be prepended to
$path. Modified Problem.pm to trigger this behavior.

Revision 4050 - Directory Listing
Modified Wed Apr 12 18:54:39 2006 UTC (13 years, 10 months ago) by sh002i
Use undefstr to convert undefined values to the string "###UNDEF###". If
you think a value you're sending to debug() might be undefiend, send it
as a separate item in the argument list rather than concatenating it or
interpolating it into a string. For example, say:

	debug("now myVal=", $myVal, ", exiting");

If $myVal is undefined, you'll see:

	now myVal=###UNDEF###, exiting

Revision 4049 - Directory Listing
Modified Wed Apr 12 18:51:21 2006 UTC (13 years, 10 months ago) by sh002i
Support for new Authen class:

* Use new Authen::Proctor subclass for proctor verification rathern than old
  verifyProctor method of Authen.

Revision 4048 - Directory Listing
Modified Wed Apr 12 18:51:06 2006 UTC (13 years, 10 months ago) by sh002i
Fix checkKeyFields to actually work with "versioned" user_id field in
key records.

Revision 4047 - Directory Listing
Modified Wed Apr 12 18:50:53 2006 UTC (13 years, 10 months ago) by sh002i
Beginnings of a Authen-subclass implementation of Moodle-cookie based
authentication.

Revision 4046 - Directory Listing
Modified Wed Apr 12 18:50:37 2006 UTC (13 years, 10 months ago) by sh002i
Support for new Authen class:

* Use new Authen::Proctor subclass for proctor verification rathern than old
  verifyProctor method of Authen.
* Remove unfinished code fragment introduced in 1.79. Harmless but annoying.
* Change names of login module constants from AUTHEN_MODULE and
  PROCTOR_AUTHEN_MODULE to LOGIN_MODULE and PROCTOR_LOGIN_MODULE.

Revision 4045 - Directory Listing
Modified Wed Apr 12 18:50:11 2006 UTC (13 years, 10 months ago) by sh002i
New subclassable architecture. Should function identically to old
implementation (modulo bugs). verifyProctor has been replaced with an
Authen::Proctor subclass, which overrides several methods and consists
of about 30 real lines of code. Cool.

Revision 4042 - Directory Listing
Modified Sun Apr 2 12:32:02 2006 UTC (13 years, 10 months ago) by dpvc
When a file is uploaded and there is an error opening the destination
file, the error message now includes the system error report and the
file is no longer printed (causing a WeBWorK error).

Revision 4031 - Directory Listing
Modified Thu Mar 2 17:03:54 2006 UTC (13 years, 11 months ago) by apizer
missed one line

Revision 4030 - Directory Listing
Modified Thu Mar 2 16:50:39 2006 UTC (13 years, 11 months ago) by apizer
Fixed Bug 988.
Use sortByName instead of sort to sort the keys in the %answerHash

Revision 4029 - Directory Listing
Modified Tue Feb 21 22:00:29 2006 UTC (14 years ago) by glarose
Clean up verifyProctor() in Authen.pm, improve proctor authorization
logging.

Revision 4021 - Directory Listing
Modified Fri Feb 10 01:09:08 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (move [edit] link for Course/Set Info to
top, resolving bug #978.)

Revision 4019 - Directory Listing
Modified Thu Feb 9 23:20:20 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (Preserve gateway test display options in
colum header links.)

Revision 4015 - Directory Listing
Modified Tue Feb 7 21:03:25 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (security checks for sourceFilePath -- fixes bug #970.

* Utils.pm: add path_is_subdir
* Problem.pm: use path_is_subdir to check sourceFilePath
              fix logic on when to use sourceFilePath
* ProblemSet.pm: use path_is_subdir to check sourceFilePath
                 add permissions check around sourceFilePath handler
* ProblemSets.pm: use path_is_subdir to check sourceFilePath
* GatewayQuiz.pm: remove code to preserve editMode/sourceFilePath (not used))

Revision 4012 - Directory Listing
Modified Tue Feb 7 19:20:57 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (change underscores to spaces in siblings
list, add tooltop for overflowing siblings.)

Revision 4010 - Directory Listing
Modified Fri Feb 3 18:21:26 2006 UTC (14 years ago) by sh002i
set $main::VERSION to "2.x" -- nice generic value for CVS.

Revision 4008 - Directory Listing
Modified Fri Feb 3 14:05:25 2006 UTC (14 years ago) by glarose
Modify putUserProblem call to allow for versioned sets.

Revision 4007 - Directory Listing
Modified Fri Feb 3 00:22:15 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (disable editFileSuffix since it is not
used and is dumb.)

Revision 4002 - Directory Listing
Modified Thu Feb 2 22:29:43 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (Moved snippet of ContentGenerator.pm
that checked to see if the "report bugs" link could be showed inside
the clause that requires the authentication to have been verified.)

Although it was not noted in the original commit message, this commit
also removes trailing newlines from error reporting messages in Authz. I
assume this is so that the file/lineno is appened by Perl.

Revision 3999 - Directory Listing
Modified Wed Feb 1 19:24:36 2006 UTC (14 years ago) by apizer
List students last name first

Revision 3997 - Directory Listing
Modified Wed Feb 1 00:24:22 2006 UTC (14 years ago) by sh002i
forward-port from rel-2-2-dev: (Use File::Path::mkpath to create the
hardcopy directory. mkpath() functions like ``mkdir -p'' in that it will
create multiple directory elements if needed. Closes bug #950.

Use the standard File::Temp::tempdir function instead of
makeTempDirectory() to create the actual working directory.

Add spaces after the "[edit]" links when PG errors are reported.)

Revision 3991 - Directory Listing
Modified Sun Jan 29 20:50:37 2006 UTC (14 years ago) by jj
Fix bug related to $mail{feedbackRecipients} being set in web configuration (reported on wwdevel.  I don't think this has a bug number.

Revision 3975 - Directory Listing
Modified Thu Jan 26 21:45:42 2006 UTC (14 years, 1 month ago) by sh002i
forward-port from rel-2-2-patches: (make addCourse, deleteCourse more
robust.
- pre-check permissions before trying to mkdir/rmtree
- treat creation errors on directories other than the root as warnings
- treat deletion errors on all directories as warnings
- treat sql_single "drop table" errors as warnings
- supress DBI's error reporting for command-line addcourse/delcourse)

Revision 3973 - Directory Listing
Modified Wed Jan 25 23:13:56 2006 UTC (14 years, 1 month ago) by sh002i
forward-port from rel-2-2-dev: (update copyright date range -- 2000-2006.
this is probably overkill, since there are some files that were created
after 2000 and some files that were last modified before 2006.)

Revision 3969 - Directory Listing
Modified Tue Jan 24 23:41:40 2006 UTC (14 years, 1 month ago) by sh002i
forward-port from rel-2-2-dev: (remove extraneous instructor tools link)

Revision 3963 - Directory Listing
Modified Tue Jan 24 23:27:02 2006 UTC (14 years, 1 month ago) by sh002i
forward-port from rel-2-2-dev: (make webwork code output siblings div/h2
code, rather than template. this allows for the siblings box to be named
according to its contents.)

Revision 3943 - Directory Listing
Modified Sun Jan 22 02:55:02 2006 UTC (14 years, 1 month ago) by sh002i
forward-port: (update info() for new stylesheet.)

Revision 3941 - Directory Listing
Modified Sun Jan 22 02:53:24 2006 UTC (14 years, 1 month ago) by sh002i
forward-port: (use info() from Login.pm)

Revision 3939 - Directory Listing
Modified Sun Jan 22 02:52:11 2006 UTC (14 years, 1 month ago) by sh002i
forward-port: (Don't output DIV tag in info() unless there's something
to display.)

Revision 3937 - Directory Listing
Modified Sun Jan 22 02:41:44 2006 UTC (14 years, 1 month ago) by sh002i
forward-port (Don't output DIV tag in info() unless there's something to
display.)

Revision 3935 - Directory Listing
Modified Sun Jan 22 02:29:40 2006 UTC (14 years, 1 month ago) by sh002i
forward-port to HEAD (Fixed error in variable names that was breaking
the code in HEAD. -gage)

Revision 3927 - Directory Listing
Modified Fri Jan 20 00:21:14 2006 UTC (14 years, 1 month ago) by sh002i
forward-port to head (roll back part of change in version 1.58.)

Revision 3925 - Directory Listing
Modified Fri Jan 20 00:17:39 2006 UTC (14 years, 1 month ago) by sh002i
forward-port to head (partial clean up rendering of the info box. it
will now not show up unless it has content, and the headings will be
rendered more nicely.)

Revision 3907 - Directory Listing
Modified Wed Jan 11 23:08:44 2006 UTC (14 years, 1 month ago) by dpvc
Merge with HEAD (removal of commented-out messages)

Revision 3905 - Directory Listing
Modified Wed Jan 11 23:00:24 2006 UTC (14 years, 1 month ago) by dpvc
Merge to HEAD (remove DPVC comments).

Revision 3903 - Directory Listing
Modified Wed Jan 11 22:56:12 2006 UTC (14 years, 1 month ago) by dpvc
Merge to HEAD (Don't scan templates/tmpEdit for pg files in the Library Browser).

Revision 3901 - Directory Listing
Modified Wed Jan 11 22:41:51 2006 UTC (14 years, 1 month ago) by dpvc
Merge changes with HEAD (Re-target view and edit links to use the view
and edit windows)

Revision 3897 - Directory Listing
Modified Tue Jan 10 00:33:19 2006 UTC (14 years, 1 month ago) by sh002i
Using Mike's fix for bug #942, because it was nicer.
Forward-ported from rel-2-2-dev revision 1.75.2.2 to HEAD.

Revision 3894 - Directory Listing
Modified Tue Jan 10 00:08:59 2006 UTC (14 years, 1 month ago) by sh002i
Resolves bug #942, in which a missing permission level field causes a
warning:

This is in fact due to UserList assuming that $record{permission} is
defined when it is allowed to be undefined (as per the format of
classlist files).

I added a case that sets is to $default_permission_level if it is not
defined.

FIXED in branch rel-2-2-dev revision 1.75.2.1.
Forwarded-ported with no modifications to HEAD in this revision.

Revision 3892 - Directory Listing
Modified Mon Jan 9 23:57:28 2006 UTC (14 years, 1 month ago) by sh002i
I've modified the renameCourse code to simply issue a warning when a
course directory (other than the course root dir) is not movable. I've
also added error checking for some of the more common reasons for
directories to not be movable, so that the warning message is more
informative.

Resolves bug #943.
Originally committed to branch rel-2-2-dev.
Forward-ported without modification to HEAD.

Revision 3890 - Directory Listing
Modified Mon Jan 9 19:15:01 2006 UTC (14 years, 1 month ago) by jj
Fixed the following bug: if you are importing multiple sets and (stupidly) include the line "the following file(s)" in your multiple selection (which can happen if you are trying to get everything), then you would get a cryptic error and nothing would be imported.

Revision 3888 - Directory Listing
Modified Sun Jan 8 18:18:17 2006 UTC (14 years, 1 month ago) by gage
Merging changes from rel-2-2-dev into HEAD

Revision 3883 - Directory Listing
Modified Sun Jan 8 01:29:13 2006 UTC (14 years, 1 month ago) by gage
Changes to respond to bug report #936

Revision 3876 - Directory Listing
Modified Sat Jan 7 01:14:54 2006 UTC (14 years, 1 month ago) by gage
This fixes the bug specifically reported in bug report #935.

There are still problems with saving local copies of set headers.

Revision 3874 - Directory Listing
Modified Fri Jan 6 17:48:17 2006 UTC (14 years, 1 month ago) by glarose
Gateway bugfix: correct (or work around) missing score/values.

Revision 3873 - Directory Listing
Modified Mon Jan 2 23:24:48 2006 UTC (14 years, 1 month ago) by glarose
Gateway update: don't display gateway sets in siblings sidebar of
ProblemSet list for all users, regardless of permissions.  This may
or may not be the desired behavior.  I like it because it forces
the user to go to a test from the ProblemSets page where we rewrite
the link with the more intuitive (but longer) text "Take new [test
name] test".

Revision 3863 - Directory Listing
Modified Thu Dec 29 01:40:38 2005 UTC (14 years, 1 month ago) by gage
Fixed error in POST url which caused user and key to become multiply defined.

This may also cure some other anomolies such as the can't call method "psvn" without a package or object error
because that error sometimes included a reference to the key.  ???  Not sure about this part, but it definitely
causes the multiple user and key definition.

Revision 3861 - Directory Listing
Modified Tue Dec 27 00:35:03 2005 UTC (14 years, 2 months ago) by gage
Fixed theme item in the Constants.pm file.

Revision 3860 - Directory Listing
Modified Tue Dec 27 00:34:18 2005 UTC (14 years, 2 months ago) by gage
Added popuplist widget to Config.pm.  Modified Constants.pm to
allow choice of theme from a pop up menu.

Revision 3859 - Directory Listing
Modified Mon Dec 26 23:53:13 2005 UTC (14 years, 2 months ago) by gage
Turn off debugging.

Allow the theme to be edited for each course. (This is slightly dangerous
since a misspelling of the theme could cause troubles.)
It would be helpful to have a pop-up menu widget for Config.pm -- similar to
the boolean or permission pop ups, but where the values
can be specified.

Revision 3858 - Directory Listing
Modified Mon Dec 26 22:06:37 2005 UTC (14 years, 2 months ago) by gage
Modifications which replace SetsAssignedToUsers.pm by UserDetail.pm

Added instructor help link to the links in the left margin.
There is no specific student help link.

Added some more configuration variables to Constants.pm

Revision 3857 - Directory Listing
Modified Mon Dec 26 22:04:31 2005 UTC (14 years, 2 months ago) by gage
This file replaces the SetsAssignedToUser.pm module.  It allows you to
change the dates on several homework sets for a single student from one page.
This is a common activity, particularly when adding students, and is now a
much faster procedure.

Revision 3856 - Directory Listing
Modified Mon Dec 26 22:02:58 2005 UTC (14 years, 2 months ago) by gage
The major change is to replace Sets assigned to user by UserDetail.pm.  (Originally
written by Rob Van Dam and completed by Mike Gage.)  It has undergone a significant
amount of testing, but has not yet been used in a course.  We can back out of
these changes  before creating a release if problems are found.

Revision 3854 - Directory Listing
Modified Thu Dec 22 18:51:27 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: correct handling of gateway data input from def file.

Revision 3853 - Directory Listing
Modified Thu Dec 22 18:50:40 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: correct handling of gateway data when editing sets.

Revision 3852 - Directory Listing
Modified Thu Dec 22 18:50:06 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: fix typo.

Revision 3851 - Directory Listing
Modified Thu Dec 22 18:49:40 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: revise display of versioned and non-versioned sets.  Now
all regular sets are sorted to the top of the list, with gateway tests
at the bottom.  Use view_proctored_tests parameter to decide if proctored
tests should be hidden.  Now uses new listUserSets and listUserSetVersions
routines from DB.

Revision 3850 - Directory Listing
Modified Thu Dec 22 18:48:06 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: reflect use of listUserSets to list non-versioned sets

Revision 3849 - Directory Listing
Modified Thu Dec 22 18:47:20 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: use listUserSets and listUserSetVersions to show grades
for all sets.

Revision 3848 - Directory Listing
Modified Thu Dec 22 18:46:25 2005 UTC (14 years, 2 months ago) by glarose
Gateway update:
 - correct error check in deleteUserSet to allow deletion of set versions
 - change countUserSets to only count non-versioned sets
 - add countUserSetVersions to count versioned sets
 - change listUserSets to not list versioned sets
 - add listUserSetVersions to list versioned sets
These should resolve bug #894.

Revision 3843 - Directory Listing
Modified Wed Dec 21 23:24:43 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: deal with missing problem groups in gateway tests slightly
more gracefully.

Revision 3842 - Directory Listing
Modified Wed Dec 21 23:23:58 2005 UTC (14 years, 2 months ago) by glarose
Gateway update: fix a number of quiet bugs
  - deal with sets having no problems
  - add grace period read from conf file when determining test time expiration
  - retain consistent current time throughout processing
  - improved messages for tests running over time
  - add score and time messages to finished sets
  - save version_last_attempt_time for submitted sets that run over time

Revision 3837 - Directory Listing
Modified Mon Dec 19 20:18:55 2005 UTC (14 years, 2 months ago) by sh002i
make links() work better with new template, emit "courses" link even
when not logged in.

Revision 3836 - Directory Listing
Modified Mon Dec 19 20:18:28 2005 UTC (14 years, 2 months ago) by sh002i
make siblings() work better with new template

Revision 3835 - Directory Listing
Modified Mon Dec 19 03:42:12 2005 UTC (14 years, 2 months ago) by sh002i
removed cruft

Revision 3834 - Directory Listing
Modified Mon Dec 19 03:42:05 2005 UTC (14 years, 2 months ago) by sh002i
graceful failure if needed data is not supplied

Revision 3833 - Directory Listing
Modified Mon Dec 19 03:41:29 2005 UTC (14 years, 2 months ago) by sh002i
create $authz and $authen regardless of whether we have a courseID

Revision 3832 - Directory Listing
Modified Mon Dec 19 03:41:10 2005 UTC (14 years, 2 months ago) by sh002i
use new theme/template arrangment

Revision 3829 - Directory Listing
Modified Mon Dec 19 00:13:00 2005 UTC (14 years, 2 months ago) by sh002i
added math-based template hack on it and figure out how it sucks.

Revision 3828 - Directory Listing
Modified Sun Dec 18 22:38:58 2005 UTC (14 years, 2 months ago) by sh002i
get rid of submiterror escape

Revision 3827 - Directory Listing
Modified Sun Dec 18 22:37:18 2005 UTC (14 years, 2 months ago) by sh002i
get rid of submitError usage

Revision 3823 - Directory Listing
Modified Fri Dec 16 23:13:27 2005 UTC (14 years, 2 months ago) by sh002i
don't write globalUserID to course.conf file.

Revision 3820 - Directory Listing
Modified Fri Dec 16 18:41:19 2005 UTC (14 years, 2 months ago) by jj
Added more permission levels for the course configuration module.

Revision 3818 - Directory Listing
Modified Fri Dec 16 18:19:00 2005 UTC (14 years, 2 months ago) by jj
Changed the permission setting for whether or not hardcopy can show correct answers before the answer date.  The old value was really for the "Show Past Answers" button, not for being able to see correct answers early.

Revision 3816 - Directory Listing
Modified Thu Dec 15 19:42:28 2005 UTC (14 years, 2 months ago) by sh002i
accept display of edited problems even if they are from a gateway test,
but only if we have permission. fixed bug #868.

Revision 3815 - Directory Listing
Modified Thu Dec 15 19:11:06 2005 UTC (14 years, 2 months ago) by sh002i
refactored copy-and-pasted code

Revision 3811 - Directory Listing
Modified Wed Dec 14 00:16:50 2005 UTC (14 years, 2 months ago) by gage
Removed a link for creating a blank problem that is not yet fully supported.

Commented out  cheerful green goodmessages announcing which subroutine handler of the PGProblemEditor
was being executed.  They seem to have fulfilled their role and are no longer needed. :-)

-- Mike

Revision 3810 - Directory Listing
Modified Tue Dec 13 19:33:33 2005 UTC (14 years, 2 months ago) by sh002i
remove dummy checkboxes for the time being, sort of closing bug #805.

Revision 3806 - Directory Listing
Modified Mon Dec 12 22:24:55 2005 UTC (14 years, 2 months ago) by sh002i
added some notes at the bottom.

Revision 3805 - Directory Listing
Modified Mon Dec 12 21:30:33 2005 UTC (14 years, 2 months ago) by sh002i
fixed divide-by-zero error when calculating index.

Revision 3803 - Directory Listing
Modified Fri Dec 9 15:51:31 2005 UTC (14 years, 2 months ago) by sh002i
note the "force renumber" is always enabled when problems are being
reordered.

Revision 3802 - Directory Listing
Modified Thu Dec 8 19:16:09 2005 UTC (14 years, 2 months ago) by sh002i
Allow reordering to succeed even if some UserProblems are missing.
Addresses bug #878.

By the way, I found the reordering code really hard to read, so I added
a lot of comments and replaced multidimensional array accesses with a
shorter form. ($sortme[$j][0] rather than $sortme[$j]->[0].) I'd like to
maybe rewrite this code sometime to eliminate some indirection and make
things clearer.

There are two substantive changes:

(1) When a UserProblem has to get reordered, we only reorder it if a
UserProblem record actually exists. If it doesn't exist, we figure out
where it would have moved to, and delete that problem instead.

(2) When moving a UserProblem, the target location either contains or
doesn't contain a record. Previously, the code checked whether a
GlobalProblem existed in this location, assuming that if a global
problem existed the corresponding UserProblem would as well. Now, it
checks whether a UserProblem exists, which allows for missing
UserProblem records.

Lingering questions:

(1) When multiple problems are assigned the same number, this results in
the last one ending up first in the new ordering. I think it would be
more natural for the first one to end up first. This would be an easy
fix.

(2) $force always gets set if reordering needs to be done, so we aren't
able to delete a problem, reorder some other problems, and end up with a
hole where where the deleted problem was. We can either fix this by
mentioning this next to the force checkbox, or change it so that
particular holes (i.e. those left by deleted problems) are allowed when
reordering.

Revision 3799 - Directory Listing
Modified Tue Dec 6 21:11:07 2005 UTC (14 years, 2 months ago) by sh002i
remove specific login error mesasges -- log to login.log instead. some
messages leaked information. (i.e. "user not found" versus "incorrect
password".)

Revision 3798 - Directory Listing
Modified Tue Dec 6 19:56:31 2005 UTC (14 years, 2 months ago) by sh002i
fixed warnings in &nav and &options when set is not asssigned.

Revision 3797 - Directory Listing
Modified Tue Dec 6 19:55:42 2005 UTC (14 years, 2 months ago) by sh002i
removed useless debugging statement

Revision 3796 - Directory Listing
Modified Tue Dec 6 02:31:34 2005 UTC (14 years, 2 months ago) by apizer
Allow the admin course to be hidden by the hide_directort technique

Revision 3795 - Directory Listing
Modified Mon Dec 5 19:43:38 2005 UTC (14 years, 2 months ago) by sh002i
add permission for viewing problem debugging info.

Revision 3794 - Directory Listing
Modified Mon Dec 5 17:58:01 2005 UTC (14 years, 2 months ago) by sh002i
comment cleanup -- ignore

Revision 3793 - Directory Listing
Modified Mon Dec 5 17:50:00 2005 UTC (14 years, 2 months ago) by sh002i
added proper phrase quoting to rfc822_mailbox -- fixes bug #875.

Revision 3791 - Directory Listing
Modified Sat Dec 3 21:24:56 2005 UTC (14 years, 2 months ago) by gage
Fixed typo in instructor links for problem.

Revision 3790 - Directory Listing
Modified Sat Dec 3 21:18:35 2005 UTC (14 years, 2 months ago) by gage
Modifying messages given when editing set detail.

Also changed the way blank problems are handled in editor.
You can save as  or   save a copy as

Revision 3789 - Directory Listing
Modified Sat Dec 3 21:17:09 2005 UTC (14 years, 2 months ago) by gage
Modifying messages given when editing set detail.

Revision 3788 - Directory Listing
Modified Fri Dec 2 23:35:15 2005 UTC (14 years, 2 months ago) by sh002i
1-liner adding course hiding support. place a file named
"hidden_directory" in a course directory and it will not show up in the
courses list on the WeBWorK home page. it will still appear in the
CourseAdmin module. The file can be added/removed via UNIX access or by
using the FileManager module.

Revision 3787 - Directory Listing
Modified Fri Dec 2 18:37:44 2005 UTC (14 years, 2 months ago) by gage
This fixes bug #919   -- the "update user-sets" line remained
commented out.  I'm amazed this bug lasted as long as it did before
it caused trouble.

-- Mike

Revision 3780 - Directory Listing
Modified Mon Nov 28 20:49:57 2005 UTC (14 years, 2 months ago) by sh002i
reinstated "report bugs" item in links()

Revision 3779 - Directory Listing
Modified Tue Nov 22 01:44:55 2005 UTC (14 years, 3 months ago) by gage
Modifications that set problems with path .../Library/setFoo/problemBar to reference the "Library" component in
bugzilla.

Also the problemSeed is added to the url sent to bugzilla e.g.

/webwork/shared-courses/gage_course_single_sql/templates/rochesterLibrary/setMAAtutorial/simplemultiplechoiceexample.pg_with_problemSeed=4655

this means that you can't click on the link, but it automatically includes a seed which might be helpful.
It is not guaranteed that this the seed that caused problems -- that depends on how the
bug is submitted -- but it is often the case that this seed caused the problem.

-- Mike

Revision 3778 - Directory Listing
Modified Tue Nov 22 01:42:19 2005 UTC (14 years, 3 months ago) by sh002i
fixed a couple of bugs in the previous commit:
* links() preserves displayMode/showOldAnswers properly (bug #896)
* loginstatus() fixes formatting
* ur.template fixes a typo

Revision 3776 - Directory Listing
Modified Mon Nov 21 21:41:07 2005 UTC (14 years, 3 months ago) by sh002i
changes to links subroutine:
* sublists are now within list items, as required by html spec
* use &makeLinks helper to generate links (makes the code easier to read)
* hilite the "active" link item with a strong tag and the "active" class
* change the way displayMode and showOldAnswers are preserved, and
  preserve them in all the links. (see comments in code)
changes to help subroutine:
* add alt-text for help icon (" ? ") to conform to html spec

As of now, all the code generated by template functions in this file is
XHTML 1.0 Transitional compliant. The same cannot be said for the code
generated by other content generators or PG.

Revision 3775 - Directory Listing
Modified Mon Nov 21 21:24:24 2005 UTC (14 years, 3 months ago) by sh002i
change "die" to "croak" in a couple of places to make error messages
more useful.

Revision 3772 - Directory Listing
Modified Mon Nov 21 21:06:32 2005 UTC (14 years, 3 months ago) by sh002i
don't need this any more -- wwsh now uses the perl debugger instead.

Revision 3768 - Directory Listing
Modified Fri Nov 18 18:30:12 2005 UTC (14 years, 3 months ago) by sh002i
give the style used for the attempt results summary a structural name
(attemptResultsSummary) rather than a sort-of-stylistic name (emphasis).

Revision 3767 - Directory Listing
Modified Fri Nov 18 18:13:25 2005 UTC (14 years, 3 months ago) by sh002i
Use optionsMacro for options like we do in Problem.pm. This reduces the
amount of (but doesn't eliminate) duplicated code between Problem and
GatewayQuiz.

Revision 3766 - Directory Listing
Modified Fri Nov 18 15:49:31 2005 UTC (14 years, 3 months ago) by apizer
Make notification message more explicit.

Revision 3751 - Directory Listing
Modified Thu Nov 10 16:12:07 2005 UTC (14 years, 3 months ago) by gage
Create the [HTML_TMP]/hardcopy directory if it doesn't exist.  This is something of
a hack done in Hardcopy.pm at the moment.  I think this should be moved over
to makeTempDirectory in Utils, but that would require more checking than I can
do right at the moment.

-- Mike

Revision 3750 - Directory Listing
Modified Tue Nov 8 20:47:12 2005 UTC (14 years, 3 months ago) by sh002i
this commit fixes quite possible the stupidest thing i've ever done.
wondering where messages like this

	$GlobalSets[1] (ID Sec9.2ParametricEq) not defined -- skipping
	at /ww/webwork/webwork2/lib/WeBWorK/ContentGenerator/Hardcopy.pm
	line 286.

were coming from?
the answer is:

	$GlobalSets[1] = undef;

which is a line i put in there for testing and never removed. i am very
sorry. :-(

Revision 3749 - Directory Listing
Modified Tue Nov 8 20:24:08 2005 UTC (14 years, 3 months ago) by sh002i
fix error message for undefined global sets to print array index instead
of "$i".

Revision 3748 - Directory Listing
Modified Mon Nov 7 21:30:46 2005 UTC (14 years, 3 months ago) by sh002i
don't override loginstatus/links (they can handle not being logged in
now). also, stop using CGI::Pretty.

Revision 3747 - Directory Listing
Modified Mon Nov 7 21:30:21 2005 UTC (14 years, 3 months ago) by sh002i
don't override loginstatus/links (they can handle not being logged in
now)

Revision 3746 - Directory Listing
Modified Mon Nov 7 21:29:27 2005 UTC (14 years, 3 months ago) by sh002i
clear Authen.pm's verify cache upon logout, don't overload if_loggedin()
or links() anymore.

Revision 3745 - Directory Listing
Modified Mon Nov 7 21:28:17 2005 UTC (14 years, 3 months ago) by sh002i
allow links() and loginstatus() to operate properly even if no user is
logged in. uses new method was_verified() in Authen.pm. also, stop using
CGI::Pretty, for speed and download size.

Revision 3744 - Directory Listing
Modified Mon Nov 7 21:21:01 2005 UTC (14 years, 3 months ago) by sh002i
stop using CGI::Pretty, for speed and output size.

Revision 3743 - Directory Listing
Modified Mon Nov 7 21:18:37 2005 UTC (14 years, 3 months ago) by sh002i
store authenticator in $r.

Revision 3742 - Directory Listing
Modified Mon Nov 7 21:18:13 2005 UTC (14 years, 3 months ago) by sh002i
add slot for WeBWorK::Authen object. we can use it for checking login
status.

Revision 3741 - Directory Listing
Modified Mon Nov 7 21:17:41 2005 UTC (14 years, 3 months ago) by sh002i
add caching of verify() result, reorganize file, add docs.

Revision 3738 - Directory Listing
Modified Thu Nov 3 04:18:21 2005 UTC (14 years, 3 months ago) by sh002i
fixed code to filter out undefined sets, improved error reporting when
that happens.

Revision 3736 - Directory Listing
Modified Tue Nov 1 01:51:32 2005 UTC (14 years, 3 months ago) by gage
Added rudimentary link to report problems directly.  It does this by constructing a link
to the bugzilla CGI that includes information on the file name of the problem and the library
in which the problem is stored.  This is probably still pretty fragile.  A separate
module could be constructed to more intelligently report bugs.

-- Mike

Revision 3734 - Directory Listing
Modified Wed Oct 26 16:46:04 2005 UTC (14 years, 4 months ago) by sh002i
cleaned up error reporting for status methods. if arguments are not
defined and non-empty, a warning is given (using "carp") and an
undefined value is returned.

Revision 3733 - Directory Listing
Modified Wed Oct 26 16:40:32 2005 UTC (14 years, 4 months ago) by sh002i
possible fix for problem when status_abbrev_has_behavior is used with an
abbrev that doesn't map to any status.

Revision 3732 - Directory Listing
Modified Wed Oct 26 16:31:33 2005 UTC (14 years, 4 months ago) by sh002i
more debugging

Revision 3731 - Directory Listing
Modified Wed Oct 26 16:24:35 2005 UTC (14 years, 4 months ago) by sh002i
typos...whoops...

Revision 3730 - Directory Listing
Modified Wed Oct 26 16:24:00 2005 UTC (14 years, 4 months ago) by sh002i
made code for filtering guest users a little more clear.

Revision 3729 - Directory Listing
Modified Wed Oct 26 16:21:54 2005 UTC (14 years, 4 months ago) by sh002i
changed erorrs to warnings for the time being.

Revision 3728 - Directory Listing
Modified Wed Oct 26 16:18:35 2005 UTC (14 years, 4 months ago) by sh002i
only check status behaviors for guest users that have a defined status.
apparently, status can still sometimes be empty.

Revision 3727 - Directory Listing
Modified Wed Oct 26 15:51:15 2005 UTC (14 years, 4 months ago) by sh002i
added error checking to ensure that arguments to status lookup methods
are defined.

Revision 3726 - Directory Listing
Modified Tue Oct 25 20:34:19 2005 UTC (14 years, 4 months ago) by gage
Fixed bug #870 so that setHeaders can be viewed and edited.

Revision 3724 - Directory Listing
Modified Thu Oct 20 19:40:43 2005 UTC (14 years, 4 months ago) by gage
Fixed an error where files of type 'source_path_for_problem_file' were
not redirected in the save_handler

Revision 3722 - Directory Listing
Modified Wed Oct 19 01:49:17 2005 UTC (14 years, 4 months ago) by gage
Corrected misspelling

Revision 3721 - Directory Listing
Modified Mon Oct 17 17:36:29 2005 UTC (14 years, 4 months ago) by sh002i
rearrange addition, deletion, change-saving, and "mark correct" code.
Order is now:

- save changes to existing problems
- mark specified problems correct
- delete specified problems
- add blank problem

This ensures consistencey if multiple operations are performed at once,
and also prevents the values set in the new problem from being
overwritten with empty values when changes to existing problems are
saved.

Revision 3720 - Directory Listing
Modified Mon Oct 17 14:01:00 2005 UTC (14 years, 4 months ago) by gage
Changed wording on link.

Revision 3719 - Directory Listing
Modified Mon Oct 17 13:58:07 2005 UTC (14 years, 4 months ago) by gage
Improved handling of case where a blank_problem is asked for in PGProblemEditor.pm
Also improved the random names for new local problems

Added ability to create a new blank problem in ProblemSetDetail.pm (without going to the PGProblemEditor.pm)
however something is not yet working when this problem record is saved.

 Sam -- could you look at
lines near 679 to see what the problem is?  There is a FIXME note there.   I suspect that the addProblemToSet
routine is failing somehow, but there is no error message.  Many of the record fields are not filled out --
including the sourceFile path and the number of attempts.  The same snippet of code works fine
in PGProblemEditor.pm

--Mike

Revision 3718 - Directory Listing
Modified Mon Oct 17 03:42:42 2005 UTC (14 years, 4 months ago) by gage
Refactored much of the action in PGProblemEditor.pm  This allows a user inteface
which mimics the interface for the Hmwk sets editor and for the Classlist editor.

It also allows all of the temporary edit files to be placed in one location.
This allows one to "temporarily" edit a library file to try to see what is wrong with it.

It is also now much easier to make a local copy of a library file for your current problem set
so that you can tweak it.

It has been fairly well tested by one person (me) but there may still be bugs.

-- Mike

Revision 3711 - Directory Listing
Modified Fri Oct 14 19:10:04 2005 UTC (14 years, 4 months ago) by sh002i
show first pdflatex error (bug #850), HTML escaping.

- generate_hardcopy_pdf() now reports the first error encountered in
  hardcopy.log in the list of errors.
- variables substituted into errors strings are now displayed inside
  <code>..</code> tags, and their values are escpaed with CGI/pm's
  escapeHTML() function.

Revision 3710 - Directory Listing
Modified Tue Oct 11 22:44:49 2005 UTC (14 years, 4 months ago) by sh002i
eliminate undefined value usage in unformatDateTime, fixing bug #826.
also factored out error reporting into unformatDateTime_error and
improved formatting slightly.

Revision 3709 - Directory Listing
Modified Tue Oct 11 22:06:34 2005 UTC (14 years, 4 months ago) by sh002i
added sorting of set definition files, fixing bug #809.
also added no_chdir=>1 flag to File::Find::find and modified
$get_set_defs_wanted accordingly.

Revision 3708 - Directory Listing
Modified Tue Oct 11 21:13:26 2005 UTC (14 years, 4 months ago) by sh002i
added check to ensure that permission level is numeric, fixing bug #822.

Revision 3706 - Directory Listing
Modified Tue Oct 11 20:45:36 2005 UTC (14 years, 4 months ago) by sh002i
don't show "act as" link unless the user is actually allowed to.

Revision 3705 - Directory Listing
Modified Tue Oct 11 20:44:59 2005 UTC (14 years, 4 months ago) by sh002i
stop redirecting to Login when user is not allowed to "act as". Instead,
throw an exception.

Revision 3700 - Directory Listing
Modified Mon Oct 10 22:34:18 2005 UTC (14 years, 4 months ago) by sh002i
make sure there are answer blanks before printing \begin{itemize}. fixes
bug #859.

Revision 3699 - Directory Listing
Modified Mon Oct 10 22:18:01 2005 UTC (14 years, 4 months ago) by sh002i
added full_name and rfc822_mailbox methods for convenience.

Revision 3698 - Directory Listing
Modified Mon Oct 10 22:17:27 2005 UTC (14 years, 4 months ago) by sh002i
added names to From: and To: email addresses, if users have names
defined. noted in global.conf.dist that feedbackRecipients can include
user names.

Revision 3695 - Directory Listing
Modified Sat Oct 8 22:20:49 2005 UTC (14 years, 4 months ago) by sh002i
fix for bug 815 "Emphasize set name on the Assign users to Set page (set
detail page)"

Revision 3694 - Directory Listing
Modified Sat Oct 8 22:13:26 2005 UTC (14 years, 4 months ago) by sh002i
added check for $total==0 to eliminate potential DIV error (bug #855)

Revision 3693 - Directory Listing
Modified Sat Oct 8 22:07:39 2005 UTC (14 years, 4 months ago) by sh002i
disallow login of "dropped" practice users (bug #387). also don't show
Guest Login button if there are no "dropped" practice users.

Revision 3692 - Directory Listing
Modified Sat Oct 8 22:02:39 2005 UTC (14 years, 4 months ago) by sh002i
fixed typo.

Revision 3690 - Directory Listing
Modified Sat Oct 8 21:55:41 2005 UTC (14 years, 4 months ago) by sh002i
modify usage of user status to take advantage of new status system. the
most extensive change is in UserList, where the names of statuses are
now shown in the status column along with the abbreviation that's
actually set in the database, and the edit popup shows the actual names
that are defined in global.conf.

Revision 3688 - Directory Listing
Modified Wed Oct 5 18:16:52 2005 UTC (14 years, 4 months ago) by sh002i
Implemented status system as per bug #743.

The status system consists of a new hash in the course environment,
%statuses, that maps status names (like "Enrolled", "Drop", "Audit") to
(a) a list of allowed abbreviations for the status and (b) a list of
behaviors the system should have when dealing with users who have the
status.

I didn't want to have to mangle that hash-of-hashes-of-arrays myself in
many modules, but I also didn't want to devote an entire module
(Status.pm) to it. So, I'm trying a little experiment: I've added them
as methods to WeBWorK::CourseEnvironment. My thinkint is that since all
the data for these operations comes from the course environment, so why
not have them be course environment methods? Here they are:

    status_abbrev_to_name($status_abbrev)
        Given the abbreviation for a status, return the name. Returns undef
        if the abbreviation is not found.

    status_name_to_abbrevs($status_name)
        Returns the list of abbreviations for a given status. Returns an
        empty list if the status is not found.

    status_has_behavior($status_name, $behavior)
        Return true if $status_name lists $behavior.

    status_abbrev_has_behavior($status_abbrev, $behavior)
        Return true if the status abbreviated by $status_abbrev lists
        $behavior.

Since I removed the previous $siteDefaults{status} hash from
global.conf, I have already switched modules that formerly used that
hash over to using the new methods:

Authen.pm: use status_abbrev_has_behavior($status, "allow_course_access")
to determine if a user should be allowed to log in.

Feedback.pm: look up status abbreviation using status_abbrev_to_name()
and print the result for the status field in the email.

Instructor.pm: use status_abbrev_has_behavior($status, "include_in_assignment")
to determine if a user should be included in an assignment.

UserList.pm and UsersAssignedToSet.pm: use status_abbrev_to_name() to
get name of CSS class.

Revision 3687 - Directory Listing
Modified Mon Oct 3 04:45:37 2005 UTC (14 years, 4 months ago) by jj
Added e-mail feedback verbosity to config area.

Revision 3686 - Directory Listing
Modified Mon Oct 3 04:32:08 2005 UTC (14 years, 4 months ago) by jj
Added email subject line to config variable.

Revision 3685 - Directory Listing
Modified Mon Oct 3 04:29:56 2005 UTC (14 years, 4 months ago) by jj
Allow basic types to specify the width of their input fields, and changed the handling of the long doc strings.  The long string is no longer sent as a parameter where it might be truncated.

Revision 3684 - Directory Listing
Modified Mon Oct 3 00:52:02 2005 UTC (14 years, 4 months ago) by jj
Made a little more html use CGI::* methods.

Revision 3683 - Directory Listing
Modified Sun Oct 2 20:40:30 2005 UTC (14 years, 4 months ago) by jj
Added some todo items, and fixed minor bug with the minimum number of
displayModes (it was supposed to be a variable).

Revision 3682 - Directory Listing
Modified Sun Oct 2 19:51:45 2005 UTC (14 years, 4 months ago) by jj
New Config module.  It will put its course settings in a file simple.conf
along side course.conf.  Changes are:

  URLPath.pm: wiring so the Config module can be called

  ContentGenerator.pm: link in left panel to Config module

  CourseEnvironment.pm: evaluate simple.conf.  File name can be specified
    when creating a new CourseEnvironment.  This allows it to be bypassed
    (which is currently used), or to test a simple settings file (not
    used now, but it might be useful).

  Constants.pm: all data about configuration is stored here.  New values
    can just be added here, unless they are a new type.

  Config.pm: new module for limited course configuration.

Note, it might be better to move the new variable in Constants.pm to
another file.  Committing changes to Constants.pm can be an extra
hassle since it contains some site specific configuration.

Revision 3675 - Directory Listing
Modified Fri Sep 30 19:36:57 2005 UTC (14 years, 4 months ago) by sh002i
added manage_course_files activity. changed FileManger to use new
activity. added hasPermissions() checks to Index and Contentgenerator to
only show File Manger when user has permission.

Revision 3674 - Directory Listing
Modified Fri Sep 30 19:32:17 2005 UTC (14 years, 4 months ago) by sh002i
fix error reporting for include() function.

Revision 3673 - Directory Listing
Modified Fri Sep 30 19:31:35 2005 UTC (14 years, 4 months ago) by sh002i
give user an error message if they can't act as another user.
see bug #846.

Revision 3672 - Directory Listing
Modified Fri Sep 30 19:16:52 2005 UTC (14 years, 4 months ago) by sh002i
modifications to support changes to global.conf.dist adding %userRoles
hash and changing the meaning of values in %permissionLevels.

Authz will now look up the role obtained from %permissionLevels in the
%userRoles hash, and compare the resulting number with the user's
permission level.

Revision 3668 - Directory Listing
Modified Thu Sep 29 17:41:09 2005 UTC (14 years, 4 months ago) by apizer
Improve the label on submit button in single user mode.

Revision 3667 - Directory Listing
Modified Thu Sep 29 01:57:56 2005 UTC (14 years, 4 months ago) by gage
Allow making a local copy of a library problem with a single button push.

The user interface is still cluttered.  I think I'll rewrite the bottom button rows
using radio buttons and a 'Take action' submit button as on the Classlist and Homework set editor
pages.

Revision 3666 - Directory Listing
Modified Thu Sep 29 01:25:20 2005 UTC (14 years, 4 months ago) by gage
Simplified the interface for users (who can only download one set at a time and can only download one user).
It could be made slightly more general -- it currently implicitly assumes that either one can edit both
multiple sets and multiple users or one can edit only a single user and a single set.

Removed an error in the [edit] link when there is an error.  The anchor HTML tags were wrapped two layers deep
around the reference.

Can probably still use some more tweaks in the interface.

-- Mike

Revision 3665 - Directory Listing
Modified Wed Sep 28 23:26:06 2005 UTC (14 years, 4 months ago) by gage
Changed the wording of the initial course.conf file.

Revision 3663 - Directory Listing
Modified Wed Sep 28 21:46:26 2005 UTC (14 years, 4 months ago) by sh002i
fixed problem with `!' in set IDs, improved error reporting.

the `!' poblem was caused by passing UserSets to ScrollingRecordList
instead of passing GlobalSets. UserSets have a two-part key (user ID and
set ID), and ScrollingRecordList concatenates them with a `!' to create
the value names. This is a desireable behavior, but not one that I
remembered. Whoops.

Revision 3660 - Directory Listing
Modified Wed Sep 28 01:07:59 2005 UTC (14 years, 4 months ago) by apizer
Make email addresses active on the classlist page just as they are on
the student progress page.

Revision 3659 - Directory Listing
Modified Tue Sep 27 23:32:41 2005 UTC (14 years, 4 months ago) by sh002i
set a default value for hardcopy_format if it's not given.

Revision 3658 - Directory Listing
Modified Tue Sep 27 21:46:50 2005 UTC (14 years, 4 months ago) by sh002i
pointless confusion, while humorous, is not good for maintainability.

Revision 3657 - Directory Listing
Modified Tue Sep 27 21:44:01 2005 UTC (14 years, 4 months ago) by sh002i
formatting

Revision 3653 - Directory Listing
Modified Sat Sep 24 00:51:58 2005 UTC (14 years, 5 months ago) by dpvc
Prevent empty answers that are marked as correct from being counted as
unanswered blanks.  This avoids the "all the above are correct/at
least one of the above are NOT correct" problem, and suppresses the "n
questions remain unanswered" message when the empty questions are
counted as correct.

Revision 3650 - Directory Listing
Modified Fri Sep 23 23:27:03 2005 UTC (14 years, 5 months ago) by sh002i
Use new hardcopy param names.

Revision 3649 - Directory Listing
Modified Fri Sep 23 23:26:35 2005 UTC (14 years, 5 months ago) by sh002i
Extensive refactor/rewrite.

There are probably going to be bugs here that we squished in the old
version of Hardcopy, but it seems to be pretty robust after an evening
of testing. Alert me if you see problems.

Features:

* standard ScrollingRecordLists are used for user and set selection.
* TeX source is written incrementally instead of being accumulated in
  memory.
* arguments to shell commands are now quoted using String::ShellQuote
* modular design allows adding additional formats easily (i.e. dvi, ps)
* error reporting code is simplified.
* if errors/warnings occur, user will see them on screen instead of
  getting the hardcopy file.
* on the error screen, user can click to get (possibly broken) hardcopy
  if it exists.
* on the error screen, user can click to get interesting temporary
  files. (for PDF format these are hardcopy.{tex,log,aux} and
  pdflatex.std{out,err}.)
* on the error screen, if an error concerns a particular problem, an
  "edit problem" link is included.
* probably more stuff i'm forgetting

Revision 3648 - Directory Listing
Modified Thu Sep 22 18:58:12 2005 UTC (14 years, 5 months ago) by sh002i
changed label for context URL to "Click this link to see the page from
which the user sent feedback".

Revision 3647 - Directory Listing
Modified Thu Sep 22 18:45:40 2005 UTC (14 years, 5 months ago) by sh002i
restrict dates to < 10 years in the future -- see bug #829.

Revision 3646 - Directory Listing
Modified Thu Sep 22 18:06:52 2005 UTC (14 years, 5 months ago) by sh002i
since the subject line can be changed now, email filters would be wise
to rely on something more static. i've added X-WeBWorK-* headers to
accomodate this:

  X-WeBWorK-Module
  X-WeBWorK-Course
  X-WeBWorK-User
  X-WeBWorK-Section
  X-WeBWorK-Recitation
  X-WeBWorK-Set
  X-WeBWorK-Problem

Revision 3645 - Directory Listing
Modified Thu Sep 22 17:48:38 2005 UTC (14 years, 5 months ago) by sh002i
implement customizable feedback subject line. The following escape
sequences are recognized:

  %c = course ID
  %u = user ID
  %s = set ID
  %p = problem ID
  %x = section
  %r = recitation
  %% = literal percent sign

Revision 3644 - Directory Listing
Modified Thu Sep 22 14:11:33 2005 UTC (14 years, 5 months ago) by apizer
Add section and recitation to feedback subject line as per Gavin's
suggestion.

Revision 3642 - Directory Listing
Modified Wed Sep 21 18:25:52 2005 UTC (14 years, 5 months ago) by sh002i
added "use WeBWorK::Debug" to allow debug() statements to work.

Revision 3641 - Directory Listing
Modified Tue Sep 20 23:42:22 2005 UTC (14 years, 5 months ago) by dpvc
Fixed a problem with reporting the directories where files with given
types should be uploaded.

Revision 3640 - Directory Listing
Modified Mon Sep 19 17:11:26 2005 UTC (14 years, 5 months ago) by jj
Fix bug 819.  This adds a method to DB for getting all merged problems
for a (student,set) combination so that the problem value can be
correct.  See bug 819 for additional comments on how this affects
scoring when an individual student is given an override value for
"weight".

Revision 3639 - Directory Listing
Modified Mon Sep 19 16:25:41 2005 UTC (14 years, 5 months ago) by sh002i
added nice custom formatting routines for user/set/problem data:

  * uses "yes" and "no" for true/false values
  * formats dates
  * uses "unlimited" for -1 max_attempts
  * uses pretty names for the status
  * decodes the answer string
  * lines up output

Revision 3636 - Directory Listing
Modified Sat Sep 17 20:14:02 2005 UTC (14 years, 5 months ago) by gage
Expanded information in error messages.

Revision 3634 - Directory Listing
Modified Sat Sep 17 16:32:43 2005 UTC (14 years, 5 months ago) by jj
Use underscore2nbsp from higher up module.  Hopefully this fixes bug
841.

Revision 3627 - Directory Listing
Modified Fri Sep 16 19:08:17 2005 UTC (14 years, 5 months ago) by sh002i
feedback is now sent to users with receive_feedback permission
regardless of the contents of the feedbackRecipients list in
global.conf. Comments in global.conf now read:

  By default, feeback is sent to all users who have permission to
  receive_feedback. If this list is non-empty, feedback is also sent to
  the addresses specified here.

  * If you want to disable feedback altogether, leave this empty and set
    submit_feeback => $nobody in %permissionLevels below. This will
    cause the feedback button to go away as well.

  * If you want to send email ONLY to addresses in this list, set
    receive_feedback => $nodoy in %permissionLevels below.

  It's often useful to set this in the course.conf to change the
  behavior of feedback for a specific course.

Revision 3626 - Directory Listing
Modified Fri Sep 16 18:50:50 2005 UTC (14 years, 5 months ago) by sh002i
use new feedbackMacro(), put "edit this problem" inside the problem DIV.

Revision 3625 - Directory Listing
Modified Fri Sep 16 18:50:17 2005 UTC (14 years, 5 months ago) by sh002i
use new feedbackMacro()

Revision 3624 - Directory Listing
Modified Fri Sep 16 18:49:08 2005 UTC (14 years, 5 months ago) by sh002i
added feedbackHelper to consolidate generation of feedback form.

Revision 3623 - Directory Listing
Modified Fri Sep 16 18:47:42 2005 UTC (14 years, 5 months ago) by sh002i
allow printing of error message upfront when there are no recipients.

Revision 3621 - Directory Listing
Modified Thu Sep 15 20:24:44 2005 UTC (14 years, 5 months ago) by gage
Modifications to the directions for archiving courses.

Revision 3619 - Directory Listing
Modified Wed Sep 14 23:44:52 2005 UTC (14 years, 5 months ago) by gage
Hide the "important message" text unless there is actually a message in site_info.txt

Revision 3618 - Directory Listing
Modified Tue Sep 13 18:00:13 2005 UTC (14 years, 5 months ago) by apizer
In hardcopy, a TeX file download has to have the extension .tex, not .pdf

Revision 3614 - Directory Listing
Modified Tue Sep 13 01:24:36 2005 UTC (14 years, 5 months ago) by gage
Add clarification to error message for surePathToFile

Revision 3611 - Directory Listing
Modified Sat Sep 10 18:21:46 2005 UTC (14 years, 5 months ago) by gage
Restored changes that were accidentally clobbered
when the gateway changes were checked in.

Email now uses post processing to email students.

Revision 3610 - Directory Listing
Modified Fri Sep 9 20:52:03 2005 UTC (14 years, 5 months ago) by gage
Fixed some documentation comments.

Revision 3609 - Directory Listing
Modified Fri Sep 9 20:51:21 2005 UTC (14 years, 5 months ago) by gage
Fixed a bug in which, if the Hardcopy call was the first one to
need to create the  directory at (e.g.)  /ww/htdocs/tmp/myCourse
then the creation of myCourse would fail.  If /ww/htdocs/tmp/myCourse/gif already
existed things would go fine.

I think that more has to be done here.  We need to look at how myCourse is
created when storing a gif or html is the first action and handle these
all the same.  One of the difficulties is that the tmp directory might
be located anywhere -- it is not guaranteed to be under /ww/webwork/webwork2/htdocs
-- at least as we have defined it at the moment.

Revision 3608 - Directory Listing
Modified Thu Sep 8 17:52:51 2005 UTC (14 years, 5 months ago) by gage
Display the information in site_info.txt on the webwork2 homepage as
well
as on login pages.

Revision 3607 - Directory Listing
Modified Thu Sep 8 02:54:48 2005 UTC (14 years, 5 months ago) by dpvc
Sam changed open(LOG,...) to open(my $log, ...), but didn't change the
usages of LOG to $log, so the show answers page was always reporting
no past answers available.  Now the values are being shown.  (I'm not
sure why it is necessary to make a local variable for LOG, but
at least it works now.)

Revision 3606 - Directory Listing
Modified Wed Sep 7 20:57:52 2005 UTC (14 years, 5 months ago) by sh002i
string2hash will now handle strings with newlines, fixing GDBM.

Revision 3605 - Directory Listing
Modified Wed Sep 7 18:02:06 2005 UTC (14 years, 5 months ago) by sh002i
disable newlines every 76 characters in base64-encoded answers. this is
nice for examining database contents manually since it prevents newlines
from being introduced into database records.

Revision 3600 - Directory Listing
Modified Tue Sep 6 18:55:20 2005 UTC (14 years, 5 months ago) by apizer
transparent (lower case t) is not valid with dvipng 1.2. I changed the note
and went back to Transparent in the default.

Revision 3599 - Directory Listing
Modified Tue Sep 6 14:18:28 2005 UTC (14 years, 5 months ago) by sh002i
uh, hasPermissions() is a method, so it actually gets 3 arguments. print
the arguments received as part of the error message. TESTED THIS TIME!

Revision 3598 - Directory Listing
Modified Tue Sep 6 14:17:44 2005 UTC (14 years, 5 months ago) by sh002i
call hasPermissions() with two arguments (it doesn't use the eUserID
anyway.

Revision 3597 - Directory Listing
Modified Mon Sep 5 23:43:38 2005 UTC (14 years, 5 months ago) by sh002i
fix for security aspect of bug #715 -- reject calls with @_ != 2.

Revision 3595 - Directory Listing
Modified Fri Sep 2 00:06:21 2005 UTC (14 years, 5 months ago) by jj
Fixed bug in use of advanced display panel which prevented it from displaying
problems.  Default values like "All Textbooks" needed to be cleared so it
wouldn't be mistaken for actual textbook names.

Revision 3594 - Directory Listing
Modified Thu Sep 1 01:10:35 2005 UTC (14 years, 5 months ago) by dpvc
Implemented Mike's suggestion of combining a directory upward only
when the directory contains one pg file and the name of the file is
the same as the name of the directory containing it.  I have removed
the condition that there need to be other (non-pg) files in the
directory, as the check takes time, and is no longer necessary.

Revision 3593 - Directory Listing
Modified Tue Aug 30 16:36:16 2005 UTC (14 years, 5 months ago) by apizer
Change arguments passed to dvipng

Revision 3592 - Directory Listing
Modified Tue Aug 30 13:11:49 2005 UTC (14 years, 5 months ago) by sh002i
fixed error message when answer log does not exist

Revision 3590 - Directory Listing
Modified Tue Aug 30 05:49:59 2005 UTC (14 years, 5 months ago) by jj
Fixes bug in add where blank values were being turned into 0 by mysql for columns of type integer.  The analogous change was previously made to put.  This bug showed up when renumbering problems in ProblemSetDetail (e.g., renumbering) when a set was already assigned to users.

Revision 3586 - Directory Listing
Modified Mon Aug 29 22:58:13 2005 UTC (14 years, 5 months ago) by gage
Removed unused variable.
Fixed an incorrect error message.

Revision 3585 - Directory Listing
Modified Mon Aug 29 22:56:07 2005 UTC (14 years, 5 months ago) by gage
Corrected a mistake in a debugging message.

Revision 3584 - Directory Listing
Modified Sun Aug 28 23:09:27 2005 UTC (14 years, 5 months ago) by jj
Fixed a bug where a set named "0" would not be sticky in the Target Set
list (because it looked kind of like an empty/undefined name).

Revision 3583 - Directory Listing
Modified Sun Aug 28 20:54:51 2005 UTC (14 years, 5 months ago) by jj
Allow use of an activity log which logs every click, stored on a
per-course basis.  It is turned off by default.  It can be turned
on/off for individual courses.  The three pieces here:

  global.conf.dist: adds a place to define the log file.  Here an
    empty value signals to not do this logging.

  ContentGenerator.pm: check to see if the log file is defined (and
    (non-trivial), and if so, write a log entry.  We check if it is
    defined at this point to both save some time, and because if we
    get to writeCourseLog and the log isn't defined, we get a pink
    screen.

    The bulk of the text of the log entry is performed by a new method
    prepare_activity_entry.  By default, this gives the url, and a list
    of all the cgi parameters (except for key and passwd).  This method
    can be overridden by individual modules.  The default format may
    change.  It may take some fine tuning to see what is best.

    Also, this is one of the first functions called by go.  We may want
    it to go after the action has taken place if we want instructor
    modules to be able to report results of their work through this log.

  SetMaker.pm: gives an example of overriding prepare_activity_entry.
    SetMaker has lots (and lots and lots) of data stored in cgi
    parameters.  We probably don't want to log that.  We might want to
    log a little more in SetMaker than we do here (target set), but
    this gives a start.

Revision 3580 - Directory Listing
Modified Fri Aug 26 17:30:05 2005 UTC (14 years, 6 months ago) by jj
When dealing with showOldAnswers defaults, allow control of who get get the system default after the due date instead of hard-wiring it.  Default value is that students don't initially get old answers after the due date, but professors do.

Revision 3579 - Directory Listing
Modified Fri Aug 26 16:52:57 2005 UTC (14 years, 6 months ago) by sh002i
improved handling of symlinks in listFilesRecursiveHelper. symlinks to
files are now treated as files instead of directories.

Revision 3570 - Directory Listing
Modified Thu Aug 25 17:02:28 2005 UTC (14 years, 6 months ago) by glarose
Intialize tth preamble variable to avoid undefined errors when running
in formattedText mode.

Revision 3567 - Directory Listing
Modified Thu Aug 25 00:58:21 2005 UTC (14 years, 6 months ago) by dpvc
Avoid undefined due_date when problem is viewed from the library
browser.

Revision 3564 - Directory Listing
Modified Wed Aug 24 20:22:32 2005 UTC (14 years, 6 months ago) by jj
Make it so that by default, practice users don't see saved answers.  That can be controlled in global.conf.dist.  Also, default to not showing saved answers after the due date.  In all cases, the Apply options button can adjust what you want.

Also fixed a bug with showOldAnswers related to '', 0, and undef being similar in perl.

Revision 3563 - Directory Listing
Modified Wed Aug 24 19:41:59 2005 UTC (14 years, 6 months ago) by jj
Fixed bug 753.  The number of all users needs to be recomputed after action
handlers in case some users were imported or deleted.

Revision 3561 - Directory Listing
Modified Wed Aug 24 16:58:12 2005 UTC (14 years, 6 months ago) by jj
Fixed minor glitch where the toggle for show saved answers might be set wrong for the first time a student looks at a problem.

Revision 3559 - Directory Listing
Modified Wed Aug 24 02:22:59 2005 UTC (14 years, 6 months ago) by jj
Removed initialize function which did nothing.  Moved the actual assignments/unassignments to pre_header_initialize so they could use the messaging system.

Revision 3558 - Directory Listing
Modified Wed Aug 24 01:52:27 2005 UTC (14 years, 6 months ago) by jj
Added safety toggle for unassignment on this page (like other places where
sets can be unassigned).

Revision 3552 - Directory Listing
Modified Tue Aug 23 22:53:25 2005 UTC (14 years, 6 months ago) by jj
Allow snippets of html (or Tex) to be specified in global.conf to be inserted right before/after the body of a problem.  A commented out example which produces boxed problem in HTML is given.  In this approach, the added parts are not used for problems rendered in the Library Browser or Problem Set Detail.

This addresses bug 817.  This solution may not be suitable for inclusion of needed bits for modes such as asciimath or tth because the those bits of html are probably needed for display in the Library Browser.  It is hard to distinguish bits which are always wanted, and those which are only wanted for use by Problem.

To make use of this, you need to update your global.conf, and make the corresponding pg update.

Revision 3551 - Directory Listing
Modified Mon Aug 22 19:55:40 2005 UTC (14 years, 6 months ago) by jj
Previously, the "Unassign selected sets from selected users" button did
not work.  Now it works.  To help avoid inadvertant unassignments, the button
was moved lower on the page and put in the "danger" background color.  I
also made the assign and unassign buttons the same length for better
aesthetics.

Some things still to do in this module:
  - maybe move unassign even lower
  - maybe have a safety radio button to unassignments like on other
    unassign pages
  - move the action from body() to pre_header_initialize() so that
    addgoodmessage/addbadmessage will work like on other pages
  - get return values from the assignment/unassignment commands in
    case something goes wrong.  Right now, the system can explode and it
    will still say "All assignments were made successfully".
  - it could also report some information on assignments/unassignments
    actually made vs. combinations which were skipped.

Revision 3550 - Directory Listing
Modified Mon Aug 22 19:22:31 2005 UTC (14 years, 6 months ago) by jj
Fixed function unassignSetsFromUsers.

Revision 3549 - Directory Listing
Modified Mon Aug 22 03:27:59 2005 UTC (14 years, 6 months ago) by dpvc
Changed default directory shown to be the templates directory.
Changed GZIP and UNGZIP to 'Make Archive' and 'Unpack Archive'.

Revision 3548 - Directory Listing
Modified Mon Aug 22 02:40:26 2005 UTC (14 years, 6 months ago) by jj
Changed "current set" to target set to match terminology at the top of the
page.

Revision 3542 - Directory Listing
Modified Sun Aug 21 16:02:42 2005 UTC (14 years, 6 months ago) by jj
Fixed some indenting.

Revision 3535 - Directory Listing
Modified Wed Aug 17 16:05:48 2005 UTC (14 years, 6 months ago) by sh002i
re-added timer for entire content generation process.

Revision 3533 - Directory Listing
Modified Tue Aug 16 17:58:38 2005 UTC (14 years, 6 months ago) by jj
Make title look nicer for times when the set name has underscores in it.

Revision 3530 - Directory Listing
Modified Mon Aug 15 22:38:56 2005 UTC (14 years, 6 months ago) by apizer
Remove the no longer valid message:
This may take a long time. Even if your browser times
out, all the files will be exported

Revision 3528 - Directory Listing
Modified Sun Aug 14 16:52:11 2005 UTC (14 years, 6 months ago) by gage
Add the beginnings of a facility for archiving a course.  This method uses mysqldump
and therefore will work only with a mysql database.  Many things are still hardwired
In particular mysqldump is hardwired.
The database name is hardwired to  "webwork"

Archiving consists of dumping the tables associated to the course to a file
$courseID/DATA/$courseID_mysql.database  (this file can be used
to created a new database for the course.  it will not overwrite existing
tables however.)

Then the entire course directory is tarred and gzipped and placed
in the courses directory with the naem $courseID.tar.gz

Currently nothing is deleted from the database and no directories are deleted.
So the implementation is fairly safe, but not yet very useful for course management.

There is not yet a facility for automatically importing the archived course.

Revision 3519 - Directory Listing
Modified Sat Aug 13 21:35:56 2005 UTC (14 years, 6 months ago) by jj
Print contents of COMMENT() commands in the Library Browser.

Revision 3496 - Directory Listing
Modified Fri Aug 12 23:33:06 2005 UTC (14 years, 6 months ago) by jj
Print titles with underscores replaced by non-breaking spaces.  It makes
the names of courses and problem sets look nicer for students.  Also
removed a function which was already commented out, and not needed.

Revision 3486 - Directory Listing
Modified Fri Aug 12 15:53:02 2005 UTC (14 years, 6 months ago) by sh002i
renamed weird $QuellSubroutineOutput to $DenySubroutineOutput. This will
better match $AllowSubroutineOutput.

Revision 3485 - Directory Listing
Modified Fri Aug 12 02:47:30 2005 UTC (14 years, 6 months ago) by sh002i
added HiRes timing data to WeBWorK::Debug, removed WeBWorK::Timing. all
existing calls to the WeBWorK::Timing methods now pass the same messages
to debug().

added an option to WeBWorK::Debug to allow only certain subroutines to
log debug messages, in addition to the existing option to bar certain
subroutines from doing so.

Revision 3481 - Directory Listing
Modified Thu Aug 11 22:11:53 2005 UTC (14 years, 6 months ago) by sh002i
added implementation of options() which call optionsMacro(). the version
in Problem.pm takes care to preserve the editMode and sourceFilePath
parameters.

Revision 3480 - Directory Listing
Modified Thu Aug 11 22:10:30 2005 UTC (14 years, 6 months ago) by sh002i
improvements to view options.

removed default options() implementation and helper function
viewOptions(), and added more modular optionsMacro() method, which is
intended to be called from content generators which require an options
panel.

POD for optionsHelper():

=item optionsMacro(options_to_show => \@options_to_show, extra_params =>
\@extra_params)

Helper macro for displaying the View Options panel.

@options_to_show lists the options to show, from among this list
"displayMode", "showOldAnswers", "showHints", "showSolutions". If no
options are given, "displayMode" is assumed.

@extraParams is dereferenced and passed to the hidden_fields() method.
Use this to preserve state from the content generator calling
optionsMacro().

This macro is intended to be called from an implementation of the
options() method. The simplest way to to this is:

 sub options { shift->optionsMacro }

=cut

Revision 3478 - Directory Listing
Modified Thu Aug 11 21:40:55 2005 UTC (14 years, 6 months ago) by sh002i
revert to using mydisplayMode for the param name (whoops).

Revision 3476 - Directory Listing
Modified Thu Aug 11 20:32:15 2005 UTC (14 years, 6 months ago) by sh002i
hide options panel here too -- closes bug #802.

Revision 3475 - Directory Listing
Modified Thu Aug 11 20:27:07 2005 UTC (14 years, 6 months ago) by sh002i
removed view options panel, "try it" link preserves displayMode. closes
bug #802.

Revision 3461 - Directory Listing
Modified Wed Aug 10 18:02:31 2005 UTC (14 years, 6 months ago) by sh002i
make .def searching thread-safe (resolves bug #814).

changed @found_set_defs to be a lexical local to get_set_defs().
replaced get_set_defs_wanted() with a closure over @found_set_defs
defined in get_set_defs().

output is identical to the previous case, but no global(-ish) variables
are used.

Revision 3456 - Directory Listing
Modified Tue Aug 9 22:22:46 2005 UTC (14 years, 6 months ago) by sh002i
groundwork for preserving non-authentication state (which probably won't
get used)

Revision 3454 - Directory Listing
Modified Thu Aug 4 23:30:22 2005 UTC (14 years, 6 months ago) by sh002i
add special case for no problems, closing bug #811.

Revision 3453 - Directory Listing
Modified Thu Aug 4 22:45:34 2005 UTC (14 years, 6 months ago) by sh002i
fix bug #803: corrected typo that prevented course renaming from working.

Revision 3451 - Directory Listing
Modified Thu Aug 4 00:58:39 2005 UTC (14 years, 6 months ago) by dpvc
Can't separate the form into two separate forms (as in the previous
update) otherwise the values of the checkboxes in the lower section
are lost when a button in the upper section is clicked.  So we'll have
to assume that if a user selects a file, he really wants it to be
uploaded.  (He can always use the BACK button on the browser to back
out of it if necessary.)

Revision 3449 - Directory Listing
Modified Wed Aug 3 22:19:59 2005 UTC (14 years, 6 months ago) by jj
Added problem count to basic library panel, and text chapters/sections
to advanced library panel.

Revision 3448 - Directory Listing
Modified Mon Aug 1 22:03:38 2005 UTC (14 years, 6 months ago) by sh002i
fixed indentation (see crabby reminder below).

The code I just fixed was using four spaces for one level of indentation
and a tab character for two levels of indentation. apparently, this is a
variation on the "use spaces for indentation" philosophy that also
replaces any run of eight spaces with a tab. this is NOT the way we've
been doing things in webwork, and consistency is important (I think).

===> the webwork indentation policy <===

We use the TAB character to indicate a level of indentation, and SPACE
characters to line things up in lists. I understand there is some debate
as to whether is it appropriate to use "hard" tabs in text files. We do
it because some of the WeBWorK developers prefer to view the code with
wider indentation (say, eight columns) and some prefer narrower
indentation (say, three or four columns). Thus, we use hard tabs for
initial indentation and let each developer chose a tab width using their
editor.

Here in an example of when to use tabs and spaces. ---> represents a tab
character.

my %errors = (
--->not_found            => "The record was not found.",
--->invalid_id           => "The record ID is invalid.",
--->undefined_or_unknown => "The record was undefined or unknown.",
);

sub bar {
--->my ($self, @recs) = @_;
--->foreach my $rec (@recs) {
--->--->my $Rec = $self->getRec($rec);
--->--->if ($Rec->error) {
--->--->--->warn $errors{$Rec->error};
--->--->} else {
--->--->--->foo($Rec->a, $Rec->b);
--->--->--->baz(
--->--->--->--->origin             => $Rec->origin,
--->--->--->--->destination        => $Rec->destination,
--->--->--->--->widgets_per_second => $Rec->widgets_per_second,
--->--->--->--->score              => $Rec->score,
--->--->--->--->email_address      => $Rec->email_address,
--->--->--->);
--->--->}
--->}
}

As you can see, indentation that is used to "line up" elements on
adjacent lines uses spaces, while indentation that is used to indicate
some structural heirarchy in the code uses tabs.

Revision 3447 - Directory Listing
Modified Mon Aug 1 19:23:58 2005 UTC (14 years, 6 months ago) by dpvc
Added a hack to get around Netscape 7.1 bug with onChange event
handler not being called when an upload file has been selected.

Revision 3439 - Directory Listing
Modified Sun Jul 31 19:49:51 2005 UTC (14 years, 6 months ago) by jj
Update to match revision in database structure (chapter and section tables).

Revision 3438 - Directory Listing
Modified Sun Jul 31 18:13:50 2005 UTC (14 years, 6 months ago) by gage
Sort course names without regard to case.

Revision 3437 - Directory Listing
Modified Sun Jul 31 17:27:21 2005 UTC (14 years, 6 months ago) by gage
Updating the user interface.  The checkbox to include webwork administrators in s
a course is now on by default.

The default templates course to copy when creating a new course can now be set in global.conf.
This is the course that automatically comes up by default in the pop-up menu.

Revision 3435 - Directory Listing
Modified Sun Jul 31 15:33:56 2005 UTC (14 years, 6 months ago) by gage
Changed unordered list to ordered list.

Revision 3434 - Directory Listing
Modified Sun Jul 31 15:26:18 2005 UTC (14 years, 6 months ago) by gage
User interface changes added.  All courses are sorted without regard to case.
The main page now lists all available courses and their database type -- finding the
database type slows things down a bit, so this might not be a desirable feature when
there are many courses.

It also discovers missing course.conf files.  If the course.conf file is missing then it's more
likely that the database type is not accurate.

Revision 3433 - Directory Listing
Modified Sat Jul 30 17:26:45 2005 UTC (14 years, 6 months ago) by gage
Added useful links to the macro list and the pod_docs
in addition to the incomplete manpages.

These are still temporary measures for improving the documentation
for those writing problems.

Revision 3432 - Directory Listing
Modified Sat Jul 30 01:49:44 2005 UTC (14 years, 6 months ago) by gage
I've changed errorOutput($error,$details) to accept a reference to a string
or to an array for $details.  These are automatically converted to the proper form.
References should be used when the $details points to a large number of bytes, such
as the contents of a file.

This version is not faster than the original method where $details was always a
string, sometimes a very long string.  It does seem to save memory however.

Further savings in memory could be obtained by print directly, but there are a few instances
which call errorOutput and then do further formatting before printing.

At the moment it doesn't seem to be worth it to make the change from return to print.

Revision 3431 - Directory Listing
Modified Sat Jul 30 00:13:44 2005 UTC (14 years, 6 months ago) by jj
Fix glitch in keeping menus in sync in advanced search panel, and deal
better with undefined parameters.

Revision 3430 - Directory Listing
Modified Fri Jul 29 21:43:07 2005 UTC (14 years, 6 months ago) by gage
Backing out of the changes just made for a moment.  I've discovered that making this switch:

CGI::p(CGI::code($details)),

to

CGI::code(CGI::p($details)),

speeds things up immensly.  (From 165 seconds down to 12 seconds on the example I'm doing.)

Even without any other changes. Since the other changes complicate things a bit, I'll put
off adding the ability to have $details be a reference.

It's possible that allowing $details to be passed as a reference is a good idea anyway,
on general principles.  I want first to see if it makes a difference in terms of memory
consumption.

Revision 3429 - Directory Listing
Modified Fri Jul 29 21:27:48 2005 UTC (14 years, 6 months ago) by gage
When print error output errorOutput($error, $details)
allow $details to be a reference to a string or a reference
to an array.  This may not make much difference when the details
are short, but it can make a very large difference if the details
are long.

Revision 3428 - Directory Listing
Modified Fri Jul 29 21:25:24 2005 UTC (14 years, 6 months ago) by gage
Make sure that the timers flush after every print . :-)

Revision 3427 - Directory Listing
Modified Fri Jul 29 20:45:41 2005 UTC (14 years, 6 months ago) by jj
More improvements on library - advanced panel.  Still a work in progress.

Revision 3425 - Directory Listing
Modified Thu Jul 28 21:25:44 2005 UTC (14 years, 7 months ago) by jj
Fixed minor glitch from problems not associated to any textbook.

Revision 3424 - Directory Listing
Modified Thu Jul 28 21:12:53 2005 UTC (14 years, 7 months ago) by jj
Added advanced search panel for database library.  Still more features
to come.

Revision 3416 - Directory Listing
Modified Thu Jul 28 15:24:27 2005 UTC (14 years, 7 months ago) by gage
Added a missing start_form and hidden authentication.  These had been
dropped in a recent revision.

This closes bug #806

Revision 3415 - Directory Listing
Modified Wed Jul 27 18:48:50 2005 UTC (14 years, 7 months ago) by jj
Fixed bug for problem library version 2 - now it can select problems from
all sections, or all chapters and all sections, etc.

Revision 3414 - Directory Listing
Modified Wed Jul 27 17:04:53 2005 UTC (14 years, 7 months ago) by jj
Changed column label of Id to Login Name to be consistent with other pages.
Also aligned the headers to top, which looks nicer if needed for a narrow
browser window.

Revision 3413 - Directory Listing
Modified Wed Jul 27 16:43:19 2005 UTC (14 years, 7 months ago) by jj
More changes for problem library version 2: changed interface for getting
lists of problems so variable amounts of data can be passed.  Also removed
an unneeded button.

Revision 3412 - Directory Listing
Modified Wed Jul 27 16:42:27 2005 UTC (14 years, 7 months ago) by jj
More changes for problem library version 2.

Revision 3411 - Directory Listing
Modified Wed Jul 27 16:31:18 2005 UTC (14 years, 7 months ago) by jj
Changes for problem library version 2 to support recent change to setmaker.

Revision 3410 - Directory Listing
Modified Wed Jul 27 16:30:41 2005 UTC (14 years, 7 months ago) by jj
Mainly improvements for problem library version 2.  Also removed comments
and added "Edit it" link back in for library problems.  These were not the
only read-only problems in a course, and being able to Edit it, and then
save as is pretty useful.

Revision 3409 - Directory Listing
Modified Tue Jul 26 22:28:56 2005 UTC (14 years, 7 months ago) by jj
Initial support for version 2 of the problem library.

Revision 3408 - Directory Listing
Modified Tue Jul 26 22:28:16 2005 UTC (14 years, 7 months ago) by jj
Update to support version 2 of the ProblemLibrary.

Revision 3406 - Directory Listing
Modified Tue Jul 26 20:49:09 2005 UTC (14 years, 7 months ago) by glarose
Update Scoring.pm to deal with versioned (gateway) sets.  For sets with
assignment_type of 'gateway' or 'proctored_gateway' we report the user's
score to be the score s/he attained on her or his most successful
version of the set.

Revision 3405 - Directory Listing
Modified Tue Jul 26 17:39:22 2005 UTC (14 years, 7 months ago) by jj
The two middle parts of the top area really go together, so the line between
them is now less emphatic.

Revision 3404 - Directory Listing
Modified Tue Jul 26 17:35:54 2005 UTC (14 years, 7 months ago) by jj
Lots of indentation fixup, and started adding code for new and improved
problem library.  Still compatible with current "Problem Library".

Revision 3403 - Directory Listing
Modified Tue Jul 26 16:35:10 2005 UTC (14 years, 7 months ago) by sh002i
first steps towards an SQL-specific version of DB.pm. I'm not quite sure
how I'm going to proceed on this. We tried too much abstraction, but I
don't want to end up with not enough abstraction, either.

Revision 3402 - Directory Listing
Modified Mon Jul 25 17:29:31 2005 UTC (14 years, 7 months ago) by jj
Add browsing by set definition files.  It will do a full search for these
files, and do some work to find the actual pg files.  Also, a minor fix
in the lists of sets in the current course (the "Select ..." line was being
added twice in some cases), some indentation fixing in the souce, and
renamed a variable.  Long ago, SetMaker used set definition files, and
then that was replaced with database lookup but a variable still had
setdef in its name.  Now that it uses both, this needing fixing.

Revision 3401 - Directory Listing
Modified Sat Jul 23 21:13:42 2005 UTC (14 years, 7 months ago) by gage
Adding experimental modules which support Preflight

Revision 3399 - Directory Listing
Modified Fri Jul 22 22:54:57 2005 UTC (14 years, 7 months ago) by jj
Say something useful if there is an error when creating a new set.  Also
fixed some indentation.

Revision 3398 - Directory Listing
Modified Fri Jul 22 22:48:28 2005 UTC (14 years, 7 months ago) by jj
Redo change allowing . in set names.

Revision 3397 - Directory Listing
Modified Fri Jul 22 22:34:53 2005 UTC (14 years, 7 months ago) by jj
Rearrange top panels (change really from Bill Z.) plus some tiny cosmetic
changes.

Revision 3396 - Directory Listing
Modified Fri Jul 22 21:20:07 2005 UTC (14 years, 7 months ago) by jj
Made comparison safer when turning blank fields undefined (some are already
undefined).

Revision 3395 - Directory Listing
Modified Wed Jul 20 23:56:30 2005 UTC (14 years, 7 months ago) by gage
Fixed bug #781 and #783.  Mostly involves editing the message
given instructors on the Grades.pm page.

Revision 3394 - Directory Listing
Modified Wed Jul 20 22:35:04 2005 UTC (14 years, 7 months ago) by gage
Add a check box that determines whether the csv entries are padded
with spaces.  Padding with spaces makes the text easier to read
but it interfers with some spread sheets which expect the csv entries
to contain no extraneous spaces.

We are still not using the CPAN standard CVS input/output mechanisms.
The code is in this module but it is not being used.

-- Mike

Revision 3391 - Directory Listing
Modified Wed Jul 20 18:14:58 2005 UTC (14 years, 7 months ago) by gage
Changes to the reports of a problem status.  This closes bug #631.  It
also reports blank errors differently from incorrect answers to support
sequential problem graders.  Finally it adds a "state_summary_msg" field
to the problem state which can be used to completely replace the
report on the current problem state usually printed at the bottom of a
problem page.

Revision 3382 - Directory Listing
Modified Thu Jul 14 20:37:35 2005 UTC (14 years, 7 months ago) by jj
In the login log, this will get the host's name if apache has been
configured to do that, otherwise it should get the ip number, and if
that somehow fails, we note it in the login log instead of to the user.

Revision 3381 - Directory Listing
Modified Thu Jul 14 20:20:15 2005 UTC (14 years, 7 months ago) by jj
When putting entries into the mysql database, put in "" as NULL.  The
counterpart when retreiving values (that NULL is converted to "") is
already part of gets.

Revision 3380 - Directory Listing
Modified Thu Jul 14 18:17:58 2005 UTC (14 years, 7 months ago) by jj
If HostnameLookups is off in Apache's httpd.conf, then remote_host returns
an undefined value.  Better than this fix would be to use get_remote_host,
but I couldn't get that to work on my system.

Revision 3379 - Directory Listing
Modified Thu Jul 14 16:23:11 2005 UTC (14 years, 7 months ago) by glarose
Correct commit of file with unresolved conflicts.

Revision 3377 - Directory Listing
Modified Thu Jul 14 13:15:27 2005 UTC (14 years, 7 months ago) by glarose
Preliminary commit of changes to add Gateway module.
This adds to WeBWorK
 - the ability to create versioned, timed problem sets ("gateway tests")
   for which all problems are displayed on a single page ("versioned"
   means that students can get multiple versions of the problem set),
 - the ability to create sets that draw problems from groups of
   problems, and
 - the ability to create sets that require a proctor login to start
   and grade.
Sets can be defined as gateway tests or proctored gateway tests from
the ProblemSetDetail page.

Not quite bug-free yet.  Known bugs include handling of problem values
on the Student Progress page (I think this may be a problem with
changing from sql database format where all entries were 'text' to
sql_single in ver 2.1, where they are integer), and a division by zero
error on the grades page (which may be the same problem).

Tests with a number of attempts per version greater than one haven't
been carefully tested, nor has scoring of gateway tests.

Revision 3376 - Directory Listing
Modified Wed Jul 13 18:03:18 2005 UTC (14 years, 7 months ago) by glarose
Test commit prior to initial full commit of files for addition of the
Gateway testing module.  (CVS reports that Authz.pm has changed, but
unix diff shows no changes, so this is testing if CVS will actually
register a change to the file.)

Revision 3366 - Directory Listing
Modified Tue Jul 12 00:52:47 2005 UTC (14 years, 7 months ago) by sh002i
added login logging and site_checkPassword support. closes bug #729. see
that bug for more information.

Revision 3362 - Directory Listing
Modified Wed Jul 6 15:38:06 2005 UTC (14 years, 7 months ago) by dpvc
Make tth use unicode for the preview (as it does for the calls within
the body of the problem).  Also, do the preview in display mode, but
fix the tables so that they won't have unwanted borders (really need
to fix the ur.css to get this right) and remove the unneeded initial
<BR> that tth produces.

Revision 3358 - Directory Listing
Modified Tue Jul 5 20:49:16 2005 UTC (14 years, 7 months ago) by dpvc
A couple of other problem set -> homework set changes.

Revision 3357 - Directory Listing
Modified Tue Jul 5 18:56:12 2005 UTC (14 years, 7 months ago) by sh002i
renamed "problem set" to "homework set" in page content.
closes bug #797.

Revision 3356 - Directory Listing
Modified Tue Jul 5 18:20:24 2005 UTC (14 years, 7 months ago) by sh002i
Added support for the tthPreamble.tex file. The effect of this code is
the same as the corresponding code in dangerousMacros.pl:tth(), but the
technique is slightly different.

This is a hack. Eventually, we'd like to have a common out-of-sandbox
method of calling TTH.

Closes bug #799.

Revision 3355 - Directory Listing
Modified Tue Jul 5 18:16:12 2005 UTC (14 years, 7 months ago) by sh002i
fixed tiny indentation problem

Revision 3354 - Directory Listing
Modified Tue Jul 5 17:54:39 2005 UTC (14 years, 7 months ago) by dpvc
Fixed incorrect method call to SaveHiidenFlags (should have been
HiddenFlags).

Revision 3337 - Directory Listing
Modified Mon Jul 4 13:18:47 2005 UTC (14 years, 7 months ago) by dpvc
Better spacing of jsMath output in the answer preview area.

Revision 3331 - Directory Listing
Modified Sat Jul 2 17:04:31 2005 UTC (14 years, 7 months ago) by dpvc
Fixed an error in creating the tarred archives (I had messed it up
when adding the report of how many files were archived).

Revision 3330 - Directory Listing
Modified Sat Jul 2 16:52:31 2005 UTC (14 years, 7 months ago) by dpvc
Major updates to the file manager to allow it to:

1.  Show dates and sizes of files (optionally, since some browsers
    don't handle the CSS to change to a monospaced font).

2.  Provide better control over renaming of uploaded files whose
    names already exist (there is a checkbox for overwriting them
    automatically; if unchecked, the user is prompted for a new name).

3.  Allow the creation or gzipped tar archives from files in the
    course directory.  Multiple files and directories can be selected
    to be included in the archive.  If only one file is selected, the
    archive will have it's name with ".tgz" appended; if mulitple
    files are selected, the archive will get a unique name starting
    with the course ID.

4.  Provide a checkbox that controls whether uploaded .tgz archives
    are unpacked automatically, and a second that controls whether the
    unpacked archive file is deleted afterward.  Files from the
    archive will be unpacked into the current directory, and will
    overwrite existing files silently.

5.  Follow symbolic links that are to files or directories within the
    course hierarchy.  In addition, there is a new variable in
    global.conf that provides a list of "valid links"; these are
    directories to which the FileManager is allowed to follow symbolic
    links.  The system administator can add directories to this list
    in order to allow professors to access limited areas outside their
    course directory (but they still need to have a symblic link
    within their course to those areas in order to view them).

I think this covers all the current FileManager requests, and this
closes bug#791.

Revision 3329 - Directory Listing
Modified Fri Jul 1 23:52:12 2005 UTC (14 years, 7 months ago) by gage
Moved the task of sending the emails to the students to a post_processing portion of the
request handling.

When you email a class, an HTML message is returned informing you that the messages will
be sent.  Once the process is completed an email notification is sent to the user (instructor)
sending the email.

This has been lightly tested.

Revision 3326 - Directory Listing
Modified Fri Jul 1 12:14:40 2005 UTC (14 years, 7 months ago) by gage
Fixed a bug in which the constant 'function'   BASE64_ENCODED was not being
evaluated inside the matching and substitution statements.  Replaced
the constant by using the construction
our $BASE64_ENCODED = 'base64_encoded:';
instead.  The variable is properly interpolated inside the matching
and substitution statements.

Revision 3321 - Directory Listing
Modified Wed Jun 29 02:46:08 2005 UTC (14 years, 7 months ago) by gage
Fixed a problem with showing answers when printing hardcopy
(no idea why this wasn't reported earlier).  The CGI::checkboxes
use "on"  and nothing to denote whether a checkbox is checked.
We expect 1 or 0 (or undef).

Revision 3318 - Directory Listing
Modified Tue Jun 28 00:16:08 2005 UTC (14 years, 8 months ago) by sh002i
set closed message differentiates between sets that have not yet opened
and sets that used to be open. resolves bug #724.

Revision 3316 - Directory Listing
Modified Mon Jun 27 00:06:30 2005 UTC (14 years, 8 months ago) by gage
Removed warning message about "users" . We closed the bug defining
multiple users  awhile ago so we don't need this anymore.  It's
causing trouble
with UserList.pm which now has fields
visible_users and prev_visible_users.

Revision 3315 - Directory Listing
Modified Sat Jun 25 16:21:46 2005 UTC (14 years, 8 months ago) by gage
Fixed an incorrect error message when using the revert button.

Revision 3312 - Directory Listing
Modified Thu Jun 23 17:53:32 2005 UTC (14 years, 8 months ago) by apizer
When sorting by clicking a label, concatonate visable user id's into a
string so that more my be sent without exceeding MSIE limit on URL's

Arnie

Revision 3311 - Directory Listing
Modified Thu Jun 23 02:33:03 2005 UTC (14 years, 8 months ago) by gage
The TIMEOUT constant which is now defined in WeBWorK::Cosntants  and is
(and was) used in WeBWorK::PG::Local  gives the time in seconds
that is allowed for rendering one PG problem.  The old value was 5 minutes
which was probably way too long. The default in WeBWorK::Constants has been
set to 60 seconds.  If no value is set then 10 seconds is used.

-- Mike

Revision 3310 - Directory Listing
Modified Wed Jun 22 16:13:18 2005 UTC (14 years, 8 months ago) by gage
Tweaked documentation

Revision 3309 - Directory Listing
Modified Wed Jun 22 15:54:16 2005 UTC (14 years, 8 months ago) by gage
Additional changes to the writeLogs functions.  Now surePathToFile
is used to make sure that the logs are created if they are not
already there.

Revision 3308 - Directory Listing
Modified Wed Jun 22 15:21:43 2005 UTC (14 years, 8 months ago) by gage
Resetting Timing::Logfile to empty.

I have left the default value for dvipngArgs so that it works with
dvipng versions greater than 1.0

Revision 3307 - Directory Listing
Modified Wed Jun 22 15:18:32 2005 UTC (14 years, 8 months ago) by gage
Use the Timing::HiRes module to calculate timing data for each
request. This gives more accurate timing data (using the unix
time gives only to the nearest second).  I am printing the elapsed
time to 3 decimal places, it could be to 6 if that is desirable.

This will help us evaluate whether changes are increasing or decreasing
the speed with which requests are serviced.

Revision 3306 - Directory Listing
Modified Wed Jun 22 15:13:40 2005 UTC (14 years, 8 months ago) by gage
Added documentation to writeTimingLogEntry

Revision 3304 - Directory Listing
Modified Tue Jun 21 19:43:59 2005 UTC (14 years, 8 months ago) by apizer
Put in hacks to get around: Maximum URL Length Is 2,083 Characters in Internet
Explorer.  When sorting by clicking labels we use the GET method and send the
user_id's of the visable users so that we only sort visable users but for over
about 110 students this is above MSIE's limit. If the total URL is under the
limit we will pass visable users. If it is over, we will not pass any and all
users will be displayed. The is almost enought to amke me use FireFox.
Maybe we should replace the GET method by POST but that requires a greater change.

Arnie

Revision 3303 - Directory Listing
Modified Tue Jun 21 14:48:02 2005 UTC (14 years, 8 months ago) by apizer
When exporting classlist to a file, tell the user the name and location of the
resulting file (e.g. templates/math1.lst) so they can find it in the File Mannager

Arnie

Revision 3302 - Directory Listing
Modified Tue Jun 21 02:13:06 2005 UTC (14 years, 8 months ago) by apizer
The classlist data can now be sorted by clicking on headings.

Revision 3301 - Directory Listing
Modified Mon Jun 20 22:40:34 2005 UTC (14 years, 8 months ago) by jj
Allow access to new file comparison module.  It is not linked to from
anywhere, but now you can bring it up with
  http://server/webwork2/coursename/instructor/compare

Revision 3300 - Directory Listing
Modified Mon Jun 20 22:38:16 2005 UTC (14 years, 8 months ago) by jj
New module for comparing two pg files in webwork.  You get both rendered
versions of the files and diffs.  This initial version is pretty much
just bare-bones.

Revision 3299 - Directory Listing
Modified Fri Jun 17 15:39:26 2005 UTC (14 years, 8 months ago) by apizer
Sorting by permission now works.

Revision 3293 - Directory Listing
Modified Wed Jun 15 22:21:08 2005 UTC (14 years, 8 months ago) by gage
Added separate file for rendering operation

Revision 3292 - Directory Listing
Modified Wed Jun 15 22:17:24 2005 UTC (14 years, 8 months ago) by gage
Cosmetic change to pretty_print_rh

Revision 3290 - Directory Listing
Modified Wed Jun 15 21:46:12 2005 UTC (14 years, 8 months ago) by jj
This change affects course creation using mysql.  Field types are now
determined by DB/Record/*.pm in the function SQL_TYPES.  Key fields
which are text are set to binary types (blobs) so that indexing on those
fields is case sensitive.  The net result should be fast database access
while still having it be case-sensitive in the searching.

Revision 3287 - Directory Listing
Modified Fri Jun 10 18:02:24 2005 UTC (14 years, 8 months ago) by apizer
Added the ability to change passwords on the classlist page and fixed up sorting a bit.
For example commented out sorting by permission which didn't work.  I'll work on sorting
next fixing the above and allowing profs to sort by clicking on heading as on the
Student Progress page.

Arnie

Revision 3285 - Directory Listing
Modified Fri Jun 10 16:06:55 2005 UTC (14 years, 8 months ago) by gage
Bringing HEAD and rel-2-1-patches in line

Revision 3284 - Directory Listing
Modified Fri Jun 10 16:01:29 2005 UTC (14 years, 8 months ago) by gage
Bring HEAD and rel-2-1-patches in line with each other.

Revision 3262 - Directory Listing
Modified Sun Jun 5 20:25:27 2005 UTC (14 years, 8 months ago) by jj
Fixed typo

Revision 3255 - Directory Listing
Modified Thu Jun 2 18:22:58 2005 UTC (14 years, 8 months ago) by apizer
Make all sorts case insensitive

Revision 3253 - Directory Listing
Modified Thu Jun 2 16:32:52 2005 UTC (14 years, 8 months ago) by gage
These two files provide a connection via SOAP with Moodle.  You will
need to modify the webwork.apache-config file as well.

Revision 3252 - Directory Listing
Modified Thu Jun 2 15:18:50 2005 UTC (14 years, 8 months ago) by apizer
1. Don't put any spaces before any numerical data in .csv output.  Excel
doesn't have a problem with this but other spreadsheets do according to Mike.

2. Keep backups of all totals files and never overwrite a backup.  The File
Manager can be used to delete any unwanted backups.

Arnie

Revision 3251 - Directory Listing
Modified Wed Jun 1 17:22:23 2005 UTC (14 years, 8 months ago) by apizer
Add the line
Any changes made below will be reflected in the set for ALL students.
to the top of the Hmwk Set Editor page

Arnie

Revision 3250 - Directory Listing
Modified Wed Jun 1 15:05:17 2005 UTC (14 years, 8 months ago) by apizer
Sorting to three levels is obtained by clicking on headings.

Arnie

Revision 3247 - Directory Listing
Modified Tue May 31 19:53:44 2005 UTC (14 years, 8 months ago) by jj
Allow periods in set names.  This has been tested for a while without
ill effects.  Such sets already exist - they can be created
in the Library Browser, but when they were exported, they could not be
re-imported.

Revision 3246 - Directory Listing
Modified Tue May 31 16:54:14 2005 UTC (14 years, 8 months ago) by apizer
On web page, display a pretty sort_mthod_name. E.g. remove underscores.

Arnie

Revision 3245 - Directory Listing
Modified Fri May 27 17:41:27 2005 UTC (14 years, 9 months ago) by apizer
pad entries with appended (rather than prepended) spaces so that sorting
will work properly in Excel, etc.

Arnie

Revision 3244 - Directory Listing
Modified Fri May 27 16:34:29 2005 UTC (14 years, 9 months ago) by apizer
The sorting order in scoring files is now never random. It is by last name,
then first name, and then by user_id and is case insensitive.  Before it
was by last name only and case sensitive.

Arnie

Revision 3243 - Directory Listing
Modified Fri May 27 04:01:39 2005 UTC (14 years, 9 months ago) by gage
changed a substitution call so that the directory path is recalculated
every time listLib is called.  Before the substitution pattern was
calculated only when the child first started up and this caused
bad problems if a new call to listLib had a different library than
the one used when the child was initialized.

-- Mike

Revision 3242 - Directory Listing
Modified Thu May 26 18:18:40 2005 UTC (14 years, 9 months ago) by apizer
Allow sorting by first name, last name, or email address.  Also default
sorting is by last name, then by first name, then by user_id where as before
it was by last name only.

Revision 3239 - Directory Listing
Modified Thu May 26 15:12:36 2005 UTC (14 years, 9 months ago) by apizer
(1) problem numbers are left alligned
(2) problem values are listed
(3) no special message is given if problem value is 0

Revision 3236 - Directory Listing
Modified Fri May 20 16:31:33 2005 UTC (14 years, 9 months ago) by gage
The info section of the login picks up HTML text contained in the
webwork2/htdocs/site_info.txt  file.  This allows a site administrator
to post a message of the day or urgent site information which is
read by everyone logging into webwork.

The contents of the
course/templates/login_info.txt file is printed after
the site_info.txt message.

Revision 3235 - Directory Listing
Modified Fri May 20 16:28:25 2005 UTC (14 years, 9 months ago) by gage
Modifications that support import and export to gzipped disk files

Revision 3234 - Directory Listing
Modified Fri May 20 16:27:43 2005 UTC (14 years, 9 months ago) by gage
Import and Export now create gzipped files in the template directory
of the admin course.  These files can than be downloaded using
the FileManager.  The export and import process are still VERY slow, but
at least it no longer matters if your browser times out.

Revision 3233 - Directory Listing
Modified Thu May 19 20:53:18 2005 UTC (14 years, 9 months ago) by gage
Fixed problems with calculating the average grade correctly.

Regularized the code in Stats and StudentProgress
the next step is to a good chunk of the code which does the actual
arithmetic to a spot in Utils/  so that it can be called by
both Stats and StudentProgress.

This fixes bug 784

Revision 3232 - Directory Listing
Modified Thu May 19 16:17:44 2005 UTC (14 years, 9 months ago) by gage
Use base64 to save answers -- this ensures that symbols
in the answer won't cause trouble.  I have added a string
to the beginning of the encoded passage:

base64_encoded:AFDWERADADFRET

-- Mike

Revision 3228 - Directory Listing
Modified Thu May 19 01:06:02 2005 UTC (14 years, 9 months ago) by gage
Clean up commented out code.

Revision 3226 - Directory Listing
Modified Tue May 17 18:40:12 2005 UTC (14 years, 9 months ago) by apizer
Put a spce in after bolf faced words

Revision 3224 - Directory Listing
Modified Sat May 14 01:32:19 2005 UTC (14 years, 9 months ago) by dpvc
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

Revision 3223 - Directory Listing
Modified Wed May 11 14:32:58 2005 UTC (14 years, 9 months ago) by gage
encoding answers in base64 -- this should keep import and
export from breaking.

Revision 3222 - Directory Listing
Modified Wed May 11 14:31:10 2005 UTC (14 years, 9 months ago) by gage
Allow library search to follow links.

This is needed since the initial path to a library
from a course is usually a link from the templates directory.

Revision 3215 - Directory Listing
Modified Sat Apr 16 02:31:20 2005 UTC (14 years, 10 months ago) by gage
Providing an initial fix for bug 784.  I'd like to
continue to work on this module and factor out some of
the calculation loops in order to place them in Utils.

For now this hack (which involves splitting
$num_of_attemts into two variables so it can be updated
and used for two different purposes) should work.

--Mike

Revision 3213 - Directory Listing
Modified Sat Apr 9 18:00:42 2005 UTC (14 years, 10 months ago) by gage
Updating the webwork daemon.  Small changes that make the url compatible with
the current ports that we are using.

--Mike

Revision 3209 - Directory Listing
Modified Tue Mar 29 21:23:34 2005 UTC (14 years, 10 months ago) by jj
Adding sql types for database entries for use on creation.  Many of them
can probably be tweaked to take up less space (e.g., we don't need 4 bytes
to store the published information).

Revision 3201 - Directory Listing
Modified Mon Mar 21 19:41:15 2005 UTC (14 years, 11 months ago) by apizer
## Make lookups case insensitive.  Otherwise indices seem not to be used
which slows things down drastically.  See openwebwork-devel@lists.sourceforge.net
discussion.

Revision 3200 - Directory Listing
Modified Mon Mar 21 18:51:43 2005 UTC (14 years, 11 months ago) by apizer
*** empty log message ***

Revision 3188 - Directory Listing
Modified Sun Feb 27 04:05:48 2005 UTC (14 years, 11 months ago) by gage
Still fiddling with the links so that one can jump from instructor
page editors to the actual display and back easily.

Revision 3175 - Directory Listing
Modified Thu Feb 17 17:42:36 2005 UTC (15 years ago) by gage
Fixed error in PGProblemEditor.pm that prevented you from adding new problem in
a set.  Added comment to ProblemSetDetail.pm

Revision 3160 - Directory Listing
Modified Sun Feb 13 17:50:55 2005 UTC (15 years ago) by gage
Initialize dates to be now+ one week for the open date and
now + two weeks for the due and answer dates.  This makes
it less likely that the date will be undefined.

Revision 3150 - Directory Listing
Modified Sun Feb 6 20:47:20 2005 UTC (15 years ago) by gage
Added links to problems to the stats page.

Revision 3149 - Directory Listing
Modified Sun Feb 6 20:45:39 2005 UTC (15 years ago) by gage
Fixed formatting on sidebar links.  Added sub links for student and set to the Statistics link

Revision 3135 - Directory Listing
Modified Sat Feb 5 01:47:49 2005 UTC (15 years ago) by gage
Changed formatting when reporting success index.  Success index is now reported in %

Revision 3134 - Directory Listing
Modified Sat Feb 5 01:34:48 2005 UTC (15 years ago) by gage
Removed commented out code.

Fixed a problem with calculating the success index. (the number of
attempts was inappropriately zeroed out with each problem.

Revision 3133 - Directory Listing
Modified Sat Feb 5 01:32:56 2005 UTC (15 years ago) by gage
minor cleanup -- removed a variable that had been defined twice.

Revision 3132 - Directory Listing
Modified Fri Feb 4 20:03:59 2005 UTC (15 years ago) by toenail
Added friendly message when no set is selected.
Fixes #750

Revision 3129 - Directory Listing
Modified Sat Jan 29 01:29:41 2005 UTC (15 years ago) by jj
Removes starting and ending whitespace from most of the form field entries
when adding users.  Some instructors add students by doing copy/paste from
elsewhere.  This frequently picks up whitespace which causes the user id
field to fail in checkKeyFields.

Revision 3128 - Directory Listing
Modified Sat Jan 29 01:23:57 2005 UTC (15 years ago) by gage
Fixed problem with hardcopy editing.  This case had simply not been handled
in the code even though it's the same behavior for hardcopy headers as it is for
screen headers.

This fixes bug #763

Revision 3127 - Directory Listing
Modified Sat Jan 29 01:21:19 2005 UTC (15 years ago) by gage
CourseID is now part of the subject line when feedback is sent.
This allows you to filter out feedback by course, which is handy
for those of use receiving lots of feedback emails.

Revision 3126 - Directory Listing
Modified Sat Jan 29 01:19:48 2005 UTC (15 years ago) by gage
Better error message if there is a multiply defined user.

Revision 3125 - Directory Listing
Modified Sat Jan 29 01:18:33 2005 UTC (15 years ago) by gage
Adds checks to make sure that the multiple user problem is really gone.

Revision 3123 - Directory Listing
Modified Fri Jan 28 01:04:06 2005 UTC (15 years ago) by gage
I believe this will fix the bug which sometimes causes multiple users
to appear in the parameters.  The problem is that Login.pm filters out
user, key, passwd  values and then passes the remaining values to
hidden_fields to be printed on the "relogin" page.  Unfortunately if
hidden_fields is passed an empty array then it prints ALL values in the
parameter hash as hidden fields.  So if only user and key are present
they will be printed as hidden fields.  If user, key and a non-filtered
paramter value are present then only the non-filtered parameter value
will be printed.

The current fix is a conditional which doesn't call hidden_fields at all
if there are no parameters left after the filtering operation.

--Mike

Revision 3111 - Directory Listing
Modified Thu Jan 27 04:26:37 2005 UTC (15 years, 1 month ago) by dpvc
Added Text/Binary/Automatic buttons for conversion of line-breaks on
file uploads.  (Downloaded files are not modified, since we don't know
the user's platform.  Could try to use the HTTP_USERAGENT environment
variable to determine this.)

Also produce a warning message if a file is put in the wrong directory
(e.g., .def files should be put in templates).

Fixed some incorrect indenting.

Revision 3110 - Directory Listing
Modified Thu Jan 27 00:15:55 2005 UTC (15 years, 1 month ago) by sh002i
Moved stylesheet into a separate file. Created new htdocs/css directory,
added stylesheet to that directory (ur.css). Include stylesheet in
ur.template with new "url" template escape:

<!--#url type="webwork" name="stylesheet"-->

This is 132 lines that Template.pm doesn't have to parse and 4368 bytes
that don't have to get sent to the client with every request.

Revision 3102 - Directory Listing
Modified Tue Jan 25 21:22:35 2005 UTC (15 years, 1 month ago) by toenail
display mode was inadvertently reset with other problem/set elements
that are safe to reset (rather than keep sticky) since they will be updated
from the newly saved database record or thrown away as expected

Revision 3094 - Directory Listing
Modified Wed Jan 19 21:54:34 2005 UTC (15 years, 1 month ago) by jj
Fix typo on button.

Revision 3092 - Directory Listing
Modified Sat Jan 15 23:56:12 2005 UTC (15 years, 1 month ago) by gage
modified the way we attempt to find out the referring page.

Revision 3091 - Directory Listing
Modified Sat Jan 15 21:24:29 2005 UTC (15 years, 1 month ago) by gage
modified code for checking multiple user names.  We'll see if we can
track down the problem.

--Mike

Revision 3090 - Directory Listing
Modified Sat Jan 15 18:46:57 2005 UTC (15 years, 1 month ago) by gage
Commented out escapeHTML() of warning messages since it prevented
using tables when outputing info about answer evaluators.

Can someone tell me whether there is another reason why not allowing
HTML in warning messages is or would be important?  If so we can
figure out another way to debug answer evaluators.

-- Mike

Revision 3089 - Directory Listing
Modified Fri Jan 14 03:15:33 2005 UTC (15 years, 1 month ago) by toenail
new regexp matching can now match on permission level too

Revision 3086 - Directory Listing
Modified Sat Jan 8 16:42:10 2005 UTC (15 years, 1 month ago) by dpvc
Fixed a bug with the file editor that did not process the file name
correctly in the top-level directory.

Fixed a bug in uploading a file where the name was given a sequence
number even when one was not needed.

Revision 3076 - Directory Listing
Modified Thu Jan 6 21:04:40 2005 UTC (15 years, 1 month ago) by sh002i
fixes to set assignment code

Revision 3073 - Directory Listing
Modified Sat Jan 1 22:35:10 2005 UTC (15 years, 1 month ago) by gage
Changes made to simplify the implementation of XMLRPC access to
the functionality of WeBWorK.

There is still a problem with making sure that the proper warning
mechanism is passed into the problem rendering compartment.
The proper permissions for creating directories also does not
get transmitted properly.

I would like to change the way that the defineEnvirVars subroutine is
passed into the Local.pm object.  I'd like to either pass the
environment as a hash or explicitly pass a reference to define
EnvirVars rather than inherit it from PG.  In particular I'd like
to be able to define environment variables directly in RenderProblem.pm
instead of faking it by defining fake problem objects.

Revision 3072 - Directory Listing
Modified Sat Jan 1 22:34:43 2005 UTC (15 years, 1 month ago) by gage
Changes made to simplify the implementation of XMLRPC access to
the functionality of WeBWorK.

There is still a problem with making sure that the proper warning
mechanism is passed into the problem rendering compartment.
The proper permissions for creating directories also does not
get transmitted properly.

I would like to change the way that the defineEnvirVars subroutine is
passed into the Local.pm object.  I'd like to either pass the
environment as a hash or explicitly pass a reference to define
EnvirVars rather than inherit it from PG.  In particular I'd like
to be able to define environment variables directly in RenderProblem.pm
instead of faking it by defining fake problem objects.

Revision 3067 - Directory Listing
Modified Mon Dec 27 18:10:52 2004 UTC (15 years, 2 months ago) by gage
Fixed problem that was preventing HTML_dpng from working.

Several initialization problems are currently hacked.

I'd like to be able to get the initial request object from SOAP::Lite;
I also don't know how to get the port that the server is using:

$Apache->server->server_hostname works but
$Apache->server->port   doesn't

Still no support for jsMath mode

Revision 3066 - Directory Listing
Modified Mon Dec 27 17:20:16 2004 UTC (15 years, 2 months ago) by gage
Catch multiply defined user warning.

Revision 3065 - Directory Listing
Modified Mon Dec 27 17:18:59 2004 UTC (15 years, 2 months ago) by gage
More files for supporting access to problems via XMLRPC code
(see comment for WebworkWebservice.pm)

Revision 3064 - Directory Listing
Modified Mon Dec 27 17:18:17 2004 UTC (15 years, 2 months ago) by gage
Adding support for an XMLRPC mode which allows access to
some of Webworks functionality.  These files largely
duplicate the functionality of the daemons running on devel.webwork
and webwork.math  which support the display of the Problem Library.

There are still some problems with displaying equations in HTML_dpng
and also in jsMath mode.

There is a lot of overlap code with PG.pm which needs to be factored out
eventually.  I'm uploading the code now so that others can suggest
improvements and ideas for factoring code.

Revision 3063 - Directory Listing
Modified Thu Dec 23 02:15:17 2004 UTC (15 years, 2 months ago) by dpvc
Work around MSIE bug.  (Can't do height:100% for the size of the
scrolling list.  Every other browser in the world seems to be able to
handle this.)

Revision 3062 - Directory Listing
Modified Tue Dec 21 18:44:49 2004 UTC (15 years, 2 months ago) by gage
fixed error when set number or problem number is not defined
Kept fix that keeps set 0 and problem 0 from being replaced by blanks.

Revision 3061 - Directory Listing
Modified Tue Dec 21 17:47:57 2004 UTC (15 years, 2 months ago) by toenail
Fixed minor display problem where empty (not-overriden) date values
were being displayed as 12/31/1969

Closes #748

Revision 3060 - Directory Listing
Modified Tue Dec 21 15:29:55 2004 UTC (15 years, 2 months ago) by toenail
Added the following features:

* Searching on any user data field
* Sorting by any two fields
* Reports duplicate names on classlist import

Closes #654, #664, and #684

Revision 3059 - Directory Listing
Modified Tue Dec 21 04:41:03 2004 UTC (15 years, 2 months ago) by sh002i
Added course renaming to CourseManagement, CourseAdmin.

It works like this:

- move the course directory
- move any course subdirectories that are still at their old locations
  (like if they were outside the course directory)
- create a new database using addCourseHelper()
- copy the course data into the new course database using
  copyCourseDataHelper() (INSERT INTO $new SELECT * FROM $old)
- delete the old course database using deleteCourseHelper()

TODO:
* write helpers for gdbm and sql layouts
* write command-line script

Revision 3058 - Directory Listing
Modified Mon Dec 20 21:08:06 2004 UTC (15 years, 2 months ago) by sh002i
expansion of Mike's caching fixes. see below:

* separate setCachedUser($userID) method allows explicit setting of user
  to cache. This is needed because $r->param("user") is not always set
  (i.e. in the case of the initial request for a guest login.
* don't store a copy of a reference to %permissionLevels, as this isn't
  any more efficient than accessing the course environment directly.
* always construct the Authz instance.
* fall back on accessing the database if hasPermissions() is called with
  a user other than the cached user (or if no user is cached).
* warning output (and assume no permission) if PermissionLevel record
  doesn't exist or permission level is empty.
* warn (and assume no permission) if activity is not found in the
  %permissionLevels hash.
* don't pass $ce and $db to new(), since they are available in $r.

Revision 3057 - Directory Listing
Modified Mon Dec 20 16:21:50 2004 UTC (15 years, 2 months ago) by gage
Fixed double declaration of $user

Revision 3056 - Directory Listing
Modified Mon Dec 20 15:24:16 2004 UTC (15 years, 2 months ago) by sh002i
escaped hyphen in r.e. to avoid interpretation as range operator.

Revision 3055 - Directory Listing
Modified Sun Dec 19 22:41:34 2004 UTC (15 years, 2 months ago) by gage
Fixed small bug in the message passing facility

Revision 3054 - Directory Listing
Modified Sun Dec 19 22:39:59 2004 UTC (15 years, 2 months ago) by gage
Changed message passing when there is a duplicate administrator.

use addbadmessage() facility instead of warn

Revision 3053 - Directory Listing
Modified Sun Dec 19 22:08:36 2004 UTC (15 years, 2 months ago) by gage
The permission levels are now checked when the authz instance
is created.  This reduces the number of calls to the database.
It could cause trouble if there is a change in permission status
between the time when the instance is created and when it is used.
Since this all occurs while rendering one webpage, I don't think
that this time difference will ever cause trouble.

-- Mike

Revision 3052 - Directory Listing
Modified Sun Dec 19 00:53:27 2004 UTC (15 years, 2 months ago) by gage
Changed
unless $value =~ m/^[\w-.]*$/

to
unless $value =~ m/^[.\w-]*$/

for some reason having the period at the end was causing the warning:

False [] range "\w-" before HERE mark in regex m/^[\w- << HERE .]*$/ at
/home/gage/webwork/webwork-modperl/lib/WeBWorK/DB.pm line 1974.

Revision 3051 - Directory Listing
Modified Sat Dec 18 22:35:00 2004 UTC (15 years, 2 months ago) by gage
Call  $r->param("user") only in scalar context

Revision 3050 - Directory Listing
Modified Sat Dec 18 22:21:26 2004 UTC (15 years, 2 months ago) by gage
allow . in login names   -- cross your fingers and hope this works.

Revision 3049 - Directory Listing
Modified Sat Dec 18 22:20:42 2004 UTC (15 years, 2 months ago) by gage
make sure that $r->param("users") is only used in a scalar context.

Revision 3048 - Directory Listing
Modified Sat Dec 18 22:11:21 2004 UTC (15 years, 2 months ago) by gage
Make sure that $r->param("user") is only called in scalar context.

Revision 3046 - Directory Listing
Modified Sat Dec 18 21:22:20 2004 UTC (15 years, 2 months ago) by gage
Modifications to make sure that problems with weight 0
print weight as 0 rather than as a blank.

This addresses bug  #730

Revision 3045 - Directory Listing
Modified Sat Dec 18 20:41:26 2004 UTC (15 years, 2 months ago) by gage
Added a line to check for empty records.  The hope is that this fixes
bug #733

Revision 3044 - Directory Listing
Modified Sat Dec 18 20:31:46 2004 UTC (15 years, 2 months ago) by gage
Added summary column for the total value of webwork problems done (sum
of the weights of each of the problems correctly completed)

Added column for percentage correct (total weight of correct problems
divided by the total weight of all of the problems).

This set still needs major dehackifying!!!!!!
This fixes bug #747.  I hope that I've put in enough
checks to satisfy bug #746 as well.  I will close that bug.

Revision 3043 - Directory Listing
Modified Sat Dec 18 16:12:19 2004 UTC (15 years, 2 months ago) by gage
Added an option to rename the "Change Display Settings" submit buttton.

Revision 3042 - Directory Listing
Modified Sat Dec 18 16:11:16 2004 UTC (15 years, 2 months ago) by gage
Removed the student progress lines from the Stats.pm page.  They are
still available in the StudentProgress.pm module

Revision 3041 - Directory Listing
Modified Sat Dec 18 16:09:54 2004 UTC (15 years, 2 months ago) by gage
Changed some UI features.  In particular the scrolling list is now
used both for selecting students to send mail to AND for selecting
the preview message (if multiple students are selected the first is used
as the preview).  The "command table" is now one line taller than it
was, but it it now effectively narrower (just two columns) -- the last
column has only the row and column options and is not used that much.

Revision 3040 - Directory Listing
Modified Fri Dec 17 18:06:38 2004 UTC (15 years, 2 months ago) by gage
Removed a warn statement

Made sure that r->param('user') is only called in scalar
context.

Revision 3037 - Directory Listing
Modified Fri Dec 17 17:08:37 2004 UTC (15 years, 2 months ago) by gage
Massive overhaul of this file to put dehackify the code, at least somewhat.

The cases for handling each file type and each action are pretty cleanly laid out.

The next reasonable step would be to reorganize the code by subclassing it.

Since in almost all cases the link knows what file type it wants to be edited
when it calls the editor, the links could specifically call the subclass editor.
This would either reduce or eliminate the need for the file_type parameter.

Properly done subclassing would make it easier to add a new file type.

Currently you need to add code in about four  places:  UI code in body,
action code in saveFileChanges,   path finding code in getFilePaths,
and redirect code in pre_header_initialize.

For a subclass this code could all be adjacent.

Revision 3036 - Directory Listing
Modified Fri Dec 17 17:03:43 2004 UTC (15 years, 2 months ago) by gage
Added a link which allows one to add a blank problem to an existing set.

Revision 3035 - Directory Listing
Modified Fri Dec 17 17:02:37 2004 UTC (15 years, 2 months ago) by gage
Added code to display {status_message} when call is redirected from
PGProblemEditor.pm

If course_info.txt does not exist as a file create it (using `echo "">course_info.txt`)
Hope that's not too dangerous, but I didn't feel like opening the file :-)

This keeps unnecessary warnings from occuring later when a user would be warned that the
course_info.txt file didn't exist.

Revision 3034 - Directory Listing
Modified Fri Dec 17 16:59:48 2004 UTC (15 years, 2 months ago) by gage
Move options subroutine up to ContentGenerator.

Cleanup commented out code

Add facility for reading {status_message} to display messages when a call
is redirected from PGProblemEditor.pm

Revision 3033 - Directory Listing
Modified Fri Dec 17 16:57:53 2004 UTC (15 years, 2 months ago) by gage
Preserve display options when using the "up" arrow in navigation.

Some code that helps pass messages through {status_message}  when a call
is redirected to ProblemSet (e.g. from PGproblemEditor.pm)

Revision 3032 - Directory Listing
Modified Fri Dec 17 16:55:04 2004 UTC (15 years, 2 months ago) by gage
No need to show options on the Home.pm page

Revision 3031 - Directory Listing
Modified Fri Dec 17 16:53:01 2004 UTC (15 years, 2 months ago) by gage
Make sure that the instructor links preserve the displayOptions, namely
the displayMode and the ability to view the old answers.

Revision 3030 - Directory Listing
Modified Thu Dec 16 02:30:42 2004 UTC (15 years, 2 months ago) by sh002i
ordered has_many, creation date setting.

* has_explicit_order() adds a wrapper for a has_many() accessor that
sorts the returned records as per a comma-separated list field.
* creation dates are now set properly using a before_create trigger.
* also there is the beginnings of an assign_to_participants() routine.

Revision 3029 - Directory Listing
Modified Thu Dec 16 02:25:47 2004 UTC (15 years, 2 months ago) by sh002i
added fisher_yates_shuffle() inplace-randomization routine.

Revision 3028 - Directory Listing
Modified Fri Dec 10 16:39:00 2004 UTC (15 years, 2 months ago) by sh002i
commit test

Revision 3026 - Directory Listing
Modified Fri Dec 10 16:16:38 2004 UTC (15 years, 2 months ago) by sh002i
added note (really just a commit test)

Revision 3024 - Directory Listing
Modified Fri Dec 10 16:07:57 2004 UTC (15 years, 2 months ago) by sh002i
fixed name of _bool_normalizer, removed old student_id constraint

Revision 3022 - Directory Listing
Modified Thu Dec 9 23:28:35 2004 UTC (15 years, 2 months ago) by sh002i
fixes, uniqueness constraints, CSV list handling

* internal subroutines now have `_' prefix.
* added uniqneness constraints (has_unique_columns)
* added has_cs_list() to declare that a column is a comma-sep. list

Revision 3019 - Directory Listing
Modified Tue Dec 7 16:04:18 2004 UTC (15 years, 2 months ago) by sh002i
fixed incorrect error message for getUserProblems()

Revision 3018 - Directory Listing
Modified Tue Dec 7 03:47:57 2004 UTC (15 years, 2 months ago) by sh002i
docs

Revision 3017 - Directory Listing
Modified Tue Dec 7 02:42:59 2004 UTC (15 years, 2 months ago) by sh002i
ordering, normalizers, booleans, documentation. details:

* changed order of table classes so that the has_a() part of a
  relationship occurs before the has_many() part.
* added WeBWorK::DBv3::NormalizerMixin, simiar to Class::Trigger, to
  manage normalizer subroutines for per-column normalization.
* overloaded normalize_column_values to all normalizers for changed
  fields.
* implemented predefined has_a_boolean() normalizer definition.
* defined boolean fields in tables using has_a_boolean().
* added/clarified docs.

still to do:

* add inflators/deflators for durations
* add triggers for setting creation dates

Revision 3013 - Directory Listing
Modified Thu Nov 25 05:51:37 2004 UTC (15 years, 3 months ago) by sh002i
changed upgrade_schema to take a DBI database handle instead of
connecting/disconnecting itself.

Revision 3011 - Directory Listing
Modified Thu Nov 25 05:50:01 2004 UTC (15 years, 3 months ago) by sh002i
a few things.

* added lock/unlock tables
* stopped using Class::DBI::MySQL and Class::DBI::AutoLoader
* init() routine allows runtime settings
* LOCK/UNLOCK TABLES wrapper
* inflation/deflation for role.privs (done manually with &priv_list
since you have to associate a column with a class to use has_a, and I
just want it to be a damn list!)
* a tiny bit more testing

Revision 3010 - Directory Listing
Modified Tue Nov 23 02:50:13 2004 UTC (15 years, 3 months ago) by sh002i
preliminary WWDBv3 support.

Features:

* automatic schema updating (see WeBWorK::DBv3::Utils).
* basic table structure constructed by set_up_table().
* has_a/has_many relationships declared explicitly.
* works!

Limitations:

* uses Class::DBI::mysql explicitly. Needs to use BaseDSN instead.
* connection information is currently hardcoded into DBv3.pm. It needs
to be brought in at compile time, so there are constraints on how this
can be done.
* no wrappers for LOCK/UNLOCK TABLES yet.
* no inflating/deflating for dates, comma separated lists, etc. yet.
* basically no testing.

Revision 3004 - Directory Listing
Modified Fri Nov 19 19:13:53 2004 UTC (15 years, 3 months ago) by sh002i
added "login" permission, handling code. also fixed some heinous
formatting.

Revision 3003 - Directory Listing
Modified Fri Nov 19 19:13:20 2004 UTC (15 years, 3 months ago) by sh002i
added "login" permission, handling code.

Revision 3002 - Directory Listing
Modified Fri Nov 19 18:30:16 2004 UTC (15 years, 3 months ago) by sh002i
"remove this comment on the next line if they get left in by accident"

Revision 3001 - Directory Listing
Modified Thu Nov 18 16:04:37 2004 UTC (15 years, 3 months ago) by gage
These changes elevate the Options panel to ContentGenerator.pm
Some of the changes are a bit hackish, but I believe that they
are sufficient for the moment.  I expect much of the machinery
to be replaced by an "options" table in the new database.

The current options state consists of two values:  displayMode (for
viewing equations) and showOldAnswers (for showing answers between
one session and the next).  "Sticky answers" which show form entries
when the form is submitted and returned is a feature which is always on,
as I believe it should be.

Known bugs:

The options state is lost when visiting the Instructor pages, editing
problems, and probably sending instructor feedback.  (I have made sure
that state was passed for the main links, I hope, but there are many
other possible links where state can get lost. My hope is that storing
state in the database will make it unnecessary to hunt down every link
where state needs to be preserved.)

Default options are set in the subroutine options in ContentGenerator.pm
This is called before body, where the option panel is displayed, but not
before the initialization phase.  Modules that need options in the
initialization phase (currently only Problem.pm) need to set them
themselves.

Removed File Transfer from instructor links.  File Manager works fine.

Revision 3000 - Directory Listing
Modified Thu Nov 18 16:00:37 2004 UTC (15 years, 3 months ago) by gage
These changes elevate the Options panel to ContentGenerator.pm
Some of the changes are a bit hackish, but I believe that they
are sufficient for the moment.  I expect much of the machinery
to be replaced by an "options" table in the new database.

The current options state consists of two values:  displayMode (for
viewing equations) and showOldAnswers (for showing answers between
one session and the next).  "Sticky answers" which show form entries
when the form is submitted and returned is a feature which is always on,
as I believe it should be.

Known bugs:

The options state is lost when visiting the Instructor pages, editing
problems, and probably sending instructor feedback.  (I have made sure
that state was passed for the main links, I hope, but there are many
other possible links where state can get lost. My hope is that storing
state in the database will make it unnecessary to hunt down every link
where state needs to be preserved.)

Default options are set in the subroutine options in ContentGenerator.pm
This is called before body, where the option panel is displayed, but not
before the initialization phase.  Modules that need options in the
initialization phase (currently only Problem.pm) need to set them
themselves.

Revision 2998 - Directory Listing
Modified Thu Nov 18 01:45:29 2004 UTC (15 years, 3 months ago) by gage
Made modifications to the user interface so that "show saved answers"
can now be turned off.  If the default mode was on, then this feature
could never be turned off. (Unchecked check boxes don't return 0, they
are simply not defined.)

Revision 2996 - Directory Listing
Modified Thu Nov 11 15:52:08 2004 UTC (15 years, 3 months ago) by gage
Added line to shift column numbers so that they start at 1 instead of
0 (this brings this in line with the modifications made to SendMain.pm)

To do:  merge the two procedures used in sendmail and in grades.pm which
merge scoring data with the message.  Then future updates won't break
the code.

Revision 2995 - Directory Listing
Modified Thu Nov 11 15:40:21 2004 UTC (15 years, 3 months ago) by gage
removed FIXME comment that is no longer needed.

Revision 2994 - Directory Listing
Modified Wed Nov 10 21:17:38 2004 UTC (15 years, 3 months ago) by toenail
Enormous speed increase by not doing unneccesary
assignments or deletions when the user/set record already exists (or not).

Revision 2983 - Directory Listing
Modified Wed Nov 3 22:00:10 2004 UTC (15 years, 3 months ago) by dpvc
Added ability to control the "Missing TeX Fonts" message generated by
jsMath.  There are now two parameters in global.conf that control the
message.  You can set

	$pg{displayModeOptions}{jsMath}{reportMissingFonts}

to 0 if you want no font messages, and you can set

	$pg{displayModeOptions}{jsMath}{missingFontMessage}

to a string that should be issued when the fonts are missing.  This
can be an HTML string, so you can include a link to the jsMath font
page, as the current message does.  The message will be set in a <DIV>
of class NoFontMessage, so the style attributes can be controled in
the content-generators template file.

Revision 2981 - Directory Listing
Modified Wed Nov 3 19:54:25 2004 UTC (15 years, 3 months ago) by toenail
help files now use module name instead of urlpath node name

Revision 2973 - Directory Listing
Modified Tue Nov 2 20:47:35 2004 UTC (15 years, 3 months ago) by sh002i
updated $main::VERSION

Revision 2971 - Directory Listing
Modified Tue Nov 2 19:58:57 2004 UTC (15 years, 3 months ago) by sh002i
POD fix.

Revision 2970 - Directory Listing
Modified Tue Nov 2 19:58:31 2004 UTC (15 years, 3 months ago) by sh002i
better handling when no display module is found for the path.

Revision 2966 - Directory Listing
Modified Wed Oct 27 17:48:05 2004 UTC (15 years, 4 months ago) by toenail
Every problem after one that was marked as a repeat was being marked as a repeat

closes #725

Revision 2965 - Directory Listing
Modified Tue Oct 26 03:16:40 2004 UTC (15 years, 4 months ago) by jj
Beautification of set names.

Revision 2964 - Directory Listing
Modified Tue Oct 26 03:14:01 2004 UTC (15 years, 4 months ago) by jj
Beautification of set names in Student Progress page.

Revision 2963 - Directory Listing
Modified Tue Oct 26 03:13:00 2004 UTC (15 years, 4 months ago) by jj
Beautification of set names in grade module.

Revision 2962 - Directory Listing
Modified Tue Oct 26 00:14:32 2004 UTC (15 years, 4 months ago) by jj
Tidying of set names: don't automatically write "set" (teacher can include
that), and convert _ to non-breaking spaces in set name.

Revision 2961 - Directory Listing
Modified Tue Oct 26 00:04:28 2004 UTC (15 years, 4 months ago) by jj
More fix on the Assigned Sets/User ID column heading so that they are right
both in and out of editMode.

Revision 2960 - Directory Listing
Modified Mon Oct 25 22:40:19 2004 UTC (15 years, 4 months ago) by jj
When making a new set, leave the name as it was input.  Should resolve
confusion when making sets starting with "set".

Revision 2959 - Directory Listing
Modified Mon Oct 25 22:37:32 2004 UTC (15 years, 4 months ago) by jj
Whitespace changes, mainly a few tabs to spaces.

Revision 2956 - Directory Listing
Modified Fri Oct 22 23:06:44 2004 UTC (15 years, 4 months ago) by sh002i
pod fixes

Revision 2955 - Directory Listing
Modified Fri Oct 22 22:59:53 2004 UTC (15 years, 4 months ago) by sh002i
POD fixes

Revision 2954 - Directory Listing
Modified Fri Oct 22 18:03:14 2004 UTC (15 years, 4 months ago) by sh002i
send call stack to error log, use Apache::Log to log warnings.

Revision 2952 - Directory Listing
Modified Thu Oct 21 23:56:21 2004 UTC (15 years, 4 months ago) by gage
Adjusted the headers for the dates

Revision 2948 - Directory Listing
Modified Thu Oct 21 01:44:14 2004 UTC (15 years, 4 months ago) by sh002i
added "User Value" and "Global Value" headers (bug #719)

Revision 2947 - Directory Listing
Modified Thu Oct 21 01:34:40 2004 UTC (15 years, 4 months ago) by sh002i
fixed bug #721.

Revision 2946 - Directory Listing
Modified Thu Oct 21 01:22:51 2004 UTC (15 years, 4 months ago) by sh002i
quick fix for errors while reading directories (bug #720).

Revision 2945 - Directory Listing
Modified Thu Oct 21 01:16:18 2004 UTC (15 years, 4 months ago) by sh002i
fixed typo

Revision 2944 - Directory Listing
Modified Thu Oct 21 01:06:19 2004 UTC (15 years, 4 months ago) by sh002i
formatting fixes (sorry jj, dpvc).

Revision 2943 - Directory Listing
Modified Wed Oct 20 23:29:50 2004 UTC (15 years, 4 months ago) by dpvc
Wrong column heading corrected.

Revision 2942 - Directory Listing
Modified Wed Oct 20 21:52:06 2004 UTC (15 years, 4 months ago) by dpvc
The lines of data were being sorted incorrectly due to the time-stamp
that is being added to the line, and due to the correct/incorrect
answer data that was added in order to color-code the answer display.

Revision 2941 - Directory Listing
Modified Wed Oct 20 19:02:43 2004 UTC (15 years, 4 months ago) by sh002i
fixed indentation -- please read the webwork coding standards.
http://devel.webwork.rochester.edu/twiki/bin/view/Webwork/CodingStandards

Revision 2939 - Directory Listing
Modified Wed Oct 20 16:45:34 2004 UTC (15 years, 4 months ago) by sh002i
add check for undefiend user param (closes bug #714). use $userID for
variable containing the ID of a user (not $User, which is typically used
for a user RECORD).

Revision 2931 - Directory Listing
Modified Sun Oct 17 03:11:43 2004 UTC (15 years, 4 months ago) by gage
Changed format of run time

Revision 2930 - Directory Listing
Modified Fri Oct 15 20:35:15 2004 UTC (15 years, 4 months ago) by gage
Adding write to timing log which summarizes the time spent in this module.
This does not give detailed timing data.  It prints whether or not the timing
log is enabled in "Constants.pm".  It uses Utils::writeTimingLogEntry and
makes an entry as long as the "timing" log facility has been defined in global.conf

Revision 2929 - Directory Listing
Modified Fri Oct 15 20:33:04 2004 UTC (15 years, 4 months ago) by gage
Removed writing to Timing log from this module.

Revision 2928 - Directory Listing
Modified Fri Oct 15 19:25:24 2004 UTC (15 years, 4 months ago) by gage
fixed typo in "edit_set_for_user"  which should be "edit_set_for_users".  also
changed label to correspond.

Revision 2927 - Directory Listing
Modified Fri Oct 15 04:30:20 2004 UTC (15 years, 4 months ago) by sh002i
work on error and warning output. prettification of stack traces,
rewording of explanatory text, better logging, other stuff. a lot of
annoying crap, basically.

Revision 2926 - Directory Listing
Modified Thu Oct 14 16:56:18 2004 UTC (15 years, 4 months ago) by sh002i
applied dpvc's index patch, use FileManager instead of FileXfer, fixed
indentation.

Revision 2913 - Directory Listing
Modified Wed Oct 13 01:55:15 2004 UTC (15 years, 4 months ago) by sh002i
optimizations in database access (makes a big difference).

My notes:

Here's the initial timing data for a set with 10 problems:

TIMING 57300 2 1097622363.881851 (16.734902) mth162: END (assumed)

$mergedRecord is never used in FieldHTML(). However, it is populated
with a merged set or problem, which requires two database calls and a
merge operation. It appears to be OK to get rid of these calls
altogether.

TIMING 57582 0 1097624803.340321 (11.219321) mth162: END (assumed)

i'm not as worried about the several DB calls in
handle_problem_numbers(), since that only happens when "Save Changes" is
clicked. not looking at those for now...

in initialize(), the global set is fetched from the database at the
beginning (and put into $setRecord). then it is fetched again in two
places, first in a conditional if the "submit_changes" param is defined,
and then in the following conditional, when "submit_changes" is defined
and there was no error. taking this out...

(those conditionals are pretty weird to begin with. i would have
expected something more like "if (submit_changes) { ... unless (error) {
... } }". probably from grafting code together?)

ok, the big one is getting pre-fetched records into FieldHTML. I added
$setRecord and $problemRecord parameters to FieldHTML (and $Set and
$Problem parameters to FieldTable to pass through to FieldHTML), and
pre-fetch GlobalProblems, UserProblems, and MergedProblems en masse
before going through the problem IDs in body().

TIMING 58456 0 1097632191.012939 (4.516615) mth162: END (assumed)

And it's only a little more than that when viewing for a particular
user:

TIMING 58453 0 1097632169.074723 (6.513201) mth162: END (assumed)

Revision 2906 - Directory Listing
Modified Tue Oct 12 20:27:35 2004 UTC (15 years, 4 months ago) by sh002i
added link to FileManager to link menu. Link to FileXfer is still
present as well, for the time being. We may remove it soon.

Revision 2904 - Directory Listing
Modified Tue Oct 12 18:13:58 2004 UTC (15 years, 4 months ago) by gage
Changed "refresh" to "refresh display" as name for button in
ProblemSetDetail
Added link to the
File Manager

Revision 2903 - Directory Listing
Modified Tue Oct 12 18:12:48 2004 UTC (15 years, 4 months ago) by gage
Added link to the File Manager

Revision 2902 - Directory Listing
Modified Tue Oct 12 02:30:14 2004 UTC (15 years, 4 months ago) by gage
Made changes to the way $r->param("user") is handled, so that it
is always called in a scalar context.

This avoids errors caused if user is defined more than once.

Revision 2901 - Directory Listing
Modified Tue Oct 12 01:02:36 2004 UTC (15 years, 4 months ago) by toenail
Added Mark Correct? option
Added date checking
fixed some issues with sticky values

Revision 2899 - Directory Listing
Modified Mon Oct 11 23:40:04 2004 UTC (15 years, 4 months ago) by gage
If the users status is undefined it is set to C  AND
it is now saved back to the database.

Revision 2898 - Directory Listing
Modified Mon Oct 11 23:13:53 2004 UTC (15 years, 4 months ago) by sh002i
entabed (we like real tabs)

Revision 2897 - Directory Listing
Modified Mon Oct 11 23:13:22 2004 UTC (15 years, 4 months ago) by sh002i
fixed call to start_multipart_form which caused authen params to be
included in form action.

Revision 2896 - Directory Listing
Modified Mon Oct 11 23:11:41 2004 UTC (15 years, 4 months ago) by sh002i
added davide's filemanager

Revision 2895 - Directory Listing
Modified Mon Oct 11 19:53:06 2004 UTC (15 years, 4 months ago) by gage
fixing gage specific timing log file (again)

Revision 2894 - Directory Listing
Modified Mon Oct 11 19:37:42 2004 UTC (15 years, 4 months ago) by gage
Changed error reporting when there is an error in date/time.  This

specifies what the subroutine thinks date and time are, making it
easier to discover the error in the format of the input

I also removed a line which tried to remove the "at" from a format --
such hehelpfuness being unappreciated by the unformatDateTime
subroutine.

Revision 2893 - Directory Listing
Modified Mon Oct 11 19:36:30 2004 UTC (15 years, 4 months ago) by gage
Changed error reporting when there is an error in date/time.  This
specifies what the subroutine thinks date and time are, making it
easier to discover the error in the format of the input

Revision 2892 - Directory Listing
Modified Mon Oct 11 13:32:01 2004 UTC (15 years, 4 months ago) by gage
Evaluate  $r->param("user") in a scalar context in case user has been
defined more than once.

It would also be nice to find where the double definitions are coming
from.

Revision 2891 - Directory Listing
Modified Mon Oct 11 13:30:09 2004 UTC (15 years, 4 months ago) by gage
Fixed mistake involving "at" in interpreting the date and time
string in a .def file

Revision 2890 - Directory Listing
Modified Sun Oct 10 21:45:43 2004 UTC (15 years, 4 months ago) by sh002i
support for password and permission level in classlist, bug #649. note
that passowrd is crypted!

Revision 2889 - Directory Listing
Modified Sun Oct 10 21:44:23 2004 UTC (15 years, 4 months ago) by sh002i
blah

Revision 2888 - Directory Listing
Modified Sun Oct 10 21:43:34 2004 UTC (15 years, 4 months ago) by sh002i
support for option password and permission fields, header on outgoing
classlists. part of the fix for bug 649.

Revision 2887 - Directory Listing
Modified Sun Oct 10 21:04:47 2004 UTC (15 years, 4 months ago) by sh002i
catch invalid course names in validation (bug #702). fix typo in
previous commit.

Revision 2886 - Directory Listing
Modified Sun Oct 10 20:53:19 2004 UTC (15 years, 4 months ago) by sh002i
restore course name in breadcrumbs (closed bug #701)

Revision 2885 - Directory Listing
Modified Sun Oct 10 20:48:17 2004 UTC (15 years, 4 months ago) by sh002i
added check for user ID collisions, closing bug #711.

Revision 2884 - Directory Listing
Modified Sun Oct 10 20:34:07 2004 UTC (15 years, 4 months ago) by sh002i
use WeBWorK::File::Classlist for classlist parsing and writing.

Revision 2882 - Directory Listing
Modified Sun Oct 10 20:33:18 2004 UTC (15 years, 4 months ago) by sh002i
added toHash() method to get a copy of the self hash

Revision 2880 - Directory Listing
Modified Sun Oct 10 20:31:54 2004 UTC (15 years, 4 months ago) by sh002i
added WeBWorK::File::Classlist, for parsing and writing classlists.

Revision 2879 - Directory Listing
Modified Sun Oct 10 17:06:23 2004 UTC (15 years, 4 months ago) by sh002i
reorganized, added reindex() method. reindex() will regenerate indices and
report what was wrong with the old ones. it cannot deal with the case
where there are two records that have the same user ID and set ID, but it
does issue a warning in that case.

Revision 2878 - Directory Listing
Modified Sun Oct 10 17:04:55 2004 UTC (15 years, 4 months ago) by sh002i
doc fixworks now

Revision 2876 - Directory Listing
Modified Sat Oct 9 03:07:23 2004 UTC (15 years, 4 months ago) by gage
protect against the possiblity that user has been defined twice in hidden fields
 or in the search args and a hidden field.

Revision 2875 - Directory Listing
Modified Sat Oct 9 03:06:30 2004 UTC (15 years, 4 months ago) by gage
Insure that the problems score is always defined (default is 0)

Revision 2874 - Directory Listing
Modified Sat Oct 9 03:05:13 2004 UTC (15 years, 4 months ago) by gage
replace old method of evaluating variables by a safer method (no evaluation required)

This code copied from SendMail.pm changes made recently by Sam.

Revision 2873 - Directory Listing
Modified Sat Oct 9 03:03:13 2004 UTC (15 years, 4 months ago) by gage
Check that userRecord status has been properly defined.

Revision 2872 - Directory Listing
Modified Fri Oct 8 19:58:18 2004 UTC (15 years, 4 months ago) by jj
Make Try it and Edit it buttons pass along the current problem seed
value, closing bug 682.

Revision 2871 - Directory Listing
Modified Fri Oct 8 18:30:32 2004 UTC (15 years, 4 months ago) by jj
Timestamps seem to need Date::Format for time2str to be defined.

Revision 2868 - Directory Listing
Modified Thu Oct 7 23:08:13 2004 UTC (15 years, 4 months ago) by gage
Modifications to the format for error reporting.

Revision 2867 - Directory Listing
Modified Thu Oct 7 19:55:18 2004 UTC (15 years, 4 months ago) by sh002i
removed gage-specific path.

Revision 2865 - Directory Listing
Modified Thu Oct 7 01:40:47 2004 UTC (15 years, 4 months ago) by sh002i
refactored PSVN handling (sorta).
also sketch of new, better database checking code after __END_.

Revision 2864 - Directory Listing
Modified Thu Oct 7 01:39:45 2004 UTC (15 years, 4 months ago) by sh002i
eliminate false positives in hashDatabaseOK()

Revision 2861 - Directory Listing
Modified Wed Oct 6 21:01:46 2004 UTC (15 years, 4 months ago) by gage
Added time stamp to the warning
Added time stamp to warning messages.

Revision 2860 - Directory Listing
Modified Wed Oct 6 21:00:19 2004 UTC (15 years, 4 months ago) by gage
Added time stamp to the warning messages.

Revision 2859 - Directory Listing
Modified Mon Oct 4 20:56:00 2004 UTC (15 years, 4 months ago) by toenail
if status is set but attempted is not,
sets attempted to 1

Revision 2858 - Directory Listing
Modified Mon Oct 4 18:28:16 2004 UTC (15 years, 4 months ago) by sh002i
complete rewrite of parseDateTime to close bug #693.

- using modified version of WW1's unformatDateAndTime() function for
actual parsing.
- intelligent treatment of two, three, and four digit years consistent
with Time::Local.
- attempt to interpret time zone specification using DateTime::TimeZone
and then Time::Zone. if neither succeeds, an expection is thrown.
- if timezone is not specified, $display_tz is actually used.

It never ceases to amaze me how tricky time zone handling is. It appears
that I have it right now, but please test.

Revision 2856 - Directory Listing
Modified Mon Oct 4 17:54:11 2004 UTC (15 years, 4 months ago) by sh002i
eliminated warnings in cases where status is "".

Revision 2854 - Directory Listing
Modified Thu Sep 30 14:53:15 2004 UTC (15 years, 4 months ago) by toenail
removed ability to duplicate a set in edit mode
still possible in regular viewing mode

Revision 2853 - Directory Listing
Modified Wed Sep 29 23:45:42 2004 UTC (15 years, 4 months ago) by sh002i
don't send stupid header for safari, don't set feedbackRecipients.

Revision 2852 - Directory Listing
Modified Wed Sep 29 23:38:40 2004 UTC (15 years, 4 months ago) by sh002i
make SQL comparisons case-sensitive. closes bug #679.

Revision 2851 - Directory Listing
Modified Wed Sep 29 23:37:21 2004 UTC (15 years, 4 months ago) by sh002i
protect against sql injection attacks by using "?" everywhere.

Revision 2850 - Directory Listing
Modified Wed Sep 29 22:48:08 2004 UTC (15 years, 4 months ago) by sh002i
actually set RaiseError :)

Revision 2849 - Directory Listing
Modified Wed Sep 29 21:38:06 2004 UTC (15 years, 4 months ago) by sh002i
added permissions to allow disabling of feedback, options.
submit_feedback, change_password, change_email_address

Revision 2848 - Directory Listing
Modified Wed Sep 29 18:00:42 2004 UTC (15 years, 4 months ago) by sh002i
better sql error handling. if connect_cached() fails, an exception is
thrown. both handles have RaiseError set, so subsequent errors cause
expections to be thrown too.

Revision 2847 - Directory Listing
Modified Wed Sep 29 16:49:30 2004 UTC (15 years, 4 months ago) by sh002i
moved new names of some modules to URLPath. added sp2nbsp() for link
names.

Revision 2846 - Directory Listing
Modified Wed Sep 29 16:23:58 2004 UTC (15 years, 4 months ago) by apizer
On the edit set list view, make the set_id a link so that users can see
where to edit all set data, e.g. the header file info.

Arnie

Revision 2845 - Directory Listing
Modified Wed Sep 29 16:20:02 2004 UTC (15 years, 4 months ago) by sh002i
case-insensitive sorting

Revision 2844 - Directory Listing
Modified Wed Sep 29 16:19:37 2004 UTC (15 years, 4 months ago) by sh002i
removed silly safari hack, added warning about this utility sucking.

Revision 2843 - Directory Listing
Modified Wed Sep 29 15:59:12 2004 UTC (15 years, 4 months ago) by toenail
Modified flow of verify() so that a user doesn't have to login twice
if they have a cookie with an expired key.

Revision 2841 - Directory Listing
Modified Wed Sep 29 15:26:28 2004 UTC (15 years, 4 months ago) by toenail
Make sure that all request param data defaults to at least ""
Fixed Try it links

Closes #695, 697

Revision 2840 - Directory Listing
Modified Wed Sep 29 14:45:58 2004 UTC (15 years, 4 months ago) by apizer
Fixed typo.

Arnie
CVS ----------------------------------------------------------------------

Revision 2839 - Directory Listing
Modified Wed Sep 29 00:37:18 2004 UTC (15 years, 4 months ago) by apizer
Make open date, etc. boxes larger to accomodate time zones.

Arnie

Revision 2838 - Directory Listing
Modified Tue Sep 28 21:07:53 2004 UTC (15 years, 4 months ago) by apizer
Increase size of boxes for editing open date, etc. so that time zones
show up.

Arnie

Revision 2835 - Directory Listing
Modified Mon Sep 27 19:21:54 2004 UTC (15 years, 4 months ago) by sh002i
added dbLayoutSQLSources function to get a hash mapping DBI sources to
the username and password of the source and the tables that use the
source.

Revision 2834 - Directory Listing
Modified Mon Sep 27 19:08:47 2004 UTC (15 years, 4 months ago) by toenail
Preserves sticky values on all form submissions
Added reset form button to delete any unsaved changes
Added file error messgaes for headers and problems with
non-existant, invalid, or duplicate filenames

Revision 2833 - Directory Listing
Modified Mon Sep 27 19:05:14 2004 UTC (15 years, 4 months ago) by toenail
No longer initially sets value of textbox to that of select menu
so that sticky values are preserved.  Checks first for the select menu
default value.

Revision 2829 - Directory Listing
Modified Fri Sep 24 15:21:50 2004 UTC (15 years, 5 months ago) by gage
Added time zone to the format time and dates subroutine in Utils.pm

Revision 2828 - Directory Listing
Modified Fri Sep 24 12:38:43 2004 UTC (15 years, 5 months ago) by gage
Changed titles of columns to include the word edit.

Revision 2826 - Directory Listing
Modified Fri Sep 24 12:15:01 2004 UTC (15 years, 5 months ago) by gage
Check to see that value is defined before using pattern match

Revision 2825 - Directory Listing
Modified Thu Sep 23 22:03:03 2004 UTC (15 years, 5 months ago) by dpvc
Matching full path was not working (the match was being made
against only the file name regardless of the match flag).

Revision 2821 - Directory Listing
Modified Thu Sep 23 18:45:48 2004 UTC (15 years, 5 months ago) by sh002i
tiny doc fix -- new() takes a $dbLayout, not a $ce

Revision 2819 - Directory Listing
Modified Thu Sep 23 16:53:31 2004 UTC (15 years, 5 months ago) by sh002i
cleaned up command-line scripts.
- use new hashref form of WeBWorK::CourseEnvironment constructor.
- moved PSH to lib/
- stop using FindBin in wwsh

Revision 2817 - Directory Listing
Modified Thu Sep 23 13:09:33 2004 UTC (15 years, 5 months ago) by toenail
undefined value was causing unnecessary warns

Revision 2816 - Directory Listing
Modified Thu Sep 23 12:59:53 2004 UTC (15 years, 5 months ago) by toenail
Added ComboBoxes for header information
Allows user to enter a user specified value
or to select from currently existing header files

Revision 2815 - Directory Listing
Modified Thu Sep 23 12:57:45 2004 UTC (15 years, 5 months ago) by toenail
New widget for general use
Contains a textfield and dropdown menu of options
Makes use of javascript to simulate similar comboboxes from
windows/macs/etc

Revision 2811 - Directory Listing
Modified Tue Sep 21 20:20:25 2004 UTC (15 years, 5 months ago) by toenail
minor patch to previous update fully allows editing one set
for multiple users

Revision 2810 - Directory Listing
Modified Tue Sep 21 20:08:51 2004 UTC (15 years, 5 months ago) by toenail
Added ability to duplicate a set.
Removed header files, now viewable/editable from ProblemSetEditor
Changed links to ProblemSetDetail
Lists skipped sets when importing.

Revision 2809 - Directory Listing
Modified Tue Sep 21 20:07:48 2004 UTC (15 years, 5 months ago) by toenail
Added ability to edit Hardcopy Header

If passed make_local_copy with any true value, assumes
that the file being edited is some type of library or default file
that should not be overwritten and the Save button is greyed out.

Stopped editor from trying to edit blank files or edit directories as files.

Revision 2808 - Directory Listing
Modified Tue Sep 21 20:05:16 2004 UTC (15 years, 5 months ago) by toenail
Changed ProblemSetEditor calls to ProblemSetDetail
Added Davide Cervone's patches
   - Fixes formatting
   - Made usage more consistent
   - Added appropriate error messages

Closes #663.

Revision 2807 - Directory Listing
Modified Tue Sep 21 20:01:25 2004 UTC (15 years, 5 months ago) by toenail
Added new setCountMessage so that ProblemSetDetail can say:
"User toenail has been assigned x sets"

Revision 2806 - Directory Listing
Modified Tue Sep 21 19:59:19 2004 UTC (15 years, 5 months ago) by toenail
Changed references from ProblemSetEditor to ProblemSetDetail
Added ability to edit a set for multiple users.  Closes #646 and #662.

Revision 2805 - Directory Listing
Modified Tue Sep 21 19:55:48 2004 UTC (15 years, 5 months ago) by toenail
Changed some references from ProblemSetEditor to ProblemSetDetail

Revision 2804 - Directory Listing
Modified Tue Sep 21 19:51:45 2004 UTC (15 years, 5 months ago) by toenail
Changed instructor_set_detail from ProblemSetEditor to ProblemSetDetail
Removed instructor_problem_list
Changed some references from ProblemSetEditor to ProblemSetDetail

Revision 2794 - Directory Listing
Modified Fri Sep 17 19:40:42 2004 UTC (15 years, 5 months ago) by toenail
Replaces ProblemSetEditor.pm and ProblemList.pm as primary form of editing
set/problem information.

Revision 2793 - Directory Listing
Modified Fri Sep 17 18:46:35 2004 UTC (15 years, 5 months ago) by apizer
Sort sudents by Last Name, First Name instead of bu user_id

Revision 2792 - Directory Listing
Modified Fri Sep 17 15:35:55 2004 UTC (15 years, 5 months ago) by apizer
List students by their real names (in addition to studentID).

Arnie

Revision 2787 - Directory Listing
Modified Thu Sep 16 19:44:44 2004 UTC (15 years, 5 months ago) by apizer
Remove extraneous evals and also clean up email if no record exists in
merge file.

Arnie

Revision 2786 - Directory Listing
Modified Thu Sep 16 18:59:01 2004 UTC (15 years, 5 months ago) by apizer
Changed substitution as suggested by Sam

Arnie

Revision 2785 - Directory Listing
Modified Thu Sep 16 17:10:02 2004 UTC (15 years, 5 months ago) by apizer
lean up test seen by students.

Arnie

Revision 2782 - Directory Listing
Modified Tue Sep 14 22:10:14 2004 UTC (15 years, 5 months ago) by sh002i
re-added use Date::Format

Revision 2779 - Directory Listing
Modified Tue Sep 14 18:55:58 2004 UTC (15 years, 5 months ago) by apizer
Make $COL[1], not $COL[0], the first column of the merge file.
Also stop negative indexes from cycling, e.g. $COL[-12] should
not give $COL[8] in a 10 column merge file.

Arnie

Revision 2778 - Directory Listing
Modified Mon Sep 13 19:35:12 2004 UTC (15 years, 5 months ago) by sh002i
timezone support

Revision 2777 - Directory Listing
Modified Mon Sep 13 19:34:54 2004 UTC (15 years, 5 months ago) by sh002i
disabled "sid_open", "sid_due", and "sid_answer" formats, since they
don't currenly work with timezones.

We need to find some way to get the timezone information in there
without messing up the interface. One option is to actually have the
database system aware of the timezone and propgate that information on
to the Set and UserSet Record classes. Then, add formatted pseudo-fields
to those record classes that encapsulate the date conversions. Hm, that
would be cool.

Eventually, it would be nice if the date accessors returned DateTime
objects instead of epochs, but that is for later.

Revision 2776 - Directory Listing
Modified Mon Sep 13 19:29:55 2004 UTC (15 years, 5 months ago) by sh002i
added second argument to formatDateTime(), to support timezone specified
in course environment.

Revision 2775 - Directory Listing
Modified Mon Sep 13 19:29:08 2004 UTC (15 years, 5 months ago) by sh002i
added formatDateTime and parseDateTime methods that use the timezone
from the course environment if one is not specified and call the "real"
functions in WeBWorK::Utils.

Revision 2774 - Directory Listing
Modified Mon Sep 13 17:42:53 2004 UTC (15 years, 5 months ago) by sh002i
moved "use" lines to top of file, clobbered lingering "warn". noticed by
dpvc.

Revision 2773 - Directory Listing
Modified Sun Sep 12 12:09:53 2004 UTC (15 years, 5 months ago) by dpvc
Added missing \ for apostrophes after user name.

Revision 2770 - Directory Listing
Modified Sat Sep 11 06:15:14 2004 UTC (15 years, 5 months ago) by sh002i
PRELIMINARY SUPPORT FOR TIME ZONES (towards closing bug #532).

(1) new configuration variable $siteDefaults{timezone}

Set the default timezone of courses on this server. This must be a value
valid for the TZ environment variable. See also tzset(3).

If left blank, the system timezone will be used. This is usually what
you want. You might want to set this if your server is NOT in the same
timezone as your school. If just a few courses are in a different
timezone, set this in course.conf for the affected courses instead.

(2) support for second optional $display_tz argument to formatDateTime()
and parseDateTime().

If specified, formatted string datetimes will be considered to be in
that timezone instead of the server's local timezone.


Remaining work:

find all calls to *DateTime() and add the $client_tz argument.

$client_tz is is really something that *DateTime() should be able to
grab out of $ce, but they're not a method on ContentGenerator, so we
have to pass it in. It might be worth moving them to ContentGenerator.
(Or some new subclass of ContentGenerator or something?)

Revision 2769 - Directory Listing
Modified Sat Sep 11 00:45:10 2004 UTC (15 years, 5 months ago) by sh002i
cleanup

Revision 2767 - Directory Listing
Modified Fri Sep 10 22:40:52 2004 UTC (15 years, 5 months ago) by sh002i
applied dpvc's patch to clean up the answer results table, closing bug
#635.

Revision 2766 - Directory Listing
Modified Fri Sep 10 22:15:51 2004 UTC (15 years, 5 months ago) by sh002i
applied dpvc's filtering UI cleanup patch. closes bug #660.

Revision 2765 - Directory Listing
Modified Fri Sep 10 22:09:22 2004 UTC (15 years, 5 months ago) by sh002i
added WeBWorK::Contents switch for preserving hardcopy temp files.
closes bug #633.

Revision 2764 - Directory Listing
Modified Fri Sep 10 22:03:28 2004 UTC (15 years, 5 months ago) by sh002i
new using $authz for permissions checks in hardcopy

Revision 2763 - Directory Listing
Modified Fri Sep 10 22:02:54 2004 UTC (15 years, 5 months ago) by sh002i
removed unused

Revision 2762 - Directory Listing
Modified Fri Sep 10 21:33:30 2004 UTC (15 years, 5 months ago) by sh002i
removed unused fetching and passing-around of permission level,
commented-out old versions of code. working towards closing bug #574.

Revision 2761 - Directory Listing
Modified Fri Sep 10 21:14:50 2004 UTC (15 years, 5 months ago) by sh002i
applied dpvc's partial correctness reporting patch, closing bug #634.

Revision 2760 - Directory Listing
Modified Fri Sep 10 21:03:57 2004 UTC (15 years, 5 months ago) by sh002i
added check of real user's exiting password, closing bug #625.

Revision 2759 - Directory Listing
Modified Fri Sep 10 20:24:32 2004 UTC (15 years, 5 months ago) by sh002i
rel-2-0-patches merge: removed unused professor-enumerating code, fixing
bug #638.

Revision 2755 - Directory Listing
Modified Fri Sep 10 02:35:19 2004 UTC (15 years, 5 months ago) by sh002i
replaced hand-rolled header listing code with calls to
listFilesRecursive(). Libraries defined in $courseFiles{problibs} will
not be scanned, cutting down on time to list. Closes bug #623.

Revision 2754 - Directory Listing
Modified Fri Sep 10 02:32:09 2004 UTC (15 years, 5 months ago) by sh002i
added listFilesRecursive() subroutine, some housekeeping.

Revision 2752 - Directory Listing
Modified Wed Sep 8 16:43:53 2004 UTC (15 years, 5 months ago) by toenail
Fixes minor error in last submit.  My bad.

Revision 2749 - Directory Listing
Modified Wed Sep 8 15:49:24 2004 UTC (15 years, 5 months ago) by toenail
merging changes from patches

Original message:
Status was being checked for 'C' only and counting anything else
as a dropped student.  The check now uses the more abstract siteDefaults
variable from global.conf and admits auditing students as well

Also removed redundant second status check that could never be reached.

Revision 2747 - Directory Listing
Modified Wed Sep 8 06:38:59 2004 UTC (15 years, 5 months ago) by sh002i
putPassword() and putPermissionLevel() now auto-create records that
don't exist by calling addPassword() and addPermissionLevel()
respectively. Closes bug #643.

Revision 2745 - Directory Listing
Modified Wed Sep 8 01:42:46 2004 UTC (15 years, 5 months ago) by sh002i
rolling back accidental commit.

Revision 2744 - Directory Listing
Modified Wed Sep 8 01:42:05 2004 UTC (15 years, 5 months ago) by sh002i
Added Bill's textDateTime/intDateTime routines. Closes bug #618.

Revision 2742 - Directory Listing
Modified Wed Sep 8 01:07:50 2004 UTC (15 years, 5 months ago) by sh002i
removed "use WeBWorK::Utils" (added for debugging)

Revision 2741 - Directory Listing
Modified Wed Sep 8 01:06:32 2004 UTC (15 years, 5 months ago) by sh002i
make sure this problem number exists in the hash before returning. If it
doesn't, return undef. We check "pfn$n" since the path to the problem
file is the essence of the problem, and if this doesn't exist, the
problem might as well not exist.

Revision 2739 - Directory Listing
Modified Tue Sep 7 20:20:23 2004 UTC (15 years, 5 months ago) by sh002i
reduce circumstances in which GDBM retries connecting unncessarily.
- check for unreadable and unwriteable files
- when auto-creating file by connecting read/write, only connect once.
- improved error messages.

Revision 2738 - Directory Listing
Modified Sun Sep 5 18:00:23 2004 UTC (15 years, 5 months ago) by sh002i
rel-2-0-patches merge: fixes for invalid "published" field. Rob said:

should finally fix bugs dealing with sets being created (usually from 1.9)
without a valid setting in the published field

now anyone of Problem, ProblemSet, or ProblemSets will correct this bug.

Revision 2737 - Directory Listing
Modified Sun Sep 5 14:47:24 2004 UTC (15 years, 5 months ago) by dpvc
Better authorization checks (should there be a "view_past_answers"
permission level?) and a fix for missing </TABLE> when no entries
are found.

Revision 2736 - Directory Listing
Modified Sun Sep 5 01:03:13 2004 UTC (15 years, 5 months ago) by dpvc
Changed a null character to \000 which caused the file to be
considered a binary file by CVS.  I don't know why it is there in the
first place, however.  Anyone know?

Revision 2735 - Directory Listing
Modified Sun Sep 5 00:54:31 2004 UTC (15 years, 5 months ago) by dpvc
Modified ShowAnswers.pm so that the individual answsers are colored coded to
indicate whether they are correct or not.  I also added a permission
level called "dont_log_past_answers" that is true for professors (so
the answer log won't be cluttered up with professors answers, which we
don't really care about seeing).

While I was at it, I converted ShowAnswers.pm to use the CGI package
rather than explicit HTML.

Revision 2734 - Directory Listing
Modified Sat Sep 4 23:31:46 2004 UTC (15 years, 5 months ago) by dpvc
When a pg file has auxiliary files (like .gif images), it is often
stored in a separate directory in order to keep all the files
together.  In this case, the Library Browser will show the
subdirectory as a separate entry in the problem directory list, even
though the problem is logically part of its parent directory.

This patch modified the Library Browser so that these single-pg-file
directories are merged with their parents, as long as they also
include other non-pg-files.

It also provides a method of controling the library browser on a
directory-by-directory basis using specially named files.  If a
directory contains a file named "=library-ignore", then the directory
is never shown in the directory menu.  If it contains a file called
"=library-combine-up", then its contents are considered to be part of
the parent directory, even if it has more than one pg file.  If it
contains one called "=library-no-combine", then the directory is
always listed separately in the menu, even if it has only one pg file.

Revision 2724 - Directory Listing
Modified Thu Sep 2 22:53:00 2004 UTC (15 years, 5 months ago) by sh002i
cleaned up mike's permission level patch to Feedback.pm:
- added receive_feedback permission (conf/global.conf.dist)
- use standard hasPermissions() function (lib/WeBWorK/ContentGenerator/Feedback.pm)
- check for undefined and empty string in permission field (lib/WeBWorK/Authz.pm)

Revision 2719 - Directory Listing
Modified Thu Sep 2 21:21:43 2004 UTC (15 years, 5 months ago) by sh002i
formatting fix (also comitted to rel-2-0-patches)

Revision 2704 - Directory Listing
Modified Tue Aug 31 01:15:53 2004 UTC (15 years, 5 months ago) by dpvc
The variable for printing file names in course.conf was incorrectly
set up using email addresses instead of userIDs.

Revision 2703 - Directory Listing
Modified Mon Aug 30 19:32:57 2004 UTC (15 years, 5 months ago) by toenail
fixed bad logic that caused problems if user selected
"import multiple sets" but then chose only one set
(in this case handler erroneously expected a filename)
also tweaked sorting by name to be properly alphanumeric

Revision 2702 - Directory Listing
Modified Mon Aug 30 19:22:27 2004 UTC (15 years, 5 months ago) by dpvc
Fixed a problem with the new stack traceback error trapping.  It seems
that the hardcopy generator uses the error routines to pass array
references rather than strings, so I've added a check for that in the
__DIE__ signal handler so that it won't try to add tracebacks to
those.

Revision 2700 - Directory Listing
Modified Sat Aug 28 14:10:13 2004 UTC (15 years, 5 months ago) by jj
Changed sort of current sets to use sortByName.

Revision 2699 - Directory Listing
Modified Sat Aug 28 13:56:54 2004 UTC (15 years, 5 months ago) by dpvc
Improved error message reporting in PG and in the main WeBWorK
dispatcher.  If an error is trapped by the main dispatcher, it now
prints a complete stack trace for the error.

Note that the PG error reporting also requires an update to the pg
tree as well, so be sure you update both trees.

Revision 2695 - Directory Listing
Modified Sat Aug 28 02:09:16 2004 UTC (15 years, 6 months ago) by jj
Sort lists of set definition files alphabetically.

Revision 2691 - Directory Listing
Modified Fri Aug 27 21:14:23 2004 UTC (15 years, 6 months ago) by sh002i
use "real" table names when checking names and overridden table names
when constructing sql statements

Revision 2686 - Directory Listing
Modified Thu Aug 26 02:38:08 2004 UTC (15 years, 6 months ago) by jj
Fixed bug in computation of average number of attempts (counter was not
being reset).  Also made display of average number of attempts display
tenths (these are small numbers as it is, it emphasizes that it is an
average, and it fits well below 2 digit percentages in the same table).

Revision 2685 - Directory Listing
Modified Thu Aug 26 01:34:30 2004 UTC (15 years, 6 months ago) by jj
Fixed logic for the check/submit buttons.  Previously, if a student had 1
attempt remaining, they only got a check button.  The problem was that
can{recordAnswers} was used for both deciding record/submit and for whether
or not to produce the Submit button.  On the last submission, these are
different.  So, this adds a new field to can/must/will so that one field
says whether we can record the current attempt, and another says if we
can generate a Submit button.

Revision 2683 - Directory Listing
Modified Tue Aug 24 16:53:16 2004 UTC (15 years, 6 months ago) by sh002i
added code to generate indexes when creating sql and sql_single courses.

Revision 2652 - Directory Listing
Modified Thu Aug 19 15:45:52 2004 UTC (15 years, 6 months ago) by toenail
added special handling of ' Top' directory for problem templates
now selecting top will show files in top directory not literal "Top" directory
fixes bug #630

Revision 2642 - Directory Listing
Modified Wed Aug 18 22:55:41 2004 UTC (15 years, 6 months ago) by gage
Bringing Hardcopy.pm up to date on this branch.  This fix
corrects bug #636. Students can no longer print hardcopy of
hidden sets.

Revision 2640 - Directory Listing
Modified Wed Aug 18 01:42:33 2004 UTC (15 years, 6 months ago) by sh002i
added deletion code, got rid of crap.

Revision 2639 - Directory Listing
Modified Wed Aug 18 01:41:39 2004 UTC (15 years, 6 months ago) by sh002i
added ordering and descriptions for known database layouts

Revision 2638 - Directory Listing
Modified Wed Aug 18 01:40:44 2004 UTC (15 years, 6 months ago) by sh002i
added debugging header!

Revision 2636 - Directory Listing
Modified Tue Aug 17 18:52:10 2004 UTC (15 years, 6 months ago) by sh002i
Actually display answers of zero. showHTML() was returning an EMPTY
STRING if its argument didn't have a TRUE VALUE.

Revision 2635 - Directory Listing
Modified Tue Aug 17 18:51:46 2004 UTC (15 years, 6 months ago) by sh002i
Actually record answers of zero in the answer log. An EMPTY string was
logged if the student answer was not a TRUE VALUE. Thus, answers of zero
were not being logged (although they were still in the transaction log).

Revision 2623 - Directory Listing
Modified Mon Aug 16 11:35:15 2004 UTC (15 years, 6 months ago) by dpvc
Fixed typos in Software Warning message.

Revision 2591 - Directory Listing
Modified Wed Aug 11 22:16:14 2004 UTC (15 years, 6 months ago) by jj
Convention of null database fields being converted to blanks made
null/blank date entries for a single user appear to be overrides, which they
aren't.

Revision 2588 - Directory Listing
Modified Tue Aug 10 23:58:01 2004 UTC (15 years, 6 months ago) by sh002i
use database-layout-specific helper functions in
WeBWorK::Utils::CourseManagement::*.

Revision 2587 - Directory Listing
Modified Tue Aug 10 23:57:24 2004 UTC (15 years, 6 months ago) by sh002i
broke out database-layout specific code into separate classes

Revision 2586 - Directory Listing
Modified Tue Aug 10 23:55:57 2004 UTC (15 years, 6 months ago) by sh002i
added comments, backquoted table names.

Revision 2585 - Directory Listing
Modified Tue Aug 10 23:55:29 2004 UTC (15 years, 6 months ago) by sh002i
added comments

Revision 2584 - Directory Listing
Modified Tue Aug 10 15:52:05 2004 UTC (15 years, 6 months ago) by toenail
added ability to unassign selected sets from selected users

Revision 2572 - Directory Listing
Modified Wed Aug 4 17:31:22 2004 UTC (15 years, 6 months ago) by jj
Changed "me" to this problem and fixed bug which appeared if a set_id
started with "set".

Revision 2562 - Directory Listing
Modified Fri Jul 30 22:57:25 2004 UTC (15 years, 6 months ago) by sh002i
Merged changes from the following commit to rel-2-1-a1.

Revision 1.41.2.4, Tue Jul 27 22:36:57 2004 UTC (3 days ago) by gage
Branch: rel-2-1-a1
Changes since 1.41.2.3: +4 -2 lines

Allows .html, .gif, .png, .txt as well as .pg files to be uploaded and
downloaded from the template directory and files under it.  Still can't
upload/download to the html directory

This is not a final solution, but a hack that make workarounds for many
operations possible for those who do not have direct unix access.  It's
still too clunky, but it's a start.

Revision 2542 - Directory Listing
Modified Tue Jul 20 23:21:40 2004 UTC (15 years, 7 months ago) by sh002i
fixed hashDatabaseOK to actually add problem records for global_user as
well as set records. this is also being committed to the rel-2-0-patches
branch.

Revision 2539 - Directory Listing
Modified Mon Jul 19 22:17:46 2004 UTC (15 years, 7 months ago) by jj
before, after, between did not cover all cases.  The choice of the marginal
cases was decided by the best behavior when displaying problems from outside
an actual problem set (in which case the dates may all equal now).

Revision 2512 - Directory Listing
Modified Thu Jul 15 00:13:19 2004 UTC (15 years, 7 months ago) by sh002i
fixed field name (it's ANSWER date, not close date!)

Revision 2507 - Directory Listing
Modified Mon Jul 12 23:38:52 2004 UTC (15 years, 7 months ago) by sh002i
name submitAnswers button "Submit Answers for $effectiveUser" if acting
as a student. (as per jj's suggestion -- see bug #541 again.)

Revision 2506 - Directory Listing
Modified Mon Jul 12 23:37:54 2004 UTC (15 years, 7 months ago) by sh002i
fix error in last commit

Revision 2505 - Directory Listing
Modified Mon Jul 12 22:15:57 2004 UTC (15 years, 7 months ago) by sh002i
Generalized %can settings in Problem.pm with new permissions. Closes bug
#541. See said bug for more details.

Revision 2498 - Directory Listing
Modified Mon Jul 12 04:23:00 2004 UTC (15 years, 7 months ago) by sh002i
Applied Bill Wheeler's urgency-sort patch, fixing bug #601.

Revision 2495 - Directory Listing
Modified Mon Jul 12 04:06:46 2004 UTC (15 years, 7 months ago) by sh002i
Applied Bill Wheeler's patch to send raw TeX to client as file download.
Fixes bug #589.

Revision 2491 - Directory Listing
Modified Mon Jul 12 02:30:32 2004 UTC (15 years, 7 months ago) by sh002i
MORE CONFIG CHANGES -- PLEASE READ.

I've changed the way WeBWorK is configured yet again. The Apache
configuration for WeBWorK is now done with <Perl> sections. This solves
the problem of "seeding" global.conf with initial values for the various
root directories and base URLs. it also eliminates redundancy in the
Apache configuration file itself.

The Apache configuration for WeBWorK is now contained in the file
conf/webwork.apache-config. This file is used both for normal systems,
where WeBWorK is integrated into the main Apache server, and development
systems, where each developer runs his or her own Apache server.

Inside webwork.apache-config, seven configuation variables are set:

     $webwork_url            The base URL handled by Apache::WeBWorK.
     $webwork_dir            The path to the base webwork2 directory.
     $pg_dir                 The path to the base pg directory.

     $webwork_htdocs_url     The base URL of the WeBWorK htdocs directory.
     $webwork_htdocs_dir     The path to the WeBWorK htdocs directory.

     $webwork_courses_url    The base URL of the WeBWorK courses directory.
     $webwork_courses_dir    The path to the WeBWorK courses directory.

These variables are used to configure the <Location>, Alias, AliasMatch,
and <Directory> directives necessary for WeBWorK operation.
$webwork_root and $pg_root are also used in "use lib" lines to add the
WeBWorK and PG lib directories to @INC.

Additionally, the above values are shared with WeBWorK via the
%WeBWorK::SeedCE hash. WeBWorK.pm passes the contents of this hash
(along with a value for "courseName") to CourseEnvironment.pm when
initializing the course environment. In turn, CourseEnvironment.pm seeds
the course environment namespace with these variables before evaluating
global.conf and course.conf.

Revision 2489 - Directory Listing
Modified Mon Jul 12 00:49:04 2004 UTC (15 years, 7 months ago) by jj
Fix error in feedback link when the server runs ssl (at least for its
standard port).

Revision 2486 - Directory Listing
Modified Sat Jul 10 21:53:31 2004 UTC (15 years, 7 months ago) by gage
Modified placement of help link for instructor links.

Revision 2485 - Directory Listing
Modified Sat Jul 10 21:45:48 2004 UTC (15 years, 7 months ago) by gage
Added hook for help for instructor links.

Revision 2482 - Directory Listing
Modified Sat Jul 10 18:13:59 2004 UTC (15 years, 7 months ago) by gage
Changed the way scoring files are read so that they work with files uploaded
from Macs.

Revision 2481 - Directory Listing
Modified Sat Jul 10 18:13:10 2004 UTC (15 years, 7 months ago) by gage
Added force_eoln() function for converting line endings of a string to unix line endings (\n)

Revision 2480 - Directory Listing
Modified Sat Jul 10 18:11:00 2004 UTC (15 years, 7 months ago) by gage
Added help escape handler specialized to handing a url with the
course name in the path.  The corresponding help file for this page
is course home.

Revision 2479 - Directory Listing
Modified Sat Jul 10 16:28:56 2004 UTC (15 years, 7 months ago) by sh002i
an ugly hack to convince safari to download the damn file! apparently
just sending a "Content-Disposition: attachment" header isn't enough. it
has to be a BINARY FILE! WTF! better solutions welcome.

Revision 2478 - Directory Listing
Modified Sat Jul 10 16:07:02 2004 UTC (15 years, 7 months ago) by sh002i
support incremental sending of exported databases (still slow though).

Revision 2474 - Directory Listing
Modified Thu Jul 8 23:27:16 2004 UTC (15 years, 7 months ago) by gage
Handle case where setID and probNumber are undefined (e.g.
when editing course_info file.)

Revision 2473 - Directory Listing
Modified Thu Jul 8 21:38:09 2004 UTC (15 years, 7 months ago) by sh002i
Properly escape params that are carried through login process.
Fixes bug #598.

Revision 2472 - Directory Listing
Modified Thu Jul 8 18:42:01 2004 UTC (15 years, 7 months ago) by sh002i
Moved "use File::Find" to Instructor.pm, where it is used.

Revision 2466 - Directory Listing
Modified Thu Jul 8 15:19:49 2004 UTC (15 years, 7 months ago) by gage
Added use File::Find

Revision 2465 - Directory Listing
Modified Thu Jul 8 14:53:47 2004 UTC (15 years, 7 months ago) by gage
Added routines allowing the uploading, downloading and deletion of
.pg files under the templates directory.  Links are not followed.

It's probable that more checks and user interface messages will be
needed.

Revision 2462 - Directory Listing
Modified Wed Jul 7 22:45:40 2004 UTC (15 years, 7 months ago) by jj
Added a space between words in message output to the screen.

Revision 2456 - Directory Listing
Modified Wed Jul 7 18:42:03 2004 UTC (15 years, 7 months ago) by gage
The bread crum path at the top leads back to the problem being edited, not to
the Instructor Tool.  This is at least reasonable behavior.

This fixes bug #596

--Mike

Revision 2455 - Directory Listing
Modified Wed Jul 7 18:15:20 2004 UTC (15 years, 7 months ago) by gage
Don't show unpublished sets in the siblings list (unless of course
you have permission to see unpublished sets.  (published == visible, unpublished == hidden)

This might be a little slow if there is a very long list of sibling sets.
Each set has to be checked to see if it is published.

Revision 2450 - Directory Listing
Modified Wed Jul 7 14:37:32 2004 UTC (15 years, 7 months ago) by gage
Changed the misnamed problem_header to hardcopy_header which is a more accurate
description of the variables use.

Hardcopy.pm now consults hardcopy_header as opposed to set_header

This addresses some of the concerns in bug #556

Revision 2446 - Directory Listing
Modified Tue Jul 6 21:23:58 2004 UTC (15 years, 7 months ago) by jj
Fixed call to hasPermissions.

Revision 2444 - Directory Listing
Modified Tue Jul 6 16:12:09 2004 UTC (15 years, 7 months ago) by sh002i
changed "save options" to "apply options". fixes bug #586.

Revision 2442 - Directory Listing
Modified Sun Jul 4 14:04:24 2004 UTC (15 years, 7 months ago) by sh002i
fixed docs, resolving bug #588.

Revision 2440 - Directory Listing
Modified Sat Jul 3 17:29:32 2004 UTC (15 years, 7 months ago) by sh002i
get dvipng settings from new place in CE

Revision 2437 - Directory Listing
Modified Sat Jul 3 17:13:29 2004 UTC (15 years, 7 months ago) by sh002i
changed the way invalid courses are detected. $ce->{'!'} is no longer
used. also, if CE initialization throws an exception, it is caught and
labeled as a problem with CE init.

Revision 2436 - Directory Listing
Modified Fri Jul 2 20:39:12 2004 UTC (15 years, 7 months ago) by dpvc
Fixed uninitialized value.  (It comes into play when there are no
answers required, as is true for some problems in tour orientation set.)

Revision 2435 - Directory Listing
Modified Fri Jul 2 20:31:33 2004 UTC (15 years, 7 months ago) by dpvc
Fix uninitialized value.  (It comes into play if a problem doesn't
have any answer blanks.  We have these in our orientation set.)

Revision 2434 - Directory Listing
Modified Thu Jul 1 23:35:22 2004 UTC (15 years, 7 months ago) by sh002i
replaced remaining DECLINEs with explicit error messages.

Revision 2433 - Directory Listing
Modified Thu Jul 1 21:24:35 2004 UTC (15 years, 7 months ago) by sh002i
changed error output to label error as a webwork error.

Revision 2431 - Directory Listing
Modified Thu Jul 1 20:31:13 2004 UTC (15 years, 7 months ago) by dpvc
Provide mechanism for adding extra problem library buttons
to the Library Browser.

These changes allow you to specify (via course.conf or global.conf)
that certain subdirectories of the templates directory are to have
separate buttons in the top panel of the Set Maker.  These buttons
only appear if the directories actually exist, and any other
directories are listed in the "Local Problems" button as usual.  If
the list of these directories is empty (the default), then the results
are just like they currently are, but it allows one more level of
separation of the hierarchy for those who want it.

The idea is to make symbolic links to the problem libraries from
Rochester, ASU, etc., and have separate buttons for these.  This
avoids having one monster menu with all the problems in it.  (Of
course, you could make buttons for any directories you want.)  There
are instructions in global.conf.dist that exmplain how to do configure
this.

Revision 2429 - Directory Listing
Modified Thu Jul 1 16:37:39 2004 UTC (15 years, 7 months ago) by jj
Adjusted test for whether a value is really an override.  Before it was
just whether the value was defined, but now we automatically promote
undef to empty strings.

Revision 2428 - Directory Listing
Modified Wed Jun 30 20:47:29 2004 UTC (15 years, 7 months ago) by jj
Made adjustment analogous to what is in StudentProgress.  Without it,
you get "" used in addition errors.

Revision 2427 - Directory Listing
Modified Wed Jun 30 20:23:47 2004 UTC (15 years, 7 months ago) by dpvc
Fixed "last" variables that were not being passed back from
the table row routine (where they are changed).

Revision 2426 - Directory Listing
Modified Wed Jun 30 15:18:49 2004 UTC (15 years, 7 months ago) by toenail
Error.pm will now serve as 404 not found page
so far only used for bad course names
fedhecks for bad course names
should work now for ww1 courses (bug #584)

Cvs: ----------------------------------------------------------------------

Revision 2425 - Directory Listing
Modified Wed Jun 30 15:15:16 2004 UTC (15 years, 7 months ago) by toenail
fixed checks for bad course names
should work now for ww1 courses (bug #584)

Revision 2422 - Directory Listing
Modified Mon Jun 28 14:31:40 2004 UTC (15 years, 7 months ago) by jj
Improved logic from last fix - declaring problems from outside setmaker to
be invalid if they have no global problem.

Revision 2421 - Directory Listing
Modified Mon Jun 28 14:26:10 2004 UTC (15 years, 7 months ago) by jj
Fixed bug 583.

Revision 2419 - Directory Listing
Modified Sat Jun 26 21:07:20 2004 UTC (15 years, 8 months ago) by jj
Pass more arguments to imagegenerator for image alignment.

Revision 2418 - Directory Listing
Modified Sat Jun 26 20:44:54 2004 UTC (15 years, 8 months ago) by jj
Minor additions so that ImageGenerator can get image alignment right.

Revision 2416 - Directory Listing
Modified Sat Jun 26 16:14:26 2004 UTC (15 years, 8 months ago) by jj
Removed short-lived code for putting javascript tags into html page.

Revision 2415 - Directory Listing
Modified Sat Jun 26 16:12:16 2004 UTC (15 years, 8 months ago) by jj
Altered course in how to set vertical alignment of images, so this
undoes calls for javascript, and passes more arguments to imagegenerator
(which can be used someday soon).

Revision 2414 - Directory Listing
Modified Sat Jun 26 00:00:01 2004 UTC (15 years, 8 months ago) by jj
Added generation of javascript commands to align dvipng images, when
requested.

Revision 2412 - Directory Listing
Modified Fri Jun 25 23:53:23 2004 UTC (15 years, 8 months ago) by jj
Added utility function for producing javascript commands for vertical
alignment of dvipng images.

Revision 2407 - Directory Listing
Modified Fri Jun 25 15:31:21 2004 UTC (15 years, 8 months ago) by jj
Changed suggested dvipng args for versions >= 1.0 to capture vertical
alignment information.

Revision 2398 - Directory Listing
Modified Fri Jun 25 00:09:18 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks
fixed bad logic on bad set/problem in URL as professor
minor cosmetic changes

Revision 2397 - Directory Listing
Modified Fri Jun 25 00:08:46 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2394 - Directory Listing
Modified Thu Jun 24 21:06:22 2004 UTC (15 years, 8 months ago) by dpvc
Moved problem-separation snippet to ABOVE the problem (to get the
line above the first problem and simultaneously avoid having to check
for being the last problem).

Also put the correct answers in verbatim mode to avoid having to make
and-hoc adjustments to the answer string (the result will be exactly
what the instructor typed, no matter what).

This also avoids a problem when the correct answer begins with "[",
where LaTeX would think this was part of an optional parameter to
\item and either eat the answer (up to the "]") or fail to run
entirely (if the answer were "[1,infinity)" for example).

If you don't like the verbatim, you can take it out, but then add {}
or \relax after the \item to avoid this problem.

Revision 2391 - Directory Listing
Modified Thu Jun 24 20:54:52 2004 UTC (15 years, 8 months ago) by sh002i
exported database now has content type "application/xml".,

Revision 2390 - Directory Listing
Modified Thu Jun 24 20:54:19 2004 UTC (15 years, 8 months ago) by sh002i
removed incorrect "$r->status(OK)" line from reply_with_file. also
removed unused REPORT_BUGS_URL constant and reformatted remaining
constants.

Revision 2388 - Directory Listing
Modified Thu Jun 24 18:08:43 2004 UTC (15 years, 8 months ago) by dpvc
Added default from, reply-to and subject values.

The subject probably needs improvement, but will do for now.

Revision 2387 - Directory Listing
Modified Thu Jun 24 18:07:13 2004 UTC (15 years, 8 months ago) by dpvc
Avoid error messages for problem values that are blank.

Revision 2385 - Directory Listing
Modified Thu Jun 24 17:44:16 2004 UTC (15 years, 8 months ago) by sh002i
handle PRINT_FILE_NAMES_FOR.

Revision 2384 - Directory Listing
Modified Thu Jun 24 17:43:32 2004 UTC (15 years, 8 months ago) by sh002i
email handling. add email to user record, allowedRecipients, and
feedbackRecipients. Add userIDs of all added users to
PRINT_FILE_NAMES_FOR.

Revision 2383 - Directory Listing
Modified Thu Jun 24 17:22:44 2004 UTC (15 years, 8 months ago) by sh002i
put helpMacro with the macros, use CE bugReporter URL.

Revision 2379 - Directory Listing
Modified Wed Jun 23 23:11:03 2004 UTC (15 years, 8 months ago) by sh002i
improved error handling, made SQL statements more robust.

Revision 2378 - Directory Listing
Modified Wed Jun 23 23:10:44 2004 UTC (15 years, 8 months ago) by sh002i
cleaned up form layout and improved error handling. also, instead of
having a separate set of field
for the "admin user", implemented an option to "add the WeBWorK
administrators to the new course".

Revision 2377 - Directory Listing
Modified Wed Jun 23 23:09:45 2004 UTC (15 years, 8 months ago) by sh002i
no change

Revision 2375 - Directory Listing
Modified Wed Jun 23 20:45:01 2004 UTC (15 years, 8 months ago) by toenail
fail on bad course names

Revision 2374 - Directory Listing
Modified Wed Jun 23 19:20:20 2004 UTC (15 years, 8 months ago) by sh002i
made SQL statements more robust (fixes #577), improved error handling.

Revision 2373 - Directory Listing
Modified Wed Jun 23 19:19:32 2004 UTC (15 years, 8 months ago) by sh002i
added check for a course already existing

Revision 2372 - Directory Listing
Modified Wed Jun 23 19:19:02 2004 UTC (15 years, 8 months ago) by sh002i
added QuellSubroutineOutput to WeBWorK::Debug

Revision 2371 - Directory Listing
Modified Wed Jun 23 01:19:56 2004 UTC (15 years, 8 months ago) by sh002i
moved DISPLAY_MODE_FAILOVER to PGbasicmacros

Revision 2368 - Directory Listing
Modified Wed Jun 23 00:37:41 2004 UTC (15 years, 8 months ago) by sh002i
now using WeBWorK::Debug instead of built-in debug() function.

Revision 2367 - Directory Listing
Modified Wed Jun 23 00:37:18 2004 UTC (15 years, 8 months ago) by sh002i
This module provides the function debug(). It conveniently writes
debugging output to STDERR or a logfile (if the $Logfile constant is
non-empty). It can be turned on and off with the $Enabled constnat.

This module should be used in place of warn() for any debugging output.
warn() should only be used for non-fatal errors that we want the user to
see, not informational status messages.

Revision 2366 - Directory Listing
Modified Wed Jun 23 00:33:41 2004 UTC (15 years, 8 months ago) by sh002i
updated timing to use $Enabled and $Logfile constants.

Revision 2365 - Directory Listing
Modified Wed Jun 23 00:33:05 2004 UTC (15 years, 8 months ago) by sh002i
preliminary Constants module. Currently holds configuration constants
for WeBWorK::Debug, WeBWorK::Timing, and WeBWorK::PG::ImageGenerator. It
is loaded by WeBWorK.pm.

I'm taking suggestions for what additional items to add to it.

Revision 2362 - Directory Listing
Modified Tue Jun 22 17:13:46 2004 UTC (15 years, 8 months ago) by sh002i
added stub for new constants file

Revision 2361 - Directory Listing
Modified Tue Jun 22 17:01:31 2004 UTC (15 years, 8 months ago) by sh002i
TODO: write this, use it for info boxes

Revision 2360 - Directory Listing
Modified Tue Jun 22 16:59:53 2004 UTC (15 years, 8 months ago) by sh002i
a comment

Revision 2359 - Directory Listing
Modified Tue Jun 22 16:55:13 2004 UTC (15 years, 8 months ago) by sh002i
not used anymore

Revision 2356 - Directory Listing
Modified Mon Jun 21 20:11:58 2004 UTC (15 years, 8 months ago) by toenail
fixed permission check

Revision 2355 - Directory Listing
Modified Mon Jun 21 19:51:49 2004 UTC (15 years, 8 months ago) by toenail
redid permissions checks

stopped professor from deleting or altering own record
(to avoid accidentally locking oneself out of a course)

Added column for login status

Revision 2354 - Directory Listing
Modified Mon Jun 21 19:07:08 2004 UTC (15 years, 8 months ago) by gage
Changing cosmetics in code (PG.pm) and the listing of links
(ContentGenerator)

Revision 2352 - Directory Listing
Modified Fri Jun 18 21:27:56 2004 UTC (15 years, 8 months ago) by toenail
replaced bad use of next with an if-else block

Revision 2351 - Directory Listing
Modified Fri Jun 18 20:48:46 2004 UTC (15 years, 8 months ago) by toenail
added export functionality with new export mode
redid permissions checks with hash
took out links for users that don't have permissions to view the linked pages

Revision 2349 - Directory Listing
Modified Fri Jun 18 14:11:28 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks
removed unnecssary code/comments
fixed minor bug on invalid problem

Revision 2348 - Directory Listing
Modified Thu Jun 17 20:11:17 2004 UTC (15 years, 8 months ago) by sh002i
optimized the hell out of the database checking code

Revision 2347 - Directory Listing
Modified Thu Jun 17 20:10:58 2004 UTC (15 years, 8 months ago) by sh002i
added getAllPSVNs() method

Revision 2346 - Directory Listing
Modified Thu Jun 17 20:10:18 2004 UTC (15 years, 8 months ago) by sh002i
moved creating of timing object up so we can use it sooner

Revision 2342 - Directory Listing
Modified Thu Jun 17 18:12:56 2004 UTC (15 years, 8 months ago) by toenail
removed accidental submission of OptionList (not yet ready for use)

Revision 2341 - Directory Listing
Modified Thu Jun 17 17:40:51 2004 UTC (15 years, 8 months ago) by sh002i
re-added case for "edit_set_for_user", accidentally removed in last
revision.

Revision 2340 - Directory Listing
Modified Thu Jun 17 16:52:24 2004 UTC (15 years, 8 months ago) by gage
A better fix for the "add user" link problem.

this still calls AddUser module.  That will soon
be replaced by a call to UserList module once
Robert is done with his work.

--Mike

Revision 2339 - Directory Listing
Modified Thu Jun 17 16:36:32 2004 UTC (15 years, 8 months ago) by gage
Replaced hardwiring of mth143b by courseName in "add user" link.

this piece of code still needs work.  It should be a button not a link.

Revision 2338 - Directory Listing
Modified Thu Jun 17 14:35:05 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

it may be necessary to give someone (like a TA) that does not have
the ability to assign sets, the ability to view how sets/users are
assigned for troubleshooting purposes but for now, they cannot

Revision 2330 - Directory Listing
Modified Wed Jun 16 18:26:59 2004 UTC (15 years, 8 months ago) by toenail
added countUserSets method

Revision 2328 - Directory Listing
Modified Wed Jun 16 17:13:28 2004 UTC (15 years, 8 months ago) by sh002i
check for both definedness and non-emptiness when merging fields.

Revision 2327 - Directory Listing
Modified Wed Jun 16 16:56:51 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2326 - Directory Listing
Modified Wed Jun 16 15:22:08 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2323 - Directory Listing
Modified Wed Jun 16 01:59:14 2004 UTC (15 years, 8 months ago) by gage
My latest effort at a list of links.  The "Add User" function can be accessed
from the Instructor Tools page or from the Class List Editor page

Revision 2322 - Directory Listing
Modified Wed Jun 16 01:58:03 2004 UTC (15 years, 8 months ago) by gage
First and last names of new instructor as inserted in the new course.

The list of courses one can use as a template is not alphabetized.

Revision 2321 - Directory Listing
Modified Wed Jun 16 01:27:07 2004 UTC (15 years, 8 months ago) by gage
Added hack for allowing exporting of set definition files.

If there is a conflict the earlier files are backed up.  So set 0 is
always exported to set0.def  and a previous set0.def file moves to
set0.def.bak.    There is only one backup.

The messages need work and the utilities, particularly saveProblem should be
moved to the Utils files.

--Mike

Revision 2320 - Directory Listing
Modified Tue Jun 15 20:43:53 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2319 - Directory Listing
Modified Tue Jun 15 18:55:26 2004 UTC (15 years, 8 months ago) by sh002i
getMerged* now use the global value when a field is empty ("") rather
than when a field is undefined.

Revision 2318 - Directory Listing
Modified Tue Jun 15 18:53:51 2004 UTC (15 years, 8 months ago) by sh002i
promote undefined values to "" in gets() and getAll().

Revision 2317 - Directory Listing
Modified Tue Jun 15 18:47:07 2004 UTC (15 years, 8 months ago) by sh002i
promote undefined values to "" in hash2record().

Revision 2314 - Directory Listing
Modified Tue Jun 15 14:46:37 2004 UTC (15 years, 8 months ago) by gage
Closed up the two lines of instruction at the top of the page
Added a link to "Add users".  will eventually modify this to
a button so that it matches the rest of the page.

Revision 2313 - Directory Listing
Modified Mon Jun 14 22:59:22 2004 UTC (15 years, 8 months ago) by sh002i
added database checking logic. if database is not ok, CG is set to
FixDB.

Revision 2312 - Directory Listing
Modified Mon Jun 14 22:58:55 2004 UTC (15 years, 8 months ago) by sh002i
added hashDatabaseOK() function to check and repair hash-based databases
from webwork 1. can add global user and assign sets to global user.

Revision 2311 - Directory Listing
Modified Mon Jun 14 22:56:42 2004 UTC (15 years, 8 months ago) by sh002i
this module summarizes database problems and gives professors a chance
to fix them.

Revision 2308 - Directory Listing
Modified Mon Jun 14 22:18:16 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2307 - Directory Listing
Modified Mon Jun 14 22:00:49 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2306 - Directory Listing
Modified Mon Jun 14 21:41:15 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks
newly formatted for readability

Revision 2305 - Directory Listing
Modified Mon Jun 14 20:58:17 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2304 - Directory Listing
Modified Mon Jun 14 20:30:30 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2303 - Directory Listing
Modified Mon Jun 14 20:23:32 2004 UTC (15 years, 8 months ago) by toenail
added permissions checks

Revision 2302 - Directory Listing
Modified Mon Jun 14 19:51:09 2004 UTC (15 years, 8 months ago) by toenail
added permission checks

Revision 2301 - Directory Listing
Modified Mon Jun 14 18:04:33 2004 UTC (15 years, 8 months ago) by toenail
added authorization checks

Revision 2300 - Directory Listing
Modified Sun Jun 13 01:30:23 2004 UTC (15 years, 8 months ago) by gage
Make comparison of first
and last names fail silently if they don't exist.


Changed the formatting of the add course form

Revision 2299 - Directory Listing
Modified Sun Jun 13 01:29:03 2004 UTC (15 years, 8 months ago) by gage
Changed the formatting of the add course form

Revision 2291 - Directory Listing
Modified Fri Jun 11 15:47:01 2004 UTC (15 years, 8 months ago) by jj
When editting a problem, you now have the option of adding it to an
existing set.

Revision 2290 - Directory Listing
Modified Fri Jun 11 15:05:16 2004 UTC (15 years, 8 months ago) by toenail
changed problem header to paper header
fixed minor bug in importing a set

Revision 2289 - Directory Listing
Modified Fri Jun 11 14:38:58 2004 UTC (15 years, 8 months ago) by toenail
fixed bad comparison that failed on set named '0'

Revision 2288 - Directory Listing
Modified Thu Jun 10 16:30:46 2004 UTC (15 years, 8 months ago) by toenail
reworked error messages

Revision 2285 - Directory Listing
Modified Wed Jun 9 21:40:36 2004 UTC (15 years, 8 months ago) by toenail
minor UI tweaks
added icon for editing sets/users

Revision 2284 - Directory Listing
Modified Wed Jun 9 02:57:15 2004 UTC (15 years, 8 months ago) by jj
Use new utility function for adding problems to a set (when importing a set).

Revision 2283 - Directory Listing
Modified Wed Jun 9 02:51:57 2004 UTC (15 years, 8 months ago) by jj
Make use of new utility function for adding a problem to a set.

Revision 2282 - Directory Listing
Modified Wed Jun 9 02:51:30 2004 UTC (15 years, 8 months ago) by jj
Added a utility function for adding a problem to a set, to be called from
several instructor modules.

Revision 2280 - Directory Listing
Modified Tue Jun 8 19:11:39 2004 UTC (15 years, 8 months ago) by toenail
upped viewing threshold to 50
made new/imported sets default to unpublished

Revision 2279 - Directory Listing
Modified Tue Jun 8 17:13:45 2004 UTC (15 years, 8 months ago) by toenail
removed ability to delete "visible" users
change red background to ResultsWithError class
CVS ----------------------------------------------------------------------

Revision 2278 - Directory Listing
Modified Tue Jun 8 17:07:33 2004 UTC (15 years, 8 months ago) by toenail
changed visable to visible. Closes #554.

Revision 2276 - Directory Listing
Modified Tue Jun 8 01:10:27 2004 UTC (15 years, 8 months ago) by sh002i
added check for well-formed course IDs. closes bug #504.

Revision 2275 - Directory Listing
Modified Tue Jun 8 00:04:45 2004 UTC (15 years, 8 months ago) by sh002i
removed debug output. fixes bug #542.

Revision 2272 - Directory Listing
Modified Mon Jun 7 20:38:01 2004 UTC (15 years, 8 months ago) by toenail
added scoring ability
fixed permission tests

Revision 2269 - Directory Listing
Modified Mon Jun 7 02:50:52 2004 UTC (15 years, 8 months ago) by jj
Added success message when creating a new set.  Also,
added requested feature - when creating a new set, allow the user to assign
it to themselves.  This is done through javascript.  Only users with js
turned on get it, but it is kind of a frill.  Non-js users see just the old
behavior.

Revision 2268 - Directory Listing
Modified Mon Jun 7 02:13:27 2004 UTC (15 years, 8 months ago) by sh002i
Added timeout alarm (currently set to 5 munites). Fixes bug #511.

Revision 2265 - Directory Listing
Modified Mon Jun 7 00:23:00 2004 UTC (15 years, 8 months ago) by sh002i
changed erronious == to eq. fixes bug #546.

Revision 2264 - Directory Listing
Modified Sun Jun 6 21:03:54 2004 UTC (15 years, 8 months ago) by jj
Changed Current Set to Target Set (hopefully more intuitive), and changed Top
to My Problems, also hopefully more intuitive for non-unix users.

Revision 2260 - Directory Listing
Modified Sun Jun 6 02:48:00 2004 UTC (15 years, 8 months ago) by gage
More tweaking for the position of the help question mark.

This is much better.  It now has default names equal to the
title page name, lower case, spaces replaced by under bars.

Revision 2257 - Directory Listing
Modified Sun Jun 6 00:21:26 2004 UTC (15 years, 8 months ago) by gage
Added minimal version of a help symbol that will appear on each page.

The CSS at the top of the page needs work, so that not so much space is used.

Revision 2256 - Directory Listing
Modified Sun Jun 6 00:20:14 2004 UTC (15 years, 8 months ago) by gage
Added comments -- should we enter the contact person as a student in the admin class
so that we can use the email facility to contact people hosted on this server?

Revision 2255 - Directory Listing
Modified Sat Jun 5 19:20:13 2004 UTC (15 years, 8 months ago) by gage
If there is an error, other than "course exists" then the directory tree
is cleared.  This corrects a behavior in which the creation of the new
course would fail half way through, but the directory tree would remain
-- this made it appear as if the course existed.

-- This fix is still somewhat fragile.

Revision 2254 - Directory Listing
Modified Sat Jun 5 19:18:37 2004 UTC (15 years, 8 months ago) by gage
Changed the layout of the form so that optional items are listed last.

Revision 2252 - Directory Listing
Modified Fri Jun 4 23:21:48 2004 UTC (15 years, 8 months ago) by jj
Allow students to check answers between the due date and the answer date.  This doesn't let them see the correct answers, but it does let them enter values to see if those are right without recording them.

Revision 2251 - Directory Listing
Modified Fri Jun 4 21:40:07 2004 UTC (15 years, 8 months ago) by jj
Fixed bug 545.  Make Problem.pm preserve its state of problem seed when that value was being overridden.

Revision 2250 - Directory Listing
Modified Fri Jun 4 19:10:30 2004 UTC (15 years, 8 months ago) by jj
Fixed the following bug: if you change a student's status on a problem to 1 and give them a correct attempt, but then go to the stats page or student progress page, you won't see the change.  The reason is that those pages check "attempted" which cannot be changed through this page directly.  Now this page updates attemted fields based on if (correct+incorrect attempts) > 0.

Revision 2249 - Directory Listing
Modified Thu Jun 3 21:20:07 2004 UTC (15 years, 8 months ago) by toenail
minor changes to UI

Revision 2248 - Directory Listing
Modified Thu Jun 3 19:58:00 2004 UTC (15 years, 8 months ago) by toenail
rewrote much of the HTML code
changed table layout

Revision 2247 - Directory Listing
Modified Thu Jun 3 19:38:45 2004 UTC (15 years, 8 months ago) by toenail
fixed code order to avoid invalid call to published field
on a non-existant set
Fixes #543.

Revision 2246 - Directory Listing
Modified Thu Jun 3 18:54:51 2004 UTC (15 years, 8 months ago) by toenail
complete rewrite based on UserList
next step is to abstract similarities

Revision 2245 - Directory Listing
Modified Wed Jun 2 23:32:56 2004 UTC (15 years, 8 months ago) by jj
Made the list of problems more readable by using center alignment in the columns.

Revision 2244 - Directory Listing
Modified Wed Jun 2 20:28:23 2004 UTC (15 years, 8 months ago) by toenail
fixed display of published/unpublished text

Revision 2242 - Directory Listing
Modified Wed Jun 2 18:21:38 2004 UTC (15 years, 8 months ago) by gage
Changed formatting of the "Add course" sub page.

When a new course is created the course name, id, institution and so forth
are logged in hosted_courses.log in admin/logs

This logging facility must be defined in the admin/course.conf file.

--Mike

Revision 2241 - Directory Listing
Modified Wed Jun 2 14:54:26 2004 UTC (15 years, 8 months ago) by gage
Rearranged stats table.  "good" results are now always to the right
(high scores, low number of attempts).

Use dashes when numbers are repeated in order to prevent confusion.

Revision 2240 - Directory Listing
Modified Tue Jun 1 15:06:23 2004 UTC (15 years, 8 months ago) by gage
This is currently a version of ShowAnswers.pm  the plan is to evolve this
so that one can view the Past answers log from a variety of views.

--Mike

Revision 2239 - Directory Listing
Modified Tue Jun 1 14:50:38 2004 UTC (15 years, 8 months ago) by gage
I don't think that anything has changed with this submission.  I'm overriding
a binary temp file.

--Mike

Revision 2238 - Directory Listing
Modified Tue Jun 1 14:44:17 2004 UTC (15 years, 8 months ago) by gage
Added hooks for Preflight

-- Mike

Revision 2236 - Directory Listing
Modified Mon May 31 16:59:17 2004 UTC (15 years, 8 months ago) by jj
When viewing a users problem, the rendered versions have the right seed, etc.

Revision 2235 - Directory Listing
Modified Mon May 31 16:49:04 2004 UTC (15 years, 8 months ago) by jj
Allow optional argument of the set (which better be real).

Revision 2234 - Directory Listing
Modified Mon May 31 16:35:00 2004 UTC (15 years, 8 months ago) by jj
Added support for initial problem number to renderProblems, and better support for controlling the problem seed.

Revision 2233 - Directory Listing
Modified Mon May 31 16:02:28 2004 UTC (15 years, 8 months ago) by jj
Just realigned some code and took out a couple commented lines.

Revision 2231 - Directory Listing
Modified Mon May 31 04:17:59 2004 UTC (15 years, 8 months ago) by jj
When viewing a problem which isn't really part of a set (e.g., out of SetMaker), make the display mode option buttons work.

Revision 2230 - Directory Listing
Modified Mon May 31 02:20:27 2004 UTC (15 years, 8 months ago) by jj
Changed "Act on" button to say "Update" in bold.  Also, added mark all button.  Also, added clear all marks button.  Also, "Add me" checkboxes are now sticky, unless you update and they are added.  Then you get an additional message by the add box.  Mayble we should flip the css class of the "Add me" line too to signal who was added.  Hidme boxes aren't sticky since their problems usually get hidden anyway.

Revision 2228 - Directory Listing
Modified Sun May 30 02:35:06 2004 UTC (15 years, 8 months ago) by jj
Make the message blank when the user doesn't want problems rendered.  Different modules may want different messages anyway.

Revision 2227 - Directory Listing
Modified Sun May 30 02:33:25 2004 UTC (15 years, 8 months ago) by jj
Give the user a choice of which mode to use in displaying problems.  Defaults to none.

Revision 2226 - Directory Listing
Modified Fri May 28 23:16:27 2004 UTC (15 years, 9 months ago) by jj
Changed calls to renderProblems to match the new interface.

Revision 2225 - Directory Listing
Modified Fri May 28 23:15:44 2004 UTC (15 years, 9 months ago) by jj
Added two more controls next to View Problems: choice of display mode, which includes none for those who don't like to see their problems displayed, and one to choose how many problems you get at once.  Also, problems who's rendering cause an error get their message displayed with ResultsWithError.

Revision 2224 - Directory Listing
Modified Fri May 28 23:13:14 2004 UTC (15 years, 9 months ago) by jj
Changed interface to renderProblems to be key=>value pairs to make it easier to extend options.  New option is displayMode, which is allowed to be 'None' if you don't really want the problems rendered.

Revision 2223 - Directory Listing
Modified Fri May 28 15:54:25 2004 UTC (15 years, 9 months ago) by jj
Made StudentProgress follow the implicit convention set by things like Set Assigner and Set Maker; to use spaces between words.

Revision 2222 - Directory Listing
Modified Fri May 28 15:32:35 2004 UTC (15 years, 9 months ago) by jj
Try to work around IE bug: on left panel lines wrapped at every space.  Those spaces are converted to non-breaking spaces.  Ugly, but IE on windows is one of the most common browsers.

Revision 2221 - Directory Listing
Modified Fri May 28 14:55:01 2004 UTC (15 years, 9 months ago) by jj
Only provide radio buttons for different modes if the site is configured to
use more than one mode.

Revision 2220 - Directory Listing
Modified Thu May 27 22:28:21 2004 UTC (15 years, 9 months ago) by jj
Filename extension of .pg should only be forced for problem files.

Revision 2219 - Directory Listing
Modified Thu May 27 17:04:40 2004 UTC (15 years, 9 months ago) by jj
If the user does a save as and forgets the .pg, we help them out and append it to the file name.

Revision 2218 - Directory Listing
Modified Thu May 27 03:48:04 2004 UTC (15 years, 9 months ago) by jj
Get mode list from variable set in global.conf.

Revision 2217 - Directory Listing
Modified Thu May 27 01:34:22 2004 UTC (15 years, 9 months ago) by jj
Made a loop of loading special environment variables.  As a side effect, this makes the default size of on-the-fly graphics visible.

Revision 2214 - Directory Listing
Modified Mon May 24 20:43:05 2004 UTC (15 years, 9 months ago) by apizer
Allready done so this should fail

Arnie

Revision 2213 - Directory Listing
Modified Mon May 24 20:41:10 2004 UTC (15 years, 9 months ago) by apizer
change message to visable to students, etc

Arnie

Revision 2212 - Directory Listing
Modified Mon May 24 20:36:25 2004 UTC (15 years, 9 months ago) by apizer
Change message to visable to students, etc.

Arnie

Revision 2211 - Directory Listing
Modified Mon May 24 20:19:08 2004 UTC (15 years, 9 months ago) by toenail
displayMode is not preserved in the sibling links

Revision 2210 - Directory Listing
Modified Mon May 24 19:39:30 2004 UTC (15 years, 9 months ago) by toenail
added buttons for "Publish Selected" and "Unpublished Selected"

Revision 2207 - Directory Listing
Modified Mon May 24 18:05:26 2004 UTC (15 years, 9 months ago) by mschmitt
Edited Labels to make clear that "All students" meant all students in the course,
not all students shown after filtering.  This should eventually be fixed so that
"All students" only refers to those who pass the filtering.

Revision 2205 - Directory Listing
Modified Mon May 24 16:05:10 2004 UTC (15 years, 9 months ago) by toenail
the published field is always defined but is empty if not yet set to 1 or 0
now if the published field is empty it is set to 1
this change can be undone once all sets have a published field set to 1 or 0

Revision 2204 - Directory Listing
Modified Mon May 24 15:35:43 2004 UTC (15 years, 9 months ago) by mschmitt
Updated to autofilter using CE viewable_sections and viewable_recitations
Defaults to show all users if values are not defined

Revision 2203 - Directory Listing
Modified Mon May 24 15:32:11 2004 UTC (15 years, 9 months ago) by mschmitt
Updated to allow record filtering when selecting students

Revision 2202 - Directory Listing
Modified Mon May 24 15:30:34 2004 UTC (15 years, 9 months ago) by mschmitt
Cleaned up some UI issues.  Added message for recitation/section <none>

Revision 2200 - Directory Listing
Modified Mon May 24 02:01:25 2004 UTC (15 years, 9 months ago) by dpvc
More files for asciimath rendering.

Revision 2198 - Directory Listing
Modified Mon May 24 01:51:13 2004 UTC (15 years, 9 months ago) by mschmitt
Tweak to make filters fail gracefully

Revision 2197 - Directory Listing
Modified Mon May 24 01:49:26 2004 UTC (15 years, 9 months ago) by apizer
Allow sorting on allrelevany columns (added recitation and user_id).

Arnie

Revision 2196 - Directory Listing
Modified Mon May 24 01:43:36 2004 UTC (15 years, 9 months ago) by mschmitt
Updated to work with filters in scrolling lists

Revision 2195 - Directory Listing
Modified Mon May 24 01:34:51 2004 UTC (15 years, 9 months ago) by mschmitt
Additionaly tweaks to fail gracefully

Revision 2194 - Directory Listing
Modified Mon May 24 01:27:48 2004 UTC (15 years, 9 months ago) by mschmitt
Edited so that filters fail gracefully

Revision 2192 - Directory Listing
Modified Mon May 24 01:03:05 2004 UTC (15 years, 9 months ago) by sh002i
display mode handling improved.
allowed display modes can now be specified via global.conf.
failover data used by the PG system now comes from PG.pm.

Revision 2191 - Directory Listing
Modified Mon May 24 00:39:18 2004 UTC (15 years, 9 months ago) by mschmitt
Corrected typo in pre-screening for filter

Revision 2189 - Directory Listing
Modified Sun May 23 23:59:41 2004 UTC (15 years, 9 months ago) by sh002i
delete course improvements. can now have blank sql password and leave
database name blank for default value.

Revision 2188 - Directory Listing
Modified Sun May 23 23:40:24 2004 UTC (15 years, 9 months ago) by sh002i
copy symlinks in templates directory

Revision 2187 - Directory Listing
Modified Sun May 23 23:37:40 2004 UTC (15 years, 9 months ago) by mschmitt
Updated for filtering of scrolling lists

Revision 2186 - Directory Listing
Modified Sun May 23 23:35:42 2004 UTC (15 years, 9 months ago) by mschmitt
Updated to allow simple filtering of scrolling lists

Revision 2185 - Directory Listing
Modified Sun May 23 23:27:30 2004 UTC (15 years, 9 months ago) by apizer
Fixed bug in previous version

Arnie

Revision 2184 - Directory Listing
Modified Sun May 23 23:20:31 2004 UTC (15 years, 9 months ago) by mschmitt
File of Utilities to allow filtering of users in Instructor Tools

Revision 2183 - Directory Listing
Modified Sun May 23 23:18:27 2004 UTC (15 years, 9 months ago) by apizer
Doubled the length of the save as textfield box.

Arnie

Revision 2178 - Directory Listing
Modified Sun May 23 18:51:47 2004 UTC (15 years, 9 months ago) by gage
This fixes bug #510 in which sets which have no defined published state are now assumed to be published
when viewed from the problemSets page.

Revision 2177 - Directory Listing
Modified Sun May 23 18:28:44 2004 UTC (15 years, 9 months ago) by sh002i
added comments re: valid %options

Revision 2176 - Directory Listing
Modified Sun May 23 18:27:37 2004 UTC (15 years, 9 months ago) by gage
Sorry about that.  These files have been removed.

Revision 2175 - Directory Listing
Modified Sun May 23 18:15:12 2004 UTC (15 years, 9 months ago) by gage
Adding this stub (developed by Bill Ziemer) to keep compile time errors from
occuring.

Revision 2171 - Directory Listing
Modified Sun May 23 01:17:42 2004 UTC (15 years, 9 months ago) by gage
Allow jsMath to generate answer previews if that is the displayMode chosen.

Revision 2170 - Directory Listing
Modified Sun May 23 01:15:28 2004 UTC (15 years, 9 months ago) by jj
For helpLink in pg problems.

Revision 2169 - Directory Listing
Modified Sun May 23 01:09:48 2004 UTC (15 years, 9 months ago) by apizer
Cleaned up script

Arnie

Revision 2166 - Directory Listing
Modified Sat May 22 22:16:20 2004 UTC (15 years, 9 months ago) by dpvc
Files needed for jsMath display mode.

Revision 2162 - Directory Listing
Modified Sat May 22 21:25:14 2004 UTC (15 years, 9 months ago) by apizer
Added paths to Student Progress

Revision 2161 - Directory Listing
Modified Sat May 22 21:24:42 2004 UTC (15 years, 9 months ago) by apizer
Added Student Progress section

Revision 2160 - Directory Listing
Modified Sat May 22 21:23:51 2004 UTC (15 years, 9 months ago) by apizer
Updated to make set names into active links

Revision 2159 - Directory Listing
Modified Sat May 22 21:22:18 2004 UTC (15 years, 9 months ago) by apizer
New File to split Statistics page in two.

Revision 2156 - Directory Listing
Modified Sat May 22 19:01:37 2004 UTC (15 years, 9 months ago) by jjholt
Don't put answers in the answer log if the problem has not been assigned
to the user.

Revision 2154 - Directory Listing
Modified Sat May 22 16:46:03 2004 UTC (15 years, 9 months ago) by jj
Fixed bug which came up when adding problems located at the top of the
templates directory.

Revision 2152 - Directory Listing
Modified Sat May 22 01:50:35 2004 UTC (15 years, 9 months ago) by jj
Put addbadmessage in Contentgenerator (to go with addgoodmessage),
and use it in SetMaker.

Revision 2148 - Directory Listing
Modified Sat May 22 01:08:09 2004 UTC (15 years, 9 months ago) by sh002i
added ability to import the contents of another course's templates
directory when creating a new course. this is supported in bin/addcourse
with the --templates-from=COURSEID switch and in the web interface with
an additional form field.

Revision 2147 - Directory Listing
Modified Sat May 22 00:38:44 2004 UTC (15 years, 9 months ago) by sh002i
fixed typo: addgoodmsg -> addgoodmessage.

Revision 2140 - Directory Listing
Modified Fri May 21 23:38:53 2004 UTC (15 years, 9 months ago) by jj
Extricating Problem Library from DB structure, part II.

Revision 2139 - Directory Listing
Modified Fri May 21 23:37:37 2004 UTC (15 years, 9 months ago) by jj
Extracting problem library from DB structure, part I.

Revision 2138 - Directory Listing
Modified Fri May 21 20:55:38 2004 UTC (15 years, 9 months ago) by sh002i
added missing "use" line.
"use WeBWorK::CourseEnvironment".

Revision 2137 - Directory Listing
Modified Fri May 21 20:48:21 2004 UTC (15 years, 9 months ago) by gage
Include cryptPassword in the functions exported from Utils.

Revision 2134 - Directory Listing
Modified Thu May 20 21:47:05 2004 UTC (15 years, 9 months ago) by toenail
can't save as with specifying a filename
changed some warns to addmessage()

Revision 2133 - Directory Listing
Modified Thu May 20 21:25:20 2004 UTC (15 years, 9 months ago) by jj
*** empty log message ***

Revision 2130 - Directory Listing
Modified Wed May 19 18:24:50 2004 UTC (15 years, 9 months ago) by toenail
fixed bug in saving default set header, no more "Use System Default" files
closes #500
replace submission_error() with addmessage()

Revision 2129 - Directory Listing
Modified Tue May 18 18:51:05 2004 UTC (15 years, 9 months ago) by jj
Hopefully moved published to the right place.

Revision 2128 - Directory Listing
Modified Tue May 18 18:39:40 2004 UTC (15 years, 9 months ago) by toenail
fixed incorrect handling of default set header

Revision 2127 - Directory Listing
Modified Tue May 18 18:22:25 2004 UTC (15 years, 9 months ago) by toenail
added "Use System Default" to dropdown list of set headers
Fixes bug #492.

Revision 2126 - Directory Listing
Modified Tue May 18 05:19:33 2004 UTC (15 years, 9 months ago) by jj
On refresh, make source file path relative to the templates directory.  This
is needed to match the behavior of alias on static gif files.

Revision 2125 - Directory Listing
Modified Mon May 17 18:57:42 2004 UTC (15 years, 9 months ago) by jj
Set the published field when faking a problem set.

Revision 2124 - Directory Listing
Modified Mon May 17 16:41:07 2004 UTC (15 years, 9 months ago) by jj
Improved psvn kludge by using the full mysql statement from mksqldb.  Fixes
the original version of bug 495.

Revision 2123 - Directory Listing
Modified Mon May 17 15:39:35 2004 UTC (15 years, 9 months ago) by jj
If there is an admin course, make it appear only once.

Revision 2122 - Directory Listing
Modified Mon May 17 05:06:36 2004 UTC (15 years, 9 months ago) by jj
Made regular expression for set names match that of in DB.pm (meant allowing
hyphens).

Revision 2117 - Directory Listing
Modified Sat May 15 19:13:43 2004 UTC (15 years, 9 months ago) by jj
Changed "success problems added" from resultwitherror to resultwithouterrer.

Revision 2116 - Directory Listing
Modified Sat May 15 19:10:18 2004 UTC (15 years, 9 months ago) by jj
Lots of addmessage()s added, including success for adding problems.  This may
close bug 485.

Revision 2115 - Directory Listing
Modified Sat May 15 17:42:07 2004 UTC (15 years, 9 months ago) by jj
Reorganized to use addmessage for messages.  Also minor cleanups of
variable names, and better handling when there are no pg files under
templates.

Revision 2114 - Directory Listing
Modified Fri May 14 22:03:54 2004 UTC (15 years, 9 months ago) by toenail
fixed error with problems that don't yet exist

Revision 2113 - Directory Listing
Modified Fri May 14 21:20:56 2004 UTC (15 years, 9 months ago) by jj
Fixed bug 485.  The problem occured because with a gdbm database, the global_user is used for both global information, and appears as a user.  We have to avoid modifying its information twice.  This seems to work, but the "right" fix is probably to work on the database code.  With a gdbm database, the global_user should be filtered out of calls dealing with users and only be used on calls about global information.  That would mimic the sql behavior better.  It would also supress the global_user from appearing in user lists (which I think would be better).

Revision 2112 - Directory Listing
Modified Fri May 14 20:49:21 2004 UTC (15 years, 9 months ago) by jj
When a new set is created, it is automatically selected.  This partially
resolves bug 485.

Revision 2109 - Directory Listing
Modified Fri May 14 18:26:11 2004 UTC (15 years, 9 months ago) by toenail
added text classes for students with status Audit, Drop, Enrolled

Revision 2108 - Directory Listing
Modified Fri May 14 18:23:21 2004 UTC (15 years, 9 months ago) by toenail
changed assignSetToAllUsers to ignore users with dropped status

Revision 2106 - Directory Listing
Modified Thu May 13 21:14:56 2004 UTC (15 years, 9 months ago) by sh002i
removed sql exec warnings

Revision 2105 - Directory Listing
Modified Thu May 13 21:14:25 2004 UTC (15 years, 9 months ago) by sh002i
comments

Revision 2104 - Directory Listing
Modified Thu May 13 20:49:18 2004 UTC (15 years, 9 months ago) by sh002i
several changes towards closing bug #481. (1) removed database "multiple
source" warnings. (2) if sql database name is blank, "webwork_$courseID"
is used. (3) removed sql execution warnings. (4) allowed blank sql admin
password.

Revision 2103 - Directory Listing
Modified Thu May 13 20:42:35 2004 UTC (15 years, 9 months ago) by toenail
added pop up list of set header files
fixed false successful save message

Revision 2102 - Directory Listing
Modified Thu May 13 20:39:19 2004 UTC (15 years, 9 months ago) by sh002i
create "psvn" field as "INT AUTO_INCREMENT"

Revision 2101 - Directory Listing
Modified Thu May 13 20:12:11 2004 UTC (15 years, 9 months ago) by sh002i
add global user record to new courses

Revision 2100 - Directory Listing
Modified Thu May 13 19:58:32 2004 UTC (15 years, 9 months ago) by sh002i
separate link for course management

Revision 2099 - Directory Listing
Modified Thu May 13 18:38:19 2004 UTC (15 years, 9 months ago) by toenail
added "This problem does not count towards your grade." messages if
the weight of a problem has been set to 0.  Fixes #464.

Revision 2098 - Directory Listing
Modified Thu May 13 18:28:42 2004 UTC (15 years, 9 months ago) by gage
Defined $WeBWorK:;timer again for use in debugging code
$timerON =0   by default in WeBWorK.pm
and
 the timing log $TIMING_LOG  is initially set to the empty string which
implies STDERR

Revision 2097 - Directory Listing
Modified Thu May 13 16:02:55 2004 UTC (15 years, 9 months ago) by toenail
added functionality for published/unpublished

Revision 2095 - Directory Listing
Modified Wed May 12 14:36:43 2004 UTC (15 years, 9 months ago) by toenail
addmessage() used for success messages

Revision 2094 - Directory Listing
Modified Wed May 12 14:29:36 2004 UTC (15 years, 9 months ago) by toenail
now passes success/failure messages to Problem.pm

Revision 2093 - Directory Listing
Modified Wed May 12 14:28:43 2004 UTC (15 years, 9 months ago) by toenail
added processing of sucess/failure messages from PGProblemEditor.pm

Revision 2092 - Directory Listing
Modified Tue May 11 21:38:15 2004 UTC (15 years, 9 months ago) by toenail
changed submitError to addmessage()

Revision 2091 - Directory Listing
Modified Tue May 11 21:31:04 2004 UTC (15 years, 9 months ago) by toenail
changed submitError to addmessage()

Revision 2090 - Directory Listing
Modified Tue May 11 21:05:25 2004 UTC (15 years, 9 months ago) by toenail
changed submitError to addmessaage()

Revision 2089 - Directory Listing
Modified Tue May 11 21:03:09 2004 UTC (15 years, 9 months ago) by toenail
changed all submitError to addmessage()

Revision 2088 - Directory Listing
Modified Tue May 11 20:51:42 2004 UTC (15 years, 9 months ago) by toenail
uses addmessage() instead of submitError

Revision 2087 - Directory Listing
Modified Tue May 11 20:47:44 2004 UTC (15 years, 9 months ago) by toenail
changed all submitError to use addmessage() instead

Revision 2086 - Directory Listing
Modified Tue May 11 20:19:38 2004 UTC (15 years, 9 months ago) by toenail
changed addmessage() to replace submitError

Revision 2085 - Directory Listing
Modified Tue May 11 20:13:22 2004 UTC (15 years, 9 months ago) by toenail
changed submitError to addmessage()

Revision 2084 - Directory Listing
Modified Tue May 11 19:56:27 2004 UTC (15 years, 9 months ago) by toenail
dded use of addmessage() instead of warn and submitError

Revision 2082 - Directory Listing
Modified Tue May 11 19:07:54 2004 UTC (15 years, 9 months ago) by gage
Added surePathToFile utility  called as
surePathToFile  start_directory   path

(the path can be the full path including the start_directory segment)
If the start_directory is the tmp directory then one has the effect of
surePathToTmpFile  defined in IO.pl

Revision 2081 - Directory Listing
Modified Tue May 11 19:06:23 2004 UTC (15 years, 9 months ago) by gage
Added a surePathToFile call when saving a .pg problem.  Now they can be saved in
a new directory.  This is a partial solution to having a read only library.
More to come.

Revision 2080 - Directory Listing
Modified Tue May 11 16:27:20 2004 UTC (15 years, 9 months ago) by toenail
replaced error processing with call to addmessage()

Revision 2079 - Directory Listing
Modified Tue May 11 16:11:49 2004 UTC (15 years, 9 months ago) by toenail
replace submitError with addmessage() call

Revision 2063 - Directory Listing
Modified Mon May 10 03:22:44 2004 UTC (15 years, 9 months ago) by gage
Added sibling links for the Statistics page.

Revision 2062 - Directory Listing
Modified Sun May 9 17:47:35 2004 UTC (15 years, 9 months ago) by gage
Formatted the "PREVIEW ONLY" and "Not Recorded" messages as
'ResultsWithError' to insure that students don't accidently think
they have submitted their answers.

Revision 2059 - Directory Listing
Modified Sun May 9 14:52:21 2004 UTC (15 years, 9 months ago) by jj
Fix bug: use of an undefined value.

Revision 2058 - Directory Listing
Modified Sun May 9 01:10:30 2004 UTC (15 years, 9 months ago) by gage
Added average number incorrect answers.  This closes bug number 264

Tweaked a few more user interface parameters.

Revision 2055 - Directory Listing
Modified Sat May 8 20:31:28 2004 UTC (15 years, 9 months ago) by gage
Cleared commented out code in Stats.pm

Fixed error arising when no scoring files were checked.
Nows gives a more useful message.
This fixes #379

Revision 2054 - Directory Listing
Modified Sat May 8 19:35:21 2004 UTC (15 years, 9 months ago) by jj
Doing 'Save as' on a problem pops up a new PGProblemEditor window.  Now
the new window contains the newly saved file.  Also modified the name of
the target window since targets aren't supposed to start with _ (except
for the special reserved ones), and so that editting in the new window
and clicking on a button like Refresh will open yet another window.

Revision 2053 - Directory Listing
Modified Sat May 8 19:27:32 2004 UTC (15 years, 9 months ago) by gage
Added safety switch for unassigning sets.  This closes bug number #403

Added some messages reporting action taken.

Revision 2051 - Directory Listing
Modified Sat May 8 17:59:13 2004 UTC (15 years, 9 months ago) by gage
More user interface work on SendMai.pm

Resolved bug #390  Now we simply report the number of students
to which we have attempted to send email, rather than list the email addresses.

Revision 2050 - Directory Listing
Modified Sat May 8 17:19:58 2004 UTC (15 years, 9 months ago) by gage
Modified user interface for choosing message to preview.

Unresolved is the issue of bringing the preview up in a new window.

Revision 2049 - Directory Listing
Modified Sat May 8 16:48:43 2004 UTC (15 years, 9 months ago) by gage
Modifications to remove extraneous error messages.

This resolves bug 410

Revision 2048 - Directory Listing
Modified Sat May 8 15:49:48 2004 UTC (15 years, 9 months ago) by gage
Sort sets by alphabetical order for the SetsAssignedToUser page.
Corrected typo on Stats.pm

Revision 2047 - Directory Listing
Modified Sat May 8 02:20:59 2004 UTC (15 years, 9 months ago) by gage
Fixed minor bug which occured when no student had yet tried the problem.

Revision 2046 - Directory Listing
Modified Sat May 8 02:03:19 2004 UTC (15 years, 9 months ago) by gage
References to problems in the statistics are linked so that you
can view the problems if you wish. Use right click to see them in a new window.

Revision 2045 - Directory Listing
Modified Sat May 8 02:01:13 2004 UTC (15 years, 9 months ago) by gage
Sort the courseIDs in the scrolling lists.

Revision 2044 - Directory Listing
Modified Fri May 7 23:14:05 2004 UTC (15 years, 9 months ago) by sh002i
changed it to sort by due date as well as showing due date

Revision 2043 - Directory Listing
Modified Fri May 7 23:13:44 2004 UTC (15 years, 9 months ago) by sh002i
ripped out the rest of the skeleton

Revision 2042 - Directory Listing
Modified Fri May 7 22:26:49 2004 UTC (15 years, 9 months ago) by gage
Fixed typo where a hash was initialized using an anonymous hash reference.

Revision 2041 - Directory Listing
Modified Fri May 7 21:49:48 2004 UTC (15 years, 9 months ago) by sh002i
fixed bug #472

Revision 2040 - Directory Listing
Modified Fri May 7 21:04:07 2004 UTC (15 years, 9 months ago) by jj
Fixed bug in logic of when to show Edit it link.

Revision 2039 - Directory Listing
Modified Fri May 7 20:59:30 2004 UTC (15 years, 9 months ago) by jj
Changed urlpath->new to urlpath->newFromModule.  Also added check for when
using the problem library, that the Library directory exists, and if not,
try to fix it ourselves.

Revision 2038 - Directory Listing
Modified Fri May 7 20:09:01 2004 UTC (15 years, 9 months ago) by jj
If the instructor sets the set header file to a file which doesn't
exist, then we copy the default to that file.  Having no set header
is an error, and it is easier to edit something than it is to start
from scratch.  Also, balanced the size of the two buttons on the page.

Revision 2037 - Directory Listing
Modified Fri May 7 20:01:04 2004 UTC (15 years, 9 months ago) by sh002i
(1) listTables() reports names of supported tables. (2) dbExport() warns
when given invalid table names.

Revision 2035 - Directory Listing
Modified Fri May 7 18:49:40 2004 UTC (15 years, 9 months ago) by sh002i
failure messages now given with addmessage() -- fixes bug #447 (sort of)

Revision 2034 - Directory Listing
Modified Fri May 7 18:47:23 2004 UTC (15 years, 9 months ago) by sh002i
changed name of self-field used to hold the text for the message()
escape to "status_message" to avoid collisions with existing use of
"message" in CGs.

We should consider forming some kind of policy for this stuff. Maybe all
the fields that WeBWorK::ContentGenerator uses should be prefixed with
"CG_" or something. Thoughts?

Perl 6 would make this much nicer.

Revision 2032 - Directory Listing
Modified Fri May 7 18:27:50 2004 UTC (15 years, 9 months ago) by jj
Make editing a file which doesn't exist stop being an error.   This gives
a way to create course info files and new set headers.

Revision 2031 - Directory Listing
Modified Fri May 7 18:21:34 2004 UTC (15 years, 9 months ago) by sh002i
use reply_with_file() instead of $self->{sendFile}

Revision 2030 - Directory Listing
Modified Fri May 7 18:21:19 2004 UTC (15 years, 9 months ago) by sh002i
(1) removed "sendFile" mechanism -- use reply_with_file() instead
(2) moved addmessage, reply_with_{file,redirect} to a separate section
in the file, for data modifiers.

Revision 2029 - Directory Listing
Modified Fri May 7 18:18:54 2004 UTC (15 years, 9 months ago) by jj
Nicer titles, especially for set header and course info editting.

Revision 2026 - Directory Listing
Modified Fri May 7 14:12:20 2004 UTC (15 years, 9 months ago) by gage
Only someone with professor privileges can use CourseAdministration.pm

Revision 2025 - Directory Listing
Modified Fri May 7 13:47:59 2004 UTC (15 years, 9 months ago) by gage
sort the courses before you print them.

Revision 2024 - Directory Listing
Modified Fri May 7 06:07:58 2004 UTC (15 years, 9 months ago) by jj
Fixed bug #477 and similar problems when there are no local sets; fixed bug
where top level local files were not detected, made "Edit it" link come back
if you are not looking at a library file, and floated "Try it" and "Edit it"
to the right.

Revision 2023 - Directory Listing
Modified Fri May 7 04:28:54 2004 UTC (15 years, 9 months ago) by jj
If there is more than one mysql source (which there is now thanks to
ProblemLibrary), then we look for the most commonly used source.  Fixed
a bug in this counting part.

Revision 2022 - Directory Listing
Modified Fri May 7 00:55:08 2004 UTC (15 years, 9 months ago) by gage
Removed debugging code

Revision 2021 - Directory Listing
Modified Thu May 6 23:20:49 2004 UTC (15 years, 9 months ago) by jj
Removed edit it links.

Revision 2020 - Directory Listing
Modified Thu May 6 22:46:13 2004 UTC (15 years, 9 months ago) by jj
Added support for instructors to view/test problems which are not part
of any set.

Revision 2019 - Directory Listing
Modified Thu May 6 22:44:14 2004 UTC (15 years, 9 months ago) by sh002i
assign new users their student id as a password

Revision 2017 - Directory Listing
Modified Thu May 6 22:17:36 2004 UTC (15 years, 9 months ago) by gage
Changed user interface on the instructors page.

Buttons are now shorter.

--Mike

Revision 2016 - Directory Listing
Modified Thu May 6 21:53:41 2004 UTC (15 years, 9 months ago) by jj
Added support for editting problems which are not presented as being
part of a real set.

Revision 2015 - Directory Listing
Modified Thu May 6 21:38:58 2004 UTC (15 years, 9 months ago) by jj
Commented out features which are not used yet in the problem library.
Uncommented Try it and Edit it links.

Revision 2014 - Directory Listing
Modified Thu May 6 20:31:50 2004 UTC (15 years, 9 months ago) by toenail
fixed bad links for invalid sets and problems

Revision 2013 - Directory Listing
Modified Thu May 6 20:21:48 2004 UTC (15 years, 9 months ago) by toenail
added message() as a more general message handler than submiterror()
addmessage() helper method for concatenating messages

Revision 2012 - Directory Listing
Modified Thu May 6 20:20:00 2004 UTC (15 years, 9 months ago) by toenail
added error checking for invalid set numbers

Revision 2011 - Directory Listing
Modified Thu May 6 20:19:39 2004 UTC (15 years, 9 months ago) by toenail
added error checking for invalid set and problem numbers

Revision 2009 - Directory Listing
Modified Thu May 6 13:17:16 2004 UTC (15 years, 9 months ago) by gage
Fixed call for adding users which was issuing an incorrect url.
This squashes bug #473

Revision 2008 - Directory Listing
Modified Thu May 6 03:01:22 2004 UTC (15 years, 9 months ago) by jj
Initial import.

Revision 2005 - Directory Listing
Modified Wed May 5 22:02:30 2004 UTC (15 years, 9 months ago) by sh002i
documentation fix

Revision 2004 - Directory Listing
Modified Wed May 5 22:02:12 2004 UTC (15 years, 9 months ago) by sh002i
globalUserID is actually used in addCourse

Revision 2003 - Directory Listing
Modified Wed May 5 22:01:48 2004 UTC (15 years, 9 months ago) by sh002i
runtime_use now gives an error message if it is passed an empty string
or an undefined value

Revision 2002 - Directory Listing
Modified Wed May 5 16:04:48 2004 UTC (15 years, 9 months ago) by jj
Removed hard-wired path.

Revision 2001 - Directory Listing
Modified Wed May 5 01:53:51 2004 UTC (15 years, 9 months ago) by gage
re-fixed getRecord subroutine to properly handle blank fields at the end
of lines. (Adding a delimiter is not enough, perl deletes all terminal
blank elements at the end of a list -- as far as I can determine.) One
needs to add "$delimeter___" so that the last field is non-blank.

This appears to fix bug #471

Revision 2000 - Directory Listing
Modified Wed May 5 00:53:13 2004 UTC (15 years, 9 months ago) by sh002i
added support for upload/download/delete of scoring files

Revision 1999 - Directory Listing
Modified Tue May 4 20:19:07 2004 UTC (15 years, 9 months ago) by jj
When listing problems, show a rendered version.  Also, when dealing with the global data, reorganize where the data is shown.

Revision 1998 - Directory Listing
Modified Tue May 4 16:03:09 2004 UTC (15 years, 9 months ago) by jj
Add link to set maker in the instructor tools part of left panel.  Also
added hr above Instructor Tools.

Revision 1997 - Directory Listing
Modified Tue May 4 15:16:58 2004 UTC (15 years, 9 months ago) by toenail
In user-specific override mode, dates are not directly editable
Fixes Bug #456.

Revision 1996 - Directory Listing
Modified Tue May 4 14:44:58 2004 UTC (15 years, 9 months ago) by toenail
cosmetic change to title to include user name

Revision 1995 - Directory Listing
Modified Mon May 3 20:56:06 2004 UTC (15 years, 9 months ago) by jj
Added entries for SetMaker.

Revision 1994 - Directory Listing
Modified Mon May 3 20:47:23 2004 UTC (15 years, 9 months ago) by jj
Initial import.

Revision 1993 - Directory Listing
Modified Mon May 3 20:44:24 2004 UTC (15 years, 9 months ago) by jj
Initial import.  This may not be the right destination, especially as its
database methods become more integrated with the ones already in WeBWorK.

Revision 1988 - Directory Listing
Modified Sun May 2 19:50:37 2004 UTC (15 years, 9 months ago) by jj
Initial import.  Lets you render a problem which is not part of anything.

Revision 1987 - Directory Listing
Modified Thu Apr 29 23:33:36 2004 UTC (15 years, 9 months ago) by sh002i
removed debugging output

Revision 1985 - Directory Listing
Modified Thu Apr 29 22:22:33 2004 UTC (15 years, 9 months ago) by sh002i
implemented import and export, fixed some bugs

Revision 1984 - Directory Listing
Modified Thu Apr 29 22:20:36 2004 UTC (15 years, 9 months ago) by sh002i
reply_with_file(): fixed bugs, added "delete_after" option

Revision 1983 - Directory Listing
Modified Thu Apr 29 16:29:30 2004 UTC (15 years, 9 months ago) by gage
Added some code so that you don't get a warning message if the scoring
file doesn't exist.

Revision 1982 - Directory Listing
Modified Wed Apr 28 16:03:21 2004 UTC (15 years, 10 months ago) by gage
Removed warning messages.

Revision 1980 - Directory Listing
Modified Wed Apr 28 15:51:25 2004 UTC (15 years, 10 months ago) by gage
Added code to give message when an edited problem file cannot be saved.

Some of the problems reported in bug #152 are addressed.

Instituting a submit result field was not done.

Revision 1979 - Directory Listing
Modified Tue Apr 27 23:30:03 2004 UTC (15 years, 10 months ago) by jj
Made field for name of exported problem set wider, to be the same width as for the
header file.

Revision 1978 - Directory Listing
Modified Tue Apr 27 14:23:45 2004 UTC (15 years, 10 months ago) by jj
Removed implicit assumption that when exporting a set, a set definition file
for it already existed.

Revision 1977 - Directory Listing
Modified Tue Apr 27 03:38:15 2004 UTC (15 years, 10 months ago) by sh002i
database import and export support

Revision 1976 - Directory Listing
Modified Tue Apr 27 03:37:56 2004 UTC (15 years, 10 months ago) by sh002i
return auto-created permission level records

Revision 1974 - Directory Listing
Modified Tue Apr 27 02:45:14 2004 UTC (15 years, 10 months ago) by sh002i
nbsp doesn't barf on undefined values anymore

Revision 1973 - Directory Listing
Modified Tue Apr 27 02:10:56 2004 UTC (15 years, 10 months ago) by sh002i
allowed for undefined values in section and recitation

Revision 1972 - Directory Listing
Modified Tue Apr 27 02:10:33 2004 UTC (15 years, 10 months ago) by sh002i
added idsToString to ouput a concise string identifier for a record

Revision 1970 - Directory Listing
Modified Sun Apr 25 01:20:40 2004 UTC (15 years, 10 months ago) by gage
Corrected a calculation that allowed for division by zero if no student had tried a problem.

This squashes bug 460

Revision 1963 - Directory Listing
Modified Tue Apr 20 20:17:46 2004 UTC (15 years, 10 months ago) by gage
Made a small change to the subroutine problemListRow which now handles
the case where the problem status has not been defined as a number.

Revision 1962 - Directory Listing
Modified Tue Apr 13 14:36:40 2004 UTC (15 years, 10 months ago) by sh002i
quoted hash keys with colons in them.

Revision 1960 - Directory Listing
Modified Fri Apr 9 20:19:25 2004 UTC (15 years, 10 months ago) by sh002i
fixed interface to not be so sucky, added delete function.

Revision 1959 - Directory Listing
Modified Fri Apr 9 20:18:51 2004 UTC (15 years, 10 months ago) by sh002i
finished, deleteCourse, added listCourses.

Revision 1958 - Directory Listing
Modified Fri Apr 9 20:18:29 2004 UTC (15 years, 10 months ago) by sh002i
now uses listCourses

Revision 1956 - Directory Listing
Modified Wed Apr 7 22:18:46 2004 UTC (15 years, 10 months ago) by gage
Corrected typo in defining
class.

Revision 1955 - Directory Listing
Modified Wed Apr 7 22:13:01 2004 UTC (15 years, 10 months ago) by gage
Added colors to the "answers correct" and "answers incorrect" statements.

They are assigned to the class div.ResultsWithError and div.ResultsWithoutError

Revision 1954 - Directory Listing
Modified Wed Apr 7 02:17:34 2004 UTC (15 years, 10 months ago) by gage
Fixed url so that it points to the time and date page for editing the
 set data for the student

Revision 1953 - Directory Listing
Modified Wed Apr 7 01:17:58 2004 UTC (15 years, 10 months ago) by gage
Fixed problem where a success message was issued even when
a mail merge file was not correctly saved.

Also made cosmetic modifications to the error message format
so that it doesn't look as frightening and the important
error message is highlited more than the boiler plate message

Revision 1952 - Directory Listing
Modified Wed Apr 7 00:13:37 2004 UTC (15 years, 10 months ago) by gage
Made changes in wording about open date.  This foxes bug 429
(assuming that it really needed to be fixed).

Revision 1951 - Directory Listing
Modified Tue Apr 6 01:58:25 2004 UTC (15 years, 10 months ago) by gage
Fixed link for edit button on ProblemSetList page.
This squashes bug #446

Revision 1950 - Directory Listing
Modified Mon Apr 5 20:52:54 2004 UTC (15 years, 10 months ago) by gage
Fixed a line return that was causing troubles one webwork, but not on
webwork3.  "<br>\n" produced two line breaks within <pre> on webwork,
but only one on webwork3,  "\n" produced no line breaks on webwork3
and one on webwork.

It seems safest to go with "<br>" which seems to produce a single line
break on each machine.

Revision 1949 - Directory Listing
Modified Mon Apr 5 20:21:48 2004 UTC (15 years, 10 months ago) by jj
Siblings were mislabeled as "Problem Sets", when they are a list of
individual problems.

Revision 1948 - Directory Listing
Modified Mon Apr 5 20:16:41 2004 UTC (15 years, 10 months ago) by gage
Fixed spacing in preview of merge file data

Revision 1947 - Directory Listing
Modified Mon Apr 5 19:33:03 2004 UTC (15 years, 10 months ago) by gage
Fixed errors in creating urls. (It is important to set authen=>0
when creating links for forms -- they already contain hidden
authentication variables.

Revision 1945 - Directory Listing
Modified Mon Apr 5 03:58:30 2004 UTC (15 years, 10 months ago) by sh002i
preliminary web-based course creation support

try it -- create a course called "admin" the usual way and then visit it
in your browser.

Revision 1944 - Directory Listing
Modified Mon Apr 5 03:56:16 2004 UTC (15 years, 10 months ago) by sh002i
css fix

Revision 1942 - Directory Listing
Modified Sun Apr 4 17:08:45 2004 UTC (15 years, 10 months ago) by jj
Added timestamp to contentgenerator.  The format string can be passed to
it by the style parameter.

Revision 1939 - Directory Listing
Modified Sun Apr 4 15:18:25 2004 UTC (15 years, 10 months ago) by jj
On a multiple checkbox question, the different checked boxes are separated
by ^@ in the log file.  They don't look nice on a web page, show they are
now switched to commas in showHTML.

Revision 1938 - Directory Listing
Modified Sun Apr 4 04:00:10 2004 UTC (15 years, 10 months ago) by gage
More changes in construction of urls.

Changed parameter acquistion in ShowAnswers

Revision 1937 - Directory Listing
Modified Sun Apr 4 03:59:33 2004 UTC (15 years, 10 months ago) by gage
More changes in construction of urls.

Changed the form calling ShowAnswers

Revision 1934 - Directory Listing
Modified Sat Apr 3 16:24:42 2004 UTC (15 years, 10 months ago) by gage
Updated these files to generate urls from urlpath.

Revision 1930 - Directory Listing
Modified Sun Mar 28 04:46:13 2004 UTC (15 years, 11 months ago) by gage
Converting to using URLPath.pm
Some difficulties with constructing path to
SetsAssignedToUsers.pm in ProblemSetEditor.pm

Revision 1928 - Directory Listing
Modified Sun Mar 28 03:25:47 2004 UTC (15 years, 11 months ago) by gage
Cleanup -- moving toward using the Apache:Request object and URLpath.

It remains to use URLpath to construct new paths in these files.

Revision 1927 - Directory Listing
Modified Thu Mar 25 00:28:04 2004 UTC (15 years, 11 months ago) by sh002i
Added a new numeric "published" field to Set and UserSet record classes,
WW1Hash (with field name "publ"), and mksqldb.

Modified WW1Hash to promote fields that did not exist in the database to
the empty string, to deal with sets that do not have a "published"
field.

Revision 1926 - Directory Listing
Modified Thu Mar 25 00:27:56 2004 UTC (15 years, 11 months ago) by sh002i
Added a new numeric "published" field to Set and UserSet record classes,
WW1Hash (with field name "publ"), and mksqldb.

Revision 1924 - Directory Listing
Modified Tue Mar 23 22:59:53 2004 UTC (15 years, 11 months ago) by sh002i
urlpath/systemlink upgrades
LOTS of cleanup (but it still needs more)

Revision 1923 - Directory Listing
Modified Tue Mar 23 22:59:21 2004 UTC (15 years, 11 months ago) by sh002i
support for previewing temp files

Revision 1922 - Directory Listing
Modified Tue Mar 23 22:58:10 2004 UTC (15 years, 11 months ago) by sh002i
title improvements

Revision 1921 - Directory Listing
Modified Tue Mar 23 04:20:56 2004 UTC (15 years, 11 months ago) by sh002i
added programmatic format support

Revision 1920 - Directory Listing
Modified Tue Mar 23 01:55:14 2004 UTC (15 years, 11 months ago) by sh002i
rewritten:

* no duplicated code (no copy-n-paste)
* error messages if the wrong objects are selected
* uses $self->reply_with_redirect()
* uses ScrollingRecordList
* more descriptive button names, values

Revision 1919 - Directory Listing
Modified Tue Mar 23 01:48:27 2004 UTC (15 years, 11 months ago) by sh002i
removed test

Revision 1918 - Directory Listing
Modified Tue Mar 23 01:48:07 2004 UTC (15 years, 11 months ago) by sh002i
added "Add Users" and "Set Assigner" links

Revision 1917 - Directory Listing
Modified Tue Mar 23 01:15:58 2004 UTC (15 years, 11 months ago) by sh002i
urlpath/request/systemlink updates

Revision 1916 - Directory Listing
Modified Tue Mar 23 01:11:59 2004 UTC (15 years, 11 months ago) by sh002i
removed appendixes, deny access if not has permission

Revision 1915 - Directory Listing
Modified Tue Mar 23 01:11:18 2004 UTC (15 years, 11 months ago) by sh002i
now using new urlpath stuff, etc.

Revision 1914 - Directory Listing
Modified Tue Mar 23 01:10:51 2004 UTC (15 years, 11 months ago) by sh002i
new interface to systemLink

Revision 1913 - Directory Listing
Modified Tue Mar 23 01:10:14 2004 UTC (15 years, 11 months ago) by sh002i
removed appendix

Revision 1912 - Directory Listing
Modified Tue Mar 23 01:09:26 2004 UTC (15 years, 11 months ago) by sh002i
fixed hierarchy problems with statistics and user detail.

Revision 1911 - Directory Listing
Modified Tue Mar 23 01:08:41 2004 UTC (15 years, 11 months ago) by sh002i
* systemLink changes: params can either specify param names in a list
(in which case all param values will be taken from the request) or
specify param names and values in a hash (in which case only undefined
values will be taken from the request). multiple values can be specified
for the same param by using an arrayref.

* added $self->reply_with_file() and $self->reply_with_redirect: these
can be called from pre_header_initialize to direct the CG to either send
a file or a location header. $self->{sendFile} and $self->{noContent},
as well as sending your own redirect headers, are now deprecated!

Revision 1910 - Directory Listing
Modified Tue Mar 23 01:04:02 2004 UTC (15 years, 11 months ago) by sh002i
handle undef CG result

Revision 1908 - Directory Listing
Modified Fri Mar 19 21:56:35 2004 UTC (15 years, 11 months ago) by sh002i
URLpath compliance, some cleaning up of code. much more cleanup remains.

Revision 1905 - Directory Listing
Modified Thu Mar 18 21:08:04 2004 UTC (15 years, 11 months ago) by sh002i
if $field is undefined in sortByname, the items are treated as strings
instead of objects.

Revision 1904 - Directory Listing
Modified Wed Mar 17 08:18:29 2004 UTC (15 years, 11 months ago) by sh002i
fixed FormLayout style

Revision 1903 - Directory Listing
Modified Wed Mar 17 08:17:52 2004 UTC (15 years, 11 months ago) by sh002i
URLPath conversion, cosmetic changes, work on info box UI

Revision 1902 - Directory Listing
Modified Wed Mar 17 08:17:19 2004 UTC (15 years, 11 months ago) by sh002i
URLPath conversion

Revision 1901 - Directory Listing
Modified Wed Mar 17 08:16:35 2004 UTC (15 years, 11 months ago) by sh002i
URLPath conversion, cosmetic changes.

Revision 1900 - Directory Listing
Modified Wed Mar 17 08:16:13 2004 UTC (15 years, 11 months ago) by sh002i
added dequote() function from cookbook

Revision 1899 - Directory Listing
Modified Wed Mar 17 08:15:51 2004 UTC (15 years, 11 months ago) by sh002i
fixed a path

Revision 1898 - Directory Listing
Modified Wed Mar 17 08:15:31 2004 UTC (15 years, 11 months ago) by sh002i
added note to remind me to change the way systemLink() works

Revision 1895 - Directory Listing
Modified Tue Mar 16 20:00:23 2004 UTC (15 years, 11 months ago) by sh002i
disabled param munging -- this will prevent destruction of params with
':' and ',' in their names. closes bug #431.

Revision 1894 - Directory Listing
Modified Mon Mar 15 23:04:00 2004 UTC (15 years, 11 months ago) by sh002i
updated for new request format and URLpath

Revision 1893 - Directory Listing
Modified Mon Mar 15 23:03:46 2004 UTC (15 years, 11 months ago) by sh002i
fix in systemLink logic

Revision 1892 - Directory Listing
Modified Mon Mar 15 22:33:22 2004 UTC (15 years, 11 months ago) by sh002i
upgraded request usage.
i'm delaying changing how paths are generated until i do something about
what a mess this module is in other ways.

Revision 1891 - Directory Listing
Modified Mon Mar 15 22:29:54 2004 UTC (15 years, 11 months ago) by sh002i
comments

Revision 1890 - Directory Listing
Modified Mon Mar 15 22:24:02 2004 UTC (15 years, 11 months ago) by sh002i
made hardcopy_preselect_set a child of hardcopy (as it should be)

Revision 1889 - Directory Listing
Modified Mon Mar 15 21:35:12 2004 UTC (15 years, 11 months ago) by sh002i
conformance with unified request object, etc.
SMALL formatting cleanups.
this module needs some work, and there is stuff to factor out -- there
is a lot of copy-n-paste from other modules.

Revision 1888 - Directory Listing
Modified Mon Mar 15 21:13:06 2004 UTC (15 years, 11 months ago) by sh002i
nothing

Revision 1887 - Directory Listing
Modified Mon Mar 15 21:12:48 2004 UTC (15 years, 11 months ago) by sh002i
Welcome to the ContentGenerator skeleton!

This module is designed to help you in creating subclasses of
WeBWorK::ContentGenerator. Follow the instructions marked "SKEL" below
to create your very own module.

When you've finished, I recommend you do some cleanup. These modules are
much easier to maintain if they doesn't contain "vestigal" garbage code.
Remove the "SKEL" comments and anything else that that you're not using
in your module.

Revision 1886 - Directory Listing
Modified Mon Mar 15 20:26:12 2004 UTC (15 years, 11 months ago) by sh002i
removed unused WeBWorK::Constants

Revision 1885 - Directory Listing
Modified Mon Mar 15 20:17:35 2004 UTC (15 years, 11 months ago) by sh002i
Authen and Authz are now passed only a WeBWorK::Request.

Revision 1884 - Directory Listing
Modified Mon Mar 15 20:17:14 2004 UTC (15 years, 11 months ago) by sh002i
disabled debugging output

Revision 1883 - Directory Listing
Modified Mon Mar 15 04:10:36 2004 UTC (15 years, 11 months ago) by sh002i
urls are now generated with URLpath and systemLink

Revision 1882 - Directory Listing
Modified Mon Mar 15 04:09:56 2004 UTC (15 years, 11 months ago) by sh002i
changed interface for systemLink to be more regular. you can now specify
a list of parameters to attach to the URL and a list of alternate values
for any parameter.

cosmetic changes.

Revision 1881 - Directory Listing
Modified Mon Mar 15 03:50:05 2004 UTC (15 years, 11 months ago) by gage
I have made changes to the list of problems that uses the full path
instead of the relative call used previously.  Hope this will fix
the error described below.   I don't know whether this is the proper
fix or whether something fancier using urlPath is appropriate.


There is an error with the links for Set 7.
Clicking on problems in the
problem set will not link to the selected problem- it will link to the
problem set of the same number. (i.e. Selecting problem #2 will link
me to
Homework set #2 instead)


--Mike

Revision 1880 - Directory Listing
Modified Mon Mar 15 03:18:15 2004 UTC (15 years, 11 months ago) by sh002i
all template escapes now use CGI::Pretty for better readability. (feel
free to convert other content generators -- replace "use CGI" with "use
CGI::Pretty.

all template escapes now print output directly instead of returning
things. (good for pipelining!)

Revision 1879 - Directory Listing
Modified Mon Mar 15 02:25:11 2004 UTC (15 years, 11 months ago) by sh002i
removed old dispatch() function, renamed dispatch_new() -> dispatch(),
added upload handling code (from old dispatch function).

Revision 1878 - Directory Listing
Modified Sat Mar 13 05:09:20 2004 UTC (15 years, 11 months ago) by gage
Temporary fix for problem with hardcopy.

	#my $singleSet = $r->urlpath->args("setID");
	my $singleSet;  #FIXME trace down how sets are being passed to hardcopy.


$singleSet was receiving  the notion 1/8
@sets was getting the correct value of the number of the set.
Looks like $singleSet is receivinv a hash??

The calling code needs to be checked over and reconciled with the responding code.

Revision 1877 - Directory Listing
Modified Thu Mar 11 03:27:11 2004 UTC (15 years, 11 months ago) by sh002i
updated to use the "unified request" object.
this file needs quite a bit of refactoring (along with Problem.pm).

Revision 1876 - Directory Listing
Modified Thu Mar 11 03:19:34 2004 UTC (15 years, 11 months ago) by sh002i
updated to use the "unified request" object.
removed unused variables and subroutines.
fixed some style problems.

Revision 1875 - Directory Listing
Modified Thu Mar 11 03:15:03 2004 UTC (15 years, 11 months ago) by sh002i
updated to use the "unified request" object.
removed unused variables and subroutines.

Revision 1874 - Directory Listing
Modified Thu Mar 11 03:10:06 2004 UTC (15 years, 11 months ago) by sh002i
removed incorrect code from Feedback.pm, as well as several unused
variables, closing Bug #427. updated to use the "unified request"
object.

Revision 1873 - Directory Listing
Modified Thu Mar 11 03:07:46 2004 UTC (15 years, 11 months ago) by sh002i
finished extensive documentation and reorganzied file. this should be
much more usable now. also, the templater is now called from the new
content() method (instead of having special logic in go()).

Revision 1871 - Directory Listing
Modified Wed Mar 10 02:51:57 2004 UTC (15 years, 11 months ago) by sh002i
i hate it when i think i've tested something, and it turns out i didn't.

Revision 1870 - Directory Listing
Modified Wed Mar 10 02:31:05 2004 UTC (15 years, 11 months ago) by sh002i
templating code from ContentGenerator.pm is now here.

Revision 1869 - Directory Listing
Modified Wed Mar 10 02:30:32 2004 UTC (15 years, 11 months ago) by sh002i
removed templating code. (it's now in lib/WeBWorK/Template.pm.)
small fixes in links().
$ce/$db/$authz now taken from $r instead of from $self in many methods.
loginstatus() now uses urlpath.
CSS-ization.

Revision 1867 - Directory Listing
Modified Tue Mar 9 15:50:03 2004 UTC (15 years, 11 months ago) by sh002i
disabled path() and title() so implementations in superclass will be
used instead.

Revision 1866 - Directory Listing
Modified Tue Mar 9 15:49:28 2004 UTC (15 years, 11 months ago) by sh002i
Added systemLink() method to take a URLPath and tack on the location
prefix and the authen args (if desired). Allows one to override any of
the authen args with new values (i.e. for changing effectiveUser).

Reimplemented links() using URLPaths and calls to systemLink() as a
test. Also, the output is now styled as nested unordered lists in the
class LinkMenu (see stylesheet).

Revision 1865 - Directory Listing
Modified Tue Mar 9 15:42:37 2004 UTC (15 years, 11 months ago) by sh002i
put "grades" in alphabetical order. added newFromModule for creating a
URLPath to a particular module with particular args. reorganized the
code somewhat. constructors now throw an exception if they can't find an
appropriate path type.

Revision 1863 - Directory Listing
Modified Sun Mar 7 02:29:25 2004 UTC (15 years, 11 months ago) by gage
Added a primitive file reading capability to Grader.pm.

Now you can attach the message from an email file
called   report_grades.msg   in the email directory which is  merged with the
file report_grades_data.csv  in the scoring directory.

there is a lot of code borrowed from SendMail and from Instructor which can be factored out.

It provides a primitive version of a feature that has been requested --
to report exam scores as well as webwork scores.

Revision 1862 - Directory Listing
Modified Sat Mar 6 21:49:48 2004 UTC (15 years, 11 months ago) by sh002i
disabled path and title methods.

Revision 1861 - Directory Listing
Modified Sat Mar 6 21:49:32 2004 UTC (15 years, 11 months ago) by sh002i
added documentation, added support for a new "textonly" argument to the
"path" macro.

Revision 1859 - Directory Listing
Modified Sat Mar 6 21:41:44 2004 UTC (15 years, 11 months ago) by gage
Use the student stat table in Grader to produce student detailed stats in Stats.pm.

Commented out, but did not yet remove Stats.pm code for this function.

Revision 1858 - Directory Listing
Modified Sat Mar 6 18:50:31 2004 UTC (15 years, 11 months ago) by gage
Added support for the new module Grades.pm which supports student grades

Also changed ProblemSets.pm so that it welcomes the effectiveUser rather than the user.

Revision 1857 - Directory Listing
Modified Sat Mar 6 18:50:00 2004 UTC (15 years, 11 months ago) by gage
Added support for the new module Grades.pm which supports student grades

Revision 1856 - Directory Listing
Modified Sat Mar 6 17:36:29 2004 UTC (15 years, 11 months ago) by gage
*** empty log message ***

Revision 1855 - Directory Listing
Modified Sat Mar 6 17:35:27 2004 UTC (15 years, 11 months ago) by gage
Allow at most two digit
numbers

Revision 1854 - Directory Listing
Modified Sat Mar 6 17:32:36 2004 UTC (15 years, 11 months ago) by gage
Removed unneeded
formatting code

Revision 1853 - Directory Listing
Modified Sat Mar 6 17:29:07 2004 UTC (15 years, 11 months ago) by gage
another typo

Revision 1852 - Directory Listing
Modified Sat Mar 6 17:25:32 2004 UTC (15 years, 11 months ago) by gage
Fixed threeSpaceFill
routine to work with
strings.

Revision 1851 - Directory Listing
Modified Sat Mar 6 17:21:22 2004 UTC (15 years, 11 months ago) by gage
typo

Revision 1850 - Directory Listing
Modified Sat Mar 6 17:16:00 2004 UTC (15 years, 11 months ago) by gage
Make the percentages more accurate by dividing by the number of students who attempt the problem.

Revision 1849 - Directory Listing
Modified Sat Mar 6 16:04:06 2004 UTC (15 years, 11 months ago) by gage
need to calculate this
value as well.  oops.

Revision 1848 - Directory Listing
Modified Sat Mar 6 16:02:17 2004 UTC (15 years, 11 months ago) by gage
Added 0 bracket to
number of attempts.

Revision 1847 - Directory Listing
Modified Sat Mar 6 15:55:07 2004 UTC (15 years, 11 months ago) by gage
Added more statistics on how students are doing.

There is still a lot o code to be cleaned up.

Once the calculation and the display are better separated it will be easier to
create statistics that count studnets appropriately.  e.g. dropped stduents and professors aren't counted.

Revision 1846 - Directory Listing
Modified Sat Mar 6 00:48:16 2004 UTC (15 years, 11 months ago) by gage
Changes to the ways links are constructed on this, the front page,
of WeBWorK.  I believe this is where links missing webwork2 or missing
the course name started to appear.  In fact I'm surprised it worked at
all.

the current patches are hacks.  This page needs to be adapted to
URLpath.
It would be a good script to do next.

--Mike

Revision 1845 - Directory Listing
Modified Fri Mar 5 05:43:09 2004 UTC (15 years, 11 months ago) by gage
Added timing
y

Revision 1844 - Directory Listing
Modified Fri Mar 5 05:03:44 2004 UTC (15 years, 11 months ago) by gage
Has only one subroutine at the moment
update_global_user   creates a global user if none existed before and assigns
all existing sets to the global user.

Revision 1843 - Directory Listing
Modified Fri Mar 5 05:01:37 2004 UTC (15 years, 11 months ago) by gage
Some cosmetic changes in the table

Added a safety switch for deleting sets.

Added a call to Compatibility::update_global_user  to fill in
global_user records if no globa_user has yet been assigned.

Revision 1842 - Directory Listing
Modified Fri Mar 5 04:16:19 2004 UTC (15 years, 11 months ago) by sh002i
added URLPath and Request, for dispatch_new

Revision 1841 - Directory Listing
Modified Thu Mar 4 21:05:58 2004 UTC (15 years, 11 months ago) by sh002i
changed template escape handler functions to grab data from $r->urlpath
instead of @_ for compatability with dispatch_new.

Revision 1840 - Directory Listing
Modified Thu Mar 4 21:05:04 2004 UTC (15 years, 11 months ago) by sh002i
removed debugging warning, added class="ScrollingRecordList"

Revision 1839 - Directory Listing
Modified Thu Mar 4 21:04:02 2004 UTC (15 years, 11 months ago) by sh002i
assignment functions now return a list of errors that occured during
assignment. these are, for example, used in Assigner.pm to display
errors.

Revision 1838 - Directory Listing
Modified Thu Mar 4 21:03:04 2004 UTC (15 years, 11 months ago) by sh002i
changed constructor to work with dispatch_new

Revision 1837 - Directory Listing
Modified Thu Mar 4 21:02:27 2004 UTC (15 years, 11 months ago) by sh002i
calls dispatch_new instead of dispatch. removed entire "Call Stack" from
error output, since it doesn't work right.

Revision 1836 - Directory Listing
Modified Thu Mar 4 21:00:51 2004 UTC (15 years, 11 months ago) by sh002i
added dispatch_new function. w00t!

Revision 1833 - Directory Listing
Modified Thu Mar 4 17:40:04 2004 UTC (15 years, 11 months ago) by gage
Rolled back previous addition of the due date.

The due date can be specified in the setHeader message.  It does not
need to be hard coded into ProblemSet.pm

--Mike

Revision 1829 - Directory Listing
Modified Thu Mar 4 04:36:08 2004 UTC (15 years, 11 months ago) by gage
Cleaning up commented out code.

Added a "due date is...." message to the top of the ProblemSet page.

Revision 1828 - Directory Listing
Modified Wed Mar 3 20:16:35 2004 UTC (15 years, 11 months ago) by sh002i
UI cleanup

Revision 1827 - Directory Listing
Modified Mon Mar 1 06:35:00 2004 UTC (15 years, 11 months ago) by sh002i
WeBWorK::HTML::ScrollingRecordList - HTML widget for a scrolling list of
records. uses FormatRecords and SortRecords. see sample usage in
Assigner.pm.

Revision 1826 - Directory Listing
Modified Mon Mar 1 06:33:45 2004 UTC (15 years, 11 months ago) by sh002i
refinements

Revision 1825 - Directory Listing
Modified Mon Mar 1 06:33:34 2004 UTC (15 years, 11 months ago) by sh002i
implemented UI using ScrollingRecordList

Revision 1824 - Directory Listing
Modified Mon Mar 1 03:52:43 2004 UTC (15 years, 11 months ago) by sh002i
added documentation

Revision 1823 - Directory Listing
Modified Mon Mar 1 00:49:25 2004 UTC (15 years, 11 months ago) by sh002i
Added utility modules for sorting lists of records and formatting
records as strings (WeBWorK::Utils::SortRecords and ::FormatRecords,
respectively).

These modules are important because they not only know how to sort or
format records, they can also be queried for a list of sorts or formats
suitable for display, i.e. in popup menus near the list of records.

These modules are being used as the basis for a module which
encapsulates a "record list" widget.

Revision 1821 - Directory Listing
Modified Sat Feb 21 10:15:58 2004 UTC (16 years ago) by toenail
Changed parameter calls to Error.pm, now sent using $r

Revision 1820 - Directory Listing
Modified Sat Feb 21 10:13:23 2004 UTC (16 years ago) by toenail
Eliminated direct parameter calls, error message now passed through $r

Revision 1819 - Directory Listing
Modified Thu Feb 19 22:47:02 2004 UTC (16 years ago) by gage
Roll back previous changes.  The user_id is no longer listed in the
scoring files.   sorry about that.

--Mike

Revision 1818 - Directory Listing
Modified Thu Feb 19 22:21:30 2004 UTC (16 years ago) by gage
Added user_id (the login id) to the list in scoring.

Revision 1811 - Directory Listing
Modified Mon Feb 16 03:37:02 2004 UTC (16 years ago) by gage
Added nbsp method to
ContentGenerator.pm

Revision 1810 - Directory Listing
Modified Mon Feb 16 03:16:50 2004 UTC (16 years ago) by gage
Added at table of
statistical results when
viewing the statistics
for a given set.
--Mike

Revision 1809 - Directory Listing
Modified Mon Feb 16 01:20:43 2004 UTC (16 years ago) by gage
Fixed ordering problem with problems in a given set.  This squashes bug #405.
Also made a few clean up efforts on the code.

--Mike

Revision 1804 - Directory Listing
Modified Sat Feb 14 00:55:17 2004 UTC (16 years ago) by sh002i
added slowness warning

Revision 1803 - Directory Listing
Modified Sat Feb 14 00:54:56 2004 UTC (16 years ago) by sh002i
added "Home" content generator to give a list of courses

Revision 1799 - Directory Listing
Modified Thu Feb 12 21:38:24 2004 UTC (16 years ago) by toenail
added nbsp() subroutine to clean up table appearance
this could still possibly be added to contentgenerator.pm

Revision 1798 - Directory Listing
Modified Thu Feb 12 20:55:10 2004 UTC (16 years ago) by toenail
added <pre> tags so the viewed message is the same as in the submitted email

Revision 1796 - Directory Listing
Modified Thu Feb 12 19:23:43 2004 UTC (16 years ago) by toenail
fixed incorrect error message parsing by Instructor/Index.pm

Revision 1795 - Directory Listing
Modified Thu Feb 12 19:22:50 2004 UTC (16 years ago) by toenail
fixed incorrect error handling by Instructor/Index.pm

Revision 1792 - Directory Listing
Modified Thu Feb 12 14:26:18 2004 UTC (16 years ago) by gage
Commented out extra brace which kept this from compiling. :-)
--Mike

Revision 1790 - Directory Listing
Modified Thu Feb 12 04:26:51 2004 UTC (16 years ago) by sh002i
added timing code

Revision 1789 - Directory Listing
Modified Thu Feb 12 04:26:17 2004 UTC (16 years ago) by sh002i
removed /test

Revision 1783 - Directory Listing
Modified Fri Feb 6 18:01:51 2004 UTC (16 years ago) by sh002i
shows user-specific due date if overridden. closes bug #394.

Revision 1782 - Directory Listing
Modified Fri Feb 6 17:37:11 2004 UTC (16 years ago) by sh002i
removed the "delete visible users" option, changed "show users selected
below" to "show users checked below".

Revision 1781 - Directory Listing
Modified Fri Feb 6 17:27:07 2004 UTC (16 years ago) by sh002i
dispatcher can now handle multiple slashes.

Revision 1777 - Directory Listing
Modified Thu Feb 5 00:05:11 2004 UTC (16 years ago) by sh002i
Closes bugs #345 and #293. From bugzilla: "This should work now. The
docs for Apache::Cookie claim that the module will accept relative
expiration dates such as "+30D" and "+1H", but apparently, this causes
the expiration date to be set to "now", which Galeon apparently didn't
mind but caused Safari and MSIE to throw the cookie away."

Revision 1776 - Directory Listing
Modified Wed Feb 4 13:22:56 2004 UTC (16 years ago) by gage
Fixed flaw in the previous correction meant to protect against
undefined student answers.

Revision 1775 - Directory Listing
Modified Wed Feb 4 00:32:12 2004 UTC (16 years ago) by gage
Made changes at line 552 which check that the original student answer has actually been
defined.  This should be guaranteed by the answer evaluators but ........

Revision 1774 - Directory Listing
Modified Tue Feb 3 01:22:00 2004 UTC (16 years ago) by gage
A method for displaying equations using dvipng which
can be used by students to enter symbolic data in
answers.  This is very much experimental still.

--Mike

Revision 1773 - Directory Listing
Modified Tue Feb 3 00:53:31 2004 UTC (16 years ago) by gage
Corrected sorting by user_id.  Code now works correctly.  Before the sorting for this case was occuring by accident
with the SQL database.

Made changes to the interface in SendMail.  The radio buttons are now horizontal to match the
radio buttons on the Instructor::Index page.  Changed Id to Login to make the sorting parameter clearer.

changed the format of the popmenu on the Instructor::Index page to match the format used on the SendMail page.

Revision 1772 - Directory Listing
Modified Tue Feb 3 00:49:19 2004 UTC (16 years ago) by sh002i
getAll works for problem as well as problem_user

Revision 1771 - Directory Listing
Modified Mon Feb 2 23:12:06 2004 UTC (16 years ago) by sh002i
Implemented the getAll method, to allow fast access to all problems in a
set. This speeds up Stats immensely.

Revision 1770 - Directory Listing
Modified Mon Feb 2 23:11:13 2004 UTC (16 years ago) by sh002i
Changed the code that retrieves all problem records for a set. Now, the
only call made (per set) is getAllUserProblems(). The extraneous call to
listUserProblems() has been removed.

Revision 1769 - Directory Listing
Modified Sat Jan 31 14:47:44 2004 UTC (16 years ago) by gage
Replaced "getuserProblems by getAllUserProblems when printing statistics for a single user (many sets)
The time when from 178 to 35 using GDBM.  It went from 15sec to 16sec (on a different course)
when using sql.

--Mike

Revision 1768 - Directory Listing
Modified Sat Jan 31 14:46:18 2004 UTC (16 years ago) by gage
Changed the size of the font for printing out the results of the scoring file.

This file needs to be reviewed carefully.  There is a lot of crufty code.
The use of s{tyle=>'.....'  should be replaced by items in the template in
this file and throughout the Instructor modules.

Revision 1767 - Directory Listing
Modified Sat Jan 31 04:28:48 2004 UTC (16 years ago) by gage
Added tweak to handle
case where set is not
defined when acting as
student.

Revision 1766 - Directory Listing
Modified Sat Jan 31 04:08:57 2004 UTC (16 years ago) by gage
Made major modifications to user interface on Instructor/Index page.

Added use of getAllUserProblems in main loop for Stats.pm problems when displaying
statistics for a given set.  This speeds GDBM from 8 sec to 2.  SQL stays at around 22-23 seconds.

Also addded code to sort_method which checks that the number of attempts has been defined.
If not it returns 0.

--Mike

Revision 1763 - Directory Listing
Modified Wed Jan 28 21:56:26 2004 UTC (16 years ago) by toenail
Content Generator to create an error message while still logging the user in.

Revision 1762 - Directory Listing
Modified Wed Jan 28 04:04:47 2004 UTC (16 years, 1 month ago) by gage
Corrected formatting showing the due date if it has been over-ridden.

Revision 1761 - Directory Listing
Modified Wed Jan 28 03:41:31 2004 UTC (16 years, 1 month ago) by gage
Added the due date when the problem has been assigned.

Revision 1760 - Directory Listing
Modified Wed Jan 28 03:31:44 2004 UTC (16 years, 1 month ago) by gage
Changed "open date" to "due date"  when

Revision 1757 - Directory Listing
Modified Sun Jan 25 20:04:20 2004 UTC (16 years, 1 month ago) by gage
Checked to make sure parameter is
defined before using it.

Revision 1756 - Directory Listing
Modified Sun Jan 25 20:00:14 2004 UTC (16 years, 1 month ago) by gage
Removed extraneous warning message

Revision 1755 - Directory Listing
Modified Sun Jan 25 19:56:09 2004 UTC (16 years, 1 month ago) by gage
Check that arguments have been
defined at line 417

Revision 1754 - Directory Listing
Modified Sun Jan 25 19:46:54 2004 UTC (16 years, 1 month ago) by gage
Added ability to change the number of entry rows on the Addusers.pm page.
Minor modification to multiple=> to conform to bbedit's version of correct html

Revision 1753 - Directory Listing
Modified Sun Jan 25 19:46:11 2004 UTC (16 years, 1 month ago) by gage
Cosmetic modification changed "edit set" to "edit sets"

Revision 1750 - Directory Listing
Modified Sun Jan 25 18:20:14 2004 UTC (16 years, 1 month ago) by gage
Added rudimentary "Save as" function.  This duplicates
WW1.9 save as , but does not provide any extra functionality.


The following problems remain:

The redirect does not yet work correctly.  I believe the desired behavior is to view the
new saved problem from the editor.  There is no easy way to view the new problem
or whatever until the problem has been assigned to globalUser in the set.

Revision 1749 - Directory Listing
Modified Sun Jan 25 18:17:31 2004 UTC (16 years, 1 month ago) by gage
Cosmetic change   changed "edit" to "edit sets" for clarity in link name.

Revision 1748 - Directory Listing
Modified Sun Jan 25 18:16:27 2004 UTC (16 years, 1 month ago) by gage
Cosmetic change textfield to text to correct an error in html output.

Revision 1747 - Directory Listing
Modified Sun Jan 25 15:53:23 2004 UTC (16 years, 1 month ago) by gage
Made modifications to PG problem editor to allow editing of course_info.

Future plans include allowing editing of login_info by the site manager (but not
by the course instructors).

All files to be edited must lie under the templates directory (for safety reasons.)

There are still issues with adequate warnings for saving files when permissions are not correctly set.

There is not yet a save as button.
--Mike

Revision 1746 - Directory Listing
Modified Fri Jan 23 23:01:49 2004 UTC (16 years, 1 month ago) by sh002i
Only collect nonempty user IDs for assigning. Closes bug #373

Revision 1745 - Directory Listing
Modified Fri Jan 23 22:04:20 2004 UTC (16 years, 1 month ago) by gage
Removed warning if a single tie fails.  If many ties fail
then the processes dies with a message of how many ties
were attempted.
--Mike

Revision 1744 - Directory Listing
Modified Fri Jan 23 21:46:37 2004 UTC (16 years, 1 month ago) by gage
Make sure that if one message is reported for answers then all
messages are reported (even if some of the messages are blank).
This was clearly a typo in the original code where a decision was
made on $answerMessages instead of $showAnswers.

This fixes bug #370

Revision 1743 - Directory Listing
Modified Fri Jan 23 21:04:05 2004 UTC (16 years, 1 month ago) by sh002i
added the option to assign sets to newly-created users.

Revision 1742 - Directory Listing
Modified Fri Jan 23 21:03:08 2004 UTC (16 years, 1 month ago) by sh002i
fixed a bug in assignSetsToUsers

Revision 1741 - Directory Listing
Modified Fri Jan 23 21:02:22 2004 UTC (16 years, 1 month ago) by sh002i
moved logout button to be in loginstatus escape.

Revision 1739 - Directory Listing
Modified Fri Jan 23 16:49:09 2004 UTC (16 years, 1 month ago) by sh002i
moved Assigner to UsersAssignedToSet. created new Assigner module, and
wired it to /$courseID/instructor/assigner/. It doesn't do anything yet,
but it will allow the assignment of multiple sets to multiple users, all
in one shot.

Revision 1738 - Directory Listing
Modified Fri Jan 23 13:13:53 2004 UTC (16 years, 1 month ago) by gage
Problem marked correct only if score is 1.  Previously any
score above 0 was marked correct.

Revision 1736 - Directory Listing
Modified Thu Jan 22 00:25:17 2004 UTC (16 years, 1 month ago) by gage
Made modifications to header that make it clearer how to edit all
sets for one user.

--Mike

Revision 1735 - Directory Listing
Modified Wed Jan 21 20:53:32 2004 UTC (16 years, 1 month ago) by sh002i
added more timing messages.

Revision 1734 - Directory Listing
Modified Wed Jan 21 20:53:18 2004 UTC (16 years, 1 month ago) by sh002i
Cleaned up, documented, and optimized assignment methods.
Added assignSetsToUsers() and unassignSetsFromUsers() methods.

Revision 1733 - Directory Listing
Modified Wed Jan 21 19:57:05 2004 UTC (16 years, 1 month ago) by sh002i
added some timing code

Revision 1732 - Directory Listing
Modified Wed Jan 21 19:55:54 2004 UTC (16 years, 1 month ago) by sh002i
changed text of link to instructor tools. (it is considered bad style to
label links "Link to ...")

Revision 1731 - Directory Listing
Modified Wed Jan 21 19:47:38 2004 UTC (16 years, 1 month ago) by sh002i
improved the formatting of error messages slightly.

Revision 1730 - Directory Listing
Modified Wed Jan 21 01:16:15 2004 UTC (16 years, 1 month ago) by gage
Mail merge does not report error when the merge file selected is "None".

--Mike

Revision 1729 - Directory Listing
Modified Wed Jan 21 00:31:51 2004 UTC (16 years, 1 month ago) by gage
Changed warning message for unassign all on the Assigner page.
This closes bug number 352

--Mike

Revision 1728 - Directory Listing
Modified Wed Jan 21 00:17:23 2004 UTC (16 years, 1 month ago) by gage
Corrected link to file transfer page.  This squashes bug #346

Revision 1727 - Directory Listing
Modified Tue Jan 20 18:56:03 2004 UTC (16 years, 1 month ago) by gage
Edited headers for the problem set list page.
--Mike

Revision 1726 - Directory Listing
Modified Mon Jan 19 04:26:45 2004 UTC (16 years, 1 month ago) by gage
Modified the reading of set definition files
slightly to deal with the case where
some values haven't been defined.
--Mike

Revision 1725 - Directory Listing
Modified Mon Jan 19 04:23:42 2004 UTC (16 years, 1 month ago) by gage
Put "guest user" button in a separate form.

Despite the fact that it was the second button
a return (in most browsers) would trigger
the practice login rather than the standard one,
much to the users surprise.
--Mike

Revision 1724 - Directory Listing
Modified Sun Jan 18 03:39:06 2004 UTC (16 years, 1 month ago) by gage
Fixed some errors in my first fix for Authen.pm
The goal is to make sure that the existance of a users
record and of a users status is checked before it is used.

Authen.pm could use some cleaning up.  Probably best to do this
when thinking about how one would plug this into LDAP or to
moodle's authenticator.

Revision 1723 - Directory Listing
Modified Sun Jan 18 00:12:30 2004 UTC (16 years, 1 month ago) by gage
Placed the link to subpages back on top of the quick link tools, at least for now.
The quick link tools need to be presented better.
-- Mike

Revision 1722 - Directory Listing
Modified Sun Jan 18 00:11:13 2004 UTC (16 years, 1 month ago) by gage
A link to the instructor tools is placed prominately at the top of the page.
It is identical to the link to instructor tools on the left.
This responds to bug #325, but may not close it completely.

Revision 1721 - Directory Listing
Modified Sun Jan 18 00:04:59 2004 UTC (16 years, 1 month ago) by gage
If the users status has not been defined it is set to 'C'.
I'm not sure why the status might be undefined, but this seems
to be the least damaging assumption.

A warning is issued.

Revision 1720 - Directory Listing
Modified Sat Jan 17 19:30:22 2004 UTC (16 years, 1 month ago) by gage
Can now sort recipient list by section and rectation.  A few other user interface
cosmetics added.  This should close bug 309

Revision 1719 - Directory Listing
Modified Sat Jan 17 17:05:53 2004 UTC (16 years, 1 month ago) by gage
Users who have been dropped from the course can not login with a password.

this addresses bug: 301

Revision 1718 - Directory Listing
Modified Sat Jan 17 16:38:40 2004 UTC (16 years, 1 month ago) by gage
Colorized responses to changing passwords.  Red for things which don't work
and green for those that did.
--Mike

Revision 1717 - Directory Listing
Modified Sat Jan 17 16:29:52 2004 UTC (16 years, 1 month ago) by gage
Cosmetic modifications to the user interface.  Made "instructor tools" and
"problem sets" larger in the left margin.

This addressed bug 323 but may not solve it.

Revision 1716 - Directory Listing
Modified Fri Jan 16 04:15:46 2004 UTC (16 years, 1 month ago) by gage
Modified layout of the Instructor/Index.pm module.

Revision 1715 - Directory Listing
Modified Fri Jan 16 01:14:49 2004 UTC (16 years, 1 month ago) by gage
Cosmetic tweak to title.  Added the course name.

Revision 1714 - Directory Listing
Modified Fri Jan 16 00:43:06 2004 UTC (16 years, 1 month ago) by gage
Added a larger title to this page.

Revision 1713 - Directory Listing
Modified Fri Jan 16 00:42:38 2004 UTC (16 years, 1 month ago) by gage
Added some cosmetic tweaks to these pages.

Revision 1712 - Directory Listing
Modified Thu Jan 15 22:45:34 2004 UTC (16 years, 1 month ago) by gage
Added warnings to Assigner so that folks don't unassign students
by accident.

You can now select the number of users you would like to add.

You still cannot immediately assign sets to students, but there
is written warning about this.

Revision 1711 - Directory Listing
Modified Thu Jan 15 19:42:44 2004 UTC (16 years, 1 month ago) by gage
Add users will now handle 5 users at once.

Add a device for allowing this number to change.

The userlist pop-down now defaults to add users with matching ids.

--Mike

Revision 1703 - Directory Listing
Modified Mon Jan 5 01:02:41 2004 UTC (16 years, 1 month ago) by sh002i
removed lingering references to "webwork-modperl", since we're calling
this product "webwork2" now. soon we should change the name of the CVS
module to "webwork2" as well.

Revision 1702 - Directory Listing
Modified Mon Jan 5 00:48:33 2004 UTC (16 years, 1 month ago) by sh002i
added checkboxes to the import forms to allow user to deicde whether to
assign a set to all users or not.

Revision 1696 - Directory Listing
Modified Sat Jan 3 20:07:03 2004 UTC (16 years, 1 month ago) by sh002i
UPDATE YOUR CONFIG FILES! (global.conf.dist, database.conf.dist)

Made changes to support the storage of multiple database layouts in a
single course environment. Database layouts are now stored in a hash
named %dbLayouts in database.conf, and the default layout is aliased to
*dbLayout (see comments in database.conf.dist and global.conf.dist)
sql.conf and gdbm.conf are no longer used.

Support the selection of a specific database layout when instantiating
WeBWorK::DB. WeBWorK::DB now takes a reference to a database layout
rather than an entire course environment.

All calls to WeBWorK::DB::new were updated to pass the correct argument.

Revision 1695 - Directory Listing
Modified Sat Jan 3 19:58:15 2004 UTC (16 years, 1 month ago) by sh002i
cleaned up error reporting in the include() function. sadly, it still
doesn't work as expected (see FIXME in the source)

Revision 1694 - Directory Listing
Modified Sat Jan 3 17:12:55 2004 UTC (16 years, 1 month ago) by gage
Modified line at 344 to check whether $key is defined.
If $key was not defined then there was a reported error
in defining $unusedCookieMatched.

--Mike

Revision 1693 - Directory Listing
Modified Wed Dec 31 03:28:13 2003 UTC (16 years, 1 month ago) by gage
made changes in checking for permissionLevel so that zero
was recognized as a legitimate level.
--Mike

Revision 1691 - Directory Listing
Modified Sun Dec 28 21:02:49 2003 UTC (16 years, 2 months ago) by gage
More checking for incomplete records.  This time for entries in
@userRecords

--Mike

Revision 1687 - Directory Listing
Modified Fri Dec 26 15:00:02 2003 UTC (16 years, 2 months ago) by gage
Modified print out so that the problem totals and index totals
have %4.1f format.  The field width is 4 and the number of decimal points is 1.
This closes bug #284
--Mike

Revision 1686 - Directory Listing
Modified Fri Dec 26 01:29:14 2003 UTC (16 years, 2 months ago) by gage
Added error checking to insure that the open_date, due_date and answer_date
are in correct order.

This closes bug #73
--Mike

Revision 1685 - Directory Listing
Modified Thu Dec 25 04:17:18 2003 UTC (16 years, 2 months ago) by sh002i
We now send a cookie if any of these conditions are met:
(a) a cookie was used for authentication
(b) a cookie was sent but not used for authentication, and the credentials
used for authentication were the same as those in the cookie
(c) the user asked to have a cookie sent and is not a guest user.

Now whenever we're not sending a "real" cookie, we send a cookie
with no user or key data that expires "one day ago".

Revision 1684 - Directory Listing
Modified Wed Dec 24 00:59:25 2003 UTC (16 years, 2 months ago) by sh002i
added automatic guest logins:

With the presence of a "login_practice_user" paramter, Authen.pm will
log the user in using the first unused practice user account. Login.pm
now displays a "Guest Login" button that sends the above parameter, but
only when the course has practice users. Currently, cookies are not sent
for practice users.

Revision 1683 - Directory Listing
Modified Tue Dec 23 06:03:33 2003 UTC (16 years, 2 months ago) by sh002i
added cookie support for authenticaion. the "WeBWorKAuthentication"
cookie is used to retrieve the "user" and "key" parameters. the cookie
is sent if a "send_cookie" parameter is present, and persists for 30
days unless canceled by an explicit "logout".

Revision 1682 - Directory Listing
Modified Tue Dec 23 05:25:09 2003 UTC (16 years, 2 months ago) by sh002i
small amount of cleanup (to prepare for cookie patch)

Revision 1681 - Directory Listing
Modified Thu Dec 18 23:15:34 2003 UTC (16 years, 2 months ago) by sh002i
- Assigner and SetsAssignedToUser now refuse to unassign sets from the
GlobalTableEmulator's "global user". Closes bug #283.
- New "unassign from all users" button in Assigner.
- Cosmetic changes to path() and title() in several modules.

Revision 1680 - Directory Listing
Modified Thu Dec 18 03:37:33 2003 UTC (16 years, 2 months ago) by sh002i
Multiple users with the same student ID no longer clobber each other.
(The users are still sorted by student ID.) Closes bug #285.

Revision 1679 - Directory Listing
Modified Thu Dec 18 03:02:19 2003 UTC (16 years, 2 months ago) by sh002i
add explicit "view" and "edit" links, closing bug #275

Revision 1678 - Directory Listing
Modified Thu Dec 18 02:35:29 2003 UTC (16 years, 2 months ago) by sh002i
(possible) fix for bug #286

Revision 1677 - Directory Listing
Modified Thu Dec 18 02:18:37 2003 UTC (16 years, 2 months ago) by sh002i
users are now skipped if they don't have an email address.

Revision 1676 - Directory Listing
Modified Wed Dec 17 23:14:13 2003 UTC (16 years, 2 months ago) by sh002i
moved a comment

Revision 1675 - Directory Listing
Modified Wed Dec 17 21:45:17 2003 UTC (16 years, 2 months ago) by sh002i
I wrote a really great log message, and then I lost it.
So now I'm a little pissed off.

Added code to pre-fetch users, global problems and user problems outside
of the main processing loop of scoreSet(). This allows the use of
getAllGlobalProblems() and getAllUserProblems(), which is much more
efficient than what was being done before:

For a course with 154 problems in 9 sets, all of which are assigned to
all users, scoring all sets with "IncludeIndex" and "Record Scores for
Single Sets" took the following times:

Original code: 34.07 sec
     New code:  8.68 sec

This is around four times as fast.

I initially attemped to rewrite the main loop to allow the use of
getAll*Problems(), but this proved to be time consuming and error prone.
I eventually decided to leave the main loop alone, except to replace the
DB calls inside it with accesses to pre-fetched records.

Revision 1674 - Directory Listing
Modified Wed Dec 17 21:24:38 2003 UTC (16 years, 2 months ago) by sh002i
additional comments in source code

Revision 1673 - Directory Listing
Modified Wed Dec 17 21:24:06 2003 UTC (16 years, 2 months ago) by sh002i
getAll() now returns problems in the order that they are specified in
the database, instead of in order by problem ID. This is the behavior of
gets() as well.

Revision 1672 - Directory Listing
Modified Wed Dec 17 20:21:15 2003 UTC (16 years, 2 months ago) by sh002i
added "getAllGlobalProblems", similar to "getAllUserProblems".

Revision 1670 - Directory Listing
Modified Sat Dec 13 01:44:48 2003 UTC (16 years, 2 months ago) by gage
Fixing cosmetic error at line 68 -- replaced @result[0] by
$result[0];
--Mike

Revision 1669 - Directory Listing
Modified Sat Dec 13 01:30:20 2003 UTC (16 years, 2 months ago) by sh002i
fixed stupid bug (#292)

Revision 1668 - Directory Listing
Modified Fri Dec 12 20:23:27 2003 UTC (16 years, 2 months ago) by sh002i
Added DB: getAllUserProblems; WW1Hash: getAll, getAllNoFilter;
GlobalTableEmulator: getAll.

Together, these functions allow efficient access to all problems in a
given set.

Revision 1667 - Directory Listing
Modified Fri Dec 12 02:24:30 2003 UTC (16 years, 2 months ago) by gage
As best I can determine all "get" commands to the database are now
checked and appropriate action (usually "die") is taken if no
object is returned.

One exception.  The multiple "gets"  such as getGlobalSets(@setNames)
are not checked -- if a given setName is not found is an empty object
returned? in the list or is nothing returned?

--Mike

Revision 1665 - Directory Listing
Modified Wed Dec 10 18:50:36 2003 UTC (16 years, 2 months ago) by gage
Changed the way timing marks are implemented.  They are made if a
timer has been defined for the file.
--Mike

Revision 1664 - Directory Listing
Modified Tue Dec 9 02:42:28 2003 UTC (16 years, 2 months ago) by sh002i
added "count" methods to the rest of the schemas. updated documentation.

Revision 1663 - Directory Listing
Modified Tue Dec 9 01:12:32 2003 UTC (16 years, 2 months ago) by sh002i
Normalized headers. All files now contain the text below as a header.
This is important since all files now (a) use the full name of the
package, (b) assign copyright to "The WeBWorK Project", (c) give the
full path of the file (relative to CVSROOT) instead of simply the file
name, and (d) include license and warranty information.

Here is the new header:

################################################################################
# WeBWorK Online Homework Delivery System
# Copyright © 2000-2003 The WeBWorK Projcct, http://openwebwork.sf.net/
# $CVSHeader$
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of either: (a) the GNU General Public License as published by the
# Free Software Foundation; either version 2, or (at your option) any later
# version, or (b) the "Artistic License" which comes with this package.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See either the GNU General Public License or the
# Artistic License for more details.
################################################################################

Revision 1662 - Directory Listing
Modified Mon Dec 8 23:45:07 2003 UTC (16 years, 2 months ago) by sh002i
playing with header formats

Revision 1661 - Directory Listing
Modified Mon Dec 8 23:07:46 2003 UTC (16 years, 2 months ago) by sh002i
Implemented a schema-level "count" function in the WW1Hash schema.
Added countSetUsers and countProblemUsers to DB.
Replaced SCALAR calls to listSetUsers with calls to countSetUsers.
Update Schema documentation.

The immediate advantage of this is to make ProblemSetList MUCH faster.

Revision 1660 - Directory Listing
Modified Fri Dec 5 00:01:40 2003 UTC (16 years, 2 months ago) by sh002i
implemented an "Import Multiple Sets" feature.

Revision 1659 - Directory Listing
Modified Thu Dec 4 20:23:51 2003 UTC (16 years, 2 months ago) by sh002i
typo

Revision 1658 - Directory Listing
Modified Thu Dec 4 20:23:25 2003 UTC (16 years, 2 months ago) by sh002i
squashed some instances of the "0 is not a true value" bug that keeps
creeping in.

Revision 1657 - Directory Listing
Modified Thu Dec 4 18:31:55 2003 UTC (16 years, 2 months ago) by sh002i
removed debugging statements

Revision 1656 - Directory Listing
Modified Thu Dec 4 06:19:17 2003 UTC (16 years, 2 months ago) by sh002i
reduced number of return points

Revision 1655 - Directory Listing
Modified Thu Dec 4 06:17:32 2003 UTC (16 years, 2 months ago) by sh002i
databases are not created on first read

Revision 1654 - Directory Listing
Modified Thu Dec 4 06:17:08 2003 UTC (16 years, 2 months ago) by sh002i
fixed password creation

Revision 1652 - Directory Listing
Modified Wed Dec 3 20:32:50 2003 UTC (16 years, 2 months ago) by sh002i
added getsNoFilter, which will return a list of set or problem records
without filtering out global data first. (used by getMergedSets)

Revision 1651 - Directory Listing
Modified Wed Dec 3 20:31:49 2003 UTC (16 years, 2 months ago) by sh002i
fixed timers

Revision 1650 - Directory Listing
Modified Wed Dec 3 20:31:30 2003 UTC (16 years, 2 months ago) by sh002i
cleanup

Revision 1649 - Directory Listing
Modified Wed Dec 3 20:30:31 2003 UTC (16 years, 2 months ago) by sh002i
finally committing "terrible GDBM hack": if WW1Hash and
GlobalTableEmuator are being used, a schema-specific optimization is
enabled in getMergedSets.

Revision 1648 - Directory Listing
Modified Wed Dec 3 20:27:02 2003 UTC (16 years, 2 months ago) by sh002i
formatting

Revision 1647 - Directory Listing
Modified Tue Dec 2 16:42:53 2003 UTC (16 years, 2 months ago) by sh002i
removed old version of module from beneath __END__.

Revision 1646 - Directory Listing
Modified Tue Dec 2 16:41:16 2003 UTC (16 years, 2 months ago) by sh002i
removed "use HTML::Entities", as it is not being used (commented out)
and no other modules use it.

Revision 1645 - Directory Listing
Modified Fri Nov 21 03:59:27 2003 UTC (16 years, 3 months ago) by sh002i
complains about there being a user-specific record but no global record,
but returns the user record unmodified instead if failing.

Revision 1642 - Directory Listing
Modified Wed Nov 19 23:08:02 2003 UTC (16 years, 3 months ago) by sh002i
implemented assignAllSetsToUser and unassignAllSetsFromUser

Revision 1641 - Directory Listing
Modified Wed Nov 19 22:55:58 2003 UTC (16 years, 3 months ago) by sh002i
plural get methods no longer require an argument. that way, one can pass
an empty list to them and get an empty list back.

Revision 1640 - Directory Listing
Modified Wed Nov 19 19:06:42 2003 UTC (16 years, 3 months ago) by sh002i
added "Act As" link, user ID now links to "sets assigned to user"

Revision 1639 - Directory Listing
Modified Wed Nov 19 18:48:57 2003 UTC (16 years, 3 months ago) by gage
Made minor modifications so that GatewayQuiz would run again.  It hadn't
been tested for months and other parts of the system had moved on.
This is still very much a mockup for delivering gateway quizzes.
--Mike

Revision 1637 - Directory Listing
Modified Wed Nov 19 18:45:12 2003 UTC (16 years, 3 months ago) by sh002i
added documentation for "gets"

Revision 1636 - Directory Listing
Modified Wed Nov 19 18:44:47 2003 UTC (16 years, 3 months ago) by sh002i
added code to check for undef return values from DB "get" calls.

Revision 1635 - Directory Listing
Modified Wed Nov 19 18:42:42 2003 UTC (16 years, 3 months ago) by sh002i
getPassword[s] and getPermissionLevel[s] now auto-create missing
records.

Revision 1632 - Directory Listing
Modified Mon Nov 10 04:11:56 2003 UTC (16 years, 3 months ago) by gage
Adding timing code for ProblemSets and for Stats.pm
--Mike

Revision 1631 - Directory Listing
Modified Sun Nov 9 23:21:34 2003 UTC (16 years, 3 months ago) by gage
Removed references to ScoringTotals.pm   These capabilities
are handled by Scoring.pm
--Mike

Revision 1630 - Directory Listing
Modified Sun Nov 9 23:21:24 2003 UTC (16 years, 3 months ago) by gage
Removed references to ScoringTotals.pm   These capabilities
are handled by Scoring.pm
--Mike

Revision 1629 - Directory Listing
Modified Sun Nov 9 22:44:28 2003 UTC (16 years, 3 months ago) by gage
changed getMergedProblems to getUserProblems.  This seems to
have speeded things up somewhat.
--Mike

Revision 1628 - Directory Listing
Modified Sun Nov 9 21:29:48 2003 UTC (16 years, 3 months ago) by gage
Added timing code that measures how long it takes to get given
problem data for all users.  It's too long.

--Mike

Revision 1627 - Directory Listing
Modified Sat Nov 8 02:54:56 2003 UTC (16 years, 3 months ago) by sh002i
this module allows you to change which sets are assigned to a given
user. it is not yet accessible via the WW UI, but you can access it with
a URI like "/webwork2/$courseID/instructor/users/$userID/sets/"

Revision 1626 - Directory Listing
Modified Sat Nov 8 02:53:41 2003 UTC (16 years, 3 months ago) by sh002i
changed the name of the module in the path.

Revision 1625 - Directory Listing
Modified Sat Nov 8 02:53:15 2003 UTC (16 years, 3 months ago) by sh002i
There shall be ONE empty line between each subroutine. Not five, not
zero!

Revision 1624 - Directory Listing
Modified Sat Nov 8 02:52:35 2003 UTC (16 years, 3 months ago) by sh002i
I wasn't using WeBWorK::PG here, but it was getting loaded anyway
before I changed the way the dispatcher loads things.

Revision 1623 - Directory Listing
Modified Sat Nov 8 02:51:34 2003 UTC (16 years, 3 months ago) by sh002i
changed some variable names to make them more readable.

I've been calling variables that contain the names of courses, users,
sets, or problems things like "$courseID", "$userID", "$setID", and
"$problemID", and lists of said names "@courseIDs", "@userIDs",
"@setIDs", and "@problemIDs".

On the other hand, I call variables that contain ACTUAL RECORD OBJECTS
things like "$User", "$Set", and "$Problem", and lists of them "@Users",
"@Sets", and "@Problems". (Note the capitalization!)

This makes it totally clear whether we're talking about an OBJECT or and
ID. This is a Good Thing.

Revision 1622 - Directory Listing
Modified Sat Nov 8 02:47:23 2003 UTC (16 years, 3 months ago) by sh002i
removed old timer.

Revision 1621 - Directory Listing
Modified Sat Nov 8 02:47:00 2003 UTC (16 years, 3 months ago) by sh002i
(1) only the content generator needed for this request is loaded, and it
is done at runtime. this is good for speed and error reporting.

(2) actually instantiating CGs and running their "go" methods is defered
until the end of the handler routine. this means there is only ONE place
where this is being done.

(3) documentation has been improved.

(4) added support for UserDetail (not yet written) and
SetsAssignedToUser (written, but not yet reachable) in the UI.

Revision 1619 - Directory Listing
Modified Tue Nov 4 23:18:40 2003 UTC (16 years, 3 months ago) by sh002i
added problem numbers along top when viewing all sets for a given user.
unfortunately, this slows down display, since nothing can be sent to the
client until all sets are processed. closes bug #272.

Revision 1616 - Directory Listing
Modified Tue Nov 4 02:29:01 2003 UTC (16 years, 3 months ago) by sh002i
support for FileXfer and Upload

Revision 1615 - Directory Listing
Modified Tue Nov 4 02:24:32 2003 UTC (16 years, 3 months ago) by sh002i
moved getCSVlist to superclass.
implemented FileXfer for set definition files and classlist files.

Revision 1614 - Directory Listing
Modified Tue Nov 4 02:23:57 2003 UTC (16 years, 3 months ago) by sh002i
Added routines to list classlist files and set definitions files.

Revision 1613 - Directory Listing
Modified Tue Nov 4 02:23:07 2003 UTC (16 years, 3 months ago) by sh002i
Finished Upload module. See POD.

Added sendFile routine to ContentGenerator. To use, store a hash
reference in $self->{sendFile} containing keys:
	source: full path to file to send
	type: content type of file to send
	name: file name to suggest to client
This must be done BEFORE the HTTP header is sent, i.e. in
pre_header_initialize. It will not work is &go or &header is overridden.

Revision 1612 - Directory Listing
Modified Mon Oct 27 13:06:32 2003 UTC (16 years, 4 months ago) by gage
Turned timing off for the CVS copy of WeBWorK.pm
--Mike

Revision 1611 - Directory Listing
Modified Mon Oct 27 13:04:09 2003 UTC (16 years, 4 months ago) by gage
Modified the way timers were controlled.  Timers must now be defined
before they will be called in this script.  This fixes a bug that
appeared only on webwork.math.rochester.edu where the timers were
turned off.
--Mike

Revision 1610 - Directory Listing
Modified Mon Oct 27 13:02:44 2003 UTC (16 years, 4 months ago) by gage
Modified the way the timing mechanisms are controlled so that a timer
must be defined before it is called.  Fixed a bug appearing on
webwork.math.rochester.edu where the timers were turned off.

--Mike

Revision 1609 - Directory Listing
Modified Mon Oct 27 01:23:07 2003 UTC (16 years, 4 months ago) by gage
Slowly modifying scoring so that it will be easier to add features.
The modifications are mainly to the scoreSet function.
--Mike

Revision 1608 - Directory Listing
Modified Fri Oct 24 00:33:11 2003 UTC (16 years, 4 months ago) by gage
the timing switch is now turned off by default.

--Mike

Revision 1607 - Directory Listing
Modified Fri Oct 24 00:31:47 2003 UTC (16 years, 4 months ago) by gage
Added lines that allow you to turn the timing statements off with one
switch.

Revision 1606 - Directory Listing
Modified Fri Oct 24 00:22:05 2003 UTC (16 years, 4 months ago) by gage
Timing counters added.  Faster way to count the number of sets. (but not
fast enough for GDBM)
--Mike

Revision 1605 - Directory Listing
Modified Wed Oct 22 17:05:49 2003 UTC (16 years, 4 months ago) by sh002i
resolves bug #268:

This is a problem with the naming of the popup menu options.

"selected users" refers to the users checked in the user table, below
the action options. "users with matching user IDs:" refers to the list
of user IDs entered into the text field to the right of the popup menu.
(note the colon.)

The reporter was attempting to specify "selected users" by entering
their user IDs into the text field intended for "users with matching
user IDs".

I have changed the name of the "selected users" option to "users
selected below", which makes the distinction easier to grok.

Revision 1604 - Directory Listing
Modified Tue Oct 21 20:29:27 2003 UTC (16 years, 4 months ago) by sh002i
cvs-log test

Revision 1603 - Directory Listing
Modified Tue Oct 21 20:26:59 2003 UTC (16 years, 4 months ago) by sh002i
foo

Revision 1602 - Directory Listing
Modified Tue Oct 21 20:26:26 2003 UTC (16 years, 4 months ago) by sh002i
comments

Revision 1601 - Directory Listing
Modified Tue Oct 21 20:19:46 2003 UTC (16 years, 4 months ago) by sh002i
display can now be filtered by entering a user ID (or list of user IDs)
or selecting a section or recitation from popup menus.

Revision 1600 - Directory Listing
Modified Tue Oct 21 20:18:31 2003 UTC (16 years, 4 months ago) by sh002i
cosmetic changes to instructor_links method

Revision 1597 - Directory Listing
Modified Mon Oct 20 22:15:59 2003 UTC (16 years, 4 months ago) by sh002i
added export functionality.

Revision 1596 - Directory Listing
Modified Mon Oct 20 18:59:58 2003 UTC (16 years, 4 months ago) by gage
use getGlobalSets instead of getMergedSets.   It speed things up a lot.

-- Mike

Revision 1595 - Directory Listing
Modified Mon Oct 20 15:29:37 2003 UTC (16 years, 4 months ago) by gage
Added timing code for Instructor::Index  to Instructor::Index.pm and
also to WeBWorK.pm.  We can remove this once we have finished testing
various database configs.

--Mike

Revision 1594 - Directory Listing
Modified Mon Oct 20 05:20:46 2003 UTC (16 years, 4 months ago) by sh002i
reworked UserList.pm to have a more modular structure:
1. all modification of user list happends in action_handler routines
2. the whole page is one form
3. view properties (what is shown? what is selected?) survive actions
4. can choose to apply actions to all/selected/visible users
this is more useful than the old UserList, and can be seen as a
prototype for additional refactoring.

also fixed Index.pm to work with the new UserList interface.

Revision 1593 - Directory Listing
Modified Sun Oct 19 21:24:26 2003 UTC (16 years, 4 months ago) by gage
Added note to title of scrolling lists which indicates  the initial
number of users or sets which have been selected.  This is useful
since the initial selections are often hidden on the list.

Updating this number would require javaScript, which we would prefer to
avoid.  This closes bug #257

--Mike

Revision 1592 - Directory Listing
Modified Sat Oct 18 23:15:59 2003 UTC (16 years, 4 months ago) by gage
Modified the way the editor link is prepared and when it is shown --
particularly if there are errors.  This fixes bug #122

Revision 1591 - Directory Listing
Modified Sat Oct 18 20:46:01 2003 UTC (16 years, 4 months ago) by gage
Fixed problem in logic which kept an edited problem from reading the
.tmp file when the answer was submitted.  Now the editMode variable
and sourceFilePath variables are passed on as hidden variables by
Problem.pm if they exists in the input form.  This fixes bug #179
as well as bug #109.

The temporary file is now labeled   fileName.pg.user.tmp where user is
the login name of the person editing the file.  If that file exists
then pgProblemEditor will attempt to use that as a source file.
The revert button forces a read from fileName.pg

--Mike

Revision 1590 - Directory Listing
Modified Fri Oct 17 03:42:07 2003 UTC (16 years, 4 months ago) by gage
Added various sorting methods to the statistics page.  This makes
the sorting more flexible, but it also slows down the process somewhat.
This results bug #153

--Mike

Revision 1589 - Directory Listing
Modified Thu Oct 16 03:12:44 2003 UTC (16 years, 4 months ago) by sh002i
fixed the problem where all user values appear to be overridden. no bug
for this is bugzilla though.

Revision 1588 - Directory Listing
Modified Thu Oct 16 02:28:28 2003 UTC (16 years, 4 months ago) by gage
Changed code to call getMergedSets instead of calling getMergedSet
repeatedly.  No noticable speed up in this case, but it works correctly.
--Mike

Revision 1587 - Directory Listing
Modified Wed Oct 15 19:36:13 2003 UTC (16 years, 4 months ago) by sh002i
fixed how "gets" was being called. It has to be called with a list of
array references. fixed several implementations of "gets".
closes bug #252.

Revision 1586 - Directory Listing
Modified Wed Oct 15 17:09:41 2003 UTC (16 years, 4 months ago) by sh002i
fixed some typos re: calls to get vs. gets
closes bug #259
closes bug #250

Revision 1585 - Directory Listing
Modified Wed Oct 15 17:08:31 2003 UTC (16 years, 4 months ago) by sh002i
changes to the diabled stack trace code

Revision 1584 - Directory Listing
Modified Tue Oct 14 19:12:07 2003 UTC (16 years, 4 months ago) by sh002i
work on making the user list more flexible:
by default, edit fields are not shown
it is possible to select a subset of users for editing

Revision 1583 - Directory Listing
Modified Tue Oct 14 18:02:39 2003 UTC (16 years, 4 months ago) by sh002i
closes bug #251: getMergedSets and getMergedProblems now call
getGlobalSets/getUserSets and getGlobalProblems/getUserProblems.

The algorithm used to merge fields is also more efficient now, and
getMergedSet/getMergedProblem have been reimplemented to call
getMergedSets/getMergedProblems.

Revision 1582 - Directory Listing
Modified Sun Oct 12 19:31:36 2003 UTC (16 years, 4 months ago) by gage
Fixes bug #254.  The showHints check box will not be shown unless
the number of incorrect attempts is greater than or equal to the
value of showHints.

The showHints checkbox now appears in red (and in a new <div> which
means a new paragraph on some browsers)  This helps alert a student that
a hint is now available.
--Mike

Revision 1581 - Directory Listing
Modified Sun Oct 12 17:44:32 2003 UTC (16 years, 4 months ago) by gage
Added button to link to scoring of sets.

Removed some debugging warning messages.

--Mike

Revision 1580 - Directory Listing
Modified Sun Oct 12 04:10:17 2003 UTC (16 years, 4 months ago) by gage
Changed dispatcher to allow access to Instructor::AddUser module.

Removed references to Index2.pm

--Mike

Revision 1579 - Directory Listing
Modified Sun Oct 12 04:09:14 2003 UTC (16 years, 4 months ago) by gage
A new version of the index page for instructor functions with a better
layout.  All of the buttons now do something appropriate, although
several of the functions should be rewritten to be more efficient.

For example it should be possible to change many students/dates at one
time.  There are other functions that should be added as well --
assigning students to sets for example.

--Mike

Revision 1578 - Directory Listing
Modified Sun Oct 12 04:07:16 2003 UTC (16 years, 4 months ago) by gage
This will be removed soon.
--Mike

Revision 1577 - Directory Listing
Modified Sun Oct 12 04:03:08 2003 UTC (16 years, 4 months ago) by gage
The beginnings of a module that will allow you to add new users
efficiently.  For now it is just a copy of the old index page,
including links to the webwork 1.9 tools
-- Mike

Revision 1576 - Directory Listing
Modified Sun Oct 12 02:43:12 2003 UTC (16 years, 4 months ago) by gage
This module is a candidate to replace the Index.pm page and module.
The displayed "control panel" is set up.  Only the
"become student" control works right at the moment.

You can access it by replacing instructor by instructor2 in the url
for the instructor index page.

--Mike

Revision 1569 - Directory Listing
Modified Tue Oct 7 00:27:00 2003 UTC (16 years, 4 months ago) by sh002i
fixed new implementations of "get" -- they need to return a single item,
not a list of items!

Revision 1568 - Directory Listing
Modified Mon Oct 6 23:50:58 2003 UTC (16 years, 4 months ago) by sh002i
added optimized implementations for DB getOBJECTs functions.

Revision 1567 - Directory Listing
Modified Mon Oct 6 22:36:50 2003 UTC (16 years, 4 months ago) by sh002i
added record filter

Revision 1566 - Directory Listing
Modified Mon Oct 6 22:36:18 2003 UTC (16 years, 4 months ago) by sh002i
cleanup

Revision 1565 - Directory Listing
Modified Mon Oct 6 22:35:56 2003 UTC (16 years, 4 months ago) by sh002i
docs

Revision 1563 - Directory Listing
Modified Sun Oct 5 22:45:38 2003 UTC (16 years, 4 months ago) by gage
Fixed a reference to the nullSafety filter
--Mike

Revision 1562 - Directory Listing
Modified Sun Oct 5 22:01:38 2003 UTC (16 years, 4 months ago) by gage
Protected against undefined strings.  They are replaced by empty
strings.
--Mike

Revision 1558 - Directory Listing
Modified Wed Oct 1 02:57:55 2003 UTC (16 years, 4 months ago) by sh002i
1. moved common functions from PG::Local and PG::Remote to PG and made
them methods so that inheritence would work.
2. made some changes to PG::Remote to make it work with renderd

Revision 1557 - Directory Listing
Modified Wed Oct 1 02:57:32 2003 UTC (16 years, 4 months ago) by sh002i
1. moved common functions from PG::Local and PG::Remote to PG and made
them methods so that inheritence would work.

Revision 1554 - Directory Listing
Modified Tue Sep 30 01:32:53 2003 UTC (16 years, 4 months ago) by sh002i
moved to pg

Revision 1548 - Directory Listing
Modified Tue Sep 30 01:12:42 2003 UTC (16 years, 4 months ago) by sh002i
added $VERSION variable

Revision 1543 - Directory Listing
Modified Sat Sep 27 20:41:23 2003 UTC (16 years, 5 months ago) by gage
Made "set header" field 32 chars long.  This fixses bug #168.
--Mike

Revision 1542 - Directory Listing
Modified Sat Sep 27 19:24:32 2003 UTC (16 years, 5 months ago) by gage
Replaced table and check box display of sets and users with scrolling list
display of sets and users.

Used the new getObjects  commands whenever possible.
--Mike

Revision 1541 - Directory Listing
Modified Sat Sep 27 19:23:27 2003 UTC (16 years, 5 months ago) by gage
Fixed spelling on "getMergedSets"
--Mike

Revision 1539 - Directory Listing
Modified Sat Sep 27 16:44:53 2003 UTC (16 years, 5 months ago) by gage
When recording answers the answer strings are now obtained directly from the original
formField entries, rather than from the processed version in the answer hashes.
This insures that the memorized answers will be identical with the ones that would
have been submitted from the form.

This is important for answers with multiple values which are represented by
null separated strings.  The answer evaluation process converts these strings
to references to arrays, and -- in order to have good display properties -- the
original_student_answer slot in the AnswerHash contains a representation such as
( 4, 5, 6).

This is NOT suitable for resubmitting as an answer in a form field and is therefore not the
right thing to store in the data base when saving answers.

--MIke

Revision 1538 - Directory Listing
Modified Sat Sep 27 16:34:45 2003 UTC (16 years, 5 months ago) by gage
Modified process_answers so that each student answer is modified in this way:
(1) if the answer is undefined, then it is replaced by an empty answer
(2) if the answer contains null spaces then the answer string is split along the nulls (\0)
and the answer variable is replaced by a reference to this array.

A few clauses in filter_answers and in AnswerEvaluator::get_student_answer are now redundant
but I've left them in for now.  The filter_answer subroutine was replacing all nulls by
blanks, which caused the difficulty with handling vectors.

--Mike

Revision 1537 - Directory Listing
Modified Fri Sep 26 21:31:59 2003 UTC (16 years, 5 months ago) by sh002i
now install nullSafetyFilter, which does nothing (hence the name).

Revision 1536 - Directory Listing
Modified Fri Sep 26 21:31:24 2003 UTC (16 years, 5 months ago) by sh002i
small cleanup
added "FIXME: this table is heinously out of date"

Revision 1531 - Directory Listing
Modified Thu Sep 25 02:21:53 2003 UTC (16 years, 5 months ago) by sh002i
added tip about "permission denied" errors

Revision 1530 - Directory Listing
Modified Thu Sep 25 02:03:43 2003 UTC (16 years, 5 months ago) by sh002i
removed unneeded arguments from calls to ImageGenerator

Revision 1529 - Directory Listing
Modified Thu Sep 25 02:02:19 2003 UTC (16 years, 5 months ago) by sh002i
removed overly chatty error message: instead, we should add this sort of
thing to the generic "software error" message.

Revision 1518 - Directory Listing
Modified Tue Sep 23 21:13:47 2003 UTC (16 years, 5 months ago) by sh002i
moved it out of PG::

Revision 1517 - Directory Listing
Modified Tue Sep 23 21:12:36 2003 UTC (16 years, 5 months ago) by sh002i
equationcache module was moved.

Revision 1516 - Directory Listing
Modified Tue Sep 23 21:12:00 2003 UTC (16 years, 5 months ago) by sh002i
Added EquationCache module, which interfaces with the imagecache
database.

Revision 1515 - Directory Listing
Modified Tue Sep 23 21:09:58 2003 UTC (16 years, 5 months ago) by sh002i
Modified ImageGenerator to use new EquationImage module.
Added arguments to ImageGenerator call to support global image cache.

Revision 1514 - Directory Listing
Modified Tue Sep 23 21:09:24 2003 UTC (16 years, 5 months ago) by sh002i
Added arguments to ImageGenerator call to support global image cache.

Revision 1512 - Directory Listing
Modified Mon Sep 22 17:37:12 2003 UTC (16 years, 5 months ago) by sh002i
added getOBJECTs functions (with pod!)
-sam

Revision 1509 - Directory Listing
Modified Fri Sep 19 02:28:28 2003 UTC (16 years, 5 months ago) by gage
Provides link to Instructor2 alternate interface for instructors.
--Mike

Revision 1508 - Directory Listing
Modified Fri Sep 19 02:27:24 2003 UTC (16 years, 5 months ago) by gage
Index2.pm is a temporary testing version of the instructor interface.
--Mike

Revision 1507 - Directory Listing
Modified Fri Sep 19 02:17:48 2003 UTC (16 years, 5 months ago) by gage
Changed logic of what is shown about answers when
"submit Answers" and "check Answers" are clicked.
In particular you can't see the answers responses at
all unless one of these two or "preview answers" is cliced.

Hopefully this will not upset preflight uses.

-- Mike

Revision 1503 - Directory Listing
Modified Thu Sep 11 02:07:20 2003 UTC (16 years, 5 months ago) by gage
Fixed typo (set should have been self)

Revision 1502 - Directory Listing
Modified Thu Sep 11 02:03:06 2003 UTC (16 years, 5 months ago) by gage
Made changes to ProblemSet.pm that replace the feedback button
which did not work with the "email instructor" button.

Also changed some probable typos in Feedback.pm which
was trying to find set_id from problem rather than from set.

This doesn't work when problem is not defined.

--Mike

Revision 1501 - Directory Listing
Modified Thu Sep 11 01:13:05 2003 UTC (16 years, 5 months ago) by gage
Blank messages are not submitted and give a warning.  I also fixed
a hidden bug in which the arguments to feebackForm were switched.

--Mike

Revision 1500 - Directory Listing
Modified Thu Sep 11 00:31:19 2003 UTC (16 years, 5 months ago) by gage
Fixed bug in feeback button.

Revision 1499 - Directory Listing
Modified Thu Sep 11 00:05:25 2003 UTC (16 years, 5 months ago) by gage
Submit answer button is now hidden when you are acting to prevent
accidental submission of data for a student.  The checkAnswer button
is still active.
--Mike

Revision 1497 - Directory Listing
Modified Tue Sep 9 03:54:43 2003 UTC (16 years, 5 months ago) by gage
Rounded of score, made link to act as student in the display of
statistics for a given user.  This retires bugs:
203 and #206.

Revision 1496 - Directory Listing
Modified Tue Sep 9 03:51:12 2003 UTC (16 years, 5 months ago) by gage
Added warning message about updating the preview answer using
shift refresh.  Best I can do for now.
--Mike

Revision 1495 - Directory Listing
Modified Tue Sep 9 02:56:49 2003 UTC (16 years, 5 months ago) by gage
Added logic to show the checkAnswer button when you are
a professor or TA acting as a student.  This allows you
to check the answer without recording results. (I think)

--MIke

Revision 1493 - Directory Listing
Modified Tue Sep 9 02:01:51 2003 UTC (16 years, 5 months ago) by gage
Modified parseDateTime  so that it handles time strings of the form
01/03/03 at 06:00am.  The " at " retains compatibility with webwork 1.9
which is important for import and export.  This fixes a bug introduced
when changing formatDateTime.  #204 and #203  should be fixed by this.

In this file I added warning messages in distGlobalValues() which
check to make sure fields are defined.  Hopefyully this is not
a huge time sync, but will help with debugging.
--Mike

Revision 1492 - Directory Listing
Modified Tue Sep 9 02:00:07 2003 UTC (16 years, 5 months ago) by gage
Modified parseDateTime  so that it handles time strings of the form
01/03/03 at 06:00am.  The " at " retains compatibility with webwork 1.9
which is important for import and export.  This fixes a bug introduced
when changing formatDateTime.  #204 and #203  should be fixed by this.

--Mike

Revision 1489 - Directory Listing
Modified Sun Sep 7 00:12:55 2003 UTC (16 years, 5 months ago) by gage
Squashed a bug in
adding the title "sets
" in listing the sets
on the first page.

--Mike

Revision 1488 - Directory Listing
Modified Sat Sep 6 17:07:19 2003 UTC (16 years, 5 months ago) by gage
Added "set " before
listing the set number.
--Mike

Revision 1487 - Directory Listing
Modified Sat Sep 6 16:24:48 2003 UTC (16 years, 5 months ago) by gage
Sort students by name, (only)
Add a link to the name which allows you to inspect the students
version of the problem set.
This partially fixes bug #201

Revision 1486 - Directory Listing
Modified Sat Sep 6 15:56:58 2003 UTC (16 years, 5 months ago) by gage
Added the ability to enter a new student from this page.  It is much faster than from the class list.

Of course it doesn't have full functionality yet.
--Mike

Revision 1484 - Directory Listing
Modified Fri Sep 5 14:03:49 2003 UTC (16 years, 5 months ago) by gage
Added sorting code to Assigner.pm so that the list is sorted alphabetically and then by section.
--Mike

Revision 1482 - Directory Listing
Modified Fri Sep 5 03:48:43 2003 UTC (16 years, 5 months ago) by gage
Added warning message if the password record can't be found
Helps with debuggin.
--MIke

Revision 1481 - Directory Listing
Modified Fri Sep 5 03:39:15 2003 UTC (16 years, 5 months ago) by gage
Added " at " in formatDateTime function.  This makes it compatible with webwork1.9
which is important when we export  set definition files.  this may ruin
some earlier aesthetic considerations (Dennis?) but the compatibility
is more important than that in this case.
--Mike

Revision 1480 - Directory Listing
Modified Fri Sep 5 03:25:29 2003 UTC (16 years, 5 months ago) by gage
Added a kludge which, if $showPartialCorrectAnswers is negative, will not show
the answer field at all until the "showCorrectanswers" button is checked.
For students this also must be after the due date.
--Mike

Revision 1479 - Directory Listing
Modified Fri Sep 5 03:09:14 2003 UTC (16 years, 5 months ago) by gage
Fixed messages after the answer box so that it doesn't give away
how many answers were correct. Fixes bug #176.

Removed some hidden inputs from the main form that were making it
impossible to uncheck "show correct answers"  (and probably doing
the same for show hints and show solutions.)
--Mike

Revision 1478 - Directory Listing
Modified Thu Sep 4 13:20:00 2003 UTC (16 years, 5 months ago) by gage
Changed subject heading so that it includes the user,
the set and problem (if both are defined).
--Mike

Revision 1475 - Directory Listing
Modified Thu Aug 28 23:24:21 2003 UTC (16 years, 6 months ago) by gage
Added scoring to the instructor links.
--Mike

Revision 1474 - Directory Listing
Modified Thu Aug 28 15:00:12 2003 UTC (16 years, 6 months ago) by gage
Fixed sorting routine so that sorting by sections doesn't
screw up sorting by alphabet.

Revision 1473 - Directory Listing
Modified Thu Aug 28 14:45:29 2003 UTC (16 years, 6 months ago) by gage
Added sorting to class list.  Sorted alphabetically first
and then by section.  This is a temporary fix.  The code
should be cleaned up and increased functionality, such as
that provided in the listing of sets, should be added.
--Mike

Revision 1472 - Directory Listing
Modified Sat Aug 16 02:26:49 2003 UTC (16 years, 6 months ago) by gage
One more fix to constructing the returnURL
--Mike

Revision 1471 - Directory Listing
Modified Sat Aug 16 02:16:28 2003 UTC (16 years, 6 months ago) by gage
Changed "contact instructor" ot "email
instructor" on button.
--Mike

Revision 1470 - Directory Listing
Modified Sat Aug 16 02:15:47 2003 UTC (16 years, 6 months ago) by gage
Fixed bug #171 -- bad link in feedback
address. There was also a bad link
in cancel feedback link.
-- Mike

Revision 1469 - Directory Listing
Modified Sat Aug 16 01:32:10 2003 UTC (16 years, 6 months ago) by gage
Login reads material from
login_info(.txt) in the top
directory of the course and places
on the right side of the page.

ProblemSets does the same from
a file called course_info.txt
--Mike

Revision 1467 - Directory Listing
Modified Sat Aug 16 00:48:12 2003 UTC (16 years, 6 months ago) by gage
Moved show hints and show solutions to
spots just above the submit buttons.  This
is closer to the old webwork style and I
think it is more appropriate.  Particularly
since these options are sticky only as long
as you stay on the same problem

Revision 1466 - Directory Listing
Modified Fri Aug 15 19:07:32 2003 UTC (16 years, 6 months ago) by gage
Added an obvious warning when using preview only mode so that
user is aware that the answer was not recorded.
--Mike

Revision 1465 - Directory Listing
Modified Fri Aug 15 18:56:04 2003 UTC (16 years, 6 months ago) by gage
Switched preview answers button to be first.

Revision 1464 - Directory Listing
Modified Fri Aug 15 18:12:32 2003 UTC (16 years, 6 months ago) by gage
Added a note alerting the login user to the existence of practice1,
practice2 accounts.  This is a temporary fix for the bug report asking
for a login_info.txt window.
--Mike

Revision 1461 - Directory Listing
Modified Thu Aug 14 21:33:37 2003 UTC (16 years, 6 months ago) by malsyned
Actually added the printing of assignment counts and user-specific
identification.

Revision 1460 - Directory Listing
Modified Thu Aug 14 20:10:37 2003 UTC (16 years, 6 months ago) by malsyned
Changed "1.0" to "1.9" for consistency

Revision 1459 - Directory Listing
Modified Thu Aug 14 20:10:01 2003 UTC (16 years, 6 months ago) by malsyned
Fixed bug 143
Implemented temporar