Commit Graph

49 Commits

Author SHA1 Message Date
Andrew Nicols ba07a8e7da Merge branch 'MDL-59638_master-fix' of git://github.com/dmonllao/moodle 2017-08-09 13:41:29 +08:00
David Monllao 42d67f95cd MDL-59638 analytics: Prevent start time to be higher than end time
Other related changes:

- core_analytics\site get_start and get_end returning always integer values
- Defer intval call in define_ranges to refine some seconds
2017-08-08 14:38:11 +02:00
David Monllao e4584b8110 MDL-59116 analytics: Replace wrong sorting 2017-08-08 14:04:52 +02:00
Eloy Lafuente (stronk7) d4c8235f87 Merge branch 'MDL-59638_master' of git://github.com/dmonllao/moodle 2017-08-07 19:48:17 +02:00
David Monllao 00da1e6010 MDL-59116 analytics: Multiple predictions for each analysable time range
Now we only predict using the most recent range available, this means
that if someone upgrades to moodle 3.4 at three quarters of a course
we will only calculate the latest range, previous ranges were not
displayed anyway once more recent predictions were available.

This commit deletes all previous predictions :) this shouldn't be a
problem in master as we don't provide any guarantee, the alternative
(retrive sampleids from mdl_files) would have been slow and a waste of
time as well as require horrible code in an upgrade step (text fields
do not accept defaults nor we can use NOTNULL).
2017-08-07 06:56:11 +02:00
David Monllao 5c140ac4c0 MDL-59307 analytics: Easy enable / disable 2017-07-27 12:25:23 +02:00
David Monllao 8f5a52b484 MDL-59638 analytics: Advance time splitting start instead of delay end 2017-07-27 12:03:21 +02:00
David Monllao cbf4c391c2 MDL-57791 analytics: Fix error message for no evaluation models 2017-07-27 08:15:02 +02:00
David Monllao 4a210b0688 MDL-57791 analytics: Predictions deleted context management 2017-07-26 09:17:58 +02:00
Jake Dallimore 0eb594401d MDL-57791 analytics: fix for in_array 2017-07-26 13:25:37 +08:00
David Monllao 85e50ba405 MDL-57791 analytics: Set logstore during install
get_analytics_logstore updated to fix an edge case.
2017-07-25 11:05:03 +02:00
David Monllao 466f683aa6 MDL-57791 analytics: Compatibility with oracle
Also moved predictions test to analytics/tests/prediction_test.php
2017-07-24 17:49:09 +02:00
David Monllao e10b29ed0c MDL-57791 tool_analytics: From tool_models to tool_analytics 2017-07-24 08:37:03 +02:00
David Monllao 690ad8759d MDL-57791 analytics: Fixes during integration review
This commit includes the following changes:
- cibot complains fixes
- removed randomly failing test
- fixed course_dropout return
- other minor fixes
2017-07-24 08:37:03 +02:00
David Monllao e709e54435 MDL-57791 analytics: Add builtin models during upgrade 2017-07-24 08:37:01 +02:00
David Monllao 08015e1895 MDL-57791 analytics: Add missing 'new' to throw
Also other code refinements. Credit to Mark Nelson.
2017-07-24 08:37:01 +02:00
David Monllao 2db6e9811b MDL-59212 analytics: Core indicators tests
Part of MDL-57791 epic.
2017-07-24 08:37:01 +02:00
David Monllao 206d7aa9ad MDL-59212 analytics: Move API uses out of analytics dir
Part of MDL-57791 epic.
2017-07-24 08:37:00 +02:00
David Monllao 21d4ae9353 MDL-59060 analytics: Allow all predictions to be retrieved
Part of MDL-57791 epic.
2017-07-24 08:37:00 +02:00
David Monllao fbc18acda0 MDL-59212 analytics: Abstract equal parts and accum time splittings
Part of MDL-57791 epic.
2017-07-24 08:37:00 +02:00
Damyon Wiese 68bfe1de40 MDL-59060 analytics: Add paging to insights report
Part of MDL-57791 epic.
2017-07-24 08:36:59 +02:00
David Monllao b3d6879489 MDL-59212 analytics: Analyser and static methods tests
Part of MDL-57791 epic.
2017-07-24 08:36:59 +02:00
David Monllao 3a396286b1 MDL-57791 analytics: Always absolute full class names
Some extra tiny changes as well.
2017-07-24 08:36:50 +02:00
David Monllao 1cc2b4bac3 MDL-57791 analytics: Second review round 2017-07-24 08:36:50 +02:00
David Monllao 413f19bc49 MDL-59211 analytics: Make cibot happy
Part of MDL-57791 epic.
2017-07-24 08:36:49 +02:00
David Monllao 1611308b58 MDL-57791 analytics: Changes after review
- Split model::predict in parts
- JS promises updated according to eslint-plugin-promise
- New API methods replacing direct DB queries
- Reduce insights nav link display cost
- Increase time limit as well as memory for big processes
- Move prediction action event to core
- Dataset write locking and others
- Refine last time range end time
- Removed dodgy splitting method id to int
- Replace admin_setting_predictor output_html overwrite for write_setting overwrite
- New APIs for access control
- Discard invalid samples also during prediction
2017-07-24 08:36:49 +02:00
David Monllao 584ffa4ffc MDL-57791 analytics: Replace sql queries for API calls 2017-07-24 08:36:49 +02:00
David Monllao 27ae9af4ba MDL-57791 analytics: No UI in calculables APIs 2017-07-24 08:36:48 +02:00
David Monllao 3a217fc394 MDL-57791 analytics: Replace settings by get_archetype_roles 2017-07-24 08:36:48 +02:00
Ankit Agarwal f39cebbb3c MDL-59119 analytics: Fix references to wrong var
Part of MDL-57791 epic.
2017-07-24 08:36:47 +02:00
David Monllao cad362520f MDL-59010 analytics: Logstores initialised during tests
Part of MDL-57791 epic.
2017-07-24 08:36:47 +02:00
David Monllao f67f35f324 MDL-59010 analytics: Direct db calls to logging API
Part of MDL-57791 epic.
2017-07-24 08:36:46 +02:00
David Monllao 8970ff91bb MDL-59174 analytics: Analyser queries to enrollib
Part of MDL-57791 epic.
2017-07-24 08:36:46 +02:00
David Monllao bd164083eb MDL-59057 analytics: Unit test fixes
Updating tests according to courses - site_courses analysers change.

Part of MDL-57791 epic.
2017-07-24 08:36:45 +02:00
David Monllao 20b77f9b63 MDL-59057 analytics: Split up course analyser in 2
One at course level so teachers can get insights and another
one at system level so the insights go to the site admin.

Part of MDL-57791 epic.
2017-07-24 08:36:45 +02:00
David Monllao 5d7f06f4c8 MDL-59057 analytics: Get rid of week_before_course_start
It is useless at site level. It can be useful at course level but
I removed it in favour of single_range + is_valid_*

Part of MDL-57791 epic.
2017-07-24 08:36:45 +02:00
David Monllao d8327b60b0 MDL-57791 analytics: Delete should be an instance method 2017-07-24 08:36:44 +02:00
David Monllao f9e7447f42 MDL-57791 insights: Clarify insights-prediction boundaries 2017-07-24 08:36:44 +02:00
David Monllao b0c2492906 MDL-59057 analytics: Standarize indicators and targets ids
Part of MDL-57791 epic.
2017-07-24 08:36:43 +02:00
David Monllao a40952d384 MDL-59057 analytics: Introduce static models
Part of MDL-57791 epic.
2017-07-24 08:36:32 +02:00
David Monllao d16cf374eb MDL-59162 tool_models: Remove dependant models on uninstall
Part of MDL-57791 epic.
2017-07-24 08:36:21 +02:00
Ankit Agarwal 5846c72c4d MDL-59117 core_analytics: Move all indicators to respective modules
Part of MDL-57791 epic.
2017-07-24 08:36:21 +02:00
David Monllao b94dbb5561 MDL-57791 analytics: Remove references to project inspire 2017-07-24 08:36:20 +02:00
Ankit Agarwal 3c305df1de MDL-59079 core_analytics: Add social level 2 to various activities
Part of MDL-57791 epic.
2017-07-24 08:36:18 +02:00
Ankit Agarwal a6805cc8e0 MDL-59079 core_analytics: Define social levels for various activities
Part of MDL-57791 epic.
2017-07-24 08:36:17 +02:00
Ankit Agarwal 1eb6c52bf2 MDL-59079 core_analytics: Add support for more than one social level
Part of MDL-57791 epic.
2017-07-24 08:36:17 +02:00
Ankit Agarwal 022f3f07fa MDL-59079 core_analytics: Refactor community of inquiry indicators
Refactor code to introduce a new base class per activity. This would help in sharing apis
between cognitive and social classes which is heavily required for level 2 and onwards.

Part of MDL-57791 epic.
2017-07-24 08:36:17 +02:00
David Monllao 6ec2ae0f87 MDL-58859 analytics: Fix migration to core bugs and pre-migration issues
Part of MDL-57791 epic.
2017-07-24 08:36:17 +02:00
David Monllao 369389c9a6 MDL-58859 analytics: Analytics API added to core
Part of MDL-57791 epic.
2017-07-24 07:53:03 +02:00