Commit graph

361 commits

Author SHA1 Message Date
nicolasconnault
a69e733573 MDL-10364 Added the showcalculations preference and re-factored preferences_form.php (much, much smaller now!) 2007-07-06 08:23:17 +00:00
nicolasconnault
1dd1bc8eaa MDL-10287 Finished implementing form 2007-07-06 06:10:20 +00:00
skodak
c3146da7ac complete unit tests for grade_item + minor cleanup in insert and update 2007-07-04 17:52:43 +00:00
skodak
225e707187 MDL-10210 new parameter in grade_tree constructor to force category grade item as last child 2007-07-04 16:16:39 +00:00
nicolasconnault
13b1072464 More language strings, minor edits. 2007-07-03 17:54:56 +00:00
skodak
6639ead31e complete unit tests for grade_category, minor API cleanup, fixed forced regrading in grade_category 2007-07-03 10:06:08 +00:00
nicolasconnault
5b5eb8e6c7 MDL-9268
Added language strings for grade item edit form.
Fixed HTML error in grader report.
Added tabs to category edit page.
2007-07-03 05:25:08 +00:00
skodak
739196ba10 MDL-10224 fixing some more regressions in grade reports; adding proper CSS; more fixes and improvements 2007-07-01 19:45:13 +00:00
skodak
f13002d53e MDL-9629 fixed regressions in grade reports caused by my previous commits, added unfinished forms for category and item edit 2007-06-30 21:12:47 +00:00
skodak
314c433698 MDL-10224 some more improvements in grader report related to total course grade and category grade + other bugfixes 2007-06-28 22:55:46 +00:00
skodak
a9f16da37d fixed grade tree sortorder generation 2007-06-28 20:04:19 +00:00
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