Paul Holden
bf0849d9a4
MDL-80943 reportbuilder: select-type customfields should be text.
...
The column type determines the available aggregation options present
for the column. Custom fields of type "select" should be considered as
text fields for this purpose, because their stored value represents
the index to their available options, rather than having any distinct
meaning of it's own for display.
2024-03-07 09:47:53 +00:00
Sara Arjona
6c1b457252
Merge branch 'MDL-80912-403' of https://github.com/paulholden/moodle into MOODLE_403_STABLE
2024-02-20 15:39:24 +01:00
Paul Holden
30fa519fa0
MDL-80912 reportbuilder: output table caption when rendering reports.
...
Move the `get_name` method to the base report class, so that it can be
implemented by all report types. Provide a default implementation for
system reports based on the name of the class.
Use the name of the report as the caption. Target via Behat selectors.
2024-02-19 11:57:53 +00:00
Paul Holden
7f1caa7c57
MDL-80936 reportbuilder: fix when default customfield values are shown.
...
We should ensure we only show a value for the custom field (default or
otherwise) when it's actually joined to an entity it represents.
2024-02-14 12:22:47 +00:00
David Mudrák
6142dd41f2
MDL-80725 lang: Use the fixed strings in tests, too
2024-01-31 22:11:01 +01:00
Marina Glancy
5a94a957bc
MDL-80564 reportbuilder: Consistent permission check for user full name
2024-01-11 14:45:28 +00:00
Paul Holden
a432e1767f
MDL-80412 reportbuilder: Behat scenario to view/sort additional names.
...
Related to fixes from 8f32e623 .
2023-12-15 10:55:25 +00:00
Paul Holden
46192ca77e
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:42 +00:00
Paul Holden
e2049d770c
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:29 +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
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