Commit Graph

208 Commits

Author SHA1 Message Date
Sara Arjona 999fbc3bdd Merge branch 'MDL-75855' of https://github.com/paulholden/moodle 2023-08-24 16:49:34 +02:00
Ilya Tregubov 60693cd9b6 Merge branch 'MDL-77067' of https://github.com/paulholden/moodle 2023-08-24 09:59:58 +08:00
Paul Holden b9a5a3626e MDL-77067 reportbuilder: indicate when audiences are used in schedules.
Indicate in each audience card whether it's used as part of a report
schedule, and inform user again upon deletion of said audience.
2023-08-23 16:09:17 +01:00
Paul Holden 8fe1f83fe1 MDL-75855 reportbuilder: don't allow condition/filter duplication.
Custom reports shouldn't allow the same condition and/or filter
instance to exist more that once per report.
2023-08-22 18:47:33 +01:00
Paul Holden 3ca41c77e4 MDL-76902 reportbuilder: entity method for defining table join alias. 2023-08-22 15:16:31 +01:00
Sara Arjona df5d62eac2 Merge branch 'MDL-78844' of https://github.com/paulholden/moodle 2023-08-17 09:10:51 +02:00
Paul Holden c9f689ae6c MDL-78844 reportbuilder: external validate system report access method. 2023-08-09 13:49:27 +01:00
Sara Arjona 565d6a45a3 Merge branch 'MDL-78879' of https://github.com/paulholden/moodle 2023-08-08 13:04:30 +02:00
Paul Holden e4e7e59d90 MDL-78807 reportbuilder: ensure report base conditions are non-empty. 2023-08-02 13:50:50 +01:00
Paul Holden 501a170cb6 MDL-78879 reportbuilder: allow for negation of category filter.
Add "Equal to" and "Not equal to" operators to the filter class.

AMOS BEGIN
 CPY [subcats,qtype_randomsamatch],[includesubcategories,moodle]
AMOS END
2023-08-02 12:26:54 +01:00
Paul Holden 36ab5e5d1a MDL-78532 reportbuilder: external method for retrieving system report. 2023-07-18 12:05:07 +01:00
Paul Holden 2ffda63da8 MDL-75359 reportbuilder: fixes for custom/user profile field elements.
Ensures cross-DB compatibility for all types of both custom and user
profile fields, specifically when they're filtered and/or aggregated.

Implement stress testing of both via appropriate report sources.
2023-07-07 14:45:24 +01:00
Paul Holden 8ed7c78ecf MDL-78364 reportbuilder: earlier calculation of schedule recipients. 2023-06-05 16:22:28 +01:00
Paul Holden 8f7bff9789 MDL-76900 reportbuilder: allow for deprecation of entity elements.
Don't allow deprecated columns/filters to be added to new custom
reports. Where they already exist, emit deprecation debugging.
2023-05-17 08:02:06 +01:00
Paul Holden 6312467346 MDL-77614 reportbuilder: throw exception if entity name already exists. 2023-04-25 12:55:09 +01:00
Shamim Rezaie b54fbcf532 Merge branch 'MDL-77555' of https://github.com/paulholden/moodle 2023-04-05 11:25:16 +01:00
Paul Holden 5d0f34bde2 MDL-77555 reportbuilder: improve SQL generation within filters.
Use native ANSI SQL syntax for numeric comparisons where possible,
define filter API for the case where filters must re-use the given
field SQL while ensuring uniqueness of any field parameters.

Currently only necessary in the category filter type.
2023-04-05 09:37:37 +01:00
Paul Holden 4146329063 MDL-77555 reportbuilder: method to ensure unique parameters in SQL. 2023-03-27 10:29:25 +01:00
Anupama Sarjoshi 79370e225e MDL-77659 core_reportbuilder: fix user profile fields phpunit tests 2023-03-20 12:19:57 +00:00
Paul Holden 198db552b0 MDL-77056 reportbuilder: relative date filter for before given period. 2023-03-07 22:46:50 +00:00
Paul Holden 54b135e034 MDL-77321 reportbuilder: cache list of loaded reports per user.
Since 0188af39 we've cached loaded reports, however there was an
edge case in those report sources that relied on the current user
as part of their own initialization (e.g. checking capabilities).

Co-authored-by: Marina Glancy <marina@moodle.com>
2023-02-27 21:13:11 +00:00
Paul Holden 650b6caf83 MDL-77201 reportbuilder: pass current aggregation to column callbacks. 2023-02-14 11:03:03 +00:00
Andrew Nicols 92d04b9e7b Merge branch 'MDL-77091' of https://github.com/paulholden/moodle 2023-02-06 12:58:56 +08:00
Paul Holden 147c31800b MDL-75345 reportbuilder: improve course/user custom report tests.
Ensure column and filters provided by each source have sufficient
coverage. Re-factor individual entity/helper class tests to test
their own specific implementation only.

Remove now-defunct test fixtures.
2023-02-01 15:41:32 +00:00
Paul Holden 5b644bfd30 MDL-77091 reportbuilder: set base time in schedule test generator.
The base time allows for the setting of the "current time" for the
purposes of the schedule test against recurrence configuration.

We should ensure the generator method allows this property so that
it can be used when calculating the initial "next send time" of the
schedule upon creation (and avoiding excessive recursion when the
actual current time is used for the calculation).
2023-02-01 14:39:21 +00:00
Andrew Nicols a3cc26f8bb MDL-76583 core: Update uses of external_* classes 2023-01-19 07:34:09 +08:00
David Mudrák 50ba9dc72c MDL-76739 lang: Use the fixed strings in the tests, too 2023-01-12 09:17:27 +08:00
Sara Arjona b92b0b6cea Merge branch 'MDL-76221' of https://github.com/paulholden/moodle 2023-01-04 13:08:44 +01:00
Paul Holden 45818da292 MDL-76221 reportbuilder: improve report test generator methods.
Test generators for creating report columns, filters and conditions
now allow for setting all persistent properties.
2023-01-04 10:56:27 +00:00
Sara Arjona 7202dcb79e Merge branch 'MDL-76181' of https://github.com/paulholden/moodle 2023-01-04 09:20:13 +01:00
Sara Arjona 912aaf5649 Merge branch 'MDL-76301' of https://github.com/dravek/moodle 2023-01-02 10:59:15 +01:00
Paul Holden 5162a7882d MDL-76181 reportbuilder: sort columns during stress testing. 2022-12-29 13:59:31 +00:00
Sara Arjona 2842575f95 Merge branch 'MDL-76479' of https://github.com/paulholden/moodle 2022-12-28 18:37:39 +01:00
David Matamoros facc3322e4 MDL-76301 course: Add course overview files to courses datasource 2022-12-16 13:56:15 +01:00
Sara Arjona 63cbadb161 Merge branch 'MDL-75943' of https://github.com/roland04/moodle 2022-12-14 17:29:13 +01:00
Mikel Martín 91cc98ed3d MDL-75943 reportbuilder: Add custom attributes to reports 2022-12-14 13:50:40 +01:00
Andrew Nicols 19d1fb336c Merge branch 'MDL-76398' of https://github.com/paulholden/moodle 2022-12-11 20:20:02 +08:00
Paul Holden aa1970ffa4 MDL-76479 reportbuilder: date filtering by hour. 2022-12-05 06:50:07 +00:00
Paul Holden cccddcd7c0 MDL-76398 reportbuilder: use improved action menu steps in Behat.
Improved steps for using actions menus were added in 232ebac3, so
make use of them here for consistency/reliability.
2022-12-02 09:54:49 +00:00
Marina Glancy d2e5bfe26f MDL-76494 core_reportbuilder: behat test for downloading report 2022-11-26 18:31:21 +01:00
Marina Glancy 064eccd4fc MDL-75525 reportbuilder: specify initial sorting for datasources 2022-11-07 15:43:45 +01:00
Sara Arjona b8ae747056 Merge branch 'MDL-75535' of https://github.com/paulholden/moodle 2022-11-04 11:01:41 +08:00
Jun Pataleta 9bdfcc46d3 Merge branch 'MDL-75358-master' of https://github.com/marinaglancy/moodle 2022-10-31 10:10:16 +08:00
Sara Arjona 9000fd3037 Merge branch 'MDL-75449' of https://github.com/paulholden/moodle 2022-10-27 17:24:11 +02:00
Paul Holden 8debad96ac MDL-75535 reportbuilder: reset cache upon generating default report.
This ensures any properties set during creation (e.g. condition values)
are immediately present in unit tests.
2022-10-19 15:04:09 +01:00
Paul Holden f1c3aca7ea MDL-75165 reportbuilder: entity method to override multiple aliases. 2022-10-19 14:46:21 +01:00
Víctor Déniz 587deee8f5 Merge branch 'MDL-72722' of https://github.com/paulholden/moodle 2022-10-18 00:26:24 +01:00
Paul Holden fd01461b7a MDL-75449 reportbuilder: add no tags/exclude tags filter operators.
Allow user to filter for elements that either contain no tags, plus
those that don't contain selected tags.
2022-10-14 16:04:37 +01:00
Sara Arjona 6eb67954f3 Merge branch 'MDL-75811' of https://github.com/paulholden/moodle 2022-10-13 16:25:40 +02:00
Paul Holden 8822089877 MDL-74956 reportbuilder: external method for retrieving custom report. 2022-10-12 09:36:23 +01:00