Commit Graph

75 Commits

Author SHA1 Message Date
Jun Pataleta 21b39e2f53 Merge branch 'MDL-74238' of https://github.com/paulholden/moodle 2024-01-22 15:03:28 +08:00
Johnny Tsheke 957edb8ed3 MDL-79519 course: remove null to use the default value. 2024-01-12 20:31:10 -05:00
Paul Holden 7298d0762a MDL-74238 completion: final removal of deprecated navigation methods. 2023-12-21 15:32:05 +00:00
Sara Arjona 165aa2c318 MDL-72656 course_format: Final deprecation for renderers 2023-12-11 09:00:13 +01:00
Sara Arjona 032f39aeef MDL-79726 completion: Overall should consider pass/fail states too
In MDL-78744, when the overallcompletion state was added to be displayed
in the activity card, only COMPLETE/INCOMPLETE status were considered.
However, depending on the activity completion settings, there are a
couple of states more that should also be included (COMPLETE_FAIL and
COMPLETE_PASS).

A new method has been added to the cm_completion_details class to
calculate whether a module should be considered or not completed,
based on their completion options and the current value for the
overall complete state.
2023-12-01 09:18:36 +01:00
Mikel Martín bd7cc81be6 MDL-78744 completion: Split activity_information in completion and dates
Deprecate core_course\output\activity_information class and move its code to two
new classes: core_course\output\activity_completion and core_course\output\activity_dates.
In this process refactor activity_completion improving readability and and also deprecate
renderer_base::activity_information() and core_course_renderer::render_activity_information().
2023-09-04 11:37:20 +02:00
Andrew Nicols 34d5e85fb7 Merge branch 'MDL-79108-master' of https://github.com/sarjona/moodle 2023-09-01 11:55:59 +08:00
Sara Arjona 610a70f026 MDL-79108 completion: Display the correct message in default settings 2023-08-28 13:32:15 +02:00
Sara Arjona b6715a7dda MDL-79102 forms: Add uniqueid var to avoid duplicated ids
A new static variable, $uniqueid, has been introduced to the
moodleform class. This enhancement allows for the simultaneous
presence of multiple forms with distinct IDs for action buttons
on a single page, thereby mitigating the accessibility concern
associated with duplicated IDs.
2023-08-28 13:30:39 +02:00
Sara Arjona a2db0747cc MDL-78528 course: Deprecate unused methods
The method core_course_bulk_activity_completion_renderer::edit_default_completion()
has been deprecated and will be removed in Moodle 4.7.
2023-08-09 09:12:44 +02:00
Sara Arjona 2e41286ad3 MDL-78528 course: Display all forms in default activity completion page
This commit displays all the module forms together in the default
activity completion page:

- The checkboxes have been removed. Now the activity names are
displayed as accordions.
- Module names have been changed from plural to singular.
- The activity completion form is displayed below each module name,
when the chevron icon is expanded. The cancel button is not displayed.
- The CSS has been updated to meet the prototype styling.
2023-08-09 09:12:44 +02:00
Mikel Martín e5908a1ce4 MDL-78280 core_courseformat: New completion dropdown UI
- Move completion information to a new output class 'core_courseformat\output\local\content\cm\completion'
- Replace current dropdown with 'core\output\local\dropdown\dialog'
- Modify manual conditions logic in course page. Now 'Mark as done' button will only be displayed to
tracked users (with moodle/course:isincompletionreports capability)
- Add new styles for completion dialog contents
2023-07-19 16:44:54 +02:00
Amaia Anabitarte b14669a34a MDL-78633 core_course: Improve tertiary navigation in course completion 2023-07-10 15:07:50 +02:00
Marina Glancy 8fc1486d36 MDL-77164 various: fix incorrect phpdocs 2023-04-13 11:35:06 +01:00
Andrew Nicols a3cc26f8bb MDL-76583 core: Update uses of external_* classes 2023-01-19 07:34:09 +08:00
Justus Dieckmann 05bb22d418 MDL-75569 course: fix non-functional search bar in course index page
For users who are not allowed to access course/management.php, the
normal course search is used instead.
2022-09-20 12:33:55 +02:00
Hien Dinh 00dcb18999 MDL-73172 course: COMPLETE_PASS status cannot enhance in custom theme 2022-05-05 09:35:36 +07:00
Mihail Geshoski 135e1a2dce MDL-73863 course: Deprecate unused methods 2022-03-10 12:28:39 +08:00
Mihail Geshoski 36fe5695fe MDL-73863 course: Add tertiary navigation in completion pages 2022-03-10 12:28:39 +08:00
Peter Dias f1959af7f6 MDL-73462 course: Introduce course category tertiary navigation
Update the category management page.
2022-03-01 17:57:24 +08:00
Paul Holden c618717d1f MDL-73636 course: use formatted name in exported activity data. 2022-02-14 09:18:57 +00:00
Shamim Rezaie 7ba7920aa8 MDL-70721 output: Remove redundant title
The format_string() function does half html escaping. It escapes < and >
characters, but does not escape ". Therefore, it put us in a situation
where neither {{}}, nor {{{}}} are suitable in templates. If we use {{}}
for an attribute (like title or aria-label), then < and > characters
will be double escaped. On the other hand, if we use {{{}}} there, a
double quote character will break HTML when it is used in an attribute.
Therefore, neither {{}}, nore {{{}}} are usable in html attributes.

Moreover, The title attribute here was redundant because it had the same
value as the link's text.
2021-11-16 10:08:07 +11:00
Ferran Recio d4bebe639f MDL-72578 core_courseformat: fix renderers deprecation messages 2021-10-07 17:17:29 +02:00
Ferran Recio 41b4625693 MDL-72578 course: activity render to output classes 2021-10-07 17:17:29 +02:00
Ferran Recio 21d93554d4 MDL-71863 courseformat: create courseformat subsystem 2021-06-28 13:50:18 +02:00
Luca Bösch 9fc6c45b10 MDL-71634 course: Do not show "Your progress" info any more. 2021-06-17 19:22:13 +02:00
Andrew Nicols 6bc1346333 Merge branch 'MDL-71382-master' of git://github.com/ilyatregubov/moodle 2021-06-10 09:48:55 +08:00
Sara Arjona 5f91cbb611 MDL-71135 course: core_course_get_state external method 2021-06-04 16:43:28 +02:00
Sara Arjona f7b0960d18 MDL-71135 course: add legacy_format_renderer support
Until Moodle 4.0, renderer.php file was optional (although highly recommended)
for course formats. From Moodle 4.0 onwards, renderer is required to support
the new course editor implementation.
The legacy_format_renderer class has been created for backward compatibility,
to avoid some errors with course formats (such as social) without the renderer
file. Apart from that, course_format->get_renderer() method has been reviewed
to use this legacy_format_renderer when no renderer.php file is found.
2021-06-04 16:43:06 +02:00
Ilya Tregubov b071a7b838 MDL-71382 course: Don't allow empty name for section 0. 2021-06-02 08:42:12 +02:00
Jun Pataleta 91f398ce84 Merge branch 'MDL-71234-master' of git://github.com/HuongNV13/moodle 2021-05-07 12:21:33 +08:00
Huong Nguyen 860b5d8abc MDL-71234 usertours: Create tours for the activity completion output 2021-05-07 11:11:23 +07:00
Shamim Rezaie 35d1ac13d2 MDL-71518 core: Add weekday to activity dates 2021-05-05 13:56:06 +10:00
Sara Arjona b04d1c3041 Merge branch 'MDL-71163-master' of git://github.com/rezaies/moodle 2021-05-03 11:59:58 +02:00
Ilya Tregubov bff4be683a MDL-66431 core: Fix section 0 not being dispayed on course page.
This is just to make Behat tests to pass. There is a bug
discovered MDL-71382. We will address that tracker after 3.11
release. For now we just replicate stables behavior.
2021-05-01 16:22:03 +02:00
Shamim Rezaie 9e3b2d6f47 MDL-71163 core: support relative dates in activity dates
AMOS BEGIN
 CPY [relativedatessubmissionduedateafter,mod_assign],[relativedatessubmissionduedateafter,core_course]
 CPY [relativedatessubmissionduedatebefore,mod_assign],[relativedatessubmissionduedatebefore,core_course]
AMOS END
2021-04-30 17:13:51 +10:00
Adrian Greeve e17333c342 Merge branch 'MDL-71141-master' of git://github.com/ferranrecio/moodle 2021-04-29 15:40:51 +08:00
Huong Nguyen 3f9035b989 MDL-71252 completion: Avoid showing the 'Mark as done' button
The following activites will be applied:
 - Label
 - File (Force download/Open/In pop-up)
 - URL (Open/In pop-up)
2021-04-26 14:24:41 +07:00
Luca Bösch 3316562636 MDL-71324 course: Render hasinfo class only if necessary. 2021-04-17 11:49:39 +02:00
Jun Pataleta f5d9ac9626 MDL-70821 course: Render activity information only when necessary
Render the activity information output component in the course homepage
only if either completion details or activity dates are to be displayed.
This can help reduce the number of files being included when loading the
course homepage (e.g. the activity information template for each
activity in the course homepage).
2021-04-13 00:51:48 +08:00
Ferran Recio 6ae566c55d MDL-71141 course: fix frontpage section warning 2021-04-12 12:41:10 +02:00
Jun Pataleta a5e6df51a7 MDL-70821 course: Activity information fixes
* Make sure the activity is visible to the user (cm_info::uservisible)
before showing the activity completion information.
* Add to-do status for overridden automatic completion
2021-04-12 11:41:37 +08:00
Jun Pataleta 147a3a3661 MDL-70821 course: activity_information template changes
* Add activity name for completion conditions labels. This would give
  better information to screen reader users the activity that the list
  of automatic completion conditions belong to. This would be useful
  especially when the completion conditions are displayed on the course
  homepage.
* Add data-region attributes to activity dates and completion
  information divs.
* Reorganise activity dates and completion information divs so they
  are only rendered when they have data to show.
2021-04-12 11:41:37 +08:00
Jun Pataleta 13f88df351 MDL-70821 course: Cover availability conditions for manual completion
When an activity has manual completion tracking, pressing the manual
completion checkbox reloads the page after toggling the completion
state when the activity is linked to availability conditions.
The "Mark as done" button needs to mimic this behaviour as well.

The approach being taken here is to add a core_course/view JS module
for the course homepage which listens for the manualCompletionToggled
event and reloads the page when the activity module has availability
conditions tied to it.

Perhaps for future development, instead of reloading the page, the
container of the restricted course sections/activities can reloaded via
AJAX as well.
2021-04-12 11:41:37 +08:00
Jun Pataleta 7d8cc2c610 MDL-70821 course: Remove unused completion info from cm_format
With the activity information output component dealing with the
completion information of the activity, there's no need to pass
completion info to the cm_format renderable.
2021-04-12 11:41:34 +08:00
Jun Pataleta abc5d76175 MDL-70821 course: Render activity information output component in course
Use the activity information output component to render activity
completion details and activity dates for activities on the course
homepage.

Includes fixup from Shamim Rezaie <shamim@moodle.com>
2021-04-12 11:40:54 +08:00
Jun Pataleta dd32d65f3a MDL-70817 core_course: Create an activity information output component
The activity information output component displays information about
an activity module that can contain:
1. Activity dates
2. Completion information
   a. A manual completion button; or
   b. A list of automatic completion conditions and their statuses.

This patch also includes a new JS module called
core_course/manual_completion_toggle for toggling the
completion state of activities that support manual completion.
2021-04-02 21:53:20 +08:00
Ferran Recio 875e7314b8 MDL-65974 course: fix return section in modchooser 2021-03-15 13:11:53 +01:00
Ferran Recio 8e7dc42440 MDL-65974 course: move format renderers to outputs 2021-03-11 17:36:34 +01:00
Tuan.Dinh 8ae7019cf8 MDL-70124 course: Activity names are now trimmed. 2021-02-11 11:12:59 +08:00