Paul Holden
27cb7506db
MDL-80619 reportbuilder: add capability to allow viewing all reports.
2024-01-19 13:30:23 +00:00
Paul Holden
2097872510
Merge branch 'MDL-80564' of https://github.com/marinaglancy/moodle into main
2024-01-12 09:07:38 +00:00
Sara Arjona
53a9613bab
Merge branch 'MDL-80014' of https://github.com/paulholden/moodle
2024-01-10 16:10:08 +01:00
Marina Glancy
27c6c174d8
MDL-80564 reportbuilder: Consistent permission check for user full name
2024-01-09 17:50:56 +00:00
Paul Holden
e56e9cd6de
MDL-80329 reportbuilder: trim whitespace in text filter content.
2023-12-13 10:15:32 +00:00
Paul Holden
bf39fc43b4
MDL-80014 reportbuilder: entity method to retrieve all table aliases.
2023-12-13 10:06:19 +00:00
Paul Holden
fb53d081da
MDL-79397 reportbuilder: always auto-generate entity table aliases.
...
As the number of report entity classes has grown, each having their own
manually defined table aliases, it becomes harder to ensure each of the
aliases are always unique across report sources.
We can remove that burden by ensuring table aliases are automatically
generated upon request.
2023-12-07 17:19:01 +00:00
Sara Arjona
02b188d6c9
Merge branch 'MDL-79216' of https://github.com/paulholden/moodle
2023-12-05 16:46:10 +01:00
Paul Holden
176ed8e798
MDL-80254 reportbuilder: better handling of deleted users in schedules.
...
We should verify that schedule and audience users are active accounts,
and that we don't try to send report schedules either from/to them if
they aren't.
2023-12-04 09:48:39 +00:00
Paul Holden
0d9b79fb20
MDL-79216 files: new report filter type for filesize data.
2023-12-01 09:39:01 +00:00
Paul Holden
6a9eadceb6
MDL-79998 reportbuilder: user entity method to get identity fields.
2023-11-10 10:22:51 +00:00
Ilya Tregubov
8d7511b230
Merge branch 'MDL-79446' of https://github.com/paulholden/moodle
2023-11-06 09:13:47 +08:00
Paul Holden
da6ef4ac1d
MDL-79705 reportbuilder: remove checkbox field callback handling.
...
We no longer need special handling of this field type, because it
now returns language strings rather than HTML markup for a checkbox
element on display.
2023-10-17 16:51:26 +01:00
Paul Holden
e19c4e89d1
MDL-79446 reportbuilder: optional $suffix for generated alias/params.
...
Allows for, and documents, intended usage when the result of these
methods is used elsewhere (e.g. in `$DB->get_in_or_equal`).
2023-10-11 15:10:39 +01:00
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
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
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
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
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
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
Paul Holden
aa1970ffa4
MDL-76479 reportbuilder: date filtering by hour.
2022-12-05 06:50:07 +00: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
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
Andrew Nicols
3589299d82
Merge branch 'MDL-74955' of https://github.com/paulholden/moodle
2022-10-06 09:39:45 +08:00
Víctor Déniz
aa0be15591
Merge branch 'MDL-75192' of https://github.com/paulholden/moodle
2022-10-06 01:08:37 +01:00
Paul Holden
77018b7359
MDL-74955 reportbuilder: re-factor retrieving user reports to helper.
2022-10-03 13:22:10 +01:00
Paul Holden
610d2b0812
MDL-75192 reportbuilder: observe start day in current week filter.
...
Ensure we observe the site configuration/preference for calendar
first day of the week, in the current week date filter.
2022-09-28 12:09:08 +01:00
Andrew Nicols
c3f0e19d67
Merge branch 'MDL-75447' of https://github.com/paulholden/moodle
2022-09-28 12:41:02 +08:00
Paul Holden
9a24440386
MDL-72722 reportbuilder: Oracle support for distinct group concat.
...
Requirements for Oracle were increased to 19c for Moodle 4.1 - now
with support for DISTINCT keyword within the LISTAGG function:
https://livesql.oracle.com/apex/livesql/file/content_HT1O85E4BHSBWN93G1B3M8SI2.html
2022-09-26 11:03:33 +01:00
Marina Glancy
4bb042c352
MDL-75358 reportbuilder: display nulls as empty cells in aggregation
2022-09-20 18:18:41 +02:00
David Matamoros
131a97406b
MDL-75639 reportbuilder: Add new option to date filter
...
- In the past: to filter by all dates in the past
- In the future: to filter by all dates in the future
2022-09-09 10:15:28 +02:00
Paul Holden
ff717ac87f
MDL-75447 reportbuilder: return only valid audience instances.
2022-09-02 12:33:54 +01:00
Ilya Tregubov
96dbcc0840
Merge branch 'MDL-75245' of https://github.com/paulholden/moodle
2022-08-30 14:59:50 +04:00