Log of /branches/rel-2-2-dev/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
Parent Directory
Revision
3893 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jan 10 00:07:11 2006 UTC (7 years, 4 months ago) by
sh002i
File length: 54961 byte(s)
Diff to
previous 3879
,
to
selected 3377
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.
Revision
3688 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Oct 5 18:16:52 2005 UTC (7 years, 7 months ago) by
sh002i
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 52948 byte(s)
Diff to
previous 3660
,
to
selected 3377
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
3377 -
(
view)
(
download)
(
as text)
(
annotate)
-
[selected]
Modified
Thu Jul 14 13:15:27 2005 UTC (7 years, 10 months ago) by
glarose
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 52644 byte(s)
Diff to
previous 3312
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
3304 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 21 19:43:59 2005 UTC (7 years, 11 months ago) by
apizer
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 52921 byte(s)
Diff to
previous 3303
,
to
selected 3377
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
1663 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Dec 9 01:12:32 2003 UTC (9 years, 5 months ago) by
sh002i
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 38459 byte(s)
Diff to
previous 1654
,
to
selected 3377
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
1605 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Oct 22 17:05:49 2003 UTC (9 years, 7 months ago) by
sh002i
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 37518 byte(s)
Diff to
previous 1604
,
to
selected 3377
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
1594 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Oct 20 05:20:46 2003 UTC (9 years, 7 months ago) by
sh002i
Original Path:
trunk/webwork2/lib/WeBWorK/ContentGenerator/Instructor/UserList.pm
File length: 34157 byte(s)
Diff to
previous 1584
,
to
selected 3377
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.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.