skodak
82bf496e9c
MDL-10224 finishing the commit, grrr
2007-06-28 19:18:52 +00:00
skodak
b3ac6c3ef0
MDL-10224 total course grade implemented + lots of other changes and improvements; there are still some regressions and bugs - going to fix them ASAP; some unit tests still missing too
2007-06-28 13:20:30 +00:00
nicolasconnault
97d608ba05
Changed grade_item so that its grademax is count(scale_items) and grademin is 1, to be consistent with use of scales throughout Moodle.
2007-06-26 08:50:22 +00:00
nicolasconnault
8161dbb6fc
MDL-10210 MDL-10207 Fixed small issues in tabs. Removed HTML-producing code from grade_tree and put it into category.php.
2007-06-26 07:45:40 +00:00
skodak
22e23c78a0
MDL-10251 finished hiding implementation for grades, items and categories + unit tests
2007-06-25 15:29:31 +00:00
skodak
79f2b1ef1c
fixed locking problem in update_raw_grade()
2007-06-25 08:30:03 +00:00
skodak
c4e4068fa2
moving event trigger from update_grade() to grade_item->update_raw_grade(); removing itemnumber generation for now
2007-06-25 07:56:25 +00:00
skodak
f92dcad81a
MDL-10233 improved static factory methods of grade obejcts fetch() and fetch_all(); implemented default values of grade objects, fixed null values for some properties that are not required - unit tests included, tested with PHP4 and PHP5
2007-06-24 22:26:33 +00:00
skodak
772ddfbfce
trailing whitespace cleanup in new grade libraries
2007-06-23 16:51:09 +00:00
skodak
61c33818d5
MDL-10231 merge grade_calculations and grade_items table + calculation improvements
...
MDL-10233 fixed grade_*::fetch() - does not modify $this anymore, we can now use it from normal methods to fetch other objects of the same class.
2007-06-23 16:33:17 +00:00
skodak
2e53372c37
MDL-10226 regrading of final grades improved, calculation cleanup before MDL-10231
2007-06-22 18:33:32 +00:00
skodak
2cc4b0f90d
MDL-10223 Implement locking of grades and grade items - cron support still not implemented;
...
this patch also contains improvements in handling of needsupdate, though it is not yet fully working for calculated grades
2007-06-22 08:57:39 +00:00
skodak
ac9b080524
MDL-10202 merge raw and final grade tables
2007-06-20 23:06:29 +00:00
nicolasconnault
0936f59b63
MDL-9629 Added student names at left of grades table.
2007-06-20 20:10:19 +00:00
nicolasconnault
6500f2807f
First draft of the grader report
2007-06-20 11:56:51 +00:00
skodak
df3cb76fc4
MDL-9137 calculated grades should work now, some other minor cleanup
2007-06-18 22:52:55 +00:00
skodak
c2a897b044
MDL-9137 removing obsoleted function, finals now processed only by update_final_grade()
2007-06-18 20:14:16 +00:00
skodak
95affb8a35
MDL-9137 readding GRADE_AGGREGATE_MODE
2007-06-18 15:29:20 +00:00
skodak
b8ff92b66b
MDL-9137 various grading improvements
...
1/ initial support for migration of old grade_items and categories (not tested)
2/ rewritten grade update and calculation logic
3/ initial support for calculation formulas
4/ minor API refactoring and cleanup
5/ various small bugfixes
6/ fixed use of grademax with scales
7/ fixed some unit tests
TODO:
* implement proper locking of grades - needs discussion
* force recalculation of all formulas after adding/removing/changing of grade items
* better delete flag support
* support for NULLs n backup - Eloy already proposed a solution
* support for NULLs in set_field()
* speedup
* more unit tests nd functional tests
2007-06-18 13:43:40 +00:00
nicolasconnault
4a490db004
MDL-9506 MDL-9629 Added code to grade_category::delete so that its children have their categoryid/parent field updated. However, the query used sets the fields to an empty string instead of a null value. The unit test for grade_categories fails.
2007-06-16 21:20:57 +00:00
skodak
9b7e5a3772
MDL-10103 grade_object:insert() now fetches the fresh data from db and updates itself; update_from_db() now uses the same process as new grade_object() for consistency
2007-06-12 20:16:49 +00:00
skodak
9f9afbdbab
MDL-10078 unit tests for grade category failing on set_as_parent()
2007-06-10 21:17:42 +00:00
skodak
34e67f76a8
MDL-10076 finalize grade_is_locked() and implement grade item locking in assignment
2007-06-10 20:34:07 +00:00
skodak
4cf1b9be9d
MDL-10062 - changes in raw grade handling of feedback and information
...
improved grade_update() function
2007-06-09 14:16:20 +00:00
nicolasconnault
1c307f2186
grade_item idnumber now self generated if needed.
...
deleted flag implemented in grade_item::update method
added GRADE_TYPE_NONE to gradelib and updated grade_item object
Implemented multiple items (generation of itemnumber when not explicitly given)
2007-06-07 12:45:24 +00:00
skodak
75e1038756
fixing uninitilaized scale problems in last commit
2007-06-06 19:16:37 +00:00
skodak
612607bd47
MDL-9516 new central grading function update_grade(); to be improved/tested more tomorrow
2007-06-05 22:58:37 +00:00
nicolasconnault
210611f6ee
MDL-9629 Changed grade_item.gradetype default to 1, added GRADE_TYPE_NONE constant = 0, incrementing existing constants by 1. Set up auto-generation of idnumber for grade_item if itemmodule and iteminstance are set, only a temporary stub if they are not set (must be replaced by correct generation code). New category form now has server-side validation (not using formslib)
2007-06-05 08:50:24 +00:00
nicolasconnault
bbac4ae7c5
MDL-9972 Removed the __destruct() method, which was not needed. Also fixed a few bugs that caused notices in PHP5.
2007-06-05 01:19:09 +00:00
nicolasconnault
ffa6e8d3c0
MDL-9629 Category edit page now supports creation of a new category for selected items or categories.
2007-06-05 00:39:01 +00:00
nicolasconnault
de5284f26d
MDL-9137 Almost finished the edit category page. The only remaining issue is some sort of endless loop starting in grade_category::set_as_parent. Big issue...
2007-06-01 08:01:47 +00:00
nicolasconnault
ec4560cc58
MDL-9137 Removed hidden field from grade_categories and added deleted field to grade_items. Also added 2 images in pix/i
2007-06-01 04:46:24 +00:00
nicolasconnault
5fad506139
MDL-9629 Category edit page now implements delete, show/hide, lock/unlock, moveup/movedown and move actions. The edit icon is also shown but not yet implemented.
2007-06-01 04:02:37 +00:00
nicolasconnault
88e794d6c8
MDL-9628 Move work on the category edit page
2007-05-31 08:57:05 +00:00
nicolasconnault
0fc7f62445
MDL-9506 MDL-9137 MDL-9629
...
Added a number of small getters and setters to grade_item and grade_category, to hide the structural differences between the two, and provide a common interface for cases when we are not sure whether an $object is of one type or another.
The grade_tree::renumber() method now adds complete objects to the need_update array, because both grade_category and grade_item need to update their parent field when moved to a different parent. Amazingly, these important changes worked straight away (after 1 hour of coding without testing anything), and all the unit tests passed!
2007-05-31 03:15:43 +00:00
nicolasconnault
5bfa0d793a
Implemented a test version of the gradebook category edit page, and developed the get_edit_tree method in grade_tree. Items can be successfully moved up and down, and a "move" button lets the user select a source element, then a destination box. All actions use POST.
2007-05-30 08:48:11 +00:00
nicolasconnault
c3096060de
MDL-9506 Added ksort() of each level of categories and items for the gradebook. Unsorted arrays caused erratic behaviour when moving elements of the tree around.
2007-05-30 05:47:26 +00:00
nicolasconnault
a3d5594248
MDL-9506 Refactored grade_tree::get_tree by doing the following:
...
- Extracted the $fillers array into a class variable
- Extracted the addition of elements to grade_tree::fillers into a new add_fillers($array) method
- Extracted the inclusion of fillers into the tree_array to a new include_fillers($tree, $object=NULL) method
- Removed the building of the tree_filled, which was already performed by build_tree_filled()
- Removed the generation of next_sortorder and previous_sortorder attributes, which was already performed by renumber()
Result is a much leaner and scalable set of methods, and a tighter definition of responsibilities for the varying classes. I think I have also noticed a significant inprovement in speed.
2007-05-30 03:09:38 +00:00
nicolasconnault
646323549e
MDL-9506 Resolved recursion issues in grade_tree:renumber and grade_tree::get_neighbour_element. Unit tests all pass now.
2007-05-29 04:07:04 +00:00
nicolasconnault
de420c11c5
MDL-9317 Applying Petr's second patch
2007-05-29 00:56:44 +00:00
skodak
b5b65852c6
apply magic quotes before using var in sql query in fetch_all_using_this()
2007-05-28 08:20:07 +00:00
nicolasconnault
c91ed4be0d
MDL-9506 Category and Item now set their own courseid if not set explicitly, and if they have enough information from
...
other sources. category::set_as_parent has a new constraint: cannot set over children from different courses.
Applied recursion to grade_tree::renumber(), but still some fine-tuning to do, since only grade_items are getting updated in DB.
2007-05-28 08:00:19 +00:00
nicolasconnault
d990776605
MDL-9137 Applied parts of Petr's patch on the gradebook objects. Unit tests unaffected.
2007-05-28 02:05:21 +00:00
nicolasconnault
526e1a8a25
MDL-9506 Corrected a number of small errors in unit tests and classes.
2007-05-28 01:26:58 +00:00
nicolasconnault
8ae28b4959
MDL-9506 WOrking on grade_tree edit tree
2007-05-25 07:02:04 +00:00
nicolasconnault
2186f72cb1
MDL-9629 Beginning the edit category page. Also added dmllib::sql_max($field) and fixed a few bugs. Grade_item should now extrapolate its sortorder upon insertion if not set, by looking up the last sortorder in the table, and incrementing by 1.
2007-05-24 08:50:01 +00:00
nicolasconnault
5e2274737c
MDL-9506 Added grademax extrapolation from scale info for grade_item, in insert() and update() methods. Corrected a few other minor bugs.
2007-05-24 03:32:20 +00:00
nicolasconnault
a15428a2f6
MDL-9889 Fixed a couple of bugs that were only detected by PHP5. Nothing major at all.
2007-05-24 02:08:20 +00:00
nicolasconnault
9c585e573c
MDL-9506 Changed grade_tree fullobjects param (not fully implemented) to $include_grades param, default to false, fully implemented. Full objects are always loaded when building the tree, but grades are only loaded conditionally.
2007-05-22 09:03:33 +00:00
nicolasconnault
92a66edf7a
MDL-9506 Implemented grade_tree->update_db, fixed bugs in grade_category etc...
2007-05-22 04:38:20 +00:00